.session-locked > :not(#session-surface):not(script):not(link){display:none!important}
#session-surface:empty{display:none}
.session-card{margin:10vh auto;padding:40px;max-width:460px;background:#fff;border:1px solid #dce5e1;border-radius:20px;box-shadow:0 12px 40px #163b3210}
.session-card label{display:grid;gap:8px;margin:18px 0}.session-card input{width:100%}.session-card .primary{width:100%}
.live-save-bar{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);padding:12px 22px;background:#17433c;color:white;border-radius:12px;z-index:100000;max-width:90vw;box-shadow:0 4px 24px #0002}
.live-error{max-width:620px;border:1px solid #dce5e1;border-radius:16px;padding:28px}.live-error pre{white-space:pre-wrap;overflow-wrap:anywhere}.live-error::backdrop{background:#163b3260}
.live-account-actions{display:flex;align-items:center;gap:10px}.live-account-actions button{font-size:13px;padding:6px 10px}
.live-grant{display:grid;grid-template-columns:1fr 1fr;gap:12px;border:1px solid #dce5e1;border-radius:12px;padding:18px;margin:12px 0}.live-grant label{display:grid;gap:6px}.live-form-message{color:#a23838;white-space:pre-wrap}
.live-management-form{min-width:300px;max-width:760px}.live-management-form fieldset{border:1px solid #dce5e1;border-radius:10px;padding:16px;margin:16px 0}.live-management-form label{display:grid;gap:6px;margin:10px 0}
.live-management-form .check-label{display:flex;align-items:center;gap:8px}.live-management-form .check-label input{width:auto}
.settings-table td{overflow-wrap:anywhere}.live-refresh-note{font-size:12px;color:#587368}
@media(max-width:700px){.session-card{margin:8vh 16px;padding:24px}.live-grant{grid-template-columns:1fr}.header-right{flex-wrap:wrap}.live-account-actions{flex-wrap:wrap}.live-management-form{min-width:0}}

/* Keep failed submission reasons inside the modal and beside its save action. */
dialog form>.entry-actions,dialog form>.actions{flex-wrap:wrap}
dialog form .save-validation-error{flex:1 0 100%;order:-1;margin:0 0 8px;padding:9px 12px;border:1px solid #e0bd7b;border-radius:6px;background:#fff4dd;color:#794c15;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}
dialog form .save-validation-error[hidden]{display:none}

.save-feedback-dialog{width:540px;max-width:calc(100vw - 32px);max-height:85vh;overflow:auto;border:1px solid #d5e1e9;border-radius:12px;padding:26px;color:#203e50;background:#fff;box-shadow:0 18px 70px #10283b40}
.save-feedback-dialog::backdrop{background:#10283b70}.save-feedback-dialog h2{font-size:22px;margin:0 0 14px}.save-feedback-dialog #save-feedback-reason{padding:12px;background:#fff3dc;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere}.save-feedback-dialog .actions{justify-content:flex-end;margin-top:20px}.entry-existing-notice{padding:9px 12px;background:#eaf3fb;border:1px solid #bfd6e7;border-radius:6px;font-size:13px;line-height:1.6}
