.studio-app{--paper:#ffffff;--surface:#ffffff;--tint:#f5f5f5;--ink:#0d0d0d;--ink-2:#3d3d3d;--ink-3:#737373;--rule:#e8e8e8;--rule-strong:#d1d1d1;--accent:#d0101b;--accent-ink:#a80c15;--accent-wash:#fdecec;--ok:#0d0d0d;--ok-wash:#f0f0f0;--warn:#a80c15;--warn-wash:#fdecec;--focus:#d0101b;--serif:var(--font-studio-serif),"Newsreader",Georgia,"Times New Roman",serif;--sans:var(--font-studio-sans),"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--radius:16px;--radius-sm:12px}@media (prefers-color-scheme:dark){.studio-app{--paper:#0d0d0d;--surface:#171717;--tint:#1f1f1f;--ink:#ffffff;--ink-2:#d4d4d4;--ink-3:#9a9a9a;--rule:#2a2a2a;--rule-strong:#3d3d3d;--accent:#ff3b42;--accent-ink:#ff6a70;--accent-wash:#2b1213;--ok:#ffffff;--ok-wash:#262626;--warn:#ff6a70;--warn-wash:#2b1213;--focus:#ff3b42}}.studio-app[data-theme=dark]{--paper:#0d0d0d;--surface:#171717;--tint:#1f1f1f;--ink:#ffffff;--ink-2:#d4d4d4;--ink-3:#9a9a9a;--rule:#2a2a2a;--rule-strong:#3d3d3d;--accent:#ff3b42;--accent-ink:#ff6a70;--accent-wash:#2b1213;--ok:#ffffff;--ok-wash:#262626;--warn:#ff6a70;--warn-wash:#2b1213;--focus:#ff3b42}.studio-app *{box-sizing:border-box}.studio-app{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--sans);-webkit-font-smoothing:antialiased}.studio-app a{color:inherit}.studio-app :focus-visible{outline:2px solid var(--focus);outline-offset:2px}.studio-app .num{font-variant-numeric:tabular-nums}.studio-app .serif{font-family:var(--serif)}.studio-app .muted{color:var(--ink-3)}.studio-app .sample-note{font-size:12px;color:var(--ink-3)}.studio-app .wordmark{display:inline-flex;align-items:baseline;gap:8px;text-decoration:none;color:var(--ink)}.studio-app .wordmark b{font:600 22px/1 var(--serif);letter-spacing:-.01em}.studio-app .wordmark span{font:600 10px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:#fff;background:var(--accent);padding:4px 8px 3px;border-radius:999px}.studio-app .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:var(--radius-sm);border:1px solid var(--ink);background:var(--ink);color:var(--paper);font:500 15px var(--sans);text-decoration:none;cursor:pointer}.studio-app .btn:hover{background:var(--accent);border-color:var(--accent)}.studio-app .btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--rule-strong)}.studio-app .btn.secondary:hover{border-color:var(--ink);background:var(--surface)}.studio-app .btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}.studio-app .btn.accent:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.studio-app .btn.block{width:100%}.studio-app .btn.small{min-height:36px;padding:0 12px;font-size:14px}.studio-app .field{display:grid;gap:6px;margin-bottom:16px}.studio-app .field label{font-weight:500;font-size:14px}.studio-app .field input,.studio-app .field select{height:46px;padding:0 14px;border:1px solid var(--rule-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink);font:15px var(--sans);width:100%}.studio-app .field input:focus,.studio-app .field select:focus{border-color:var(--accent);outline:2px solid var(--focus);outline-offset:1px}.studio-app .field .hint{font-size:13px;color:var(--ink-3)}.studio-app .row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}.studio-app .divider{display:flex;align-items:center;gap:12px;color:var(--ink-3);font-size:13px;margin:20px 0}.studio-app .divider:after,.studio-app .divider:before{content:"";flex:1;border-top:1px solid var(--rule)}.studio-app .auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.studio-app .auth-main{display:flex;flex-direction:column;padding:32px clamp(16px,6vw,72px)}.studio-app .auth-main header{margin-bottom:auto}.studio-app .auth-form{width:100%;max-width:400px;margin:48px auto}.studio-app .auth-form h1{font:500 34px/1.15 var(--serif);letter-spacing:-.015em;margin:0 0 8px}.studio-app .auth-form>p{color:var(--ink-2);margin:0 0 28px}.studio-app .auth-main footer{margin-top:auto;font-size:13px;color:var(--ink-3);display:flex;gap:16px;flex-wrap:wrap}.studio-app .auth-aside{background:#0d0d0d;color:#fff;margin:16px 16px 16px 0;border-radius:24px;padding:32px clamp(16px,5vw,64px);display:flex;flex-direction:column;justify-content:center}.studio-app .auth-aside h2{font:500 28px/1.2 var(--serif);margin:0 0 24px;max-width:26ch;letter-spacing:-.01em}.studio-app .auth-aside .label{color:#ff4d55}.studio-app .auth-aside .muted{color:#a3a3a3}.studio-app .band-scale{border-top:1px solid #2e2e2e}.studio-app .band-scale div{display:grid;grid-template-columns:56px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid #2e2e2e}.studio-app .band-scale b{font:500 26px/1 var(--serif);color:#ff4d55}.studio-app .band-scale p{margin:0;color:#c4c4c4;font-size:14px}.studio-app .band-scale strong{display:block;color:#fff;font-weight:500}.studio-app .google-g{width:18px;height:18px}@media (max-width:860px){.studio-app .auth{grid-template-columns:1fr}.studio-app .auth-aside{margin:0 16px 16px}}.studio-app .app{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:100vh}.studio-app .side{border-right:1px solid var(--rule);padding:24px 16px;display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh}.studio-app .side .wordmark{flex-direction:column;align-items:flex-start;gap:6px;padding:0 10px}.studio-app .side .wordmark b{white-space:nowrap}.studio-app .side nav{display:grid;gap:2px}.studio-app .side nav p{font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin:16px 10px 6px}.studio-app .side nav a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--radius-sm);text-decoration:none;color:var(--ink-2);font-size:14px}.studio-app .side nav a:hover{background:var(--tint);color:var(--ink)}.studio-app .side nav a[aria-current=page]{background:var(--ink);color:var(--paper);font-weight:500}.studio-app .side nav a[aria-current=page] small{color:#bdbdbd}.studio-app .side nav a small{font-size:12px;color:var(--ink-3)}.studio-app .side .me{margin-top:auto;border-top:1px solid var(--rule);padding-top:16px;font-size:14px}.studio-app .side .me span{display:block;color:var(--ink-3);font-size:13px}.studio-app .main{padding:28px clamp(16px,4vw,48px) 64px;max-width:1160px;width:100%}.studio-app .topbar{display:none}.studio-app .greeting{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:24px;border-bottom:1px solid var(--rule)}.studio-app .greeting h1{font:500 34px/1.15 var(--serif);margin:4px 0 0;letter-spacing:-.015em}.studio-app .greeting .date{font-size:13px;color:var(--ink-3)}.studio-app .facts{display:flex;gap:32px;flex-wrap:wrap}.studio-app .facts div{display:grid}.studio-app .facts span{font-size:12px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.08em}.studio-app .facts b{font:500 28px/1.1 var(--serif)}.studio-app .facts b small{font:400 14px var(--sans);color:var(--ink-3)}.studio-app .section{margin-top:36px}.studio-app .section-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px}.studio-app .section-head h2{font:500 21px/1.2 var(--serif);margin:0}.studio-app .section-head a{font-size:14px;color:var(--ink-2)}.studio-app .continue{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--radius);padding:20px 24px}.studio-app .continue h3{margin:2px 0 6px;font:500 20px/1.25 var(--serif)}.studio-app .continue p{margin:0;color:var(--ink-2);font-size:14px}.studio-app .meter{height:6px;background:var(--rule);border-radius:999px;margin-top:12px;max-width:360px}.studio-app .meter i{display:block;height:100%;background:var(--accent);border-radius:999px}.studio-app .label{font:600 11px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.studio-app .skills{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.studio-app .skill{padding:20px;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);text-decoration:none;display:flex;flex-direction:column;gap:4px;min-height:172px}.studio-app .skill:hover{background:var(--tint)}.studio-app .skill h3{margin:0;font:500 18px var(--serif)}.studio-app .skill .band{font:500 40px/1 var(--serif);margin:10px 0 2px}.studio-app .skill .band small{font:400 14px var(--sans);color:var(--ink-3)}.studio-app .skill p{margin:0;font-size:13px;color:var(--ink-3)}.studio-app .skill .go{margin-top:auto;font-size:14px;color:var(--ink-2)}.studio-app .skill.soon .band{color:var(--ink-3);font-size:20px;margin-top:18px}.studio-app .two{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:28px}.studio-app table.list{width:100%;border-collapse:separate;border-spacing:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden;font-size:14px}.studio-app table.list th{text-align:left;font:600 11px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:10px 16px;border-bottom:1px solid var(--rule);background:var(--tint)}.studio-app table.list td{padding:13px 16px;border-bottom:1px solid var(--rule);vertical-align:middle}.studio-app table.list tr:last-child td{border-bottom:0}.studio-app table.list td.score{font:500 18px var(--serif)}.studio-app .tag{display:inline-block;font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--rule-strong);color:var(--ink-2);white-space:nowrap}.studio-app .tag.ok{background:var(--ok-wash);border-color:transparent;color:var(--ok)}.studio-app .tag.warn{background:var(--warn-wash);border-color:transparent;color:var(--warn)}.studio-app .tag.accent{background:var(--accent-wash);border-color:transparent;color:var(--accent-ink)}.studio-app .mocks{display:grid;gap:0;background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);overflow:hidden}.studio-app .mock{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--rule)}.studio-app .mock:last-child{border-bottom:0}.studio-app .mock .n{font:500 22px var(--serif);color:var(--ink-3)}.studio-app .mock h3{margin:0;font-size:15px;font-weight:500}.studio-app .mock p{margin:0;font-size:13px;color:var(--ink-3)}.studio-app .panel{background:var(--surface);border:1px solid var(--rule);border-radius:var(--radius);padding:18px 20px}.studio-app .panel+.panel{margin-top:16px}.studio-app .panel h3{margin:0 0 12px;font:500 17px var(--serif)}.studio-app .credit-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--rule);font-size:14px}.studio-app .credit-row:last-of-type{border-bottom:0}.studio-app .credit-row b{font:500 18px var(--serif)}.studio-app .countdown{font:500 44px/1 var(--serif)}.studio-app .countdown small{font:400 15px var(--sans);color:var(--ink-3)}@media (max-width:1020px){.studio-app .skills{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-app .two{grid-template-columns:1fr}}@media (max-width:760px){.studio-app .app{grid-template-columns:1fr}.studio-app .side{display:none}.studio-app .topbar{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:2}.studio-app .main{padding:20px 16px 88px}.studio-app .greeting h1{font-size:28px}.studio-app .facts{gap:20px}.studio-app .continue{grid-template-columns:1fr}.studio-app .continue .btn{width:100%}.studio-app .skill{min-height:0;padding:16px}.studio-app .skill .band{font-size:32px}.studio-app .hide-sm{display:none}.studio-app table.list td,.studio-app table.list th{padding:11px 12px}.studio-app .tabbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);background:var(--surface);border-top:1px solid var(--rule);z-index:3}.studio-app .tabbar a{padding:10px 0 12px;text-align:center;font-size:12px;text-decoration:none;color:var(--ink-3)}.studio-app .tabbar a[aria-current=page]{color:var(--ink);font-weight:600;box-shadow:inset 0 2px 0 var(--accent)}}@media (min-width:761px){.studio-app .tabbar{display:none}}.studio-app picture{display:inline-flex;flex:none}.studio-app picture img{display:block;width:100%;height:100%;object-fit:contain}.studio-app .mark{width:34px;height:34px;align-self:center}.studio-app .wordmark{align-items:center}.studio-app .side .wordmark{flex-direction:row;flex-wrap:wrap;align-items:center;column-gap:10px;row-gap:6px}.studio-app .side .wordmark span{flex-basis:100%;width:max-content;flex-grow:0;margin-left:44px}.studio-app .ic{width:20px;height:20px}.studio-app .nl{display:inline-flex;align-items:center;gap:10px}.studio-app .side nav a[aria-current=page] .ic img{filter:invert(1) hue-rotate(180deg)}.studio-app .faded{opacity:.45}.studio-app .skill-ic{width:44px;height:44px;margin-bottom:10px}.studio-app .ic-head{display:inline-flex;align-items:center;gap:10px}.studio-app .ic-head .ic{width:22px;height:22px}.studio-app .aside-ic{width:40px;height:40px;object-fit:contain}.studio-app .band-scale div{align-items:center}.studio-app .me-row{display:flex;align-items:center;gap:10px}.studio-app .me-badge{width:34px;height:34px}.studio-app .plan-chip{display:inline-block;margin-top:10px;font-size:12px;font-weight:600;padding:4px 12px;border-radius:999px;background:var(--accent);color:#fff;text-decoration:none}.studio-app .plan-chip.free{background:var(--surface);color:var(--ink);border:1px solid var(--ink)}.studio-app .plan-line{display:inline-flex;align-items:center;gap:8px;margin:10px 0 0;font-size:14px;color:var(--ink-2)}.studio-app .plan-badge{width:22px;height:22px}.studio-app .top-right{display:inline-flex;align-items:center;gap:10px}.studio-app .top-badge{width:28px;height:28px}.studio-app{min-height:100vh}.studio-app .form-error{margin:0 0 14px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--accent-wash);color:var(--accent-ink);font-size:14px}.studio-app .pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.studio-app .btn:disabled{opacity:.6;cursor:wait}.studio-app .empty{padding:18px 16px;color:var(--ink-3);font-size:14px;background:var(--surface);border:1px dashed var(--rule-strong);border-radius:var(--radius)}.studio-app .side nav .nav-soon{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;color:var(--ink-3);font-size:14px}.studio-app .side nav .nav-soon small{font-size:12px}.studio-app .side nav .nav-button{text-align:left;padding:9px 12px;border:0;background:none;color:var(--ink-2);font:14px var(--sans);border-radius:var(--radius-sm);cursor:pointer}.studio-app .side nav .nav-button:hover{background:var(--tint);color:var(--ink)}.studio-app .skill .soon-band{font:500 18px var(--serif);color:var(--ink-3);margin:14px 0 6px}.studio-app>p.main[role=status]{padding:40px 16px}.studio-app .auth-form a,.studio-app .auth-main footer a,.studio-app .section-head a{text-decoration:underline;text-underline-offset:3px}