/* Shared dark customer area; authentication, CSRF and QR contrast are preserved. */
body{background:var(--paper)}body>main.shell{width:min(1160px,calc(100% - 64px));padding:0;margin:0 auto;flex:1}body>footer.shell{width:min(1160px,calc(100% - 64px));padding:24px 0;margin:40px auto 0;border-color:var(--line);background:transparent;color:var(--muted);font-size:11px}
.site-header{font-family:Montserrat,system-ui,sans-serif;background:var(--navy);border-color:var(--line)}.site-header .shell{width:min(1160px,calc(100% - 64px))}.site-header .nav{display:flex;min-height:90px;gap:28px;padding:0}.site-header .brand{font-size:23px;font-weight:600;letter-spacing:-.6px;gap:12px}.site-header .brand small{font-size:8px;letter-spacing:1.2px;color:var(--muted);display:block}.site-header .brand-logo{width:58px;height:58px}.brand-cyan{color:var(--cyan)}.site-header .nav>nav{display:flex;width:auto;margin-left:auto;gap:28px;padding:0;border:0;order:initial;justify-content:flex-end}.site-header nav a{font-size:13px;color:var(--muted);min-height:44px}.site-header nav .nav-account{color:var(--ink);font-weight:600}.site-header .nav-end{margin:0;display:flex}.site-header .language button{min-height:44px;min-width:40px;padding:0;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font-size:12px}.site-header a:hover{color:var(--cyan)}
.page-heading,.account-page .page-heading,.security-page .page-heading{padding-top:36px;margin-bottom:24px}.page-heading h1,.account-page .page-heading h1,.security-page .page-heading h1{font-size:clamp(30px,4vw,42px);line-height:1.2;margin:12px 0 18px;font-weight:600}.eyebrow{color:var(--cyan);font-size:10px;letter-spacing:.16em}.card,.provider,.auth-card,.security-overview>.card,.account-overview .account-access{background:#111f2b;color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:0 16px 40px #00000012}.card h2,.auth-heading h1,.auth-card h1,.security-overview h2{color:var(--ink);font-weight:600}.card p,.auth-heading p,.auth-field-note,.otp-help,.account-access .access-private,.account-qr figcaption,.billing-page .page-heading [role=status],.hint,.muted{color:var(--muted)}
input,textarea,select,.auth-card input,.auth-card.otp-card input.otp-code,.account-access input{background:#09131d;color:var(--ink);border:1px solid #3a5362;border-radius:10px;box-shadow:none;padding:12px 14px;min-height:48px}input:focus,textarea:focus,select:focus{border-color:var(--cyan)}input::placeholder,textarea::placeholder{color:#91a7b7;opacity:1}.auth-card input{font-size:16px}input:autofill{box-shadow:0 0 0 1000px #142531 inset;-webkit-text-fill-color:var(--ink)}label{color:var(--ink);font-size:13px;font-weight:600}.button,.auth-card .button,.account-access .button{background:var(--cyan);border:1px solid transparent;color:var(--navy);font-weight:600;font-size:13px;min-height:48px;padding:13px 20px;border-radius:12px}.button:hover,.auth-card .button:hover{background:#91e2ff;color:var(--navy)}.button.secondary,.security-overview .button.secondary,.auth-card .auth-telegram-button{background:#172d3b;color:var(--ink);border:1px solid #38505e}.button.secondary:hover,.security-overview .button.secondary:hover,.auth-card .auth-telegram-button:hover{background:#203d4c;border-color:var(--cyan);color:var(--ink)}.button.danger{background:#492936;color:#ffd9df;border-color:#a2556a}.text-button,.secondary-link,.quiet-link,.auth-back,.auth-back a,.access-setup{color:var(--cyan)}.auth-divider{color:var(--muted)}.auth-divider:before,.auth-divider:after{background:var(--line)}.auth-divider span{background:#111f2b;color:var(--muted)}.auth-card{max-width:480px;margin:44px auto 18px;padding:32px}.auth-page main.shell{padding-top:0}.auth-heading h1{font-size:32px;letter-spacing:-.035em}.auth-back{text-align:center;font-size:12px;margin:20px auto;min-height:44px;display:flex;align-items:center;justify-content:center}.otp-card .otp-mail-icon{background:#163a58;color:var(--cyan)}.otp-help{border-color:var(--line)}.otp-error,.error,.alert-error{color:#ffd0d7;background:#3c2330;border-color:#84505e}.notice,.banner{background:#172d3b;border-color:#375464;color:var(--ink)}.badge,.status-pill{background:#17364f;color:#a5e6ff}.status-card,.account-overview .status-card{background:linear-gradient(145deg,#132d3a,#0d202c);border:1px solid #31515c;border-radius:18px}.status-card h2{color:#fff;font-weight:600}.account-overview .status-explanation,.account-overview .expiry>span{color:#bdd0dc}.account-overview .expiry strong{color:var(--ink)}.account-qr img,.qr img{background:#fff;padding:8px;border-radius:12px;color:#000}.account-access h2{font-size:23px}.account-access input{font-size:12px}.identity-list li,.card hr,.otp-help,.footer{border-color:var(--line)}.security-panel .security-actions .button{font-size:12px}.recovery,.recovery-codes,#recovery-codes{background:#09131d;border-color:var(--line);color:var(--ink)}code{color:#a8e4ff;background:#102c44;border-radius:5px;padding:2px 5px;overflow-wrap:anywhere}.help-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.help-intro{max-width:820px}.help-intro h2{font-size:21px}.help-intro p{font-size:14px}.help-intro a:not(.button){overflow-wrap:anywhere}.feedback-page .card{max-width:820px;margin-bottom:22px}.feedback-page .page-heading{max-width:820px}.feedback-page form textarea{resize:vertical}.account-grid>*{min-width:0}.auth-footer,.provider-note{color:var(--muted)}
@media(max-width:960px){body>main.shell,body>footer.shell,.site-header .shell{width:calc(100% - 48px)}.security-overview{grid-template-columns:1fr}.site-header .nav>nav{gap:24px}}
@media(max-width:640px){body>main.shell,body>footer.shell,.site-header .shell{width:calc(100% - 32px)}.site-header .nav{min-height:76px;gap:14px;flex-wrap:wrap;padding:12px 0}.site-header .brand{font-size:18px;gap:9px}.site-header .brand-logo{width:44px;height:44px}.site-header .brand small{font-size:6px;letter-spacing:.6px}.site-header .nav>nav{order:3;flex-basis:100%;justify-content:space-between;margin:0;border-top:1px solid var(--line);padding-top:5px}.site-header .nav-end{margin-left:auto}.site-header nav a{min-height:44px;font-size:13px}.auth-card{margin-top:28px;padding:24px 20px;max-width:100%}.auth-heading h1,.otp-card .auth-heading h1{font-size:28px}.page-heading,.account-page .page-heading,.security-page .page-heading{padding-top:26px}.account-overview .account-access,.account-overview .status-card,.security-overview>.card{padding:22px}.account-overview .account-access{grid-template-columns:1fr}.account-qr{justify-self:center}.help-links>.button{flex:1;min-width:150px}.footer{gap:16px;flex-wrap:wrap}.account-tools{padding:18px}.billing-options{grid-template-columns:1fr}}

/* Override older auth-specific light surfaces as well as generic components. */
body.auth-page{background:var(--paper)}
body.auth-page .auth-card input[type=email],body.auth-page .auth-card input[type=text],body.auth-page .auth-card input.otp-code{background:#09131d;color:var(--ink);border-color:#3a5362}
.auth-card .auth-field-note,.auth-card .auth-existing,.auth-card .auth-bottom,.auth-card .auth-hint,.auth-card small,.auth-card .hint{color:var(--muted)}
.auth-card .eyebrow{color:var(--cyan)}
body .status-card .button,body .account-payment .button{background:var(--cyan);color:var(--navy)}
body .status-card .status-pill{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;width:auto;border-radius:100px;padding:4px 10px;font-size:12px;line-height:1.5}
body .auth-card .auth-telegram-button svg{color:var(--cyan)}

.auth-card .auth-account-note{color:var(--muted)}

.feedback-page .help-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.feedback-page .help-links>.button{width:auto;min-width:0;margin:0;padding:12px 16px}@media(max-width:640px){.feedback-page .help-links{grid-template-columns:1fr}}

/* Keep legacy hover/focus rules from switching dark controls back to light. */
body .button:hover:not(:disabled),body .auth-card .auth-primary:hover:not(:disabled){background:#91e2ff;color:var(--navy)}
body .button.secondary:hover:not(:disabled),body .auth-card .auth-telegram-button:hover:not(:disabled){background:#203d4c;color:var(--ink);border-color:var(--cyan)}
body .button.danger:hover:not(:disabled){background:#62313f;color:#ffd9df}
body .auth-back:hover{color:#c4edff}
body.auth-page :where(a,button,input):focus-visible{outline:3px solid #82deff;outline-offset:4px}
