/* Authentication and access management share the dashboard theme tokens. */
.auth-body{min-height:100vh}.auth-body main{padding-bottom:24px}.auth-body button,.auth-body input{font:inherit}.auth-body input{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--text);padding:12px 13px;transition:border-color .15s}.auth-body input:hover{border-color:var(--muted)}.auth-body input:focus{border-color:var(--blue)}.auth-body input::placeholder{color:var(--muted);opacity:.8}.auth-body label{display:grid;gap:9px;font-size:11px;font-weight:550}.auth-body p{line-height:1.7}.auth-button{display:inline-flex;justify-content:center;align-items:center;gap:24px;background:var(--blue);color:var(--bg);padding:12px 17px;border-radius:5px;font-size:11px;font-weight:650;border:1px solid transparent;white-space:nowrap}.auth-button:hover{color:var(--bg);filter:brightness(1.08)}.auth-button:disabled{opacity:.45}.auth-quiet{padding:9px 10px;color:var(--muted);font-size:11px!important}.auth-quiet:hover{color:var(--text)}.auth-toolbar{display:flex;align-items:center;gap:14px}.auth-sidebar .brand{padding:0}.auth-sidebar-account,.sidebar-bottom.auth-sidebar-account{margin-top:auto;border-top:1px solid var(--line);padding:22px 10px 0;display:flex;gap:10px;align-items:center}
.auth-body.auth-admin .auth-workspace .topbar .breadcrumb{font-size:9px;letter-spacing:1.4px;font-weight:600}
.auth-body.auth-admin .auth-workspace .topbar{height:69px;padding:0 30px}
.auth-body.auth-admin .auth-workspace main{padding:31px 30px 0}.auth-sidebar-account strong,.auth-sidebar-account small{display:block;font-size:11px}.auth-sidebar-account small{font-size:9px;color:var(--muted);margin-top:5px}.auth-avatar{width:32px;height:32px;border:1px solid var(--line);display:grid;place-items:center;border-radius:50%;color:var(--blue);background:var(--panel)}.auth-workspace main{max-width:1600px}.auth-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0 34px}.auth-stats>div{padding:22px}.auth-stats span{font-size:9px;text-transform:uppercase;letter-spacing:1.1px;color:var(--muted)}.auth-stats strong{display:block;font-size:34px;font-weight:500;letter-spacing:-1px;margin:13px 0 9px}.auth-stats small{font-size:10px;color:var(--muted)}.auth-section{scroll-margin-top:24px;margin-bottom:36px}.auth-section .section-line{margin-top:0}.auth-table-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:23px}.auth-table-heading h2{font-size:16px}.auth-table-heading p{font-size:11px;color:var(--muted);margin-top:5px}.auth-search{min-width:200px}.auth-search>span{position:absolute;width:1px;height:1px;overflow:hidden}.auth-search input{font-size:11px}.table-wrap{overflow-x:auto}.auth-table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}.auth-table th{background:var(--bg);padding:12px 20px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.8px;font-weight:550;white-space:nowrap;border-block:1px solid var(--line)}.auth-table td{padding:18px 20px;border-bottom:1px solid var(--line);vertical-align:middle;white-space:nowrap}.auth-table tr:last-child td{border-bottom:0}.auth-table tbody tr:hover{background:color-mix(in srgb,var(--blue) 4%,transparent)}.auth-table strong{font-weight:550}.auth-table small{display:block;color:var(--muted);font-size:10px;line-height:1.8}.auth-dates{font-variant-numeric:tabular-nums;font-size:10px}.auth-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--line);border-radius:4px;font-size:9px;color:var(--muted);white-space:nowrap}.auth-badge:before{content:'';width:4px;height:4px;border-radius:50%;background:currentColor}.auth-badge.is-active{color:var(--green);background:color-mix(in srgb,var(--green) 8%,transparent);border-color:color-mix(in srgb,var(--green) 25%,var(--line))}.auth-edit{font-size:10px;color:var(--blue);padding:8px;border:1px solid var(--line);border-radius:4px}.auth-edit:hover{color:var(--text);border-color:var(--blue)}.auth-row-actions{display:flex;flex-wrap:wrap;gap:8px}.auth-delete{color:var(--muted)}.auth-delete:hover{color:#e6a4a4;border-color:color-mix(in srgb,#e6a4a4 35%,var(--line))}.auth-confirm-dialog{border:1px solid var(--line);border-radius:8px;padding:0;max-width:420px;width:calc(100% - 32px);background:var(--panel);color:var(--text)}.auth-confirm-dialog::backdrop{background:#0009}.auth-confirm-form{padding:22px 24px 20px;display:grid;gap:12px}.auth-confirm-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.auth-confirm-copy{font-size:12px;color:var(--muted);line-height:1.65}.auth-confirm-target{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:5px;background:var(--bg)}.auth-confirm-target strong{display:block;font-size:13px;font-weight:550}.auth-confirm-target small{display:block;margin-top:6px;color:var(--muted);font-size:10px}.auth-confirm-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.auth-button-danger{background:color-mix(in srgb,#c96 18%,var(--panel));border-color:color-mix(in srgb,#e6a4a4 45%,var(--line));color:var(--text)}.auth-button-danger:hover{filter:none;color:#fff;background:color-mix(in srgb,#c66 55%,var(--panel))}.auth-editor{display:grid;grid-template-columns:1fr 2fr;margin-top:14px;padding:26px;gap:40px;scroll-margin-top:20px}.auth-editor-intro h2{margin:12px 0 9px;font-size:18px}.auth-editor-intro>p:last-child{font-size:11px;color:var(--muted);max-width:260px}.auth-account-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.auth-wide,.auth-form-actions{grid-column:1/-1}.auth-form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:8px}.auth-form-actions>div{display:flex;gap:10px;align-items:center}.auth-body .auth-check{display:flex;gap:9px;align-items:center;font-weight:400;color:var(--muted)}.auth-check input{width:16px;height:16px;accent-color:var(--blue)}.auth-alert{padding:15px 18px;margin-bottom:20px;border:1px solid var(--line);border-radius:5px;font-size:12px;line-height:1.6}.auth-alert.error{color:var(--text);border-left:3px solid var(--amber);background:color-mix(in srgb,var(--amber) 7%,var(--panel))}.auth-alert.success{color:var(--green);border-left:3px solid var(--green);background:var(--panel)}.auth-empty{text-align:center!important;padding:40px!important}.auth-empty strong{font-size:15px}.auth-empty p,.auth-no-results{color:var(--muted);font-size:11px}.auth-no-results{padding:25px;text-align:center}.auth-sr-only{position:absolute;width:1px;height:1px;overflow:hidden}.auth-menu-permissions{border:1px solid var(--line);border-radius:5px;padding:18px 20px;display:grid;gap:16px}.auth-menu-permissions legend{font-size:11px;font-weight:650;padding:0 4px}.auth-menu-group{display:grid;gap:10px}.auth-menu-group .eyebrow{margin:0}.auth-menu-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px 16px}.auth-footer{display:flex;gap:20px;align-items:center;padding:22px 0;border-top:1px solid var(--line);color:var(--muted);font-size:10px}.auth-footer>span{margin-right:auto}.auth-footer a{color:var(--muted)}
.auth-login{background:radial-gradient(ellipse at 0 40%,color-mix(in srgb,var(--blue) 8%,transparent),transparent 60%),var(--bg)}.auth-login-header{max-width:1360px;margin:auto;padding:28px 48px;display:flex;justify-content:space-between;align-items:center}.auth-login-header .brand{width:220px;padding:0}.auth-login-layout{max-width:1264px!important;min-height:calc(100vh - 205px);display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center;padding:45px 48px 70px!important}.auth-story h1{font-size:clamp(38px,4.6vw,64px);font-weight:500;letter-spacing:-2.8px;line-height:1.1;margin:24px 0}.auth-story h1 span{color:var(--blue)}.auth-story-copy{max-width:410px;font-size:14px;color:var(--muted);line-height:1.85!important}.auth-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line);margin-top:42px;padding-top:26px}.auth-story-grid span{font-size:8px;letter-spacing:1.2px;color:var(--blue)}.auth-story-grid h2{font-size:13px;letter-spacing:0;margin:13px 0 7px}.auth-story-grid p{font-size:11px;color:var(--muted)}.auth-story-foot{display:flex;justify-content:space-between;gap:15px;font-size:7px;letter-spacing:1.4px;margin-top:46px;color:var(--muted)}.auth-login-card{padding:34px;box-shadow:0 24px 80px #0000000c}.auth-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:35px}.auth-card-symbol{font-size:26px;color:var(--muted)}.auth-login-card h2{font-size:27px;line-height:1.2;letter-spacing:-.8px;margin:12px 0 15px}.auth-card-copy{font-size:12px;color:var(--muted);margin-bottom:26px}.auth-signin-form{display:grid;gap:18px}.auth-signin-form>.auth-button{width:100%;justify-content:space-between;margin-top:4px}.auth-caption{font-size:10px;color:var(--muted)}.auth-signin-form .auth-caption{margin-top:-6px}.auth-caption a{color:var(--muted);text-decoration:underline}.auth-card-bottom{border-top:1px solid var(--line);padding-top:23px;margin-top:28px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;font-size:10px}.auth-card-bottom>span{color:var(--muted)}.auth-google{width:100%;display:flex;align-items:center;justify-content:center;gap:13px;padding:15px 18px;background:#fff;color:#202124;border:1px solid #dadce0;border-radius:5px;font-size:13px;font-weight:550}.auth-google:hover{color:#202124;background:#f4f7fb}.auth-google>span{margin-left:auto;color:#707b89}.auth-access-note{margin-top:18px;text-align:center}.auth-current{padding:15px;border:1px solid var(--line);margin-bottom:20px;display:grid;gap:8px;font-size:11px}.auth-current>span{color:var(--muted)}.auth-login-footer{max-width:1168px;margin:0 auto;padding:22px 0}.auth-body [hidden]{display:none!important}
@media(min-width:1800px){.auth-login-layout{gap:130px}}
@media(max-width:1100px){.auth-editor{grid-template-columns:1fr;gap:24px}.auth-editor-intro>p:last-child{max-width:none}.auth-stats{grid-template-columns:repeat(2,1fr)}.auth-login-layout{gap:45px}.auth-login-footer{margin:0 48px}.auth-login-card{padding:28px}.auth-story h1{letter-spacing:-1.5px}}
@media(max-width:760px){.auth-login-header{padding:20px 24px}.auth-login-header .brand{width:180px}.auth-login-layout{grid-template-columns:1fr;gap:30px;padding:24px!important;min-height:0}.auth-story h1{font-size:36px;margin:14px 0}.auth-story-copy{font-size:12px}.auth-story-grid,.auth-story-foot{display:none}.auth-login-card{max-width:520px;width:100%;margin:0 auto 20px}.auth-login-footer{margin:0 24px}.auth-sidebar{position:static;width:100%;padding:14px 20px;overflow:visible}.auth-sidebar .brand{width:165px}.auth-sidebar .workspace-label,.auth-sidebar .nav-label,.auth-sidebar-account{display:none}.auth-sidebar nav{display:flex;flex-wrap:wrap;margin-top:15px;gap:4px}.auth-sidebar .nav-item{width:auto;font-size:10px;padding:4px 7px}.auth-sidebar .nav-item b{margin-left:5px}.auth-body.auth-admin .auth-workspace:has(.auth-sidebar){margin-left:0}.auth-body.auth-admin .auth-workspace .topbar{padding:10px 15px;height:auto;min-height:74px;flex-wrap:wrap}.auth-body.auth-admin .auth-workspace main{padding:24px 15px 0}.auth-body.auth-admin .auth-workspace .topbar .breadcrumb{font-size:8px;letter-spacing:.8px}.auth-toolbar{gap:0}.auth-workspace .page-heading{align-items:flex-start;flex-direction:column}.auth-workspace h1{font-size:28px}.auth-table-heading{align-items:stretch;flex-direction:column;padding:18px}.auth-editor{padding:20px}.auth-stats{gap:10px}.auth-stats>div{padding:16px}.auth-stats small{font-size:9px}.auth-account-form{grid-template-columns:1fr}.auth-form-actions{align-items:flex-start;flex-direction:column}.auth-form-actions>div{width:100%;justify-content:flex-end}.auth-footer{flex-wrap:wrap;gap:14px;font-size:9px}.auth-body .auth-login-header .brand{display:block}}
@media(prefers-reduced-motion:reduce){.auth-body *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.auth-workspace .economy-story.admin-story{padding-bottom:0}.auth-dashboard{display:flex;flex-direction:column;gap:12px;margin:12px 0 0}.auth-dashboard .auth-stats,.auth-dashboard .auth-dashboard-links{margin:0;gap:12px}.auth-dashboard-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:36px}.auth-dashboard-links>a{padding:26px;color:var(--text)}.auth-dashboard-links>a:hover{border-color:var(--blue)}.auth-dashboard-links h2{font-size:17px;margin:15px 0 10px}.auth-dashboard-links p:last-child{font-size:11px;color:var(--muted)}@media(max-width:1050px){.auth-dashboard-links{grid-template-columns:1fr}}
.auth-notice-dialog{width:min(800px,calc(100vw - 32px));max-height:85dvh;box-sizing:border-box;margin:auto;padding:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text);box-shadow:0 24px 80px #0005;overflow:auto}.auth-notice-dialog::backdrop{background:#061421aa;backdrop-filter:blur(4px)}.auth-notice-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;position:sticky;top:0;background:var(--panel);border-bottom:1px solid var(--line);z-index:1}.auth-notice-dialog>header h2{font-size:18px;margin:0}.auth-notice-content{padding:16px 20px;font-size:13px;line-height:1.65}.auth-notice-content .page-heading{display:none}.auth-notice-content .panel{margin:0 0 12px;padding:14px}.auth-notice-content h2,.auth-notice-content h3{font-size:16px}.auth-notice-content p{margin:8px 0}.auth-notice-content a{color:var(--blue)}
/* Keep the notice header outside the scrolling content and clip rounded corners. */
.auth-notice-dialog{overflow:hidden}.auth-notice-dialog[open]{display:flex;flex-direction:column}.auth-notice-dialog>header{position:static;flex-shrink:0;padding:16px 20px;min-height:60px;box-sizing:border-box}.auth-notice-dialog>header h2{line-height:1.3}.auth-notice-dialog>header button{flex-shrink:0;margin:0;padding:6px 8px;line-height:1.4}.auth-notice-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px 20px;scrollbar-width:thin}.auth-notice-content>.panel{padding:0;margin:0;border:0;box-shadow:none;background:transparent}.auth-notice-content .panel-intro{padding:0;margin:0 0 14px;font-size:11px;line-height:1.5;color:var(--muted)}.auth-notice-content h2{margin:0 0 10px;line-height:1.4}.auth-notice-content h3{margin:18px 0 6px;line-height:1.4}@media(max-width:540px){.auth-notice-dialog>header{padding:14px 16px}.auth-notice-content{padding:14px 16px}}
.auth-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.auth-request-cta{margin-top:20px;padding:14px;border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--blue) 6%,var(--panel));font-size:12px}.auth-request-cta p{margin:6px 0 12px;color:var(--muted)}.subscription-drawer{box-sizing:border-box;width:min(480px,100vw);height:100dvh;max-height:100dvh;max-width:100vw;margin:0 0 0 auto;padding:24px;border:0;border-left:1px solid var(--line);background:var(--panel);color:var(--text);overflow:auto}.subscription-drawer[open]{animation:request-slide .25s ease-out}.subscription-drawer::backdrop{background:#06142199;backdrop-filter:blur(3px)}.subscription-drawer header{display:flex;align-items:center;justify-content:space-between;gap:15px}.subscription-drawer h2{font-size:23px;margin:8px 0}.subscription-drawer>p{font-size:12px;line-height:1.7;color:var(--muted);margin:12px 0 20px}.subscription-drawer form{display:grid;gap:14px}.subscription-drawer label{display:grid;gap:6px;font-size:12px}.subscription-drawer input,.subscription-drawer textarea{padding:10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--text);font:inherit;width:100%;box-sizing:border-box}.subscription-drawer small{color:var(--muted)}.subscription-drawer [role=status]{font-size:12px;line-height:1.5;color:var(--blue)}@keyframes request-slide{from{transform:translateX(100%)}to{transform:translateX(0)}}@media(max-width:760px){.auth-story-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:22px;padding-top:18px}.auth-story-grid h2{margin-top:6px}}@media(prefers-reduced-motion:reduce){.subscription-drawer[open]{animation:none}}
.auth-login-tools{display:flex;align-items:center;gap:16px}.auth-login-tools .language-switch{display:flex;gap:4px}.auth-login-tools .language-switch a{font-size:12px;padding:7px 9px;border-radius:5px;color:var(--muted)}.auth-login-tools .language-switch [aria-current=true]{background:var(--panel);color:var(--blue);box-shadow:inset 0 0 0 1px var(--line)}@media(max-width:540px){.auth-login-tools{gap:8px}.auth-login-header{gap:12px;flex-wrap:wrap}}
.request-feedback{box-sizing:border-box;width:min(500px,calc(100vw - 32px));max-height:85dvh;overflow:auto;margin:auto;padding:28px;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:18px;background:var(--panel);color:var(--text);box-shadow:0 24px 90px #0005;text-align:center}.request-feedback::backdrop{background:#06142199;backdrop-filter:blur(5px)}.request-feedback h2{font-size:22px;line-height:1.35;margin:16px 0 10px}.request-feedback p{font-size:13px;line-height:1.7;color:var(--muted);margin:0 0 20px}.request-feedback-icon{height:56px;width:56px;box-sizing:border-box;margin:auto;border:2px solid var(--green);border-radius:50%;display:grid;place-items:center;color:var(--green)}.request-feedback-icon::after{content:'✓';font-size:26px}.request-feedback.is-error{border-top-color:var(--red)}.request-feedback.is-error .request-feedback-icon{border-color:var(--red);color:var(--red)}.request-feedback.is-error .request-feedback-icon::after{content:'!'}.request-feedback.is-working .request-feedback-icon{border:5px solid var(--line);border-top-color:var(--blue);animation:request-spin .8s linear infinite}.request-feedback.is-working .request-feedback-icon::after{content:none}@keyframes request-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.request-feedback.is-working .request-feedback-icon{animation:none;border-style:dotted}}
.subscription-tabs-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 12px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}.subscription-tabs-header [role=tablist]{display:flex;gap:6px}.subscription-tabs-header [role=tab]{padding:9px 14px;border-radius:6px;color:var(--muted);font-size:12px}.subscription-tabs-header [aria-selected=true]{background:var(--blue);color:var(--bg)}.subscription-new-count{font-size:12px;color:var(--blue);background:color-mix(in srgb,var(--blue) 9%,var(--panel));padding:6px 10px;border-radius:20px}.subscription-tabs-header+[role=tabpanel]{margin-top:0}@media(max-width:540px){.subscription-tabs-header{flex-wrap:wrap}}
.subscription-new-count:not([data-new-count="0"]){font-size:15px;font-weight:750;background:#b92d3c;color:#fff;padding:10px 16px;border-radius:8px;box-shadow:0 3px 12px #b92d3c35}.request-admin-actions{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:8px}.request-admin-actions .auth-button{font-size:11px;padding:7px 10px}.request-admin-dialog{box-sizing:border-box;width:min(560px,calc(100vw - 32px));max-height:85dvh;overflow:auto;margin:auto;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--text)}.request-admin-dialog::backdrop{background:#06142199;backdrop-filter:blur(4px)}.request-admin-dialog header{display:flex;justify-content:space-between;gap:12px;align-items:center}.request-admin-dialog h2{font-size:20px}.request-admin-dialog>p{margin:10px 0 16px;font-size:12px;overflow-wrap:anywhere}.request-admin-dialog form,.request-admin-dialog fieldset{display:grid;gap:12px}.request-admin-dialog fieldset{padding:12px;border:1px solid var(--line);border-radius:8px}.request-admin-dialog label{display:grid;gap:5px;font-size:12px}.request-admin-dialog input,.request-admin-dialog textarea{font:inherit;padding:9px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--text);min-width:0}.request-admin-dialog p,.request-admin-dialog small{font-size:11px;color:var(--muted);line-height:1.5}.request-admin-dialog .auth-check{display:flex}.request-admin-dialog input[type=checkbox]{width:16px;height:16px}
.request-admin-dialog{width:min(840px,calc(100vw - 32px))}.request-admin-dialog .auth-menu-permissions{padding:14px;gap:12px}.request-admin-dialog .auth-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}.request-admin-dialog .auth-menu-permissions .auth-check{display:flex;align-items:flex-start;gap:8px;line-height:1.4}.request-admin-dialog .auth-menu-permissions input[type=checkbox]{flex-shrink:0;margin:1px 0 0;padding:0}.request-admin-dialog .auth-menu-group{gap:7px}@media(max-width:540px){.request-admin-dialog .auth-menu-grid{grid-template-columns:1fr}}
