/* Account layout and forms. Access control is enforced by backend API. */
[hidden]{display:none!important}.auth-nav{display:flex;justify-self:end;align-items:center;gap:18px}.auth-register-link,.auth-text-button{background:none;border:0;color:var(--muted);min-height:44px;padding:8px 0;font-size:14px}.auth-register-link:hover,.auth-text-button:hover{color:var(--amber)}.auth-login-link{background:transparent;display:flex;gap:20px;align-items:center;justify-content:center;min-height:44px;font-size:14px;white-space:nowrap}.auth-login-link span{color:var(--amber);font-size:22px}.auth-dialog{width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;margin:auto;padding:36px;background:#172c26;color:var(--paper);border:1px solid #62766b;border-radius:12px;box-shadow:0 20px 100px #0005;color-scheme:dark}.auth-dialog::backdrop{background:#07120ed9;backdrop-filter:blur(5px)}.auth-dialog .eyebrow{font-size:11px;padding-right:24px}.auth-dialog h2{font-size:30px;line-height:1.2;letter-spacing:-.8px;margin:18px 0 12px}.auth-close{position:absolute;right:12px;top:12px;width:44px;height:44px;border:0;background:none;font-size:29px;color:var(--muted);border-radius:6px}.auth-close:hover{background:#ede9da12;color:var(--paper)}.auth-description{color:var(--muted);font-size:15px;margin:0 0 24px}.auth-dialog label{display:block;font-size:14px;margin:18px 0 8px}.auth-dialog input{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid #718779;background:#10231f;border-radius:6px;color:var(--paper);font:16px Arial,sans-serif;outline-offset:3px}.auth-dialog input:focus-visible{outline:2px solid var(--amber)}.auth-dialog input::placeholder{color:#a4b5a9}.auth-password-wrap{position:relative}.auth-password-wrap input{padding-right:96px}.auth-password-wrap button{position:absolute;right:2px;top:2px;min-height:44px;background:none;border:0;padding:0 12px;font-size:13px;color:var(--amber)}.auth-submit{width:100%;justify-content:space-between;margin-top:24px;min-height:48px}.auth-error{color:#ffbaaa;background:#dd795c12;border:1px solid #af7160;padding:12px;border-radius:6px;font-size:14px;margin:16px 0 0}.auth-examples{border-top:1px solid #62766b80;padding-top:20px;margin-top:24px;font-size:14px}.auth-examples strong{display:block;margin-bottom:8px}.auth-examples p{margin:5px 0;color:var(--muted)}.auth-examples code{color:var(--amber);font-size:14px}.auth-warning{font-size:13px;color:var(--muted);line-height:1.6;margin:16px 0 4px}.auth-text-button{font-size:14px;text-decoration:underline;text-underline-offset:4px}.auth-placeholder{padding:24px;background:#10231f;border:1px dashed #62766b;border-radius:8px}.auth-placeholder>span{font-size:32px;color:var(--amber)}.auth-placeholder h3{font-size:20px;margin:10px 0}.auth-placeholder p{font-size:15px;color:var(--muted);margin:0;line-height:1.7}.account-shell{padding-block:48px 64px;min-height:calc(100dvh - 88px)}.account-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.account-heading .eyebrow{font-size:12px;justify-content:flex-start;text-align:left}.account-heading h1{font-size:42px;line-height:1.15;letter-spacing:-1.5px;margin:16px 0 10px}.account-heading p{color:var(--muted);margin:0;font-size:16px}.account-button{background:transparent;border:1px solid #7d9183;color:var(--paper);border-radius:6px;padding:10px 18px;min-height:44px;white-space:nowrap}.account-button:hover{border-color:var(--amber);color:var(--amber)}.account-notice{display:flex;align-items:start;gap:12px;border:1px solid #e4c68166;background:#e4c6810a;padding:16px 20px;border-radius:8px;margin-bottom:28px;color:var(--muted)}.account-notice>span{color:var(--amber);font-size:20px;line-height:24px}.account-notice p{font-size:14px;line-height:1.7;margin:0}.account-layout{display:grid;grid-template-columns:224px minmax(0,1fr);gap:24px;align-items:start}.account-sidebar{border:1px solid #62766b88;border-radius:10px;background:#10231fa6;padding:24px 16px}.account-avatar{width:44px;height:44px;display:grid;place-items:center;background:#e4c68122;border:1px solid #e4c68188;border-radius:8px;color:var(--amber);font-size:22px;margin:0 0 14px 8px}.account-sidebar>strong,.account-sidebar>span{display:block;margin:0 8px}.account-sidebar>strong{font-size:18px}.account-sidebar>span{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.6}.account-sidebar nav{display:flex;flex-direction:column;gap:6px;margin-top:24px}.account-sidebar nav button{display:flex;align-items:center;gap:12px;border:1px solid transparent;background:none;text-align:left;color:var(--muted);padding:12px;min-height:48px;font-size:15px;border-radius:6px}.account-sidebar nav button[aria-current=page]{color:var(--amber);background:#e4c68112;border-color:#e4c68166}.account-sidebar nav button:hover{background:#ede9da0c;color:var(--paper)}.account-sidebar nav button span{width:20px;text-align:center;font-size:18px}.account-site-link{display:block;font-size:14px;color:var(--muted);border-top:1px solid #62766b66;margin-top:24px;padding:20px 8px 0;min-height:44px}.account-site-link:hover{color:var(--amber)}.account-content{min-width:0}.account-panel{border:1px solid #62766b88;border-radius:10px;background:#10231fbf;padding:32px}.account-panel h2{font-size:26px;line-height:1.3;margin:0 0 10px;letter-spacing:-.6px}.account-panel>p{font-size:15px;color:var(--muted);margin:0 0 24px;line-height:1.7}.account-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:28px}.account-card{border:1px solid #62766b88;border-radius:8px;padding:18px 16px;background:#ede9da04}.account-card>span{display:block;color:var(--muted);font-size:13px}.account-card>strong{display:block;font-size:21px;line-height:1.3;margin-top:10px;color:var(--paper);overflow-wrap:anywhere}.account-card>small{display:block;color:var(--muted);font-size:13px;margin-top:8px}.account-feature{border-top:1px solid #62766b88;padding-top:20px;display:flex;flex-direction:column;gap:20px;align-items:start}.account-feature .eyebrow{font-size:11px}.account-feature h3{font-size:24px;margin:0 0 10px;line-height:1.3}.account-feature p{font-size:15px;line-height:1.7;color:var(--muted);max-width:520px;margin:0}.account-feature .button{font-size:14px;min-height:48px}.account-table-wrap{overflow:auto;border:1px solid #62766b88;border-radius:8px}.account-table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}.account-table th{font-weight:400;color:var(--muted);background:#ede9da06}.account-table th,.account-table td{padding:16px;border-bottom:1px solid #62766b66;white-space:nowrap}.account-table tbody tr:last-child td{border:0}.account-tag{padding:4px 8px;background:#e4c68112;border:1px solid #e4c68166;border-radius:4px;color:var(--amber);font-size:12px}.account-empty{border:1px dashed #62766b;border-radius:8px;padding:32px 24px;text-align:center}.account-empty>span{font-size:36px;color:var(--amber)}.account-empty h3{font-size:20px;margin:14px 0 10px}.account-empty p{color:var(--muted);font-size:15px;line-height:1.7;margin:0}.account-details{margin:24px 0}.account-details>div{display:flex;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid #62766b66;font-size:15px}.account-details dt{color:var(--muted)}.account-details dd{margin:0;text-align:right}.account-small{font-size:13px;color:var(--muted);margin-top:20px}.account-steps{padding-left:22px;color:var(--muted);font-size:15px;line-height:1.8;margin:24px 0}.account-steps li+li{margin-top:12px}body.account-active .progress{display:none}
@media(max-width:1100px){.nav-shell{gap:18px}.auth-nav{gap:12px}.account-cards{grid-template-columns:1fr}.account-card{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:center}.account-card>strong{margin:0;font-size:19px}.account-card>small{grid-column:1/-1;margin:0}.account-panel{padding:24px}.account-heading h1{font-size:36px}}
@media(max-width:850px){.nav-shell{grid-template-columns:1fr auto auto}.auth-nav{justify-self:end}.account-shell{padding-top:32px}.account-layout{grid-template-columns:1fr}.account-sidebar{padding:16px}.account-avatar,.account-sidebar>strong,.account-sidebar>span{display:none}.account-sidebar nav{flex-direction:row;margin:0;gap:8px}.account-sidebar nav button{flex:1;justify-content:center;padding:10px 8px;font-size:14px}.account-site-link{margin-top:12px;padding-top:12px}.account-heading{align-items:start}.account-heading h1{font-size:32px}.account-heading .eyebrow{font-size:10px}.account-panel{padding:24px}.account-notice{padding:14px 16px}}
@media(max-width:560px){.nav-shell{width:calc(100% - 32px);gap:8px;height:80px}.topbar .brand{gap:6px}.topbar .brand img{width:25px;height:25px}.topbar .brand span{font-size:10px}.auth-nav{gap:8px}.auth-register-link{font-size:12px}.auth-login-link{padding:8px 10px;gap:6px;font-size:12px}.auth-login-link span{font-size:16px}.menu-button{width:36px;min-width:36px}.auth-dialog{padding:32px 24px 24px}.auth-dialog h2{font-size:27px}.account-shell{width:calc(100% - 32px)}.account-heading{flex-wrap:wrap;gap:16px}.account-heading h1{font-size:30px;letter-spacing:-1px}.account-heading p{font-size:14px}.account-heading .account-button{padding:8px 14px;font-size:14px}.account-notice p{font-size:13px}.account-sidebar nav button{font-size:13px;gap:6px;flex-direction:column}.account-panel{padding:24px 18px}.account-panel h2{font-size:24px}.account-card{display:block}.account-card>strong{margin-top:8px}.account-card>small{margin-top:6px}.account-feature h3{font-size:22px}.account-feature .button{width:100%;justify-content:space-between;padding:12px 16px}.account-table th,.account-table td{padding:14px 12px}.account-details>div{font-size:14px}}
@media(max-width:360px){.topbar .brand span{display:none}.auth-register-link{font-size:13px}.auth-login-link{font-size:13px}.nav-shell{gap:10px}.auth-nav{gap:12px}}

.auth-dialog .eyebrow{color:var(--amber);justify-content:flex-start}.account-sidebar nav button svg{width:20px;height:20px;flex:none}
/* Server-backed accounts, v7. Existing visual language retained. */
.account-form{max-width:460px;display:grid;gap:16px;margin:24px 0 32px}.account-form label{display:grid;gap:8px;color:var(--muted);font-size:14px}.account-form input{width:100%;min-height:48px;padding:12px;border:1px solid #718779;border-radius:6px;background:#10231f;color:var(--paper);font:16px Arial,sans-serif}.account-form button{justify-self:start}.account-form p{font-size:14px;line-height:1.6}.account-panel hr{border:0;border-top:1px solid #62766b88;margin:32px 0}.account-panel a:not(.button):not(.account-button),.auth-warning a{color:var(--amber);overflow-wrap:anywhere}.account-pager{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}.account-pager span{font-size:14px;color:var(--muted)}button:disabled{opacity:.5;cursor:not-allowed}.auth-links{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px}#recovery-codes{font:13px/2 monospace;white-space:pre;overflow:auto;background:#10231f;padding:16px;border-radius:8px;color:var(--amber)}.auth-dialog .codes-check{display:flex;gap:10px;align-items:flex-start;line-height:1.6}.codes-check input{width:20px;min-height:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--amber)}.account-sidebar nav{flex-wrap:wrap}.account-sidebar>strong{overflow-wrap:anywhere}.account-table .account-button{font-size:12px;padding:8px 12px}#codes-dialog>p{font-size:14px;line-height:1.7;color:var(--muted)}

/* Display labels are independent of authorization roles. */
#account-role{overflow-wrap:anywhere}.display-role-cell{min-width:280px;max-width:360px;white-space:normal!important}.display-role-form{display:flex;gap:8px;align-items:center;margin:0}.display-role-form input{min-width:120px;width:160px;flex:1;min-height:44px;background:#10231f;border:1px solid #718779;border-radius:6px;color:var(--paper);padding:10px 12px;font:14px Arial,sans-serif}.display-role-form input::placeholder{color:var(--muted)}.display-role-form input:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.display-role-form button{font-size:14px;padding:10px 12px}.display-role-form button:disabled{opacity:.5;cursor:default}.display-role-status{display:block;font-size:14px;line-height:1.5;color:var(--muted);white-space:normal;overflow-wrap:anywhere}.display-role-status:not(:empty){margin-top:8px}.display-role-form input:disabled{opacity:.7}

.account-users-scroll-hint{display:none}#account-users .display-role-form .account-button{font-size:14px}@media(max-width:850px){#account-users .account-users-scroll-hint{display:block;font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:16px}}
