/* Cross-page readability and navigation fixes from the 32-page review. */
textarea{resize:vertical}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--member-accent,#308cef);outline-offset:3px}
.legal-content{min-width:0;overflow-wrap:anywhere}
.legal-summary a{display:block;min-height:40px;padding-top:9px;padding-bottom:9px;font-size:13px}
.company-field small,.company-ai-notice{font-size:12px;line-height:1.65}
.company-form-footer{position:static!important;box-shadow:none!important;margin-top:20px}
.company-page,.security-page{padding-top:38px!important}
.company-heading h1,.security-heading h1{font-size:clamp(30px,4vw,46px)!important;letter-spacing:-.03em}
.security-card[data-level="2"]{order:-1}
.security-card[data-level="3"]:has(button:disabled){border-color:var(--border-soft);background:var(--surface)}
.security-grid{align-items:start}
.subscription-page [data-account-section][hidden],.subscription-page #aide[hidden]{display:none!important}
.subscription-page #accountDetails{min-height:200px}
.subscription-page:has(#accountOverview:not([hidden])) #accountDetails{min-height:0}
.module-hero{padding-top:34px!important;padding-bottom:34px!important;min-height:0!important}
.module-hero .hero-trust{display:none}
.module-hero .module-hero-icon{display:none}
.module-hero h1{font-size:clamp(28px,3.6vw,44px)!important;margin:18px auto!important}
.module-hero .hero-text{font-size:15px!important;line-height:1.65!important;margin-bottom:0!important}
.member-section-nav a{scroll-margin-inline:12px}
@media(max-width:600px){
 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="hidden"]),textarea,select{font-size:16px!important}
 .auth-main{padding-top:26px!important}
 .auth-intro{text-align:left!important}
 .auth-intro h1{font-size:30px!important;line-height:1.15!important;margin:14px 0!important}
 .auth-intro>p{font-size:14px!important;line-height:1.65!important;margin-bottom:0!important}
 .auth-intro .auth-benefits{display:none}
 .auth-container{gap:24px!important}
 .onboarding-main{padding-top:28px!important}
 .onboarding-heading h1{font-size:30px!important}
 .legal-page .header-inner{height:auto!important;min-height:78px;flex-wrap:wrap;gap:8px!important;padding-top:12px;padding-bottom:12px}
 .legal-page .logo{flex:1 1 110px!important;width:110px!important;max-width:140px;height:44px!important}
 .legal-page .header-actions{gap:6px!important;min-width:0;flex-wrap:wrap;justify-content:flex-end}
 .legal-page .header-login-link{font-size:11px!important;min-height:44px;display:flex;align-items:center}
 .legal-page .header-button{font-size:11px!important;padding:10px!important;min-height:44px}
 .legal-page .theme-toggle{display:inline-flex!important;min-width:44px;min-height:44px}
 .legal-hero{padding-top:34px!important;padding-bottom:32px!important}
 .legal-summary{padding:18px!important}
 .security-page,.company-page{padding-top:28px!important}
 .security-heading{text-align:left!important;margin-bottom:24px!important}
 .security-heading p{font-size:14px;line-height:1.65}
 .security-card{padding:22px!important}
 .security-level{flex-wrap:wrap}
 .module-hero{padding-top:24px!important;padding-bottom:24px!important}
 .module-hero .hero-badge{font-size:10px!important}
 .module-hero h1{font-size:28px!important}
 .module-hero .hero-text{font-size:14px!important}
 .overview-launch{padding:22px!important}
 .overview-launch h2{font-size:24px!important}
 .overview-card{min-height:190px!important}
 .overview-shortcuts a{min-height:72px}
 .member-header~.module-return-bar{padding:8px 0}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.mfa-shell{min-width:0;max-width:560px;box-sizing:border-box}.mfa-code input{width:100%;min-width:0;box-sizing:border-box}.mfa-factor{min-width:0;flex-wrap:wrap}.mfa-factor>strong,.mfa-factor>span{min-width:0;overflow-wrap:anywhere}
@media(max-width:600px){.mfa-shell{padding:24px 18px!important}.mfa-shell h1{font-size:28px!important}.mfa-factor{padding:13px!important;gap:10px}.mfa-factor>span{text-align:left!important}.mfa-shell>p{font-size:14px}.mfa-logo{max-width:100%}}

