.s-main{max-width:var(--g-page-max);padding:0 var(--space-20);margin:0 auto}.s-pad{padding-bottom:var(--size-spacer)}.s-pad-lg{padding-bottom:var(--size-spacer_lg)}.s-pad-tab{padding-bottom:calc(var(--size-bottom_tab) + var(--space-40))}.s-nav{z-index:30;height:var(--size-nav_height);background:var(--color-canvas);border-bottom:1px solid var(--color-line);position:sticky;top:0}.s-nav-in{max-width:var(--g-page-max);height:100%;padding:0 var(--space-20);align-items:center;gap:var(--space-10);margin:0 auto;display:flex}.s-nav-title{font-size:var(--type-15);font-weight:var(--weight-600);letter-spacing:var(--type-tracking-title);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.s-nav-btn{width:var(--size-tap_min);height:var(--size-tap_min);font-size:var(--type-17);color:var(--color-ink2);cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.s-nav-btn.first{margin-left:calc(var(--space-14) * -1)}.s-nav-btn.last{margin-left:auto;margin-right:calc(var(--space-10) * -1);font-size:var(--type-19)}:root{--g-dark-line:color-mix(in srgb, var(--color-accent-on-dark) 22%, var(--color-dark))}.s-nav.dark{background:var(--color-dark);border-bottom-color:#0000}.s-nav.dark .s-nav-title{color:var(--color-dark-ink)}.s-nav.dark .s-nav-btn,.s-nav.dark .s-nav-timer,.s-nav.dark .s-nav-step{color:var(--color-dark-ink2)}.s-nav.dark .s-nav-timer .dot{background:var(--color-accent-on-dark)}.s-nav.dark .s-nav-total{color:var(--color-dark-ink2)}.s-nav.dark .s-nav-total.over{color:var(--color-accent-on-dark)}.s-rail{top:var(--size-nav_height);z-index:29;height:var(--size-tab_height);background:var(--color-band);position:sticky}.s-rail-in{max-width:var(--g-page-max);height:100%;padding:0 var(--space-20);align-items:center;gap:var(--space-12);margin:0 auto;display:flex}.s-rail-menu{width:var(--g-sp24);height:var(--g-sp24);background:var(--color-canvas);border:1px solid var(--color-line);border-radius:var(--radius-sm);color:var(--color-ink2);font-size:var(--type-13);cursor:pointer;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.s-rail-menu:before{content:"";inset:calc((var(--size-tap_min) - var(--g-sp24)) / -2);position:absolute}.s-rail .s-bar{flex:1}.s-rail-n{font-size:var(--type-14);font-weight:var(--weight-700);font-variant-numeric:tabular-nums;flex:none}.s-nav-step{font-size:var(--type-13);font-weight:var(--weight-600);color:var(--color-ink3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto}.s-nav-step+.s-nav-btn.last,.s-nav-step+* .s-nav-btn.last{margin-left:0}.s-nav-timer{align-items:center;gap:var(--space-6);font-size:var(--type-15);font-weight:var(--weight-600);color:var(--color-ink2);font-variant-numeric:tabular-nums;margin-left:auto;display:inline-flex}.s-nav-timer .dot{width:var(--size-status_dot);height:var(--size-status_dot);border-radius:var(--radius-pill);background:var(--color-accent)}.s-nav-total{font-size:var(--type-13);font-weight:var(--weight-400);color:var(--color-ink3);font-variant-numeric:tabular-nums;white-space:nowrap}.s-nav-total.over{color:var(--color-accent);font-weight:var(--weight-600)}.s-tabs{top:var(--size-nav_height);z-index:20;height:var(--size-tab_height);background:var(--color-canvas);border-bottom:1px solid var(--color-line);position:sticky}.s-tabs-in{max-width:var(--g-page-max);height:100%;padding:0 var(--space-20);align-items:center;gap:var(--space-18);margin:0 auto;display:flex}.s-tab{height:100%;font-size:var(--type-14);font-weight:var(--weight-600);letter-spacing:var(--type-tracking-title);color:var(--color-ink3);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;padding:0;display:inline-flex}.s-tab[aria-selected=true]{color:var(--color-ink);border-bottom-color:var(--color-ink)}.s-panel[hidden]{display:none}.s-hero{background:var(--color-dark);color:var(--color-dark-ink)}.s-hero-in{max-width:var(--g-page-max);padding:var(--space-32) var(--space-20);margin:0 auto}.s-hero-label{color:var(--color-accent-on-dark)}.s-hero-num{margin-top:var(--space-12);align-items:flex-end;gap:var(--space-6);display:flex}.s-hero-num b{font-size:var(--type-56);font-weight:var(--weight-700);letter-spacing:var(--type-tracking-display);line-height:var(--type-leading-display);font-variant-numeric:tabular-nums}.s-hero-num span{font-size:var(--type-19);font-weight:var(--weight-600);letter-spacing:var(--type-tracking-title);padding-bottom:var(--space-4)}.s-hero-num.num-sm b{font-size:var(--type-56)}.s-hero-num.num-sm span{font-size:var(--type-17)}.s-hero-num.num-lg b{font-size:var(--type-56)}.s-hero-note{margin-top:var(--space-14);font-size:var(--type-14);color:var(--color-dark-ink2)}.statgrid.no-top{border-top:0}.statgrid .s-accent{color:var(--color-accent)}.statgrid .s-muted{color:var(--color-ink3)}.s-mark{align-items:center;gap:var(--space-6);font-size:var(--type-13);font-weight:var(--weight-600);color:var(--color-ink2);display:inline-flex}.s-mark .dot{width:var(--size-status_dot);height:var(--size-status_dot);background:var(--color-ink3);border-radius:2px}.s-mark.correct .dot{background:var(--color-accent)}.s-actionbar{z-index:40;background:var(--color-canvas);border-top:1px solid var(--color-line);position:fixed;bottom:0;left:0;right:0}.s-actionbar-in{max-width:var(--g-page-max);padding:var(--size-actionbar_pad) var(--space-20);align-items:center;gap:var(--space-10);margin:0 auto;display:flex}.s-abtn{height:var(--g-pill-h);border-radius:var(--radius-pill);border:1px solid var(--color-line);color:var(--color-ink2);font-size:var(--type-14);font-weight:var(--weight-600);cursor:pointer;transition:transform var(--motion-duration_ms) ease;background:0 0;justify-content:center;align-items:center;display:inline-flex}.s-abtn:active{transform:scale(var(--motion-press_scale))}.s-abtn.grow{flex:1}.s-abtn.grow-lg{flex:1.2}.s-abtn.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-canvas);font-size:var(--type-15)}.s-abtn.soft{background:var(--color-accent-soft);border-color:var(--color-accent-soft);color:var(--color-accent);font-size:var(--type-15)}.s-abtn.outline{border-color:var(--color-accent);color:var(--color-accent)}.s-abtn.sm{height:var(--size-pill_button_height);padding:0 var(--space-18);font-size:var(--type-14)}.s-abtn.round{width:var(--g-pill-h);background:var(--color-band);font-size:var(--type-15);border:0;flex:none;padding:0}.s-abtn.round[aria-pressed=true]{background:var(--color-accent-soft)}.s-abtn[disabled]{opacity:var(--motion-press_opacity);cursor:default}.s-float{left:0;right:0;bottom:var(--size-float_bottom);z-index:35;pointer-events:none;justify-content:center;display:flex;position:fixed}.s-float-in{pointer-events:auto;height:var(--size-tap_min);padding:0 var(--space-20);border-radius:var(--radius-pill);background:var(--color-canvas);border:1px solid var(--color-line);align-items:center;gap:var(--space-10);font-size:var(--type-14);font-weight:var(--weight-600);color:var(--color-ink);cursor:pointer;display:inline-flex}.s-float-in.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-canvas)}.s-btabs{z-index:40;height:var(--size-bottom_tab);background:var(--color-canvas);border-top:1px solid var(--color-line);position:fixed;bottom:0;left:0;right:0}.s-btabs-in{max-width:var(--g-page-max);text-align:center;grid-template-columns:repeat(4,1fr);align-items:center;height:100%;margin:0 auto;display:grid}.s-btab{font-size:var(--type-13);font-weight:var(--weight-600);color:var(--color-ink3);justify-content:center;align-items:center;height:100%;display:flex}.s-btab[aria-current=page]{font-weight:var(--weight-700);color:var(--color-accent)}html[data-class=on] .s-btabs-in{grid-template-columns:repeat(5,1fr)}.s-overlay{z-index:60;position:fixed;inset:0}.s-overlay[hidden]{display:none}.s-scrim{background:var(--color-dark);opacity:.4;border:0;width:100%;padding:0;position:absolute;inset:0}.s-sheet{max-width:var(--g-page-max);background:var(--color-canvas);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-18) var(--space-20) var(--space-20);margin:0 auto;position:absolute;bottom:0;left:0;right:0}.s-dialog-wrap{padding:var(--space-26);justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.s-dialog{width:100%;max-width:calc(var(--g-page-max) - var(--space-56));background:var(--color-canvas);border-radius:var(--radius-lg);padding:var(--space-26) var(--space-22) var(--space-20);text-align:center;position:relative}.s-dialog .mark{width:var(--space-56);height:var(--space-56);border-radius:var(--radius-pill);background:var(--color-band);font-size:var(--type-22);font-weight:var(--weight-700);color:var(--color-ink3);justify-content:center;align-items:center;margin:0 auto;display:flex}.s-dialog h2{margin-top:var(--space-18);font-size:var(--type-19);letter-spacing:var(--type-tracking-headline)}.s-dialog p{margin-top:var(--space-8);font-size:var(--type-14);color:var(--color-ink2)}.s-dialog-btns{margin-top:var(--space-22);gap:var(--space-10);display:flex}.s-dialog-btns .s-abtn{flex:1}.s-locked{font-size:var(--type-13);line-height:var(--type-leading-dense);color:var(--color-ink3)}.s-lock-badge{align-items:center;gap:var(--space-4);font-size:var(--type-13);letter-spacing:var(--type-tracking-mono-label);text-transform:uppercase;color:var(--color-ink3);display:inline-flex}.s-dialog-btns.col{gap:var(--space-8);flex-direction:column}.s-dialog-btns.col .s-abtn{width:100%}.s-lock-badge.on-hero{color:var(--color-dark-ink3)}.s-gate{align-items:center;gap:var(--space-14);padding:var(--space-56) var(--space-20);text-align:center;flex-direction:column;display:flex}.s-gate p{font-size:var(--type-14);color:var(--color-ink2)}.s-gap{height:var(--space-8);background:var(--color-band)}.s-meta{font-size:var(--type-13);font-variant-numeric:tabular-nums;font-weight:var(--weight-400);letter-spacing:var(--type-tracking-mono-label);color:var(--color-ink3);font-variant-numeric:tabular-nums}.s-head{justify-content:space-between;align-items:baseline;gap:var(--space-12);display:flex}.s-head .sub{font-size:var(--type-13);color:var(--color-ink3);white-space:nowrap}.s-bar{height:var(--size-bar_track);border-radius:var(--radius-pill);background:var(--color-track);overflow:hidden}.s-bar>i{border-radius:var(--radius-pill);background:var(--color-accent);height:100%;display:block}@media (prefers-reduced-motion:reduce){.s-abtn:active{transform:none}}.chiprow{padding-top:var(--space-14);gap:var(--space-8);display:flex;overflow-x:auto}.chip{height:var(--size-chip_height);padding:0 var(--space-14);border-radius:var(--radius-pill);border:1px solid var(--color-line);color:var(--color-ink2);font-size:var(--type-14);font-weight:var(--weight-600);cursor:pointer;background:0 0;flex:none}.chip[aria-pressed=true]{border-color:var(--color-accent);color:var(--color-accent)}html[data-session=signed-in] body.s-page,html[data-session=signed-in]:has(body.s-page){background:var(--color-band)}html[data-session=signed-in] .s-page .s-actionbar,html[data-session=signed-in] .s-page .s-btabs{box-shadow:var(--elevation-bar);border-top:0}html[data-session=signed-in] .s-page .s-card{max-width:none;margin:var(--space-12) max(var(--space-20), calc((100% - var(--g-page-max)) / 2 + var(--space-20))) 0;padding:var(--space-20);background:var(--color-canvas);border-radius:var(--radius-lg);box-shadow:var(--elevation-card);border:0}html[data-session=signed-in] .s-page .s-card.s-card-first{margin-top:var(--space-20)}html[data-session=signed-in] .s-page .s-card-list>li+li{border-top:1px solid var(--color-line-soft)}html[data-session=signed-in] .s-page .s-card>h2,html[data-session=signed-in] .s-page .s-card>.s-head{margin-bottom:var(--space-8)}html[data-session=signed-in] .s-page .statgrid.s-card{background:var(--color-canvas);border:0;gap:0;padding:0;overflow:hidden}html[data-session=signed-in] .s-page .statgrid>div{padding:var(--space-20)}html[data-session=signed-in] .s-page .statgrid.s-card>div{box-shadow:1px 0 0 var(--color-line-soft), 0 1px 0 var(--color-line-soft)}html[data-session=signed-in] .s-page .statgrid dt{font-size:var(--type-13)}html[data-session=signed-in] .s-page .statgrid dd{font-size:var(--type-19)}html[data-session=signed-in] .s-page .s-meta{font-size:var(--type-13);letter-spacing:0;color:var(--color-ink2)}html[data-session=signed-in] .s-page .band-label,html[data-session=signed-in] .s-page .s-locked,html[data-session=signed-in] .s-page .s-mark,html[data-session=signed-in] .s-page .s-nav-step,html[data-session=signed-in] .s-page .s-nav-total,html[data-session=signed-in] .s-page .s-head .sub,html[data-session=signed-in] .s-page .s-btab,html[data-session=signed-in] .s-page .s-rail-menu,html[data-session=signed-in] .s-page .caption{font-size:var(--type-13)}html[data-session=signed-in] .s-page .band-label{letter-spacing:var(--type-tracking-title)}html[data-session=signed-in] .s-page .s-lock-badge{font-size:var(--type-13);letter-spacing:0}html[data-session=signed-in] .s-page .s-rail-n,html[data-session=signed-in] .s-page .s-tab,html[data-session=signed-in] .s-page .s-hero-note,html[data-session=signed-in] .s-page .s-abtn.sm,html[data-session=signed-in] .s-page .s-float-in,html[data-session=signed-in] .s-page .s-dialog p,html[data-session=signed-in] .s-page .s-gate p,html[data-session=signed-in] .s-page .chip,html[data-session=signed-in] .s-page .lead,html[data-session=signed-in] .s-page .empty p,html[data-session=signed-in] .s-page .pill.neutral{font-size:var(--type-14)}html[data-session=signed-in] .s-page .s-hero-num b,html[data-session=signed-in] .s-page .s-hero-num.num-lg b{font-size:var(--type-56)}html[data-session=signed-in] .s-page .s-hero-num span{font-size:var(--type-17)}html[data-session=signed-in] .s-page .s-dialog h2{margin-top:var(--space-20);font-size:var(--type-17)}html[data-session=signed-in] .s-page .s-nav-in,html[data-session=signed-in] .s-page .s-actionbar-in,html[data-session=signed-in] .s-page .s-dialog-btns{gap:var(--space-12)}html[data-session=signed-in] .s-page .s-tabs-in{gap:var(--space-20)}html[data-session=signed-in] .s-page .s-hero-num,html[data-session=signed-in] .s-page .s-nav-timer,html[data-session=signed-in] .s-page .s-mark,html[data-session=signed-in] .s-page .s-dialog-btns.col{gap:var(--space-8)}html[data-session=signed-in] .s-page .s-hero-note{margin-top:var(--space-12)}html[data-session=signed-in] .s-page .s-abtn.sm{padding:0 var(--space-20)}html[data-session=signed-in] .s-page .s-sheet,html[data-session=signed-in] .s-page .s-dialog-wrap{padding:var(--space-20)}html[data-session=signed-in] .s-page .s-dialog{padding:var(--space-32) var(--space-20) var(--space-20)}html[data-session=signed-in] .s-page .s-dialog-btns{margin-top:var(--space-20)}html[data-session=signed-in] .s-page .s-gate{gap:var(--space-12);padding:var(--space-40) var(--space-20)}html[data-session=signed-in] .s-page .chiprow{padding-top:var(--space-12)}html[data-session=signed-in] .s-page .chip{padding:0 var(--space-12)}html[data-session=signed-in] .s-page .s-gap{height:var(--space-12);background:0 0}html[data-session=signed-in] .s-page .s-dialog-btns.col .s-abtn{flex:none}html[data-session=signed-in] .s-page button.pill:not(.neutral):not(.ghost){border:0}
