:root{color-scheme:dark;--bg:#080e1b;--surface:#101b2d;--line:#2e4057;--text:#edf3fc;--muted:#b3c3d7;--mint:#8de2d1;--warm:#ffd8a2;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:16px;line-height:1.65}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 0 0,#20264788,transparent 60%),var(--bg);color:var(--text);min-height:100vh}a{color:var(--mint);text-underline-offset:5px}header,footer{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1440px;margin:auto;padding:25px 5vw}header{border-bottom:1px solid var(--line)}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;color:var(--text);font-size:13px;font-weight:750;letter-spacing:2px}.brand img{border-radius:50%}.brand-sub{display:block;font-size:9px;color:var(--muted);letter-spacing:3px;margin-top:3px}.language{display:flex;align-items:center;gap:12px;font-size:13px}.language select{width:auto;padding:9px}.layout{display:grid;grid-template-columns:minmax(240px,.95fr) minmax(360px,1.2fr);gap:7vw;max-width:1360px;margin:auto;padding:65px 5vw 90px;min-height:75vh}aside{position:relative;min-width:0}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--mint);font-weight:700}h1{font-size:clamp(32px,4vw,53px);letter-spacing:-1.8px;line-height:1.13;margin:22px 0}h2{font-size:28px;line-height:1.25;letter-spacing:-.7px;margin:0 0 20px}h3{line-height:1.3}p{color:var(--muted)}.benefits{list-style:none;padding:0;margin:32px 0}.benefits li{padding:15px 0;border-bottom:1px solid var(--line);font-size:14px}.benefits li:before{content:'✦';color:var(--mint);margin-right:13px}.panel{border:1px solid var(--line);border-radius:20px;background:linear-gradient(140deg,#14243aee,#101827ee);padding:32px;margin-bottom:22px;box-shadow:0 15px 50px #0002}.panel p{font-size:14px}.notice{background:#172b35;border-left:3px solid var(--mint);padding:15px 18px;border-radius:0 9px 9px 0;font-size:14px}.empty{text-align:center;padding:32px 15px}.empty-mark{display:block;color:var(--mint);font-size:42px}.muted,.micro{color:var(--muted);font-size:13px}label{display:block;font-size:14px;margin:18px 0 7px}input,select,button{font:inherit}input,select{width:100%;border:1px solid #496079;background:#090f1d;color:var(--text);padding:13px;border-radius:9px;min-height:47px}button,.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:47px;border:1px solid var(--mint);border-radius:9px;padding:12px 21px;background:var(--mint);color:#071a1d;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}button.secondary{background:transparent;color:var(--text);border-color:#647995}button.danger{background:transparent;border-color:#f6b7ad;color:#ffd2cb}button:disabled{opacity:.5;cursor:not-allowed}form>button{margin-top:24px;width:100%}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:20px}.check{display:flex;align-items:flex-start;gap:10px}.check input{width:20px;height:20px;min-height:20px;flex-shrink:0;margin-top:4px}.nav{display:grid;gap:8px;margin:25px 0}.nav a{padding:12px 16px;border:1px solid transparent;border-radius:9px;text-decoration:none;color:var(--muted);font-size:14px}.nav a[aria-current=page]{background:#19313c;border-color:#427969;color:var(--mint)}.nav a:hover{border-color:#526b84}.stats{font-size:36px;color:var(--mint);font-weight:750}.row{padding:15px 0;border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.row strong{display:block}.badge{display:inline-block;padding:3px 9px;background:#1d3342;border-radius:5px;color:var(--mint);font-size:12px}.hash,code{overflow-wrap:anywhere;word-break:break-word;font-size:12px}.error{color:#ffd2cb;background:#351f27;padding:14px;border:1px solid #98616c;border-radius:9px}.success{padding:14px;background:#18382f;border:1px solid #447c6b;border-radius:9px;color:#b6f3d8}#status:empty{display:none}#status{margin-bottom:20px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);font-size:12px;color:var(--muted);flex-wrap:wrap}.skip{position:absolute;left:15px;top:-100px;background:var(--bg);z-index:20;padding:10px}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--warm);outline-offset:4px}button:hover:not(:disabled){filter:brightness(1.1)}@media(max-width:800px){.layout{grid-template-columns:1fr;gap:30px;padding-top:30px}.layout:has(.nav){gap:10px}.nav{display:flex;overflow:auto;gap:6px;padding-bottom:10px}.nav a{white-space:nowrap}.panel{padding:24px}.hero-description{max-width:550px}.layout:has(.nav) aside h1{font-size:28px}.layout:has(.nav) .hero-description{display:none}h1{max-width:550px}header{padding:18px 5vw}.language>span{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media(max-width:400px){.brand{font-size:11px;letter-spacing:1px}.brand img{width:40px;height:40px}.panel{padding:20px}.language{gap:5px}h2{font-size:25px}}

/* Shared password visibility control; no layout change when toggling. */
.password-control{position:relative}
.password-control input{padding-right:62px}
.password-control .password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px;padding:0;border:1px solid transparent;border-radius:7px;background:transparent;color:var(--muted);display:flex;align-items:center;justify-content:center}
.password-control .password-toggle:hover:not(:disabled){background:#21384c;color:var(--mint);filter:none}
.password-control .password-toggle[aria-pressed=true]{color:var(--mint);background:#19313c}
.password-control .password-toggle:focus-visible{outline:3px solid var(--warm);outline-offset:0}
.password-control .password-toggle svg{pointer-events:none;flex-shrink:0}
.password-control input::-ms-reveal,.password-control input::-ms-clear{display:none}

/* Private account identity and optional profile fields. */
.account-identity{display:flex;align-items:center;gap:12px;padding:13px 17px;margin:18px 0;border:1px solid #427969;border-radius:12px;background:linear-gradient(120deg,#19313c,#142139);text-decoration:none;overflow-wrap:anywhere;min-width:0}
.account-identity>span:last-child{min-width:0}.account-star{color:var(--mint);font-size:24px;flex-shrink:0}
.profile-email{padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:22px;overflow-wrap:anywhere}.profile-email span,.profile-email strong{display:block}.profile-email span,.profile-email a{font-size:13px}.profile-email strong{font-weight:500;margin:4px 0 8px}
.profile-fields{display:grid;grid-template-columns:1fr 1fr;column-gap:16px}.profile-fields label:first-child{grid-column:1;grid-row:1}.profile-fields input:nth-child(2){grid-column:1;grid-row:2}.profile-fields label:nth-child(3){grid-column:2;grid-row:1}.profile-fields input:last-child{grid-column:2;grid-row:2}.profile-fields input{min-width:0}
.profile-preview{border:1px solid #427969;background:#142e35;padding:16px;border-radius:12px;margin:22px 0;overflow-wrap:anywhere}.profile-preview>span{display:block;color:var(--muted);font-size:12px}.profile-preview output{display:block;color:var(--mint);font-size:20px;font-weight:650;margin-top:6px}
@media(max-width:480px){.profile-fields{display:block}.profile-preview output{font-size:18px}}

/* Private MFA setup: locally displayed QR image and manual fallback. */
.mfa-steps{padding-left:22px;color:var(--muted);font-size:14px}.mfa-steps li{padding:5px 0}
.mfa-qr{margin:24px 0;text-align:center}.mfa-qr img{display:block;max-width:100%;height:auto;margin:0 auto;padding:12px;background:white;border-radius:12px;box-sizing:content-box;width:240px}
.mfa-qr figcaption{font-size:12px;color:var(--muted);margin-top:10px}.mfa-enrollment details{padding:15px;border:1px solid var(--line);border-radius:10px}
.mfa-enrollment summary{cursor:pointer;color:var(--mint);font-size:14px}.mfa-secret{display:block;padding:12px;margin:12px 0;background:var(--bg);border:1px solid var(--line);border-radius:8px;font-size:14px;letter-spacing:1px;user-select:all}
.device-empty{display:flex;align-items:center;gap:8px;padding:10px 12px;margin:10px 0;border:1px dashed var(--line);border-radius:8px}.device-empty span{color:var(--mint);font-size:20px}
.mfa-enrollment [hidden]{display:none!important}@media(max-width:400px){.mfa-qr img{width:200px;padding:10px}}

#admin-verification{margin-bottom:1.25rem}#admin-verification summary{cursor:pointer;padding:1rem;border:1px solid var(--line,#41566e);border-radius:.75rem}#admin-verification[open] summary{margin-bottom:1rem}#grant-fields{border:0;padding:0;margin:0;min-width:0}#grant-fields:disabled{opacity:.6}

/* Keep sign-out separate from the MFA verification and recovery help. */
.auth-session-actions{display:flex;justify-content:flex-end;margin-top:24px;padding-top:18px;border-top:1px solid var(--line)}
.auth-session-actions button{width:auto;min-width:150px;margin:0}.mfa-recovery-help{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}.mfa-recovery-help summary{cursor:pointer;color:var(--mint)}

.studio-return{display:grid;gap:6px;margin:20px 0}.studio-return .micro{color:var(--muted);line-height:1.6}

.privacy-document{max-width:1000px;margin:auto;padding:32px 20px}.privacy-document p{overflow-wrap:anywhere}.privacy-document h1{font-size:clamp(30px,5vw,48px)}