/* One quiet, touch-friendly theme control across every header. */
body #themeToggle.theme-control,body [data-theme-toggle].theme-control{box-sizing:border-box;display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 44px;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;gap:0;border:1px solid var(--border-soft,rgba(148,163,184,.24))!important;border-radius:14px!important;background:var(--surface,rgba(148,163,184,.06))!important;color:var(--theme-control-ink,#dce8f8)!important;box-shadow:none;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
body #themeToggle.theme-control:hover{border-color:#459aea!important;background:rgba(59,130,246,.1)!important}
body #themeToggle.theme-control:active{transform:scale(.95)}
.theme-control svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}
.member-menu summary .menu-chevron{flex:none;transition:transform .2s}
.member-menu[open] summary .menu-chevron{transform:rotate(180deg)}
.site-header .header-button,.site-header .header-login-link,.v2-header .v2-login-link{border-radius:14px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.site-header .header-actions,.v2-header-actions{gap:10px;align-items:center}
.account-credits{margin-top:56px;padding-top:42px;border-top:1px solid var(--border-soft,rgba(148,163,184,.2))}
.account-credits .plans-heading p{max-width:580px;margin:14px auto 0;color:var(--text-soft);font-size:15px;line-height:1.65}
#inlineCredits .credits-current-balance{font-size:13px;margin-bottom:28px;background:rgba(59,130,246,.08)}
#inlineCredits .credit-pack-card{position:relative;padding:27px;border-radius:22px;background:rgba(148,163,184,.045);min-height:320px}
#inlineCredits .credit-pack-credits{font-size:26px;line-height:1.2}
#inlineCredits .credit-pack-price{font-size:clamp(27px,2.2vw,35px);margin-top:18px}
#inlineCredits .credit-pack-label{font-size:14px}
#inlineCredits .credit-pack-description{line-height:1.6}
#inlineCredits .credit-pack-button{min-height:46px}
@media(max-width:800px){#inlineCredits .credits-packs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.account-credits{margin-top:36px;padding-top:30px}#inlineCredits .credits-packs{grid-template-columns:1fr}#inlineCredits .credit-pack-card{min-height:0}.site-header .header-actions{gap:6px}}

/* Consistent public navigation. */
.site-header:not(.member-header),.v2-header,.service-site-header{border-bottom:1px solid var(--border-soft,rgba(148,163,184,.2));backdrop-filter:blur(20px)}
.site-header:not(.member-header) .header-inner,.v2-header-inner,.service-nav{min-height:82px;gap:20px}
.site-header:not(.member-header) .logo,.v2-logo,.service-brand{max-width:220px}
.site-header .main-nav,.v2-nav,.service-nav-links{gap:22px}
.site-header .main-nav a,.v2-nav a,.service-nav-links>a:not(.service-button){font-size:13px;font-weight:600}
.site-header .assistant-header-brand{display:none}
.v2-header .v2-button-small,.service-nav .service-button{border-radius:14px;min-height:44px}
@media(max-width:600px){.site-header:not(.member-header) .header-inner,.v2-header-inner,.service-nav{min-height:76px;gap:10px}.site-header .header-actions .theme-control{order:10}.service-nav .service-theme-toggle{order:10}}

html[data-theme="light"] body .theme-control{color:#29415f!important}html[data-theme="dark"] body .theme-control{color:#dce8f8!important}.standalone-theme{display:flex;justify-content:flex-end;margin-bottom:14px}

.public-menu{display:none;position:relative;flex-shrink:0;color:var(--text-main,var(--text,#e8edf5))}
.public-menu summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 12px;list-style:none;font:600 12px/1.4 Inter,system-ui,sans-serif;cursor:pointer;border:1px solid rgba(148,163,184,.24);border-radius:14px}
.public-menu summary::-webkit-details-marker{display:none}.public-menu[open] .menu-chevron{transform:rotate(180deg)}
.public-menu nav{position:absolute!important;top:calc(100% + 10px)!important;right:0!important;width:230px!important;max-width:calc(100vw - 24px);display:flex!important;flex-direction:column;gap:2px!important;padding:10px!important;border:1px solid rgba(148,163,184,.24);border-radius:16px;background:#0d1728;box-shadow:0 18px 50px #0003;z-index:1200}
.public-menu nav a{display:flex!important;align-items:center;min-height:44px;padding:10px 12px!important;font:500 13px/1.4 Inter,system-ui,sans-serif;color:#e8edf5!important;text-decoration:none;border-radius:9px}.public-menu nav a:hover{background:#258fff16}
html[data-theme="light"] .public-menu{color:#29415f}html[data-theme="light"] .public-menu nav{background:#fff}html[data-theme="light"] .public-menu nav a{color:#29415f!important}
@media(max-width:800px){
 body .public-header .header-inner,body .public-header .v2-header-inner,body .public-header .service-nav{display:flex;flex-wrap:nowrap!important;gap:10px!important;min-height:76px!important;padding-top:10px;padding-bottom:10px}
 body .public-header .logo,body .public-header .v2-logo,body .public-header .service-brand{flex:1 1 auto!important;width:auto!important;min-width:0!important;max-width:180px!important;height:48px!important;margin-right:auto}
 body .public-header .header-actions,body .public-header .v2-header-actions,body .public-header .service-nav-links{display:flex!important;flex:0 0 auto;gap:0!important;margin:0!important}
 body .public-header .main-nav,body .public-header .v2-nav{display:none!important}
 body .public-header .header-actions>:not(.theme-control),body .public-header .v2-header-actions>:not(.theme-control),body .public-header .service-nav-links>:not(.theme-control){display:none!important}
 body .public-header .public-menu{display:block!important}
}
.public-menu nav{left:auto!important;box-sizing:border-box}
@media(max-width:800px){body .public-header .assistant-header-brand{display:none!important}body .public-header .logo,body .public-header .v2-logo,body .public-header .service-brand{display:flex!important;align-items:center;order:0!important}body .public-header .header-actions,body .public-header .v2-header-actions,body .public-header .service-nav-links{order:1!important}body .public-header .public-menu{order:2!important}}

html[data-theme="light"]{--theme-control-ink:#29415f}html[data-theme="dark"]{--theme-control-ink:#dce8f8}
