/* Sign-in, administration and public stats share the product's typography and surfaces. */
.studio-login,.studio-admin,.studio-public{--r:18px;--radius:18px;background:var(--bg);color:var(--text);font-family:'Golos Text',system-ui,sans-serif;font-variant-numeric:tabular-nums}
.studio-login h1,.studio-login h2,.studio-admin h1,.studio-admin h2,.studio-public h1,.studio-public h2{font-family:'Manrope',system-ui,sans-serif;letter-spacing:-.045em}.studio-login :focus-visible,.studio-admin :focus-visible,.studio-public :focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
body.studio-login{display:block;padding:0;min-height:100dvh}.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,1fr);min-height:100dvh;padding:22px;gap:20px}.auth-intro{background:var(--surface);color:var(--on-accent);border-radius:24px;padding:40px 48px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-brand{display:flex;align-items:center;gap:12px;color:var(--on-accent);text-decoration:none;font-weight:750;font-size:18px;letter-spacing:-.03em}.auth-brand>span{display:grid;place-items:center;background:var(--accent);color:var(--on-accent);width:39px;height:39px;border-radius:12px;transform:none;font-size:24px}.auth-intro-copy{padding:70px 0;position:relative;z-index:1}.auth-eyebrow{color:var(--faint);font-size:11px;text-transform:uppercase;letter-spacing:.11em;margin:0 0 22px}.auth-intro h2{font-size:clamp(32px,3.8vw,58px);line-height:1.1;font-weight:650;margin:0 0 26px}.auth-intro-copy>p:not(.auth-eyebrow){font-size:14px;line-height:1.8;color:var(--muted);max-width:340px}.auth-capabilities{display:flex;flex-direction:column;gap:16px;margin-top:42px}.auth-capabilities span{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--text)}.auth-capabilities span:before{content:'';width:6px;height:6px;border:2px solid var(--accent-2);border-radius:3px}.auth-bottom{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:9px}.auth-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--pos)}.auth-form-side{display:flex;align-items:center;justify-content:center;min-width:0;padding:40px}.studio-login .card{overflow:visible;width:100%;max-width:410px;background:transparent;border:0;border-radius:0;padding:0;box-shadow:none;backdrop-filter:none}.studio-login .logo{background:var(--accent-soft);color:var(--accent-2);margin:0 0 24px;border-radius:14px;width:50px;height:50px}.studio-login h1{text-align:left;font-size:29px}.studio-login .lead{text-align:left;font-size:13px;line-height:1.7;margin:12px 0 26px;color:var(--muted)}.studio-login .steps{justify-content:flex-start;margin-bottom:26px}.studio-login .step{font-size:11px}.studio-login .step-index{background:var(--card-3);color:var(--muted);border-color:var(--border)}.studio-login .step[aria-current="step"] .step-index{background:var(--accent);color:var(--on-accent)}.studio-login input{background:var(--surface);border:1px solid var(--border-2);border-radius:10px;color:var(--text);min-height:50px;font-size:16px;box-shadow:none}.studio-login button{border-radius:10px}.studio-login .btn,.studio-login button[type=submit]{background:var(--accent);color:var(--on-accent);border:0;min-height:48px;font-weight:600}.studio-login .destination{background:var(--card-2);border-color:var(--line);color:var(--text)}.studio-login .destination strong{color:var(--text)}.studio-login .help,.studio-login .footer,.studio-login .footnote{color:var(--faint)}.studio-login .emergency{border-color:var(--border-2)}.studio-login .error{background:var(--neg-soft);color:var(--neg);border-color:var(--neg-line)}
.studio-admin .appbar{background:var(--surface);border-bottom:1px solid var(--border);backdrop-filter:none}.studio-admin .appbar-in{max-width:1400px;padding:23px 30px}.studio-admin .brand .logo{background:var(--accent);color:var(--on-accent);box-shadow:none;border-radius:12px}.studio-admin .brand-kicker{color:var(--faint)}.studio-admin .brand h1{font-size:24px;color:var(--text)}.studio-admin .wrap{max-width:1400px;padding:32px 30px 80px}.studio-admin .btn{background:var(--surface);color:var(--muted);border-color:var(--border2);border-radius:9px;min-height:39px}.studio-admin .btn.primary{background:var(--accent);color:var(--on-accent)}.studio-admin .btn.danger{background:var(--danger-fill);color:var(--on-accent)}.studio-admin .mode-pill{background:var(--pos-soft);color:var(--pos);border-color:var(--pos-line)}.studio-admin .card,.studio-admin .profile,.studio-admin .qa{background:var(--surface);border-color:var(--border);border-radius:18px;box-shadow:0 3px 12px #00000004}.studio-admin .lookup-card{padding:30px;grid-template-columns:1fr 1fr;gap:40px}.studio-admin .lookup-copy h2{font-size:27px}.studio-admin .eyebrow{color:var(--accent-2)}.studio-admin .finder{background:none;backdrop-filter:none}.studio-admin input,.studio-admin select,.studio-admin textarea{background:var(--bg);color:var(--text);border-color:var(--border2)}.studio-admin .input-shell{background:var(--surface);border-color:var(--border2)}.studio-admin .finder label{color:var(--text)}.studio-admin .safety-note{background:var(--pos-soft);border-color:var(--pos-line);border-radius:12px;color:var(--muted)}.studio-admin .safety-note strong{color:var(--pos)}.studio-admin .safety-icon{background:var(--pos-soft);color:var(--pos)}.studio-admin .empty{border-color:var(--border2);background:transparent;box-shadow:none;padding:52px 28px}.studio-admin .empty-icon{background:var(--accent-soft);color:var(--accent-2)}.studio-admin .empty h2{color:var(--text)}.studio-admin .empty-features span{background:var(--surface);border-color:var(--border);color:var(--muted)}.studio-admin .qa-ico{background:var(--panel2);color:var(--accent-2)}.studio-admin .chip{background:var(--panel2);border-color:var(--border)}.studio-admin .safety-action{color:var(--accent-2)}.studio-admin .toast{background:var(--card-3);color:var(--text)}.studio-admin .code,.studio-admin pre{background:var(--bg);color:var(--text);border-color:var(--line)}
.studio-public .wrap{max-width:1240px;padding:36px 28px 80px}.studio-public .brand{padding:0 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px}.studio-public .logo{background:var(--accent);box-shadow:none;border-radius:12px}.studio-public .brand h1{font-size:26px}.studio-public .hero{gap:0;margin:24px 0 40px;background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden}.studio-public .stat{background:none;border:0;border-right:1px solid var(--line);border-radius:0;padding:25px}.studio-public .stat:last-child{border:0}.studio-public .stat:after{display:none}.studio-public .stat .v{font-family:'Manrope',system-ui;font-size:39px;color:var(--text)}.studio-public .stat .ic{display:none}.studio-public .card{padding:24px;border-radius:18px}.studio-public .tab{font-family:inherit;border-radius:9px;padding:10px 15px;font-size:12px;min-height:40px}.studio-public .tab.active{background:var(--accent);color:var(--on-accent)}.studio-public .sec h2{font-size:20px}.studio-public .row{padding:14px;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.studio-public .row.top1{background:var(--warn-soft)}.studio-public .row.top2,.studio-public .row.top3{background:var(--card-2)}.studio-public .av{border-radius:50%;width:36px;height:36px}.studio-public .nm{font-size:13px}.studio-public .val{font-size:14px}.studio-public .dot{animation:none;box-shadow:none}.studio-public .rec{padding:24px}.studio-public .rec .v{font-family:'Manrope',system-ui}.studio-public .sk{background:var(--card-3);animation:none}
@media(max-width:850px){.auth-layout{grid-template-columns:1fr;gap:0;padding:0;min-height:100dvh}.auth-intro{padding:24px;border-radius:0}.auth-intro-copy,.auth-bottom{display:none}.auth-brand{font-size:16px}.auth-brand>span{width:32px;height:32px;font-size:21px}.auth-form-side{padding:38px 24px;align-items:flex-start}.studio-login .card{max-width:420px}.studio-admin .lookup-card{grid-template-columns:1fr;gap:20px}.studio-admin .appbar-in{padding:18px 20px}.studio-admin .wrap{padding:24px 20px 70px}.studio-admin .brand h1{font-size:20px}.studio-public .hero{grid-template-columns:1fr 1fr}.studio-public .stat{padding:22px;border-bottom:1px solid var(--line)}.studio-public .stat:nth-child(2){border-right:0}.studio-public .stat:nth-child(3){border-bottom:0}}
@media(max-width:480px){.auth-form-side{padding:30px 22px}.studio-login h1{font-size:25px}.studio-login .lead{font-size:13px}.studio-login .logo{margin-bottom:20px}.studio-admin .appbar-in{padding:16px 14px}.studio-admin .wrap{padding:20px 14px 60px}.studio-admin .lookup-card{padding:22px 18px}.studio-admin .lookup-copy h2{font-size:23px}.studio-admin .btn{min-height:44px}.studio-admin input{font-size:16px}.studio-admin .safety-note{padding:16px}.studio-admin .empty{padding:35px 18px}.studio-admin .brand h1{font-size:18px}.studio-public .wrap{padding:24px 14px 60px}.studio-public .brand{gap:10px}.studio-public .brand h1{font-size:22px}.studio-public .brand .sub{font-size:10px}.studio-public .live-pill{font-size:10px;padding:6px 9px}.studio-public .stat{padding:20px}.studio-public .stat .v{font-size:32px}.studio-public .card{padding:18px}.studio-public .sec h2{font-size:18px}.studio-public .tab{padding:9px 12px;min-height:44px}.studio-public .grid2{grid-template-columns:1fr}.studio-public .nm{font-size:12px}.studio-public .val{font-size:12px}}
@media(prefers-reduced-motion:reduce){.studio-login *,.studio-admin *,.studio-public *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.studio-public .grid2>div{min-width:0}.studio-public .heat-scroll{max-width:100%;overflow:auto}.studio-public .card{min-width:0}

/* Consistent labels, icon baselines and controls across the standalone pages. */
.studio-login .helper,.studio-login .message{font-size:12px;line-height:1.6}
.studio-login label{font-size:12px;line-height:1.5;margin-bottom:8px}
.studio-login .steps{gap:8px}
.studio-login .text-button,.studio-login .secondary-button{font-size:12px;line-height:1.4}
.studio-login .emergency summary{font-size:11px;line-height:1.5}
.studio-login .primary-button,.studio-login .secondary-button,.studio-login .text-button{transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}
.studio-login .primary-button:hover:not(:disabled){background:var(--accent-hover)}
.studio-login .secondary-button:hover:not(:disabled){background:var(--card-2);border-color:var(--line-2)}
.studio-login .text-button:hover:not(:disabled){color:var(--accent-2)}
.studio-admin .btn{min-height:44px;gap:8px;font-size:12px;font-weight:600;line-height:1.4;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,opacity var(--motion-fast) ease}
.studio-admin .btn:active{transform:none}
.studio-admin .btn:hover:not(:disabled){background:var(--card-2);border-color:var(--line-2)}
.studio-admin .btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}
.studio-admin .btn.danger:hover:not(:disabled){background:var(--danger-fill);border-color:var(--neg-line)}
.studio-admin .mode-pill{min-height:40px}
.studio-admin .brand-kicker,.studio-admin .eyebrow,.studio-admin .hint,.studio-admin .pf-id,.studio-admin .qa-d,.studio-admin .section-title p,.studio-admin .section-badge,.studio-admin .adv-summary-copy small,.studio-admin .bucket-t,.studio-admin .op-sum,.studio-admin .empty-features span{font-size:11px;line-height:1.5}
.studio-admin .finder label,.studio-admin .fld label{font-size:12px;line-height:1.5;margin-bottom:8px}
.studio-admin .lookup-copy p,.studio-admin .empty-copy p,.studio-admin .safety-copy,.studio-admin .safety-copy strong,.studio-admin .warn,.studio-admin .qa-res{font-size:12px;line-height:1.6}
.studio-admin .chip .l,.studio-admin .pf-lvl .lvlbox span{font-size:11px;line-height:1.4;letter-spacing:.035em}
.studio-admin .qa-t{font-size:14px;line-height:1.5}
.studio-admin .safety-action{font-size:11px;min-height:36px}
.studio-admin .input-shell>svg,.studio-admin .btn svg{width:16px;height:16px;flex:none}
.studio-public .tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:600;line-height:1.4;transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease}
.studio-public .tab svg{width:16px;height:16px;flex:none}
.studio-public .tab:hover{border-color:var(--accent-line);background:var(--card-3);color:var(--text)}
.studio-public .tab.active:hover{background:var(--accent-hover);color:var(--on-accent)}
.studio-public .tab:active{transform:none}
.studio-public .tabs{gap:8px;margin-bottom:16px}
.studio-public .brand .sub,.studio-public .live-pill,.studio-public .lvl,.studio-public .foot{font-size:11px;line-height:1.5}
.studio-public .stat .v{margin-top:0}
.studio-public .stat .l,.studio-public .rec .l{font-size:12px;line-height:1.5}
.studio-public .row{gap:12px;min-height:64px;transition:background-color var(--motion-fast) ease}
.studio-public .row:not(.top1):not(.top2):not(.top3):hover{background:var(--card-2)}
.studio-public .nm{font-weight:600;line-height:1.5}
@media(max-width:850px){.auth-layout{grid-template-rows:auto 1fr}}
@media(max-width:480px){.studio-admin .safety-action{min-height:44px}.studio-public .tabs .tab{padding:9px 12px;min-height:44px}}
