:root{--bg:#FFFFFF;--surface:#FFFFFF;--surface-2:#F4F4F5;--border:#E4E4E7;--border-strong:#D4D4D8;--text:#18181B;--muted:#52525B;--faint:#6B6B75;--accent:#2563EB;--bubble-ring:.125;--bubble-dot:.375;--accent-soft:rgba(37,99,235,.09);--accent-wash:#F5F8FF;--accent-line:#DCE6FB;--good:#15803D;--good-soft:rgba(21,128,61,.09);--bad:#D82525;--bad-soft:rgba(220,38,38,.08);--tint-rose:#E11D48;--tint-amber:#D97706;--tint-lime:#4D7C0F;--tint-emerald:#059669;--tint-sky:#0284C7;--tint-indigo:#4F46E5;--tint-violet:#7C3AED;--tint-slate:#64748B;--ff-sans:var(--font-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--ff-serif:var(--font-serif),Iowan Old Style,Palatino,Georgia,serif;--ff-mono:var(--font-mono),ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--hl:#FDE68A;--coin:#F7C331;--coin-deep:#C98A0A;--coin-shine:#FFF0B3;--r:10px;--r-sm:7px;--shadow:0 1px 2px rgba(24,24,27,.05);--shadow-lg:0 4px 24px -8px rgba(24,24,27,.16);--gutter:clamp(1.1rem,4vw,2.5rem);--ease:cubic-bezier(.2,.7,.3,1);--ease-drawer:cubic-bezier(.22,1,.36,1);color-scheme:light;--duration-stagger:40ms;--duration-micro:80ms;--duration-quick:150ms;--duration-fast:250ms;--duration-medium:350ms;--duration-slow:400ms;--duration-very-slow:500ms;--ease-smooth-out:cubic-bezier(0.22,1,0.36,1);--ease-in-out:ease-in-out;--ease-out:ease-out;--ease-linear:linear;--ease-bounce:cubic-bezier(0.34,1.36,0.64,1);--ease-bounce-strong:cubic-bezier(0.34,3.85,0.64,1);--distance-micro:4px;--distance-small:6px;--distance-base:8px;--distance-medium:12px;--distance-large:30px;--scale-large:0.96;--scale-medium:0.97;--scale-small:0.98;--scale-tiny:0.99;--blur-small:2px;--blur-medium:3px;--blur-large:8px;--digit-dur:500ms;--digit-distance:8px;--digit-stagger:70ms;--digit-blur:2px;--digit-ease:cubic-bezier(0.34,1.45,0.64,1);--digit-dir-x:0;--digit-dir-y:1;--dropdown-open-dur:250ms;--dropdown-close-dur:150ms;--dropdown-pre-scale:0.97;--dropdown-closing-scale:0.99;--dropdown-ease:cubic-bezier(0.22,1,0.36,1);--modal-open-dur:250ms;--modal-close-dur:150ms;--modal-scale:0.96;--modal-scale-close:0.96;--modal-ease:cubic-bezier(0.22,1,0.36,1);--panel-open-dur:400ms;--panel-close-dur:350ms;--panel-translate-y:100px;--panel-blur:2px;--panel-ease:cubic-bezier(0.22,1,0.36,1);--icon-swap-dur:250ms;--icon-swap-blur:2px;--icon-swap-start-scale:0.25;--icon-swap-ease:ease-in-out;--check-opacity-dur:500ms;--check-rotate-dur:500ms;--check-rotate-from:80deg;--check-bob-dur:500ms;--check-y-amount:40px;--check-blur-dur:500ms;--check-blur-from:10px;--check-path-dur:500ms;--check-path-delay:80ms;--check-ease-out:cubic-bezier(0.22,1,0.36,1);--check-ease-opacity:cubic-bezier(0.22,1,0.36,1);--check-ease-rotate:cubic-bezier(0.22,1,0.36,1);--check-ease-bob:cubic-bezier(0.34,1.35,0.64,1);--check-ease-path:cubic-bezier(0.22,1,0.36,1);--stagger-dur:500ms;--stagger-distance:12px;--stagger-stagger:40ms;--stagger-blur:3px;--stagger-ease:cubic-bezier(0.22,1,0.36,1);--acc-expand:250ms;--acc-collapse:250ms;--acc-chevron:250ms;--acc-ease:cubic-bezier(0.22,1,0.36,1);--toast-open:350ms;--toast-close:250ms;--toast-distance:16px;--toast-blur:2px;--toast-scale:0.97;--toast-ease:cubic-bezier(0.22,1,0.36,1);--check-box:150ms;--check-draw:350ms;--check-delay:0ms;--check-uncheck:150ms;--check-ease:cubic-bezier(0.22,1,0.36,1);--check-tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.1668 10.1668'%3E%3Cpath d='M1 5.52L3.92 9.17L9.17 1' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--page-slide-dur:250ms;--page-fade-dur:250ms;--page-slide-distance:8px;--page-blur:3px;--page-stagger:0ms;--page-exit-enabled:1;--page-slide-ease:cubic-bezier(0.22,1,0.36,1);--page-fade-ease:cubic-bezier(0.22,1,0.36,1);--press-scale:0.97;--press-transition:scale var(--duration-quick) var(--ease-smooth-out)}:root[data-theme=dark]{--check-tick:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10.1668 10.1668'%3E%3Cpath d='M1 5.52L3.92 9.17L9.17 1' fill='none' stroke='%23161619' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");--bg:#0C0C0E;--surface:#161619;--surface-2:#1D1D21;--border:#27272A;--border-strong:#3F3F46;--text:#FAFAFA;--muted:#A1A1AA;--faint:#8E8E99;--accent:#60A5FA;--accent-soft:rgba(96,165,250,.12);--accent-wash:#14161C;--accent-line:#23304A;--hl:#5B4A12;--good:#4ADE80;--good-soft:rgba(74,222,128,.12);--bad:#F87171;--bad-soft:rgba(248,113,113,.12);--tint-rose:#FB7185;--tint-amber:#FBBF24;--tint-lime:#A3E635;--tint-emerald:#34D399;--tint-sky:#38BDF8;--tint-indigo:#818CF8;--tint-violet:#A78BFA;--tint-slate:#94A3B8;--shadow:0 1px 2px rgba(0,0,0,.4);--shadow-lg:0 4px 24px -8px rgba(0,0,0,.7);color-scheme:dark}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--ff-sans);font-size:16px;line-height:1.6;letter-spacing:-.005em;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}main{flex:1 0 auto}img{max-width:100%}a{color:var(--accent);text-underline-offset:2px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skip{position:absolute;left:-9999px;top:0;z-index:10;background:var(--text);color:var(--bg);padding:.7rem 1rem;border-radius:0 0 var(--r-sm) 0}.skip:focus{left:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}code,kbd,pre{font-family:var(--ff-mono)}code{font-size:.875em;background:var(--surface-2);border-radius:4px;padding:.1em .35em}kbd{font-size:.8em;border:1px solid var(--border-strong);border-radius:5px;padding:.1em .4em;background:var(--surface)}h1,h2,h3{margin:0;font-weight:640;letter-spacing:-.025em;line-height:1.15}.band h2,.closer h2,.display,.hero h1{font-family:var(--ff-serif);font-weight:600;letter-spacing:-.012em}.display{font-size:clamp(2rem,5vw,2.75rem);line-height:1.1}.display.display-sm{font-size:clamp(1.5rem,3.5vw,1.9rem)}.display.display-md{font-size:clamp(1.75rem,4.5vw,2.35rem)}.rubric{margin:0;font-size:.875rem;font-weight:550;letter-spacing:0;text-transform:none}.deck,.rubric{color:var(--muted)}.deck{margin:.9rem 0 0;font-size:clamp(1.05rem,1.5vw,1.18rem);line-height:1.6;max-width:56ch}.screen{max-width:68rem;margin:0 auto;padding:clamp(2rem,5vw,3.5rem) var(--gutter) 5rem}.screen-narrow{max-width:46rem}.masthead{border-bottom:1px solid var(--border);background:var(--bg);position:-webkit-sticky;position:sticky;top:0;z-index:5}.masthead-in{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem var(--gutter);max-width:68rem;margin:0 auto}.brand{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:inherit}.brand-bubble{--bubble-size:16px;width:var(--bubble-size);height:var(--bubble-size);flex:none;border-radius:50%;border:calc(var(--bubble-size) * var(--bubble-ring)) solid var(--accent);position:relative}.brand-bubble:after{--dot-r:calc(var(--bubble-dot) / (1 - 2 * var(--bubble-ring)) * 100%);content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle closest-side,var(--accent) calc(var(--dot-r) - .5px),transparent calc(var(--dot-r) + .5px))}.brand-name{font-family:var(--ff-serif);font-weight:700;font-size:1.2rem;letter-spacing:-.01em}.masthead-right{display:flex;align-items:center;gap:1.25rem}.masthead-in{position:relative}.masthead-nav{display:flex;align-items:center;gap:.2rem}.nav-link{position:relative;display:inline-flex;align-items:center;gap:.45rem;height:34px;padding:0 .8rem 0 .6rem;font-size:.9rem;font-weight:500;letter-spacing:-.01em;color:var(--muted);text-decoration:none;border-radius:var(--r-sm);transition:color .18s var(--ease),background .18s var(--ease),var(--press-transition)}.nav-link:hover{color:var(--text);background:var(--surface-2)}.nav-link:active{scale:.96}.nav-link:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.nav-link[data-active=true]{color:var(--text);font-weight:560}.bubble.nav-bubble{--bubble-size:16px}.nav-link:hover .nav-bubble,.nav-panel-link:hover .nav-bubble{border-color:var(--muted)}:is(.nav-link,.nav-panel-link)[data-active=true] .nav-bubble{border-color:var(--accent)}:is(.nav-link,.nav-panel-link)[data-active=true] .bubble-fill{transform:scale(1);transition:transform var(--duration-fast) var(--ease-bounce)}@media (prefers-reduced-motion:reduce){.nav-bubble,.nav-bubble .bubble-fill,.nav-link{transition:none}}:root{--pulse-dur:1000ms;--pulse-count:infinite;--pulse-min:0.5;--reveal-dur:400ms;--reveal-blur:2px;--reveal-ease:ease-in-out}.t-skel{position:relative}.t-skel>.t-skel-skeleton{position:absolute;inset:0 0 auto 0;z-index:1;opacity:1;filter:blur(0);pointer-events:none}.t-skel>.t-skel-content,.t-skel>.t-skel-skeleton{transition:opacity var(--reveal-dur) var(--reveal-ease),filter var(--reveal-dur) var(--reveal-ease)}.t-skel>.t-skel-content{position:relative;opacity:0;filter:blur(var(--reveal-blur))}.t-skel:not(.is-done)>.t-skel-content{z-index:2}.t-skel.is-revealed>.t-skel-skeleton{opacity:0;filter:blur(var(--reveal-blur))}.t-skel.is-revealed>.t-skel-content{opacity:1;filter:none}.t-skel.is-done>.t-skel-content{transition:none}.t-skel-bars.is-pulsing>*{animation:t-skel-pulse var(--pulse-dur) ease-in-out var(--pulse-count)}@keyframes t-skel-pulse{0%,to{opacity:1}50%{opacity:var(--pulse-min)}}@media (prefers-reduced-motion:reduce){.t-skel>.t-skel-content,.t-skel>.t-skel-skeleton{transition:none!important}.t-skel-bars.is-pulsing>*{animation:none!important}}.skeleton-card,.skeleton-line{background:var(--surface-2);border-radius:var(--r-sm)}.skeleton-line{height:1rem}.skeleton-title{height:2.3rem;width:min(14rem,60%);margin-bottom:1rem}.skeleton-deck{width:min(22rem,80%)}.skeleton-cards{list-style:none;margin:2.25rem 0 0;padding:0;display:grid;grid-gap:.7rem;gap:.7rem}.skeleton-card{height:7.5rem;border-radius:var(--r);border:1px solid var(--border)}@media (min-width:60rem){.skeleton-cards{grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));gap:.9rem}}.auth-btn{font-family:inherit;font-size:.875rem;font-weight:500;color:var(--muted);background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:.38rem .8rem;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease),var(--press-transition)}.auth-btn:hover{color:var(--text);border-color:var(--border-strong)}.user-chip{display:inline-flex;align-items:center;gap:.55rem}.user-avatar,.user-chip.is-loading{width:28px;height:28px;border-radius:50%;background:var(--surface-2)}.user-avatar{flex:none;object-fit:cover}.user-avatar-blank{display:grid;place-items:center;font-size:.8rem;font-weight:600;color:var(--muted)}.user-name{font-size:.9rem;color:var(--muted);max-width:12ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:47.99rem){.user-name{display:none}}.masthead-compact{display:none;align-items:center;gap:.55rem}.nav-toggle{width:40px;height:40px;display:grid;place-items:center;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),var(--press-transition)}.nav-toggle:hover{border-color:var(--border-strong)}.nav-panel{background:var(--bg)}.nav-panel nav{display:grid;border-top:1px solid var(--border);padding:.25rem var(--gutter) 1rem}.nav-panel-link{display:flex;align-items:center;gap:.6rem;padding:.9rem 0;font-size:1.02rem;font-weight:500;color:var(--text);text-decoration:none;border-bottom:1px solid var(--border)}.nav-panel-link[data-active=true]{color:var(--accent)}@media (max-width:47.99rem){.masthead-right{display:none}.masthead-compact{display:flex}}@media (min-width:48rem){.nav-panel{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-size:.95rem;font-weight:540;letter-spacing:-.01em;text-decoration:none;padding:.7rem 1.25rem;border-radius:var(--r-sm);border:1px solid transparent;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease),opacity .15s var(--ease),var(--press-transition)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.btn-primary{background:var(--text);color:var(--bg)}.btn.btn-primary:hover:not(:disabled){opacity:.86}.btn.btn-quiet{background:var(--surface);color:var(--text);border-color:var(--border)}.btn.btn-quiet:hover:not(:disabled){border-color:var(--border-strong)}.btn.btn-danger{background:transparent;color:var(--bad);border-color:var(--border)}.btn.btn-danger:hover:not(:disabled){background:var(--bad-soft);border-color:var(--bad)}.btn.btn-lg{padding:.85rem 1.6rem;font-size:1rem}.btn.btn-sm{padding:.45rem .85rem;font-size:.875rem}.btn.btn-icon{padding:.45rem;min-width:2.2rem;color:var(--muted)}.btn.btn-icon:hover:not(:disabled){color:var(--text)}.btn.btn-icon svg{flex:none}.link-btn{background:none;border:0;padding:0;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--accent);text-decoration:none}.link-btn:hover{text-decoration:underline}.link-btn.link-btn-warn{color:var(--muted)}.link-btn.link-btn-warn:hover{color:var(--bad)}.actions{margin-top:1.75rem;display:flex;flex-wrap:wrap;gap:.6rem}.actions,.hero{align-items:center}.hero{display:grid;grid-gap:clamp(2rem,5vw,3.5rem);gap:clamp(2rem,5vw,3.5rem);margin:calc(-1 * clamp(2rem, 5vw, 3.5rem)) calc(-1 * var(--gutter)) 0;padding:clamp(3rem,7vw,5rem) var(--gutter) clamp(2.5rem,5vw,3.75rem);background:var(--accent-wash)}@media (min-width:58rem){.hero{grid-template-columns:minmax(0,1fr) minmax(0,26rem)}}.hero h1{font-size:clamp(2.5rem,6.6vw,4rem);line-height:1.06;max-width:14ch}.hero-lead{margin:1.15rem 0 0;font-size:clamp(1.05rem,2.2vw,1.2rem);line-height:1.55;color:var(--muted);max-width:40ch}.hero .actions{margin-top:1.9rem}.tally{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 calc(-1 * var(--gutter));border-bottom:1px solid var(--border)}.tally-item{margin:0;display:grid;justify-items:center;grid-gap:.3rem;gap:.3rem;padding:clamp(1.5rem,4vw,2.25rem) var(--gutter);text-align:center}.tally-item+.tally-item{border-left:1px solid var(--border)}.tally-num{font-family:var(--ff-serif);font-size:clamp(2.2rem,6vw,3.25rem);font-weight:600;line-height:1;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--accent)}.tally-label{font-size:clamp(.88rem,2vw,1rem);color:var(--muted)}.hero-aside{display:grid;grid-gap:.75rem;gap:.75rem;justify-items:stretch}.hero-arrow{margin:0;display:grid;place-items:center;color:var(--faint)}.flow-step{display:grid;grid-gap:.4rem;gap:.4rem}.mini-label{margin:0;font-size:.8rem;font-weight:540;color:var(--faint)}.notes-card{margin:0;padding:1.05rem 1.15rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);font-size:.95rem;line-height:1.7;color:var(--muted);box-shadow:var(--shadow)}.hl{color:var(--text);font-weight:520;padding:.08em .18em;border-radius:3px;background-image:linear-gradient(var(--hl),var(--hl));background-repeat:no-repeat;background-position:0;background-size:0 100%;animation:mark-it .5s var(--ease) .65s forwards}@keyframes mark-it{to{background-size:100% 100%}}@media (prefers-reduced-motion:reduce){.hl{animation:none;background-size:100% 100%}}.band{padding:clamp(3rem,7vw,4.75rem) 0;border-top:1px solid var(--border)}.band h2{font-size:clamp(1.9rem,3.4vw,2.9rem);line-height:1.1}.fine-note{margin:.7rem 0 0;font-size:.93rem;line-height:1.6;color:var(--muted);max-width:48ch}.steps{list-style:none;counter-reset:step;margin:2rem 0 0;padding:0;display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:46rem){.steps{grid-template-columns:repeat(3,1fr);gap:2rem}}.steps li{counter-increment:step}.steps li:before{content:counter(step);display:grid;place-items:center;width:28px;height:28px;margin-bottom:.8rem;border-radius:50%;background:var(--surface-2);border:1px solid var(--border);font-size:.85rem;font-weight:580;color:var(--muted)}.closer{border-top:1px solid var(--border);padding:clamp(2.5rem,6vw,4rem) 0 1rem;text-align:center}.closer .actions{justify-content:center;margin-top:1.5rem}.guide-preview{border:1px solid var(--border);border-radius:var(--r);padding:1.15rem;background:var(--surface);box-shadow:var(--shadow-lg)}.guide-q{margin:0 0 .85rem;font-size:1rem;font-weight:550;letter-spacing:-.015em}.guide-preview .opts{gap:.4rem}.guide-preview .opt{padding:.6rem .8rem;font-size:.93rem}.opt-static{cursor:default}.opt-static:hover{border-color:var(--border)}.opt-static.is-marked{background:var(--accent-soft)}.opt-static.is-marked,.opt-static.is-marked .bubble{border-color:var(--accent)}.opt-static.is-marked .bubble-fill{transform:scale(1)}.editor-form{margin-top:1.75rem}.field-block{margin-bottom:1.5rem}.field-block .rubric{display:block;margin-bottom:.45rem}.ref{margin-top:.9rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);padding:.7rem .95rem}.ref summary{cursor:pointer;font-size:.9rem;font-weight:500;color:var(--muted)}.ref summary::marker{color:var(--faint)}.ref[open] summary{margin-bottom:.8rem}.ref-list{margin:0;display:grid;grid-gap:.3rem;gap:.3rem}.ref-list>div{display:grid;grid-template-columns:4rem minmax(0,1fr);grid-gap:.5rem;gap:.5rem;align-items:baseline}.ref-list dt{font-size:.85rem}.ref-list dd{margin:0}.ref-list dd,.ref-note{font-size:.9rem;color:var(--muted)}.ref-note{margin:.8rem 0 0}.title-input{display:block;width:100%;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);padding:.75rem .9rem;font-family:inherit;font-size:1.05rem;font-weight:540;letter-spacing:-.015em;transition:border-color .15s var(--ease)}.title-input::placeholder{color:var(--faint);font-weight:400}.title-input:focus{outline:none;border-color:var(--accent)}.field-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.field-head-links{display:inline-flex;gap:1rem;flex-wrap:wrap}.banner-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.banner-row p{margin:0}.voucher{margin:0 0 2rem}.voucher .rubric{display:block;margin-bottom:.5rem}.voucher-row{display:flex;gap:.6rem}.voucher-input{flex:1 1;min-width:0;font-family:var(--ff-mono);font-size:.95rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.65rem .85rem}.voucher-input::placeholder{text-transform:none;letter-spacing:0;font-family:var(--ff-sans);color:var(--faint)}.voucher-input:focus{outline:none;border-color:var(--accent)}.voucher-said{margin:.55rem 0 0;font-size:.9rem;color:var(--bad)}.voucher-said.is-ok{color:var(--good);font-weight:600}.draft-note{margin:.75rem 0 0;font-size:.88rem;color:var(--muted)}.tag-draft{display:inline-block;margin-left:.5rem;padding:.1rem .45rem;font-size:.72rem;font-weight:600;letter-spacing:.02em;vertical-align:middle;color:var(--muted);border:1px solid var(--border-strong);border-radius:999px}.source{display:block;width:100%;min-height:clamp(16rem,42vh,26rem);resize:vertical;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--r);padding:1rem 1.1rem;font-family:var(--ff-mono);font-size:.875rem;line-height:1.75;transition:border-color .15s var(--ease)}.source::placeholder{color:var(--faint)}.source:focus{outline:none;border-color:var(--accent)}.seg{display:inline-flex;gap:2px;padding:3px;margin-bottom:1.25rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);flex-wrap:wrap}.seg-btn{font-family:inherit;font-size:.9rem;font-weight:500;color:var(--muted);background:transparent;border:0;border-radius:5px;padding:.45rem .9rem;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),var(--press-transition)}.seg-btn:hover{color:var(--text)}.seg-btn.is-picked{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.readout{margin-top:1rem;border:1px solid var(--border);border-radius:var(--r);padding:1rem 1.15rem;background:var(--surface)}.readout-figures{display:flex;flex-wrap:wrap;gap:1.5rem}.figure{margin:0;display:flex;align-items:baseline;gap:.4rem}.figure-num{font-size:1.3rem;font-weight:600;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.figure-label{font-size:.9rem;color:var(--muted)}.figure.is-flagged .figure-label,.figure.is-flagged .figure-num{color:var(--bad)}.readout.readout-start{padding:1.5rem;text-align:center}.readout-lead{margin:0;font-size:1.02rem;font-weight:560;letter-spacing:-.015em}.readout-sub{margin:.35rem auto 0;font-size:.93rem;color:var(--muted);max-width:44ch}.readout-actions{margin-top:1.15rem;display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.readout-ok{margin:0;font-size:.93rem;color:var(--good)}.problems{margin:.9rem 0 0;padding:.85rem 0 0;list-style:none;display:grid;grid-gap:.4rem;gap:.4rem;border-top:1px solid var(--border)}.problems li{font-size:.9rem;line-height:1.5;color:var(--bad)}.builder-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-gap:.9rem;gap:.9rem}.qbuild{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:1.1rem 1.2rem 1.2rem}.qbuild-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.8rem}.qbuild-num{font-size:.85rem;font-weight:560;color:var(--faint)}.qbuild-tools{margin-left:auto;display:flex;gap:.25rem}.icon-btn{width:28px;height:28px;display:grid;place-items:center;font-size:.8rem;color:var(--muted);background:transparent;border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease),var(--press-transition)}.icon-btn:hover:not(:disabled){color:var(--text);border-color:var(--border-strong)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.icon-btn-warn:hover:not(:disabled){color:var(--bad);border-color:var(--bad)}.builder{scroll-margin-top:5rem}.builder-pager{display:flex;align-items:center;justify-content:center;gap:1rem;margin:0 0 1.25rem}.builder-pager-top{margin-bottom:1rem}.builder-arrow{width:40px;height:40px;font-size:1.05rem;border-radius:var(--r-sm)}.builder-where{margin:0;min-width:8ch;text-align:center;font-size:.9rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.qbuild-note,.qbuild-q{width:100%;min-width:0;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);padding:.6rem .75rem;font-family:inherit;font-size:.97rem;transition:border-color .15s var(--ease)}.qbuild-note:focus,.qbuild-q:focus{outline:none;border-color:var(--accent)}.qbuild-note::placeholder,.qbuild-q::placeholder{color:var(--faint)}.qbuild-q{font-size:1.02rem;font-weight:540;letter-spacing:-.015em}.qbuild-lesson{width:100%;min-width:0;margin-bottom:.5rem;background:var(--bg);color:var(--text);border:1px dashed var(--border-strong);border-radius:var(--r-sm);padding:.4rem .7rem;font-family:inherit;font-size:.88rem;transition:border-color .15s var(--ease)}.qbuild-lesson:focus{outline:none;border-style:solid;border-color:var(--accent)}.qbuild-lesson::placeholder{color:var(--faint)}.qbuild-card{display:grid;grid-gap:.4rem;gap:.4rem;margin-top:.4rem}.qbuild-card .qbuild-lesson{margin:0;border-style:solid;font-size:.92rem}.qbuild-note{margin-top:.7rem;font-size:.92rem;min-height:3.9rem;resize:vertical;line-height:1.55}.qbuild-opts{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.qbuild-opt{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.6rem;gap:.6rem}.qbuild-mark{display:grid;place-items:center;cursor:pointer;position:relative}.qbuild-mark input{position:absolute;opacity:0;width:1px;height:1px}.qbuild-opt.is-correct .bubble{border-color:var(--good)}.qbuild-opt.is-correct .bubble-fill{transform:scale(1);--bubble-dot-color:var(--good)}.qbuild-opt.is-multi .bubble{border-radius:5px}.qbuild-opt.is-multi .bubble-fill{inset:25%;border-radius:2px;background:var(--bubble-dot-color,var(--accent))}.qbuild-mark input:focus-visible~.bubble{outline:2px solid var(--accent);outline-offset:3px}.qbuild-foot{margin-top:.65rem}.mathfield-wrap{display:flex;align-items:center;gap:.3rem;min-width:0}.mathfield-host{flex:1 1 auto;min-width:0;position:relative}.mathfield-placeholder{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:.97rem;color:var(--faint);pointer-events:none;white-space:nowrap;overflow:hidden;max-width:calc(100% - 1.5rem);transition:opacity .12s var(--ease)}.mathfield-host:focus-within .mathfield-placeholder{opacity:0}math-field.mathfield{display:block;width:100%;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);padding:.5rem .7rem;font-size:.97rem;--text-font-family:var(--ff-sans);--contains-highlight-background-color:transparent;--caret-color:var(--accent);--selection-background-color:var(--accent-soft);--selection-color:var(--text);--placeholder-color:var(--faint);--smart-fence-color:var(--muted)}math-field.mathfield:focus,math-field.mathfield:focus-within{outline:none;border-color:var(--accent)}math-field.mathfield::part(virtual-keyboard-toggle){display:none}math-field.mathfield::part(menu-toggle){display:none}.math-fab{position:fixed;right:clamp(1rem,3vw,2rem);bottom:calc(var(--mlk-height, 0px) + clamp(1rem, 3vw, 2rem));z-index:45;display:inline-grid;place-items:center;width:3rem;height:3rem;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:50%;padding:0;box-shadow:var(--shadow-lg);cursor:pointer;transition:bottom .2s var(--ease),background .15s var(--ease),border-color .15s var(--ease),color .15s var(--ease),var(--press-transition)}.math-fab.is-open,.math-fab:hover{border-color:var(--accent);color:var(--accent)}.math-fab.is-open{background:var(--accent-soft)}.math-fab .math-key-icon{width:20px;height:20px}.ml-close-inject{position:absolute;top:.45rem;right:.6rem;z-index:2;min-height:32px;font-family:var(--ff-sans);font-size:.85rem;font-weight:560;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.3rem .95rem;cursor:pointer;pointer-events:auto;transition:border-color .15s var(--ease),background .15s var(--ease)}.ml-close-inject:hover{border-color:var(--border-strong);background:var(--surface-2)}@media (pointer:coarse){math-field.mathfield{font-size:16px;padding:.6rem .7rem}.mathfield-placeholder{font-size:16px}}@media (max-width:32rem){.qbuild{padding:.9rem .8rem 1rem}.qbuild-opt{gap:.45rem}.mathfield-wrap{gap:.25rem}.mathfield-placeholder{left:.65rem}.editor-form{padding-bottom:var(--mlk-height,0)}}body>.ML__keyboard{z-index:40}.ML__keyboard{--keyboard-accent-color:var(--accent);--keyboard-background:var(--bg);--keyboard-border:var(--border);--keyboard-padding-top:6px;--keyboard-padding-bottom:10px;--keyboard-horizontal-rule:1px solid var(--border);--keyboard-toolbar-text:var(--muted);--keyboard-toolbar-text-active:var(--text);--keyboard-toolbar-background:transparent;--keyboard-toolbar-background-hover:var(--surface-2);--keyboard-toolbar-background-selected:var(--surface-2);--keyboard-toolbar-font-size:.875rem;--keycap-height:clamp(40px,6.2vh,50px);--keycap-max-width:84px;--keycap-gap:6px;--keycap-font-size:clamp(16px,3.4cqw,21px);--keycap-small-font-size:15px;--keycap-extra-small-font-size:13px;--keycap-background:var(--surface-2);--keycap-background-hover:var(--accent-wash);--keycap-background-active:var(--accent);--keycap-background-pressed:var(--accent);--keycap-border:var(--border);--keycap-border-bottom:var(--border-strong);--keycap-text:var(--text);--keycap-text-hover:var(--text);--keycap-text-active:#fff;--keycap-text-pressed:#fff;--keycap-shift-text:var(--accent);--keycap-shift-color:var(--accent);--keycap-secondary-background:var(--border);--keycap-secondary-background-hover:var(--border-strong);--keycap-secondary-text:var(--text);--keycap-secondary-border:var(--border-strong);--keycap-secondary-border-bottom:var(--border-strong);--keycap-primary-background:var(--accent);--keycap-primary-background-hover:color-mix(in srgb,var(--accent) 86%,#000);--keycap-primary-text:#fff;--variant-panel-background:var(--surface);--variant-keycap-text:var(--text);--variant-keycap-text-active:#fff;--variant-keycap-background-active:var(--accent)}html body>.ML__keyboard{--panel-translate-y:calc(var(--_keyboard-height) * .5)}html body>.ML__keyboard>.MLK__backdrop{transform:translateY(calc(-1 * var(--_keyboard-height) + var(--panel-translate-y)));opacity:0;filter:blur(var(--panel-blur));transition:transform var(--panel-close-dur) var(--panel-ease),opacity var(--panel-close-dur) var(--panel-ease),filter var(--panel-close-dur) var(--panel-ease),visibility 0s linear var(--panel-close-dur);will-change:transform,opacity,filter}html body>.ML__keyboard.is-visible.animate>.MLK__backdrop,html body>.ML__keyboard.is-visible>.MLK__backdrop{transform:translateY(calc(-1 * var(--_keyboard-height)));opacity:1;filter:blur(0);transition:transform var(--panel-open-dur) var(--panel-ease),opacity var(--panel-open-dur) var(--panel-ease),filter var(--panel-open-dur) var(--panel-ease),visibility 0s}@media (prefers-reduced-motion:reduce){html body>.ML__keyboard>.MLK__backdrop{transition:none!important;filter:none}}body>.ML__keyboard.is-visible>.MLK__backdrop{box-shadow:0 -10px 30px -18px rgba(24,24,27,.35)}.ML__keyboard .MLK__plate{font-family:var(--ff-sans)}.ML__keyboard .MLK__rows>.MLK__row>div{border-radius:var(--r-sm);transition:background .12s var(--ease),border-color .12s var(--ease)}.ML__keyboard .MLK__toolbar>div>div{font-family:var(--ff-sans);font-weight:560;letter-spacing:-.01em;min-height:32px;margin:0 2px 4px;padding:.3rem .8rem;border:1px solid transparent;border-radius:999px}.ML__keyboard .MLK__toolbar>div>div.selected{color:var(--text);background:var(--surface);border-color:var(--border-strong);box-shadow:var(--shadow)}.ML__keyboard .MLK__variant-panel{border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg)}.editor-tools{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1.25rem}.editor-tools .seg{margin-bottom:0}.editor-tools-end{display:flex;align-items:center;gap:1rem}.math-toggle{display:inline-flex;align-items:center;gap:.45rem;font-family:inherit;font-size:.9rem;font-weight:520;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:.45rem .85rem;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),color .15s var(--ease),var(--press-transition)}.math-toggle:hover{border-color:var(--accent);color:var(--accent)}.math-toggle.is-open{background:var(--accent);border-color:var(--accent);color:#fff}.math-toggle-glyph{font-size:.95rem;font-style:italic;opacity:.85}.mathpad{position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--surface);border-top:1px solid var(--border);box-shadow:var(--shadow-lg);max-height:48vh;overflow-y:auto}.mathpad-in{max-width:68rem;margin:0 auto;padding:.85rem var(--gutter) 1.1rem}.mathpad-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.8rem}.mathpad-title{margin:0;font-size:.9rem;color:var(--muted)}.mathpad-groups{display:grid;grid-gap:.9rem;gap:.9rem}@media (min-width:40rem){.mathpad-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1.75rem}}@media (min-width:64rem){.mathpad-groups{grid-template-columns:repeat(3,minmax(0,1fr))}}.mathpad-name{margin:0 0 .35rem;font-size:.8rem;font-weight:540;color:var(--faint)}.mathpad-keys{display:flex;flex-wrap:wrap;gap:.3rem}.mathkey{min-width:40px;height:38px;padding:0 .55rem;display:grid;place-items:center;font-family:var(--ff-sans);font-size:1rem;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .12s var(--ease),background .12s var(--ease),var(--press-transition)}.mathkey:hover{border-color:var(--accent);background:var(--accent-soft)}.mathkey:active{transform:translateY(1px)}.dropzone{border:1.5px dashed var(--border-strong);border-radius:var(--r);background:var(--surface);padding:clamp(2rem,6vw,3.25rem) 1.5rem;text-align:center;transition:border-color .15s var(--ease),background .15s var(--ease)}.dropzone.is-dragging{border-color:var(--accent);background:var(--accent-soft)}.dropzone-lead{margin:0;font-size:1.05rem;font-weight:560;letter-spacing:-.015em}.dropzone-sub{margin:.4rem auto 1.25rem;max-width:34ch;font-size:.93rem;color:var(--muted)}.upload-note{margin:1rem 0 0;font-size:.9rem;color:var(--muted)}.import-progress{border-style:solid;border-color:var(--accent-line);background:var(--accent-wash)}.import-bubbles{display:flex;justify-content:center;gap:.7rem;margin-bottom:1.35rem}.import-bubble{--bubble-size:26px;width:var(--bubble-size);height:var(--bubble-size);display:grid;place-items:center;border:1.5px solid var(--border-strong);border-radius:50%;background:var(--surface);animation:import-mark 2.4s var(--ease) infinite}.import-bubble-letter{font-family:var(--ff-mono);font-size:.72rem;color:var(--faint);animation:import-letter 2.4s var(--ease) infinite;animation-delay:inherit}@keyframes import-mark{0%,12%{background:var(--surface);border-color:var(--border-strong)}22%,60%{background:var(--accent);border-color:var(--accent)}75%,to{background:var(--surface);border-color:var(--border-strong)}}@keyframes import-letter{0%,12%{color:var(--faint)}22%,60%{color:#fff}75%,to{color:var(--faint)}}.import-file{margin:.4rem auto 1.4rem;max-width:44ch;font-size:.9rem;color:var(--muted);overflow-wrap:anywhere}.import-steps{list-style:none;margin:0 auto;padding:0;display:inline-grid;gap:.5rem;text-align:left;font-size:.93rem;color:var(--faint)}.import-steps li{display:flex;align-items:center;gap:.6rem}.import-steps li:before{content:"";width:10px;height:10px;flex:none;border:1.5px solid var(--border-strong);border-radius:50%}.import-steps li.is-done{color:var(--muted)}.import-steps li.is-done:before{background:var(--good);border-color:var(--good)}.import-steps li.is-now{color:var(--text);font-weight:560}.import-steps li.is-now:before{border-color:var(--accent);animation:import-pulse 1.2s ease-in-out infinite}@keyframes import-pulse{50%{background:var(--accent)}}.import-time{margin:1.4rem 0 0;font-size:.86rem;color:var(--muted)}.import-clock{font-family:var(--ff-mono);color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.import-bubble,.import-bubble-letter,.import-steps li.is-now:before{animation:none}.import-steps li.is-now:before{background:var(--accent)}}.ready-title{margin:.5rem 0 0}.credit{display:flex;align-items:center;gap:.7rem}.credit-who{min-width:0}.credit-name{margin:0;font-size:.95rem;font-weight:550;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.credit-when{margin:.1rem 0 0;font-size:.85rem;color:var(--faint)}.ready-readout .credit{margin-bottom:.9rem;padding-bottom:.9rem;border-bottom:1px solid var(--border)}.ready-readout{margin-top:1.25rem}.ready-note{margin:.8rem 0 0;padding-top:.8rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--muted)}.drill-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.9rem 1rem;gap:.9rem 1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.drill-where{display:grid;grid-gap:.1rem;gap:.1rem;min-width:0}.drill-count{margin:0;font-size:1.2rem;font-weight:640;letter-spacing:-.02em;line-height:1.2;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.drill-total{color:var(--faint);font-weight:500}.drill-mode{margin:0;font-size:.8rem;color:var(--muted)}.drill-actions{display:flex;align-items:center;gap:.5rem}.btn.drill-end{margin-left:.35rem;color:var(--muted)}.btn.drill-end:hover:not(:disabled){color:var(--bad);border-color:var(--bad);background:var(--bad-soft)}.actions-quiz .btn-primary,.actions-quiz .recall{margin-left:auto}.track{grid-column:1/-1;list-style:none;margin:0;padding:0;display:flex;gap:3px}.track li{flex:1 1;min-width:0;height:6px;border-radius:3px;background:var(--border)}.track.is-dense{gap:0;border-radius:3px;overflow:hidden}.track.is-dense li{border-radius:0}.track li.is-answered{background:var(--muted)}.track li.is-right{background:var(--good)}.track li.is-wrong{background:var(--bad)}.track li.is-current{background:var(--accent);scale:1 1.7}.track.is-dense li.is-current{flex:0 0 4px;scale:1}.qcard{margin:clamp(1.75rem,4vw,2.5rem) 0 0}.qtype{display:inline-block;margin:0 0 1rem;font-size:.8rem;font-weight:520;color:var(--muted);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.2rem .7rem}.qtext{min-height:2.64em;font-size:clamp(1.25rem,3vw,1.6rem);font-weight:600;letter-spacing:-.025em;line-height:1.32;margin:0 0 1.6rem;max-width:46ch;white-space:pre-line}.qnum{color:var(--faint);font-weight:500;margin-right:.5rem}.opts{grid-gap:.5rem;gap:.5rem;max-width:42rem;min-height:max(0px,calc(var(--opt-rows, 0) * 3.6rem - .5rem));align-content:start}.opt,.opts{display:grid}.opt{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:.8rem;gap:.8rem;padding:.85rem 1.1rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),box-shadow .15s var(--ease),var(--press-transition)}.opt:hover{border-color:var(--border-strong)}.opt input{position:absolute;opacity:0;width:1px;height:1px}.bubble{--bubble-size:18px;width:var(--bubble-size);height:var(--bubble-size);flex:none;border:calc(var(--bubble-size) * var(--bubble-ring)) solid var(--border-strong);border-radius:50%;position:relative;transition:border-color .15s var(--ease)}.opt.opt-multi .bubble{border-radius:5px}.bubble-fill{--dot-r:calc(var(--bubble-dot) / (1 - 2 * var(--bubble-ring)) * 100%);position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle closest-side,var(--bubble-dot-color,var(--accent)) calc(var(--dot-r) - .5px),transparent calc(var(--dot-r) + .5px));transform:scale(0);transition:transform var(--duration-quick) var(--ease-smooth-out)}.opt input:checked~.bubble{border-color:var(--accent)}.opt input:checked~.bubble .bubble-fill{transform:scale(1);transition:transform var(--duration-fast) var(--ease-bounce)}.opt:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.opt input:focus-visible~.bubble{outline:2px solid var(--accent);outline-offset:3px}.opt-key{display:none}.opt-text{font-size:.98rem;line-height:1.45;min-width:0}.opt-verdict{font-size:.85rem;font-weight:520;white-space:nowrap;min-width:4.75rem;text-align:right}.opt.is-correct{border-color:var(--good);background:var(--good-soft)}.opt.is-correct .opt-verdict{color:var(--good)}.opt.is-correct .bubble{border-color:var(--good)}.opt.is-correct .bubble-fill{--bubble-dot-color:var(--good)}.opt.is-wrongpick{border-color:var(--bad);background:var(--bad-soft)}.opt.is-wrongpick .opt-verdict{color:var(--bad)}.opt.is-wrongpick .bubble{border-color:var(--bad)}.opt.is-wrongpick .bubble-fill{--bubble-dot-color:var(--bad)}.opt.is-locked{cursor:default}.opt.is-locked:hover{border-color:var(--border)}.opt.is-locked.is-correct:hover{border-color:var(--good)}.opt.is-locked.is-wrongpick:hover{border-color:var(--bad)}.opt.is-locked.is-correct{border-color:var(--good);background:var(--good-soft);box-shadow:inset 0 0 0 1px var(--good)}.opt.is-locked.is-correct .bubble{border-color:var(--good)}.opt.is-locked.is-correct .bubble-fill{--bubble-dot-color:var(--good)}.opt.is-locked.is-wrongpick{border-color:var(--bad);background:var(--bad-soft);box-shadow:inset 0 0 0 1px var(--bad)}.opt.is-locked.is-wrongpick .bubble{border-color:var(--bad)}.opt.is-locked.is-wrongpick .bubble-fill{--bubble-dot-color:var(--bad)}.opt:has(input:checked){box-shadow:inset 0 0 0 1px var(--accent)}.qverdict{display:inline-block;margin:0 0 1rem;padding:.2rem .7rem;font-size:.8rem;font-weight:600;letter-spacing:-.01em;border:1px solid;border-radius:999px;animation:verdict-in .22s var(--ease) both}.qverdict:before{font-size:1em;margin-right:.35rem}.qverdict.is-right{color:var(--good);border-color:var(--good);background:var(--good-soft)}.qverdict .t-success-check{margin-right:.35rem;vertical-align:-.1em;--check-y-amount:6px;--check-blur-from:3px}.qverdict .t-success-check svg{width:.95em;height:.95em}.qverdict.is-wrong{color:var(--bad);border-color:var(--bad);background:var(--bad-soft)}.qverdict.is-wrong:before{content:"✗"}.qverdict.is-skipped{color:var(--muted);border-color:var(--border);background:var(--surface-2)}@keyframes verdict-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}to{opacity:1;transform:none}}@keyframes opt-settle{0%{transform:scale(1)}45%{transform:scale(1.015)}to{transform:scale(1)}}@keyframes opt-nope{0%,to{transform:translateX(0)}25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}@keyframes track-pop{0%{scale:1 1}35%{scale:1 2.2}to{scale:1 1}}.opt.is-locked.is-correct{animation:opt-settle .32s var(--ease)}.opt.is-locked.is-wrongpick{animation:opt-nope .3s var(--ease)}.typed.is-right{animation:opt-settle .32s var(--ease)}.track li.is-right{animation:track-pop var(--duration-very-slow) var(--ease-smooth-out)}@media (prefers-reduced-motion:reduce){.opt.is-locked.is-correct,.opt.is-locked.is-wrongpick,.qverdict,.track li.is-right,.typed.is-right{animation:none}}.note{margin:1.2rem 0 0;background:var(--surface-2);border-radius:var(--r-sm);padding:.85rem 1rem;font-size:.95rem;line-height:1.55;color:var(--muted);white-space:pre-line}.note,.typed{max-width:42rem}.typed .typed-input,.typed math-field.mathfield{min-height:3rem;padding:.7rem .95rem;font-size:1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);transition:border-color .15s var(--ease),box-shadow .15s var(--ease),background .15s var(--ease)}.typed .typed-input:hover,.typed math-field.mathfield:hover{border-color:var(--border-strong)}.typed .typed-input:focus,.typed math-field.mathfield:focus,.typed math-field.mathfield:focus-within{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.typed .mathfield-placeholder{left:calc(.95rem + 1px);font-size:1.1rem}.typed.is-right .typed-input,.typed.is-right math-field.mathfield{border-color:var(--good);background:var(--good-soft);box-shadow:none}.typed.is-wrong .typed-input,.typed.is-wrong math-field.mathfield{border-color:var(--bad);background:var(--bad-soft);box-shadow:none}.typed-input{flex:1 1 auto;min-width:0;width:100%;font:inherit;font-size:1.1rem;color:var(--text)}.typed-input::placeholder{color:var(--faint);opacity:1}.typed-row{display:flex;align-items:stretch;gap:.5rem}.typed-row .mathfield-wrap{flex:1 1 auto;min-width:0}.btn.tool-toggle{padding:.45rem .55rem}.btn.tool-toggle.is-open{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.math-key-icon{flex:none}.screen:has(.typed-row){padding-bottom:calc(5rem + var(--mlk-height, 0px))}.typed-verdict{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin:.75rem .15rem 0;font-size:1rem}.typed.is-right .typed-verdict .rubric{color:var(--good)}.typed.is-wrong .typed-verdict .rubric{color:var(--bad)}@media (pointer:coarse){.typed math-field.mathfield{font-size:1.1rem;padding:.75rem .95rem}}.graph{margin:.25rem 0 1.25rem;max-width:34rem}.graph-svg{display:block;width:100%;height:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.graph-grid line{stroke:var(--border);stroke-width:1}.graph-axes line{stroke:var(--muted);stroke-width:1.4}.graph-frame{fill:none;stroke:var(--border-strong);stroke-width:1}.graph-ticks text{fill:var(--faint);font:11px var(--ff-sans);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.graph-curve{fill:none;stroke-width:2.25;stroke-linejoin:round;stroke-linecap:round}.graph-point circle{fill:var(--text)}.graph-point text{fill:var(--text);font:12px var(--ff-sans)}.typed-hint{margin:.35rem .15rem 0;font-size:.9rem;color:var(--bad)}.due-from{display:grid;grid-gap:.5rem;gap:.5rem}.due-sheets{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.due-sheets li{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;font-size:.93rem}.due-count{flex:none;font-size:.85rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cardback{max-width:42rem;min-height:9rem;display:grid;align-content:center;grid-gap:.45rem;gap:.45rem;padding:1.15rem 1.3rem;border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);transition:border-color .15s var(--ease),background .15s var(--ease)}.cardback.is-open{border-style:solid;border-color:var(--accent-line);background:var(--accent-wash);animation:cardback-turn .24s var(--ease) both}.cardback-head{color:var(--faint)}.cardback-answer,.cardback-answers{margin:0;font-size:clamp(1.05rem,2.4vw,1.3rem);font-weight:560;line-height:1.4;letter-spacing:-.015em}.cardback-answers{display:grid;grid-gap:.35rem;gap:.35rem;padding-left:1.15rem}.cardback-wait{margin:0;max-width:36ch;font-size:.95rem;line-height:1.55;color:var(--muted)}@keyframes cardback-turn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.cardback.is-open{animation:none}}.recall{display:flex;gap:.5rem;flex-wrap:wrap}.btn.btn-recall{background:var(--surface);border-color:var(--border);font-weight:560}.btn.btn-recall.is-miss{color:var(--bad)}.btn.btn-recall.is-miss:hover:not(:disabled){background:var(--bad-soft);border-color:var(--bad)}.btn.btn-recall.is-got{color:var(--good)}.btn.btn-recall.is-got:hover:not(:disabled){background:var(--good-soft);border-color:var(--good)}.btn.btn-recall.is-miss.is-picked{background:var(--bad-soft);border-color:var(--bad)}.btn.btn-recall.is-got.is-picked{background:var(--good-soft);border-color:var(--good)}.seg-kind{margin:.75rem 0 0}.seg-kind .seg-btn{padding:.35rem .7rem;font-size:.85rem}.qbuild-opt.is-accept .opt-key{display:grid;place-items:center;width:17px;font-size:.95rem;color:var(--faint)}.accept-mode{width:5.2rem;padding:.3rem 0;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-family:inherit;font-size:.78rem;font-weight:560;cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),color .15s var(--ease)}.accept-mode:hover{border-color:var(--border-strong);color:var(--text)}.accept-mode.is-any{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.qbuild-extra{margin-top:.7rem}.qbuild-extra>summary{cursor:pointer;font-size:.87rem;font-weight:540;color:var(--muted)}.qbuild-extra>summary:hover{color:var(--text)}.qbuild-extra-field{display:block;margin-top:.65rem}.qbuild-extra-label{display:block;font-size:.82rem;color:var(--faint)}.qbuild-extra-field .qbuild-note{margin-top:.3rem}.qbuild-vars{font-family:var(--ff-mono);font-size:.88rem}.qbuild-hint{display:block;margin-top:.4rem;line-height:1.5}.keyhint,.qbuild-hint{font-size:.85rem;color:var(--faint)}.keyhint{margin:1.2rem 0 0;line-height:1.9}.setup-body{display:grid}.setup-row>*+*{margin-top:.5rem}.setup-row+.setup-row{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--border)}.setup-row .rubric{font-size:.85rem}.setup-hint{margin:0;font-size:.87rem;line-height:1.45;color:var(--faint);max-width:54ch}.setup-label{display:flex;align-items:center;gap:.45rem;margin:0;font-size:.95rem;font-weight:560;letter-spacing:-.012em;color:var(--text)}.glyph{flex:none;color:var(--faint)}.modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}@media (max-width:40rem){.modes{grid-template-columns:minmax(0,1fr)}}.mode-card{display:grid;grid-gap:.3rem;gap:.3rem;align-content:start;padding:.8rem .85rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.mode-card:hover{border-color:var(--border-strong)}.mode-card.is-picked{border-color:var(--accent);background:var(--accent-soft)}.mode-card:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.mode-top{display:flex;align-items:center;gap:.45rem}.mode-name{flex:1 1 auto;min-width:0;font-size:.95rem;font-weight:580;letter-spacing:-.015em}.mode-card.is-picked .glyph{color:var(--accent)}.mode-card .bubble{--bubble-size:15px}.mode-card input:checked~.mode-top .bubble{border-color:var(--accent)}.mode-card input:checked~.mode-top .bubble .bubble-fill{transform:scale(1)}.mode-desc{font-size:.85rem;line-height:1.4;color:var(--muted);text-wrap:pretty}.setup-checks{display:flex;gap:.6rem 1.4rem;flex-wrap:wrap}.setup-check{display:inline-flex;align-items:center;gap:.55rem;font-size:.93rem;color:var(--text);cursor:pointer}.count-custom{display:flex;align-items:center;gap:.5rem;font-size:.87rem;color:var(--muted)}.count-input{width:5rem;font-family:inherit;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:.4rem .55rem}.count-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.setup .seg{margin-bottom:0;vertical-align:top}.setup .seg-btn{cursor:pointer}.setup .seg-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.weakspots{display:flex;align-items:center;gap:.7rem;width:100%;margin:1.1rem 0 0;padding:.8rem 1rem;text-align:left;font-family:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.weakspots:hover{border-color:var(--border-strong);background:var(--surface-2)}.weakspots:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.weakspots-mark{flex:none;display:grid;place-items:center;align-self:flex-start;margin-top:.05rem;color:var(--bad)}.weakspots-mark .glyph{color:inherit}.weakspots-say{flex:1 1 auto;min-width:0;display:grid;grid-gap:.1rem;gap:.1rem}.weakspots-title{font-size:.95rem;font-weight:580;letter-spacing:-.015em;line-height:1.3}.weakspots-sub{font-size:.85rem;line-height:1.4;color:var(--muted);text-wrap:pretty}.weakspots-go{flex:none;display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:560;color:var(--accent)}.weakspots-go svg{transition:transform .15s var(--ease)}.weakspots:hover .weakspots-go svg{transform:translateX(2px)}@media (prefers-reduced-motion:reduce){.weakspots:hover .weakspots-go svg{transform:none}}.btn.btn-fav{gap:.4rem}.btn.btn-fav .star{color:var(--faint);transition:color .15s var(--ease)}.btn.btn-fav:hover:not(:disabled) .star{color:#E0A106}.btn.btn-fav.is-fav{border-color:var(--border-strong)}.btn.btn-fav.is-fav .star{color:#E0A106}.ready-actions{align-items:stretch}.ready-start{flex:1 1 14rem}.solution{margin-top:1rem;max-width:42rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.solution-head{display:flex;align-items:baseline;gap:.6rem;padding:.7rem 1rem;cursor:pointer;list-style:none}.solution-head::-webkit-details-marker{display:none}.solution-head:before{content:"";align-self:center;width:.42em;height:.42em;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(-45deg);transition:transform .15s var(--ease)}.solution[open]>.solution-head:before{transform:rotate(45deg)}.solution-title{font-size:.92rem;font-weight:580}.solution-count{font-size:.82rem;color:var(--faint)}.solution-steps{margin:0;display:grid;grid-gap:.55rem;gap:.55rem;border-top:1px solid var(--border);padding:.85rem 1rem 1rem 2.6rem}.solution-step{padding-left:.25rem;line-height:1.55;overflow-wrap:anywhere}.solution-step::marker{color:var(--faint);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.solution-step .katex{font-size:1.08em}@media (prefers-reduced-motion:reduce){.solution-head:before{transition:none}}.resume{margin-top:1.75rem;display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem}.resume-sub{margin:0;font-size:.87rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.resume-arrow{flex:none;display:grid;transition:transform .15s var(--ease)}.resume-go:hover .resume-arrow{transform:translateX(3px)}.resume-more{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem 1.25rem;margin-left:auto}.resume-over{display:inline-flex;align-items:center;gap:.4rem}@media (prefers-reduced-motion:reduce){.resume-go:hover .resume-arrow{transform:none}}.ready-title{text-align:center}.ready-readout .credit{justify-content:center}.ready-readout .credit-who{text-align:center}.ready-readout .readout-figures{justify-content:center}.ready-note{text-align:center}@media (min-width:72rem){.screen-quiz:has(.ready-main){max-width:120rem;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-column-gap:2.5rem;column-gap:2.5rem;align-items:start}.screen-quiz:has(.ready-main)>.ready-title{grid-column:1/-1}.screen-quiz>.ready-main{grid-column:1;min-width:0}.screen-quiz:has(.ready-main)>.panel{grid-column:2;min-width:0;margin-top:1.25rem}}.report-top{margin-bottom:1.25rem}.report-line{margin:.5rem 0 0;color:var(--muted)}.scoreboard{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1px;gap:1px;margin:0 0 1.75rem;background:var(--border);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}@media (min-width:34rem){.scoreboard{grid-template-columns:repeat(4,minmax(0,1fr))}}.score-tile{background:var(--surface);padding:.95rem 1.1rem}.score-tile dt{font-size:.85rem;color:var(--muted)}.score-tile dd{margin:.2rem 0 0;font-size:1.5rem;font-weight:640;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.score-tile.is-pass dd{color:var(--good)}.score-of{font-size:.95rem;font-weight:500;color:var(--muted)}.grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(1.9rem,1fr));grid-gap:4px;gap:4px}.grid li{height:1.6rem;border-radius:5px;display:grid;place-items:center;font-size:.7rem;font-weight:550;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--surface)}.grid.is-long{max-height:12.5rem;overflow-y:auto;overscroll-behavior:contain;padding:3px;margin:-3px;scrollbar-width:thin}.grid li.is-right{background:var(--good)}.grid li.is-wrong{background:var(--bad)}.jump{margin:0 0 1.5rem}.jump-head{margin:0 0 .55rem;font-size:.85rem}.grid li>a,.grid li>span{display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;color:inherit;text-decoration:none}.grid li>a:hover{outline:2px solid var(--text);outline-offset:1px}.grid li>a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.grid li>span{opacity:.45}.review-item{scroll-margin-top:5rem}.panel-head .seg{margin:0}.panel-head .seg-btn{cursor:pointer;padding:.3rem .7rem;font-size:.85rem}.panel-head .seg-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.share-score{display:grid;grid-gap:.5rem;gap:.5rem;justify-items:start;margin:0 0 1.5rem;padding:1rem 1.1rem;border:1px solid var(--accent-line);border-radius:var(--r);background:var(--accent-wash)}.share-score .btn svg{flex:none}.share-score-note{margin:0;font-size:.88rem;line-height:1.5;color:var(--muted)}.share-score-note:empty{display:none}@media (min-width:72rem){.screen-quiz:has(.report-main){max-width:120rem;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-column-gap:2.5rem;column-gap:2.5rem;align-items:start}.screen-quiz:has(.report-main)>.report-top,.screen-quiz:has(.report-main)>.scoreboard{grid-column:1/-1}.screen-quiz>.report-main{grid-column:1;grid-row:3;min-width:0}.screen-quiz>.report-side{grid-column:2;grid-row:3;min-width:0}.screen-quiz:has(.report-main)>.scoreboard{grid-template-columns:repeat(4,minmax(0,1fr))}}.history-line{margin:0;font-size:.95rem}.trouble-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.45rem;gap:.45rem}.trouble-row{background:var(--bg);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:baseline;grid-gap:.75rem;gap:.75rem;padding:.7rem .9rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.trouble-count{font-size:1rem;font-weight:620;color:var(--bad);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.trouble-of{font-size:.82rem;font-weight:500;color:var(--muted)}.trouble-q{font-size:.95rem;line-height:1.4}.run-list{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.run-row{display:grid;grid-template-columns:minmax(4rem,1fr) auto auto auto;align-items:center;grid-gap:.75rem;gap:.75rem;padding:.5rem .2rem;font-size:.9rem;border-bottom:1px solid var(--border)}.run-row.is-latest{font-weight:560}.run-bar{height:6px;background:var(--surface-2);overflow:hidden}.run-bar,.run-bar-fill{display:block;border-radius:999px}.run-bar-fill{height:100%;background:var(--muted)}.run-row.is-latest .run-bar-fill{background:var(--accent)}.run-score{color:var(--muted)}.run-points,.run-score{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.run-points{font-weight:580}.run-meta{font-size:.82rem;color:var(--faint);white-space:nowrap}@media (max-width:32rem){.run-row{grid-template-columns:minmax(3rem,1fr) auto auto}.run-meta{display:none}}.review{list-style:none;margin:0;padding:0}.review-item{padding:1.4rem 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1.6rem minmax(0,1fr);grid-gap:0 .7rem;gap:0 .7rem}.review-mark{font-size:.95rem;font-weight:600;line-height:1.6}.review-item.is-right .review-mark{color:var(--good)}.review-item.is-wrong .review-mark{color:var(--bad)}.review-q{margin:0 0 .6rem;font-size:1.02rem;font-weight:550;letter-spacing:-.015em;line-height:1.45;white-space:pre-line}.review-rows{margin:0;display:grid;grid-gap:.25rem;gap:.25rem}.review-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr);grid-gap:.6rem;gap:.6rem;align-items:baseline;font-size:.93rem}.review-row dt{font-size:.85rem;color:var(--faint)}.review-row dd{margin:0}.review-row.row-yours dd{color:var(--bad)}.review-item.is-right .review-row.row-yours dd,.review-row.row-right dd{color:var(--good)}.review-note{margin:.65rem 0 0;font-size:.93rem;line-height:1.5;color:var(--muted);white-space:pre-line}.note-points{list-style:none;display:grid;grid-gap:.55rem;gap:.55rem;white-space:normal}.note.note-points{padding-left:1rem}.note-points li{position:relative;padding-left:1.05rem}.note-points li:before{content:"";position:absolute;left:0;top:.62em;width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.7}.review-note.note-points{padding:0}.new-fab{position:fixed;right:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:45;display:inline-flex;align-items:center;gap:.5rem;font-size:.95rem;font-weight:560;letter-spacing:-.01em;text-decoration:none;color:var(--bg);background:var(--text);border-radius:999px;padding:.75rem 1.3rem;box-shadow:var(--shadow-lg);transition:opacity .15s var(--ease),transform .15s var(--ease),var(--press-transition)}.new-fab:hover{opacity:.88}.new-fab:active{transform:translateY(1px)}.new-fab-plus{font-size:1.15rem;line-height:1;font-weight:500;margin-top:-1px}@media (max-width:32rem){.new-fab-label{display:none}.new-fab{padding:0;width:52px;height:52px;justify-content:center;gap:0}.new-fab-plus{font-size:1.6rem}}.live-list{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.live-row{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.6rem .85rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.live-dot{width:8px;height:8px;flex:none;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px var(--good-soft);animation:live-pulse 2s ease-in-out infinite}@keyframes live-pulse{50%{opacity:.35}}.live-name{font-size:.95rem;font-weight:530}.live-meta{font-size:.87rem;color:var(--muted)}.live-more{background:transparent;border-style:dashed}.preview-head{cursor:pointer;list-style:none}.preview-head::-webkit-details-marker{display:none}.preview-head .panel-title:before{content:"";display:inline-block;width:.45em;height:.45em;margin-right:.55em;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(-45deg);transition:transform .15s ease;vertical-align:.12em}.preview[open] .preview-head .panel-title:before{transform:rotate(45deg)}.preview:not([open])>.preview-head{border-bottom-color:transparent}.preview{scroll-margin-top:5rem}.preview-list{list-style:none;margin:0;padding:0;display:grid}.preview-q{margin:0;padding:1rem 0;border-top:1px solid var(--border)}.preview-q:first-child{padding-top:0;border-top:0}.preview-q .qtext{min-height:0;margin:0;font-size:clamp(1.05rem,2.4vw,1.2rem);overflow-wrap:anywhere}.preview-pager{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.preview-where{margin:0;font-size:.9rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.panel{margin-top:1.5rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);overflow:hidden}.panel-head{display:flex;align-items:baseline;gap:.5rem;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.9rem 1.15rem;background:var(--surface-2);border-bottom:1px solid var(--border)}.panel-head .cat-toggle{align-self:center}.panel-head .panel-title{margin-right:auto}.panel-title{font-size:1rem;font-weight:600;letter-spacing:-.02em}.panel-note{margin:0;font-size:.85rem;color:var(--muted)}.panel:not(.is-open)>.panel-head{border-bottom-color:transparent}.panel-body{padding:1.15rem}.panel-body>:last-child{margin-bottom:0}.panel-empty{margin:0;font-size:.93rem;color:var(--muted)}.panel-foot{margin:1rem 0 0;font-size:.85rem;color:var(--faint)}.face{position:relative;flex:none;display:grid;place-items:center;border-radius:50%;overflow:hidden;background:var(--surface-2);border:1px solid var(--border)}.face-initial{font-weight:620;color:var(--muted);line-height:1}.face-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}.podium{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;grid-gap:.5rem;gap:.5rem}.podium-slot{display:grid;justify-items:center;grid-gap:.15rem;gap:.15rem;text-align:center;min-width:0}.podium-face{position:relative;display:inline-grid}.podium-rank{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-size:.72rem;font-weight:620;color:#fff;background:var(--muted);border:2px solid var(--surface)}.podium-slot.is-place-1 .podium-rank{background:#D4A017}.podium-slot.is-place-2 .podium-rank{background:#9AA0A6}.podium-slot.is-place-3 .podium-rank{background:#B06B3A}.podium-name{font-size:.9rem;font-weight:560;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium-points{font-size:1.15rem;font-weight:640;letter-spacing:-.025em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.podium-slot.is-place-1 .podium-points{font-size:1.45rem}.podium-meta{font-size:.78rem;color:var(--muted)}.podium-block{width:100%;margin-top:.5rem;border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--surface-2);border:1px solid var(--border);border-bottom:0}.podium-slot.is-place-1 .podium-block{height:56px;background:var(--accent-soft);border-color:var(--accent)}.podium-slot.is-place-2 .podium-block{height:38px}.podium-slot.is-place-3 .podium-block{height:26px}.podium-slot.is-me .podium-name{color:var(--accent)}.podium-slot.is-me .podium-block{border-color:var(--accent);background:var(--accent-soft)}.board-list{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.board-card{display:grid;grid-template-columns:1.6rem auto minmax(0,1fr) auto;align-items:center;grid-gap:.15rem .75rem;gap:.15rem .75rem;padding:.7rem .9rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface)}.board-card.is-me{border-color:var(--accent);background:var(--accent-soft)}.board-rank{font-size:.85rem;font-weight:560;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;grid-row:span 2}.board-name{font-size:.95rem;font-weight:530;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-meta{grid-column:3;font-size:.82rem;color:var(--muted)}.board-card .face,.board-points{grid-row:span 2}.board-points{font-size:1rem;font-weight:620;letter-spacing:-.02em}.board-you{margin-left:.4rem;font-size:.7rem;font-weight:560;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:.05rem .4rem;vertical-align:1px}.board-more{margin:1rem 0 0;padding-top:1rem;border-top:1px solid var(--border);font-size:.9rem;color:var(--muted);text-align:center}@media (max-width:32rem){.podium{gap:.3rem}.podium-name{font-size:.82rem}.podium-rank{width:19px;height:19px;font-size:.65rem}.podium-points{font-size:1rem}.podium-slot.is-place-1 .podium-points{font-size:1.2rem}.podium-meta{font-size:.72rem}}.mine-list{list-style:none;margin:2rem 0 0;padding:0;display:grid;grid-gap:.7rem;gap:.7rem}.section-head+.mine-list{margin-top:1rem}.deck+.section-head{margin-top:2rem}.page-head{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.page-head .display{margin:0}.page-head-go{padding:.55rem 1rem .55rem .85rem}.page-head-plus{font-size:1.15rem;line-height:1;font-weight:500;margin-top:-1px}.toast{position:fixed;left:50%;bottom:1.5rem;z-index:50;margin:0;padding:.6rem 1.05rem;border-radius:var(--r-sm);background:var(--text);color:var(--bg);font-size:.9rem;font-weight:540;letter-spacing:-.01em;box-shadow:var(--shadow-lg);translate:-50% 0}@media (max-width:32rem){.toast{bottom:5rem}}.mine-filter{margin-top:1.4rem}.mine-filter .seg-btn{cursor:pointer}.mine-filter .seg-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.mine-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.7rem 1.25rem;padding:1.1rem 1.2rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.mine-title{margin:0;font-size:1.02rem;font-weight:560;letter-spacing:-.015em}.mine-title a{color:inherit;text-decoration:none}.mine-title a:hover{color:var(--accent)}.mine-meta{margin:.25rem 0 0;font-size:.88rem;color:var(--muted)}.mine-links{display:flex;gap:.5rem;flex-wrap:wrap}.mine-item{position:relative}.mine-item.is-menu-open{z-index:5}.mine-text{min-width:0;padding-right:2.4rem}.sheet-menu{position:absolute;top:.6rem;right:.6rem}.sheet-menu-btn{width:32px;height:32px;display:grid;place-items:center;color:var(--muted);background:none;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),border-color .15s var(--ease)}.sheet-menu-btn:hover,.sheet-menu-btn[aria-expanded=true]{color:var(--text);background:var(--surface-2);border-color:var(--border)}.sheet-menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sheet-menu-panel{position:absolute;right:0;top:calc(100% + .3rem);z-index:30;display:grid;min-width:12.5rem;padding:.3rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg)}.sheet-menu-panel[hidden]{display:none}.sheet-menu-panel .menu-row{text-decoration:none}.sheet-menu-panel .menu-row:focus-visible{outline:none;background:var(--surface-2)}.sheet-menu-panel .menu-tick{color:var(--muted)}.menu-row.is-danger,.menu-row.is-danger .menu-tick{color:var(--bad)}.menu-row.is-danger:focus-visible,.menu-row.is-danger:hover{background:var(--bad-soft)}.menu-sep{height:1px;margin:.25rem .3rem;background:var(--border)}.mine-rename{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.mine-rename-input{flex:1 1 12rem;min-width:0;font:inherit;font-size:1rem;font-weight:560;color:var(--text);background:var(--bg);border:1px solid var(--accent);border-radius:var(--r-sm);padding:.4rem .6rem}.mine-rename-input:focus{outline:2px solid var(--accent-soft);outline-offset:0}.mine-error{margin:.4rem 0 0;font-size:.85rem;color:var(--bad)}.mine-confirm{display:grid;grid-gap:.55rem;gap:.55rem}.mine-confirm-text{margin:0;font-size:.9rem;color:var(--text)}.empty{margin:2rem 0 0;border:1px dashed var(--border-strong);border-radius:var(--r);padding:2.5rem 1.5rem;text-align:center}.empty p{margin:0 0 1.25rem;color:var(--muted)}.banner{margin:1.2rem 0 0;border:1px solid var(--bad);background:var(--bad-soft);padding:.8rem 1rem;border-radius:var(--r-sm);font-size:.93rem}.banner.banner-info{border-color:var(--border);background:var(--surface-2)}.banner p{margin:0}.banner p+p{margin-top:.4rem}.banner>.btn{margin-top:.7rem}.share{margin-top:1.5rem;border:1px solid var(--accent);border-radius:var(--r);padding:1.25rem;background:var(--surface);box-shadow:var(--shadow)}.share-url{display:flex;gap:.5rem;margin-top:.75rem;flex-wrap:wrap}.share-url input{flex:1 1 16rem;min-width:0;font-family:var(--ff-mono);font-size:.85rem;padding:.65rem .8rem;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--bg);color:var(--text)}.share-url input:focus{outline:none;border-color:var(--accent)}.share-note{margin:.85rem 0 0;font-size:.9rem;color:var(--muted)}.count-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.count-btn{font-family:inherit;font-size:.9rem;font-weight:500;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.4rem .9rem;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.count-btn:hover{border-color:var(--border-strong);color:var(--text)}.count-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.count-btn.is-picked{background:var(--text);border-color:var(--text);color:var(--bg)}.kind-count{margin-left:.4rem;opacity:.6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kind-btn:disabled{cursor:default}.setup-all{margin-left:auto;font-size:.85rem;font-weight:500}.ready-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-top:1.25rem;padding-bottom:1.1rem;border-bottom:1px solid var(--border)}.ready-facts{flex:1 1 14rem;display:grid;grid-gap:.15rem;gap:.15rem;justify-items:end;text-align:right}.ready-fact{margin:0;font-size:.92rem;color:var(--muted)}.ready-fact strong{font-weight:620;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ready-fact-quiet{font-size:.85rem;color:var(--faint)}.ready-keep{flex:none}@media (max-width:34rem){.ready-facts{justify-items:start;text-align:left}}.setup{margin-top:1.25rem}.setup-sum{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:calc(100% + 1.2rem);margin:-.5rem -.6rem;padding:.5rem .6rem;font:inherit;text-align:left;color:inherit;background:none;border:0;border-radius:var(--r-sm);cursor:pointer;transition:background .15s var(--ease)}.setup-sum:hover{background:var(--surface-2)}.setup-sum:focus-visible{outline:2px solid var(--accent);outline-offset:0}.setup-sum-text{min-width:0;display:grid}.setup-said{margin:.3rem 0 0;font-size:.93rem;line-height:1.5;color:var(--muted)}.setup-change{flex:none;display:inline-flex;align-items:center;gap:.35rem;font-size:.9rem;font-weight:560;color:var(--accent)}.setup-questions>.setup-fold{margin-top:0}.setup-tune{margin-top:.9rem;padding:.95rem 1rem;border-radius:var(--r-sm);background:var(--surface-2)}.setup-tune .setup-row+.setup-row{margin-top:.9rem;padding-top:.9rem}.setup-tune .setup-label{font-size:.88rem;font-weight:600;color:var(--muted)}.setup-tune .count-btn{background:var(--surface)}.setup .count-btn.is-picked{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.setup .count-btn.is-picked .kind-count{opacity:.75}.setup-length{margin-top:.5rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.setup-length .seg-btn{display:inline-flex;align-items:center;justify-content:center;min-width:2.6rem;height:2.1rem;padding:0 .75rem}.setup-length .seg-btn.is-picked{color:var(--accent);font-weight:600}.setup-length-row{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem}.setup-length-row .setup-length{margin-top:0}.setup-length .seg-btn.seg-field{padding:0}.seg-input{width:4.75rem;height:100%;padding:0 .5rem;line-height:1;font:inherit;text-align:center;color:inherit;background:transparent;border:0;border-radius:5px;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.seg-input::-webkit-inner-spin-button,.seg-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.seg-input::placeholder{color:var(--muted);opacity:1}.seg-input:focus{outline:none}.seg-field:has(.seg-input:focus){background:var(--surface);box-shadow:var(--shadow)}.lesson-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}@media (min-width:44rem){.lesson-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.lesson-check{position:relative;display:flex;align-items:center;gap:.6rem;padding:.5rem .65rem;font-size:.9rem;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease)}.lesson-check:hover{border-color:var(--border-strong)}.lesson-check.is-on{color:var(--text)}.lesson-check.is-off{cursor:default}.lesson-name{flex:1 1 auto;min-width:0;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.lesson-count{flex:none;font-size:.82rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.setup-go{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--border)}.setup-go .ready-actions,.setup-go .resume{margin-top:0}.qlesson{margin:0 0 .35rem;font-size:.85rem;font-weight:520;color:var(--muted)}.count-pick{margin-bottom:1rem}.count-pick .rubric{margin:0}.count-rate{font-weight:450;color:var(--faint)}.count-pick .seg{margin:.5rem 0 0}.count-custom{width:6.5rem;font-family:inherit;font-size:.9rem;color:var(--text);background:var(--surface);border:1px dashed var(--border-strong);border-radius:999px;padding:.4rem .9rem;-moz-appearance:textfield}.count-custom::-webkit-inner-spin-button,.count-custom::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.count-custom:focus{outline:none;border-color:var(--accent);border-style:solid}.count-custom.is-picked{border-style:solid;border-color:var(--text);font-weight:600}.queue{list-style:none;margin:1rem 0 0;padding:0;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.queue li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;grid-gap:.9rem;gap:.9rem;padding:.6rem .6rem .6rem 1rem}.queue li+li{border-top:1px solid var(--border)}.queue-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.93rem}.queue-meta{font-size:.85rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.queue-go{margin-top:.9rem;width:100%}.banner-lines{white-space:pre-line}.count-btn-own{display:inline-flex;align-items:center;gap:.45rem;border-style:dashed}.count-btn-own svg{display:block}.count-btn-own:hover{color:var(--accent);border-color:var(--accent)}.prompt-box{min-height:16rem;margin-top:.75rem;font-size:.8rem;line-height:1.65}@media (max-width:32rem){.review-item{grid-template-columns:1.3rem minmax(0,1fr)}.review-row{grid-template-columns:minmax(0,1fr);gap:0}.opt{grid-template-columns:auto minmax(0,1fr)}.opt-verdict{grid-column:2;margin-top:.2rem}.actions .btn,.readout-actions .btn{flex:1 1 100%}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);width:100%}.seg-btn{padding:.55rem .4rem;font-size:.85rem}.mine-item{flex-direction:column;align-items:flex-start}.share-url input{flex-basis:100%}}@media (pointer:coarse){.link-btn{padding:.35rem 0}.mine-links{gap:.5rem}.icon-btn{width:34px;height:34px}.keyhint{display:none}}@media (max-width:32rem){.qcard{margin-top:1.1rem}.qtype{margin-bottom:.6rem;padding:.15rem .6rem;font-size:.75rem}.qtext{font-size:1.12rem;line-height:1.3;margin-bottom:1rem}.opts{gap:.4rem;min-height:max(0px,calc(var(--opt-rows, 0) * 3.2rem - .4rem))}.opt{padding:.7rem .85rem;gap:.65rem}.opt-text{font-size:.95rem}.note{margin-top:.8rem}.actions-quiz{position:-webkit-sticky;position:sticky;bottom:0;z-index:5;margin-top:1rem;padding:.6rem 0 calc(.6rem + env(safe-area-inset-bottom, 0px));background:var(--bg);border-top:1px solid var(--border);flex-wrap:nowrap}.actions-quiz .btn{flex:1 1 auto;min-height:44px}.actions-quiz .btn-primary{flex:2 1 auto}.ready-readout{margin-top:.9rem;padding:.9rem 1rem}.readout-figures{gap:1rem}.setup{margin-top:1rem}}.katex{font-size:1.03em}.katex-display{margin:.5em 0;overflow-x:auto;overflow-y:hidden;padding:.25em 0}.qtext .katex-display{margin:.4em 0 .15em}.tex-error{color:var(--bad);background:var(--bad-soft);border-radius:4px;padding:.05em .3em;font-size:.92em}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.meter{display:flex;align-items:center;flex-wrap:wrap;gap:1.75rem;margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.meter>div{display:flex;align-items:baseline;gap:.5rem}.meter dt{font-size:.85rem;color:var(--muted)}.meter dd{margin:0;font-size:1.05rem;font-weight:600;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meter-topup{margin-left:auto}.balance{margin-top:1.75rem;padding:1.25rem 1.35rem;background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--r)}.balance-note{margin:.35rem 0 0;font-size:.9rem;line-height:1.55;color:var(--muted)}.packs{list-style:none;margin:.8rem 0 0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.packs li{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r)}.pack-price{margin:0;font-size:1.15rem;font-weight:600;letter-spacing:-.02em}.pack-reads{margin:.15rem 0 0;font-size:.9rem;color:var(--muted)}.pack-makes{margin:.1rem 0 0;font-size:.82rem;color:var(--faint)}.credits{display:inline-flex;align-items:baseline;gap:.3rem;padding:.28rem .6rem;border:1px solid var(--border);border-radius:999px;font-size:.82rem;color:var(--muted);text-decoration:none;white-space:nowrap}.credits:hover{border-color:var(--border-strong);color:var(--text)}.credits-num{font-weight:600;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.credits.is-out{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:550}.account{position:relative}.account-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .5rem .25rem .25rem;background:none;border:1px solid transparent;border-radius:999px;font-family:inherit;cursor:pointer;color:var(--muted);transition:border-color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.account-trigger:hover,.account-trigger[aria-expanded=true]{border-color:var(--border);background:var(--surface-2)}.account-caret{flex:none;transition:transform .15s var(--ease)}.account-trigger[aria-expanded=true] .account-caret{transform:rotate(180deg)}.account-panel{position:absolute;top:calc(100% + .5rem);right:0;z-index:40;width:min(19rem,calc(100vw - 2rem));padding:1rem;display:grid;grid-gap:.9rem;gap:.9rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg)}.account-panel[hidden]{display:none}.account-who{display:flex;align-items:center;gap:.7rem}.account-who .user-avatar{width:40px;height:40px}.account-id{min-width:0}.account-name{margin:0;font-size:.95rem;font-weight:570;color:var(--text)}.account-email,.account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-email{margin:.1rem 0 0;font-size:.82rem;color:var(--faint)}.account-credits{padding:.9rem 1rem;background:var(--accent-wash);border:1px solid var(--accent-line);border-radius:var(--r-sm)}.account-credits .figure{margin:0}.account-credits .btn{margin-top:.8rem;width:100%;justify-content:center}.account-note{margin:.4rem 0 0;font-size:.8rem;line-height:1.5;color:var(--muted)}.account-out{font-family:inherit;font-size:.875rem;color:var(--muted);background:none;border:1px solid var(--border);border-radius:var(--r-sm);padding:.5rem .8rem;cursor:pointer;transition:border-color .15s var(--ease),color .15s var(--ease),var(--press-transition)}.account-out:hover{color:var(--text);border-color:var(--border-strong)}.footer{margin:clamp(2.5rem,6vw,4rem) calc(-1 * var(--gutter)) calc(-1 * 5rem);padding:clamp(2.5rem,5vw,3.5rem) var(--gutter) clamp(2.5rem,5vw,3.5rem);background:var(--surface-2);border-top:1px solid var(--border);display:grid;grid-gap:clamp(1.75rem,4vw,2.5rem);gap:clamp(1.75rem,4vw,2.5rem)}.footer-top{display:grid;grid-gap:2rem;gap:2rem}.footer-blurb{margin:.75rem 0 0;max-width:34ch;font-size:.95rem;line-height:1.55;color:var(--muted)}.footer-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.5rem 1.5rem;gap:1.5rem 1.5rem}.footer-nav ul{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.5rem;gap:.5rem}.footer-nav a{font-size:.95rem;color:var(--text);text-decoration:none}.footer-nav a:hover{text-decoration:underline}.footer-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}@media (max-width:30rem){.footer-nav{gap:1.25rem .85rem}.footer-nav .rubric{font-size:.82rem}.footer-nav a{font-size:.88rem}.footer-nav ul{gap:.45rem}}.footer-base{margin:0;padding-top:clamp(1.25rem,3vw,1.75rem);border-top:1px solid var(--border-strong);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1.5rem;font-size:.87rem;color:var(--faint)}@media (min-width:46rem){.footer-top{grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);align-items:start;gap:3rem}}.wordmark{font-family:var(--ff-serif);font-weight:600;font-size:1.04em;color:var(--muted)}@media (min-width:72rem){.screen.screen-wide{max-width:none;--gutter:clamp(2.5rem,6vw,7rem)}.screen-wide .hero h1{font-size:clamp(3.25rem,5vw,5.5rem);max-width:13ch}.screen-wide .hero-lead{font-size:1.25rem;max-width:44ch}.screen-wide .hero{grid-template-columns:minmax(0,1fr) minmax(0,34rem);gap:clamp(3rem,6vw,7rem)}.screen-wide .footer-top,.screen-wide .step-note{grid-template-columns:minmax(0,34rem) minmax(0,38rem);justify-content:space-between}}.band{position:relative}.band:before{content:"";position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 5px var(--bg)}.way{padding-left:1.1rem;border-left:2px solid var(--accent-line)}@media (min-width:80rem){.screen-wide .band{display:grid;grid-template-columns:minmax(0,22rem) minmax(0,1fr);grid-column-gap:clamp(3rem,5vw,5rem);column-gap:clamp(3rem,5vw,5rem);align-items:start}.screen-wide .band>h2{grid-column:1;grid-row:1}.screen-wide .band>.deck{grid-column:1;grid-row:2;max-width:none}.screen-wide .band>.trio{grid-column:2;grid-row:1/span 2;margin-top:0}.screen-wide .footer-top{grid-template-columns:minmax(0,22rem) minmax(0,1fr)}.screen-wide .footer-nav{grid-template-columns:repeat(3,minmax(0,13rem));justify-content:start}}.board-live{display:flex;align-items:center;gap:.5rem;margin:0 0 .9rem;padding-bottom:.9rem;border-bottom:1px solid var(--border);font-size:.88rem;color:var(--muted)}.board-rows{list-style:none;margin:0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.board-rows li{display:grid;grid-template-columns:1.25rem minmax(0,1fr) auto auto;align-items:baseline;grid-gap:.75rem;gap:.75rem;font-size:.93rem}.board-place{color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board-who{font-weight:550}.board-points{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.board-right{font-size:.85rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.step-name,.trio-name{margin:0;font-size:1.15rem;font-weight:580;letter-spacing:-.018em;line-height:1.35}.step-note,.trio-note{margin:.45rem 0 0;font-size:.95rem;line-height:1.6;color:var(--muted);max-width:44ch}.grade-screen{max-width:84rem}.grade-top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:.5rem 2rem}.grade-intro .deck{max-width:54ch}.save-state{display:grid;place-items:center;margin:0 0 .35rem;width:1.3rem;height:1.3rem;color:var(--faint)}.save-state.is-failed{color:var(--bad)}.save-state.is-paused{color:var(--accent)}.save-state.is-saving svg{animation:save-turn 1s linear infinite}@keyframes save-turn{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.save-state.is-saving svg{animation:none}}.save-warn{color:var(--bad)}.grade-layout{margin-top:1.75rem;display:grid;grid-gap:1.5rem;gap:1.5rem}@media (min-width:64rem){.grade-layout{grid-template-columns:16rem minmax(0,1fr);gap:2.75rem;align-items:start}.grade-rail{position:-webkit-sticky;position:sticky;top:5rem}}.rail-head{margin:0 0 .55rem}.rail-years{list-style:none;margin:0;padding:0;display:grid;grid-gap:.2rem;gap:.2rem}.rail-term,.rail-year{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.6rem;font:inherit;text-align:left;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.45rem .55rem;cursor:pointer;transition:color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.rail-year{font-size:.97rem;font-weight:550;letter-spacing:-.01em}.rail-term{font-size:.9rem}.rail-term:hover,.rail-year:hover{color:var(--text);background:var(--surface-2)}.rail-years>li.is-picked>.rail-year{color:var(--text);background:var(--accent-soft);border-color:var(--accent-line)}.rail-term.is-picked{color:var(--text);font-weight:560;background:var(--surface-2)}.rail-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-caret{flex:none;color:var(--faint);transition:transform .28s var(--ease-drawer),color .15s var(--ease)}.rail-year[aria-expanded=true] .rail-caret{transform:rotate(180deg);color:var(--muted)}.rail-year:hover .rail-caret{color:var(--text)}@media (prefers-reduced-motion:reduce){.rail-caret{transition:none}}.rail-grade{flex:none;font-size:.82rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-term.is-picked .rail-grade,.rail-years>li.is-picked>.rail-year .rail-grade{color:var(--muted)}.rail-terms{list-style:none;margin:.2rem 0 .55rem .85rem;padding:0 0 0 .5rem;display:grid;grid-gap:.1rem;gap:.1rem;border-left:1px solid var(--border)}.rail-add{margin-top:.8rem;font-size:.88rem}@media (max-width:63.99rem){.grade-rail{padding-bottom:1.1rem;border-bottom:1px solid var(--border)}.rail-years{display:flex;flex-wrap:wrap;gap:.4rem}.rail-years>li{display:contents}.rail-term,.rail-year{width:auto;border-color:var(--border);border-radius:999px;padding:.35rem .8rem;white-space:nowrap}.rail-terms{flex:1 1 100%;display:flex;gap:.4rem;margin:.15rem 0 .1rem;padding:.1rem 0;border-left:none;overflow-x:auto}}.year-head{display:flex;align-items:center;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.year-id{flex:1 1 auto;min-width:0}.year-name{display:inline-flex;align-items:center;gap:.45rem;margin:0;padding:0;font-family:var(--ff-serif);font-size:clamp(1.25rem,2.5vw,1.6rem);font-weight:600;letter-spacing:-.02em;line-height:1.2;text-align:left;color:var(--text);background:transparent;border:none;cursor:pointer}.year-name:hover{color:var(--accent)}.year-name:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.year-caret{flex:none;color:var(--faint);transition:transform .3s var(--ease-drawer),color .15s var(--ease)}.year-name:hover .year-caret{color:var(--accent)}.year-name[aria-expanded=true] .year-caret{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.year-caret{transition:none}}.year-summary{display:block}.year-summary>.cat-drawer{margin-top:0}.year-summary.is-open>.cat-drawer{grid-template-rows:1fr;opacity:1}.summary-body{padding:1rem 0 .25rem}.summary-note{margin:.7rem 0 0;font-size:.82rem;line-height:1.5;color:var(--faint);max-width:62ch}.year-shape{margin:.2rem 0 0;font-size:.85rem;color:var(--muted)}.year-gear{flex:none}.year-gear:hover:not(:disabled){color:var(--accent);border-color:var(--accent-line)}.year-stats{display:flex;align-items:flex-start;gap:1.5rem;flex:none}.year-stat{margin:0;flex:none;text-align:right;display:grid;grid-gap:.15rem;gap:.15rem;font:inherit;color:inherit;background:none;border:0;padding:0}.year-stat .rubric{justify-self:end}.stat-figures{display:flex;align-items:baseline;justify-content:flex-end;gap:.4rem}.stat-big{font-size:1.7rem;font-weight:600;letter-spacing:-.03em;line-height:1.05;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-small{font-size:1rem;font-weight:600;letter-spacing:-.01em;line-height:1.1;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.year-stat.is-goal .stat-big{font-size:1.2rem;color:var(--accent)}.year-stat.is-swappable{cursor:pointer;border-radius:var(--r-sm);padding:.15rem .3rem;margin:-.15rem -.3rem;transition:background .15s var(--ease),var(--press-transition)}.year-stat.is-swappable:hover{background:var(--surface-2)}.year-stat.is-swappable:hover .stat-small{color:var(--text)}.grade-main>.panel{margin-top:1.25rem}.grade-main>.empty{margin-top:1.5rem}.grade-main>.fine-note{margin-top:2rem}.grade-scroll{overflow-x:auto}.grade-table{width:100%;border-collapse:collapse;font-size:.93rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.grade-table td,.grade-table th{padding:.5rem .6rem;text-align:right;white-space:nowrap}.grade-table thead th{font-size:.82rem;font-weight:500;color:var(--muted)}.grade-table thead th abbr{text-decoration:none}.grade-table tbody th,.grade-table th:first-child{text-align:left;font-weight:530;white-space:normal;min-width:8rem}.grade-table tbody tr+tr td,.grade-table tbody tr+tr th{border-top:1px solid var(--border)}.grade-table .is-current{background:var(--accent-soft);color:var(--text)}.grade-table .is-total{font-weight:600}.grade-table tfoot td,.grade-table tfoot th{border-top:1px solid var(--border-strong);font-weight:600}.subject-bar{margin-top:1.75rem;display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.subject-bar .rubric{margin:0}.subject-list{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.9rem;gap:.9rem}.subject{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:1.1rem;box-shadow:var(--shadow)}.subject.is-open{border-color:var(--border-strong)}@media (min-width:64rem){.subject-list{grid-template-columns:repeat(auto-fill,minmax(min(23rem,100%),1fr));align-items:start}.subject.is-open{grid-column:1/-1}.subject.is-open .cat-list{grid-template-columns:repeat(auto-fill,minmax(min(32rem,100%),1fr));align-items:start}}.subject-head{display:flex;align-items:center;gap:.5rem}.subject-toggle{flex:none;display:grid;place-items:center;width:30px;height:30px;color:var(--muted);background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;transition:color .18s var(--ease),background .18s var(--ease),border-color .18s var(--ease),var(--press-transition)}.subject-toggle:hover{color:var(--text);background:var(--surface-2);border-color:var(--border)}.subject-toggle svg{transition:transform .32s var(--ease-drawer)}.subject:not(.is-open) .subject-toggle:hover svg{transform:translateX(2px)}.subject.is-open .subject-toggle{color:var(--accent);background:var(--accent-soft);border-color:var(--accent-line)}.subject.is-open .subject-toggle svg{transform:rotate(90deg)}.subject-name{flex:1 1 6rem;width:6rem;min-width:0;font-family:var(--ff-serif);font-size:1.12rem;font-weight:600;letter-spacing:-.015em;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.3rem .4rem}.subject-name:hover{border-color:var(--border)}.subject-name:focus{outline:none;border-color:var(--accent)}.subject-name::placeholder{font-family:var(--ff-sans);font-weight:400;color:var(--faint)}.subject-grade{margin:0;flex:none;text-align:right;display:grid;grid-gap:.1rem;gap:.1rem;font:inherit;color:inherit;background:none;border:0;padding:0}.subject-grade.is-swappable{cursor:pointer}.subject-grade.is-swappable:hover .subject-grade-eq{color:var(--text)}.subject-grade-num{font-size:1.4rem;font-weight:600;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.1}.grade-row{display:inline-flex;align-items:baseline;gap:.3rem;justify-content:flex-end}.delta{font-size:.72rem;font-weight:600;line-height:1;color:var(--good);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.delta.is-down{color:var(--bad)}.marked{display:flex;align-items:center;gap:.55rem;margin:.1rem 0 0}.marked-bar{flex:0 1 7rem;height:4px;border-radius:999px;background:var(--border);overflow:hidden}.marked-bar>span{display:block;height:100%;border-radius:999px;background:var(--muted);transition:width .3s var(--ease-drawer)}.marked-say{flex:none;font-size:.78rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.marked-bar>span{transition:none}}.subject-note{margin:.35rem 0 0;font-size:.85rem;color:var(--bad)}.cat-chips{list-style:none;margin:.65rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}.chips-drawer .cat-chips{margin-top:.65rem}.chip{display:inline-flex;align-items:baseline;gap:.4rem;font-size:.8rem;padding:.25rem .6rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-2)}.chip-name{color:var(--text);font-weight:520}.chip-weight{color:var(--faint)}.chip-grade{color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cat-list{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-gap:.65rem;gap:.65rem}.cat{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:.75rem .8rem;container-type:inline-size}.cat-head{display:flex;align-items:center;gap:.4rem}.cat-toggle{flex:none;display:grid;place-items:center;width:24px;height:24px;color:var(--faint);background:transparent;border:1px solid transparent;border-radius:50%;cursor:pointer;transition:color .18s var(--ease),background .18s var(--ease),var(--press-transition)}.cat-toggle:hover{color:var(--text);background:var(--surface)}.cat-toggle svg{transition:transform .32s var(--ease-drawer)}.cat:not(.is-open)>.cat-head .cat-toggle:hover svg,.scale:not(.is-open)>.scale-head .cat-toggle:hover svg{transform:translateX(2px)}.cat.is-open>.cat-head .cat-toggle,.panel.is-open>.panel-head .cat-toggle,.scale.is-open>.scale-head .cat-toggle{color:var(--accent)}.cat.is-open>.cat-head .cat-toggle svg,.panel.is-open>.panel-head .cat-toggle svg,.scale.is-open>.scale-head .cat-toggle svg{transform:rotate(90deg)}.cat:not(.is-open) .cat-line{margin-top:.3rem}.cat-name{flex:1 1 4rem;width:4rem;min-width:0;font:inherit;font-size:.95rem;font-weight:550;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.25rem .35rem}.cat-name:hover{border-color:var(--border-strong)}.cat-name:focus{outline:none;border-color:var(--accent);background:var(--surface)}.cat-name::placeholder{font-weight:400;color:var(--faint)}.cat-weight{flex:none;display:inline-flex;align-items:center;gap:.15rem;font-size:.88rem;color:var(--muted)}.num{font:inherit;font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.3rem .4rem}.num:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.num::placeholder{color:var(--faint)}.num-weight{width:3.4rem;min-width:0}.num-score,.num-total{width:4rem;min-width:0}.cat-line{margin:.45rem 0 0;font-size:.82rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.item-list{list-style:none;margin:.6rem 0 0;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.item{display:flex;align-items:center;gap:.45rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.3rem .4rem}.item-name{flex:1 1 4rem;width:4rem;min-width:0;font:inherit;font-size:.92rem;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.25rem .35rem}.item-name:focus{outline:none;border-color:var(--accent)}.item-name::placeholder{color:var(--faint)}.item-marks{flex:none;display:inline-flex;align-items:center;gap:.3rem}.item-of{color:var(--faint)}.item-pct{flex:none;width:3.6rem;text-align:right;font-size:.82rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cat-add{margin-top:.5rem;font-size:.85rem}.subject-add{margin-top:.9rem;font-size:.88rem}.subject .link-btn.is-on{color:var(--text);font-weight:600}.link-btn:disabled{opacity:.45;cursor:not-allowed;text-decoration:none}@container (max-width: 31rem){.item{flex-wrap:wrap}.item-name{flex:1 1 100%}.item-marks{margin-left:auto}.item-pct{width:auto;min-width:3rem}}@media (max-width:32rem){.subject-grade-num{font-size:1.25rem}.stat-big{font-size:1.4rem}.year-stat.is-goal .stat-big{font-size:1.05rem}}[data-tint=rose]{--tint:var(--tint-rose)}[data-tint=amber]{--tint:var(--tint-amber)}[data-tint=lime]{--tint:var(--tint-lime)}[data-tint=emerald]{--tint:var(--tint-emerald)}[data-tint=sky]{--tint:var(--tint-sky)}[data-tint=indigo]{--tint:var(--tint-indigo)}[data-tint=violet]{--tint:var(--tint-violet)}[data-tint=slate]{--tint:var(--tint-slate)}.subject[data-tint] .subject-head{margin:-1.1rem -1.1rem 0;padding:.9rem 1.1rem;background:color-mix(in srgb,var(--tint) 14%,var(--surface));border-bottom:1px solid color-mix(in srgb,var(--tint) 32%,var(--border));border-radius:calc(var(--r) - 1px) calc(var(--r) - 1px) 0 0}.subject[data-tint] .subject-head+*{margin-top:.85rem}.subject[data-tint] .look-trigger:hover,.subject[data-tint] .look-trigger[aria-expanded=true],.subject[data-tint] .subject-toggle:hover{background:var(--surface);border-color:color-mix(in srgb,var(--tint) 40%,var(--border))}.subject[data-tint].is-open{box-shadow:var(--shadow-lg)}.look{position:relative;flex:none}.look-trigger{display:grid;place-items:center;width:28px;height:28px;padding:0;font-size:1rem;line-height:1;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer;transition:border-color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.look-trigger:hover,.look-trigger[aria-expanded=true]{border-color:var(--border-strong);background:var(--surface-2)}.look-face{font-size:1.05rem}.look-add{color:var(--faint);transition:color .15s var(--ease)}.look-trigger:hover .look-add,.look-trigger[aria-expanded=true] .look-add{color:var(--accent)}.subject[data-tint] .look-add{color:color-mix(in srgb,var(--tint) 65%,var(--muted))}.look-trigger.has-face{position:relative}.look-cog{position:absolute;right:-3px;bottom:-3px;display:grid;place-items:center;width:13px;height:13px;color:var(--muted);background:var(--surface);border-radius:50%;opacity:.65;transition:opacity .15s var(--ease),color .15s var(--ease)}.cog-hub{fill:var(--surface)}.look-trigger.has-face:hover .look-cog,.look-trigger.has-face[aria-expanded=true] .look-cog{opacity:1;color:var(--accent)}@media (prefers-reduced-motion:reduce){.look-add,.look-cog{transition:none}}.look-panel{position:absolute;z-index:6;top:calc(100% + .4rem);left:0;width:15.5rem;padding:.8rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg)}.look-panel[hidden]{display:none}.look-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.look-row .rubric{margin:0}.look-head{margin:.9rem 0 .45rem}.look-emojis{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);grid-gap:.2rem;gap:.2rem}.look-pick{width:100%;aspect-ratio:1;display:grid;place-items:center;font-size:1.05rem;line-height:1;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);cursor:pointer}.look-pick:hover{background:var(--surface-2)}.look-pick.is-picked{border-color:var(--accent);background:var(--accent-soft)}.look-any{width:100%;margin-top:.5rem;font:inherit;font-size:.88rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.35rem .5rem}.look-any:focus{outline:none;border-color:var(--accent);background:var(--surface)}.look-any::placeholder{color:var(--faint)}.look-tints{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem}.look-foot{margin-top:.9rem;padding-top:.75rem;border-top:1px solid var(--border)}.tint{width:22px;height:22px;border-radius:50%;background:var(--tint,transparent);border:1px solid var(--border-strong);cursor:pointer;padding:0;transition:transform .12s var(--ease),var(--press-transition)}.tint[data-tint]{border-color:transparent}.tint:hover{transform:scale(1.12)}.tint.is-picked{outline:2px solid var(--text);outline-offset:2px}@media (prefers-reduced-motion:reduce){.tint{transition:none}.tint:hover{transform:none}}.row-face{margin-right:.4rem}.row-dot{display:inline-block;width:8px;height:8px;margin-right:.45rem;border-radius:50%;background:var(--tint,var(--border-strong));vertical-align:baseline}.term-list{list-style:none;margin:.7rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.term-row{display:flex;align-items:center;gap:.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.3rem .45rem}.term-name{flex:1 1 6rem;width:6rem;min-width:0;font:inherit;font-size:.93rem;font-weight:520;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.25rem .35rem}.term-name:focus{outline:none;border-color:var(--accent)}.term-name::placeholder{font-weight:400;color:var(--faint)}.term-marks{flex:none;font-size:.8rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:40rem){.year-head{flex-wrap:wrap;align-items:flex-start}.year-id{order:1;flex:1 1 auto}.year-gear{order:2}.year-stats{order:3;flex:1 0 100%;margin-right:0}.year-stat{text-align:left}.year-stat .rubric{justify-self:start}.stat-figures{justify-content:flex-start}}.cat-drawer,.chips-drawer,.subject-drawer{display:grid;transition:grid-template-rows .34s var(--ease-drawer),opacity .24s var(--ease)}.drawer-in{min-height:0;overflow:hidden}.subject-drawer{grid-template-rows:0fr;opacity:0}.chips-drawer,.subject.is-open .subject-drawer{grid-template-rows:1fr;opacity:1}.cat-drawer,.subject.is-open .chips-drawer{grid-template-rows:0fr;opacity:0}.cat.is-open>.cat-drawer,.panel.is-open>.cat-drawer,.scale.is-open>.cat-drawer{grid-template-rows:1fr;opacity:1}.cat-drawer .item-list{margin-top:.6rem}.subject-drawer .drawer-in>.cat-list{margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--border)}.subject-drawer .cat,.subject-drawer .subject-add{transform:translateY(-6px);opacity:0;transition:transform .34s var(--ease-drawer),opacity .26s var(--ease)}.subject.is-open .subject-drawer .cat,.subject.is-open .subject-drawer .subject-add{transform:none;opacity:1}.subject.is-open .cat-list>.cat:nth-child(2){transition-delay:45ms}.subject.is-open .cat-list>.cat:nth-child(3){transition-delay:.09s}.subject.is-open .cat-list>.cat:nth-child(4){transition-delay:.135s}.subject.is-open .cat-list>.cat:nth-child(n+5){transition-delay:.18s}.subject.is-open .subject-add{transition-delay:.2s}.subject:not(.is-open) .cat,.subject:not(.is-open) .subject-add{transition-delay:0s}.subject{transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}.subject.is-open{box-shadow:var(--shadow-lg)}@media (prefers-reduced-motion:reduce){.cat-drawer,.cat-toggle,.cat-toggle svg,.chips-drawer,.subject,.subject-drawer,.subject-drawer .cat,.subject-drawer .subject-add,.subject-toggle,.subject-toggle svg{transition:none}.cat:not(.is-open)>.cat-head .cat-toggle:hover svg,.scale:not(.is-open)>.scale-head .cat-toggle:hover svg,.subject:not(.is-open) .subject-toggle:hover svg{transform:none}}.sheet{width:min(58rem,calc(100vw - 3rem));max-height:min(88vh,52rem);padding:0;border:none;background:transparent;color:var(--text);overflow:visible}.sheet::-webkit-backdrop{background:rgba(24,24,27,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sheet::backdrop{background:rgba(24,24,27,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}:root[data-theme=dark] .sheet::-webkit-backdrop{background:rgba(0,0,0,.6)}:root[data-theme=dark] .sheet::backdrop{background:rgba(0,0,0,.6)}.sheet::-webkit-backdrop{opacity:0;-webkit-transition:opacity var(--modal-close-dur) var(--modal-ease);transition:opacity var(--modal-close-dur) var(--modal-ease)}.sheet::backdrop{opacity:0;transition:opacity var(--modal-close-dur) var(--modal-ease)}.sheet.is-open::-webkit-backdrop{opacity:1;-webkit-transition:opacity var(--modal-open-dur) var(--modal-ease);transition:opacity var(--modal-open-dur) var(--modal-ease)}.sheet.is-open::backdrop{opacity:1;transition:opacity var(--modal-open-dur) var(--modal-ease)}.sheet-in{display:flex;flex-direction:column;gap:1.1rem;max-height:min(88vh,52rem);overflow:hidden;padding:1.25rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg)}.sheet-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:1rem}.sheet-cols{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:.15rem}.sheet-col,.sheet-cols{display:grid;grid-gap:1.1rem;gap:1.1rem}.sheet-col{align-content:start;min-width:0}@media (min-width:52rem){.sheet-cols{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.75rem}.sheet-col+.sheet-col{padding-left:1.75rem;border-left:1px solid var(--border)}}.sheet.sheet-narrow{width:min(34rem,calc(100vw - 2rem))}.sheet-body{flex:1 1 auto;min-height:0;overflow-y:auto;max-width:none}.sheet-body>:last-child{margin-bottom:0}.sheet-body.legal{margin-top:0}.sheet-title{margin:0;font-family:var(--ff-serif);font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.sheet-field{display:grid;grid-gap:.45rem;gap:.45rem}.sheet-field .rubric{display:block}.sheet-name{width:100%;font:inherit;font-size:1rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.55rem .7rem}.sheet-name:focus{outline:none;border-color:var(--accent);background:var(--surface);box-shadow:0 0 0 2px var(--accent-soft)}.sheet-name::placeholder{color:var(--faint)}.term-num{flex:none;width:1.3rem;text-align:center;font-size:.8rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sheet-warn{flex:none;margin:0;font-size:.87rem;line-height:1.5;color:var(--bad);background:var(--bad-soft);border-radius:var(--r-sm);padding:.55rem .7rem}.sheet-foot{flex:none;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-top:.35rem}.sheet-actions{display:flex;gap:.5rem;margin-left:auto}.subject-grade-eq{display:block;font-weight:600;letter-spacing:-.01em;color:var(--muted);line-height:1.1;font-size:.95rem}.cell-eq,.cell-num{display:block}.cell-eq{font-size:.72rem;font-weight:500;color:var(--faint);line-height:1.3}.grade-table .is-total .cell-eq{color:var(--muted)}.scale-off{display:grid;grid-gap:.6rem;gap:.6rem;justify-items:start}.scale-note{margin:0;font-size:.82rem;line-height:1.5;color:var(--faint);max-width:44ch}.band-list{list-style:none;margin:.1rem 0 .6rem;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.band-row{display:flex;align-items:center;gap:.4rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.3rem .45rem}.num-band{width:3.6rem;min-width:0}.band-of{flex:none;font-size:.82rem;color:var(--faint);white-space:nowrap}.band-label{flex:1 1 4rem;width:4rem;min-width:0;font:inherit;font-size:.93rem;font-weight:550;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.25rem .35rem}.band-label:focus{outline:none;border-color:var(--accent)}.band-label::placeholder{font-weight:400;color:var(--faint)}.scale-list{list-style:none;margin:.1rem 0 0;padding:0;display:grid;grid-gap:.4rem;gap:.4rem}.scale{border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface-2);padding:.45rem .5rem}.scale.is-open{background:var(--surface);border-color:var(--border-strong)}.scale-head{display:flex;align-items:center;gap:.35rem}.scale-name{flex:1 1 4rem;width:4rem;min-width:0;font:inherit;font-size:.93rem;font-weight:550;color:var(--text);background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.25rem .35rem}.scale-name:focus{outline:none;border-color:var(--accent)}.scale-name::placeholder{font-weight:400;color:var(--faint)}.scale-count{flex:none;font-size:.78rem;color:var(--faint);white-space:nowrap}.scale .cat-drawer .band-list{margin-top:.5rem}.look-select{width:100%;margin-top:.1rem;font:inherit;font-size:.88rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.35rem .45rem;cursor:pointer}.look-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.scale-add-note{margin-top:.7rem}.scale-add-note+.count-row,.scale-off .count-row{margin-top:.45rem}.term-carry{flex:none;display:inline-flex;align-items:center;gap:.3rem;font-size:.8rem;color:var(--muted);white-space:nowrap;cursor:pointer}.term-carry input{accent-color:var(--accent);cursor:pointer}.cell-out{color:var(--border-strong)}.look-terms{list-style:none;margin:.1rem 0 0;padding:0;display:grid;grid-gap:.15rem;gap:.15rem}.term-tick{display:flex;align-items:center;gap:.4rem;font-size:.87rem;color:var(--muted);padding:.2rem .3rem;border-radius:var(--r-sm);cursor:pointer}.term-tick:hover{background:var(--surface-2)}.term-tick.is-on{color:var(--text)}.term-tick input{accent-color:var(--accent);cursor:pointer}.term-tick input:disabled{cursor:not-allowed}.term-tick:has(input:disabled){color:var(--faint);cursor:default}.term-tick:has(input:disabled):hover{background:transparent}.cell-btn{width:100%;font:inherit;color:inherit;text-align:inherit;background:transparent;border:1px solid transparent;border-radius:var(--r-sm);padding:.1rem .25rem;margin:-.1rem -.25rem;cursor:pointer;transition:background .15s var(--ease),color .15s var(--ease),var(--press-transition)}.cell-btn:hover{background:var(--accent-soft);color:var(--accent)}.cell-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.cell-btn:hover .cell-eq{color:var(--accent)}.row-btn{display:flex;align-items:baseline;gap:0}.grade-table thead .cell-btn{font-size:inherit}.grade-table thead th:has(.cell-btn[aria-pressed=true]){color:var(--text)}.grade-status{display:flex;align-items:center;gap:1rem}.banner.banner-estimate{margin-top:1.25rem;border-color:var(--accent);background:var(--accent-soft)}.banner-acts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem}.subject-goal{margin:.35rem 0 0;font-size:.85rem;color:var(--accent);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.subject-goal.is-warn{color:var(--bad)}.goal-row{display:flex;align-items:center;gap:.5rem}.goal-row .band-of{white-space:normal}@media (max-width:40rem){.year-stats{gap:1rem}}.code-row{display:flex;align-items:center;gap:.5rem;margin-top:.1rem}.code-input,.code-out{flex:1 1 6rem;width:6rem;min-width:0;font-family:var(--ff-mono);font-size:.95rem;letter-spacing:.08em;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);padding:.4rem .55rem}.code-input:focus{outline:none;border-color:var(--accent);background:var(--surface)}.code-input::placeholder{font-family:var(--ff-sans);letter-spacing:0;color:var(--faint)}.code-out{border-style:dashed;border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent);font-weight:600;-webkit-user-select:all;-moz-user-select:all;user-select:all}.undo-bar{position:fixed;left:50%;bottom:1.25rem;translate:-50% 0;z-index:8;display:flex;align-items:center;gap:1rem;max-width:calc(100vw - 2rem);padding:.6rem .9rem;font-size:.9rem;color:var(--bg);background:var(--text);border-radius:999px;box-shadow:var(--shadow-lg)}.undo-bar .link-btn{color:var(--bg);font-weight:600;text-decoration:underline}.banner.banner-clash{margin-top:1.25rem;border-color:var(--tint-amber,var(--border-strong));background:color-mix(in srgb,var(--tint-amber) 10%,var(--surface))}.bar-acts{display:inline-flex;gap:1rem;flex-wrap:wrap}@media print{.actions,.banner,.fine-note,.footer,.grade-rail,.grade-status,.masthead,.new-fab,.skip,.subject-bar,.subject-list,.summary-note,.undo-bar,.year-gear{display:none!important}.screen.grade-screen{max-width:none;padding:0}.grade-layout{display:block}.year-summary>.cat-drawer{grid-template-rows:1fr!important;opacity:1!important}.drawer-in{overflow:visible}.year-head{border-bottom:1px solid #999}.year-caret{display:none}.grade-table{font-size:11pt}.grade-table .is-current{background:none}.cell-btn{color:inherit}body{background:#fff;color:#000}.cell-eq,.year-shape{color:#444}}.code-list{list-style:none;margin:.5rem 0 0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.code-line{display:flex;align-items:center;gap:.6rem;font-size:.87rem;padding:.3rem .1rem;border-top:1px solid var(--border)}.code-line code{font-family:var(--ff-mono);letter-spacing:.06em;color:var(--accent)}.code-name{flex:1 1 auto;min-width:0;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-trouble{margin:.5rem 0 0;font-size:.87rem;line-height:1.5;color:var(--bad);background:var(--bad-soft);border-radius:var(--r-sm);padding:.5rem .65rem}.banner.banner-trouble{margin-top:1.25rem;border-color:var(--bad);background:var(--bad-soft)}.add-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:inherit;font-size:.88rem;font-weight:500;color:var(--muted);background:none;border:1px dashed var(--border-strong);border-radius:var(--r-sm);padding:.4rem .7rem;cursor:pointer;transition:color .15s var(--ease),border-color .15s var(--ease),background .15s var(--ease),var(--press-transition)}.add-btn svg{display:block;flex:none}.add-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.add-btn:disabled{opacity:.45;cursor:not-allowed}.add-btn-wide{width:100%;justify-content:center;padding:.7rem}.quiet-btn{display:inline-flex;align-items:center;gap:.4rem;font-family:inherit;font-size:.88rem;font-weight:500;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:.35rem .65rem;cursor:pointer;transition:color .15s var(--ease),border-color .15s var(--ease),var(--press-transition)}.quiet-btn svg{display:block;flex:none;transition:transform .2s var(--ease)}.quiet-btn svg.is-flipped{transform:rotate(180deg)}.quiet-btn:hover,.quiet-btn[aria-expanded=true]{color:var(--text);border-color:var(--border-strong)}.bar-menu{position:relative}.bar-panel{position:absolute;right:0;top:calc(100% + .4rem);z-index:20;display:grid;min-width:15rem;padding:.3rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg)}.bar-panel[hidden]{display:none}.menu-row{display:flex;align-items:center;gap:.5rem;width:100%;font-family:inherit;font-size:.9rem;text-align:left;color:var(--text);background:none;border:0;border-radius:var(--r-sm);padding:.5rem .55rem;cursor:pointer}.menu-row:hover{background:var(--surface-2)}.menu-tick{flex:none;display:grid;place-items:center;width:13px;height:13px;color:var(--accent)}@media (prefers-reduced-motion:reduce){.add-btn,.quiet-btn,.quiet-btn svg{transition:none}}.look-units{align-items:center;gap:.6rem}.num-units{width:4rem;text-align:center}.look-note{flex:1 1 8rem;font-size:.8rem;line-height:1.35;color:var(--faint)}.rail-total{display:grid;grid-gap:.1rem;gap:.1rem;padding:.7rem .9rem .8rem;margin-bottom:1rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r)}.rail-total-figures{display:flex;align-items:baseline;gap:.4rem;margin:0}.rail-total-num{font-size:1.35rem;font-weight:600;letter-spacing:-.02em;line-height:1.05;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-total-eq{font-size:.95rem;font-weight:600;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rail-total-note{margin:.15rem 0 0;font-size:.78rem;line-height:1.35;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.trend-line{margin:0 0 1.1rem;display:grid;grid-gap:.3rem;gap:.3rem}.trend-plot{position:relative;height:3.2rem}.trend-svg{display:block;width:100%;height:100%;overflow:visible}.trend-base{stroke:var(--border);stroke-width:1}.trend-path{fill:none;stroke:var(--accent);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.trend-dot{position:absolute;width:7px;height:7px;margin:-3.5px 0 0 -3.5px;border:1.5px solid var(--accent);border-radius:50%;background:var(--surface)}.trend-dot.is-now{background:var(--accent)}.trend-scale{display:flex;justify-content:space-between;margin:0;font-size:.72rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (pointer:fine){.subject-head,.term-row{cursor:-webkit-grab;cursor:grab}.subject-head:active,.term-row:active{cursor:-webkit-grabbing;cursor:grabbing}.subject-brief{cursor:pointer}.subject input,.term-row input{cursor:auto}.subject button,.subject select,.term-row button{cursor:pointer}.look-panel{cursor:auto}}.subject-head{transition:background .15s var(--ease)}.subject[data-tint]:hover .subject-head{background:color-mix(in srgb,var(--tint) 20%,var(--surface))}.subject:not([data-tint]):hover .subject-head{background:var(--surface-2)}.subject-brief{border-radius:var(--r-sm);transition:background .15s var(--ease),var(--press-transition)}.subject-brief:hover{background:var(--surface-2)}.subject[data-tint] .subject-brief:hover{background:color-mix(in srgb,var(--tint) 7%,var(--surface))}@media (prefers-reduced-motion:reduce){.subject-brief,.subject-head{transition:none}}.subject.is-dragging,.term-row.is-dragging{opacity:.4}.subject.is-dropping{outline:2px dashed var(--accent);outline-offset:2px}.term-row.is-dropping{border-color:var(--accent);box-shadow:inset 0 2px 0 var(--accent)}.touch-move{display:none}.touch-move .icon-btn svg{display:block}@media (max-width:34rem),(pointer:coarse){.touch-move{flex:none;display:inline-flex;gap:.15rem}.icon-btn{font-size:.95rem}.icon-btn,.look-trigger,.subject-toggle{width:40px;height:40px}.look-face{font-size:1.25rem}.cat-toggle{width:36px;height:36px}.tint{width:32px;height:32px}.look-pick{font-size:1.3rem}.term-tick{padding:.5rem .35rem}.rail-term,.rail-year{padding:.6rem .9rem}.cell-btn{color:inherit}.grade-screen .link-btn{display:inline-flex;align-items:center;min-height:40px;margin-block:-.5rem}.year-name{min-height:40px}.cat-name,.item-name,.num,.subject-name{min-height:40px;font-size:16px}.cat-toggle{width:40px;height:40px}.bar-acts{row-gap:.25rem}}@media (max-width:34rem){.look-panel{position:fixed;inset:auto 0 0 0;width:auto;max-height:80vh;overflow-y:auto;border-radius:var(--r) var(--r) 0 0;border-bottom:none;padding:1.1rem 1.1rem calc(1.1rem + env(safe-area-inset-bottom, 0px));box-shadow:0 -8px 40px -12px rgba(24,24,27,.35)}.look-panel.t-dropdown,.look-panel.t-dropdown.is-closing{transform:translateY(100%)}.look-panel.t-dropdown.is-open{transform:none}.sheet{width:100%;max-width:none;max-height:92vh;margin:auto 0 0;align-self:flex-end}.sheet-in{max-height:92vh;border-radius:var(--r) var(--r) 0 0;padding-bottom:calc(1.25rem + env(safe-area-inset-bottom, 0px))}.undo-bar{left:.75rem;right:.75rem;bottom:.75rem;translate:none;max-width:none;justify-content:space-between;border-radius:var(--r)}.subject-head{flex-wrap:wrap}.subject-toggle{order:1}.subject-name{order:2;flex:1 1 8rem;min-width:0}.subject-head:after{content:"";order:3;flex:1 0 100%;height:0}.touch-move{order:4}.look{order:5}.subject-grade{order:6;margin-left:auto;text-align:right}.subject-bar{flex-wrap:wrap}.bar-acts{gap:.5rem}.band-row,.term-row{flex-wrap:wrap}.band-label,.term-name{flex:1 1 8rem}.sheet.t-modal{transform-origin:bottom center}}.legal{margin-top:clamp(2rem,4vw,2.75rem);max-width:62ch}.legal h2{font-family:var(--ff-serif);font-weight:600;font-size:1.22rem;letter-spacing:-.012em;margin:2.25rem 0 .6rem;padding-top:1.5rem;border-top:1px solid var(--border)}.legal>h2:first-child{margin-top:0;padding-top:0;border-top:none}.legal p{margin:0 0 .9rem;color:var(--muted)}.legal strong{color:var(--text);font-weight:560}.legal a{text-underline-offset:2px}.legal ul{margin:0 0 1.1rem;padding-left:1.15rem;display:grid;grid-gap:.5rem;gap:.5rem;color:var(--muted)}.legal li{padding-left:.15rem}.legal-summary{margin:0 0 2rem;padding:1.1rem 1.25rem;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r)}.legal-summary ul{margin:.7rem 0 0}.legal-summary li{color:var(--text)}.legal-nav{margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:1.5rem;border-top:1px solid var(--border-strong);max-width:62ch}.legal-nav ul{list-style:none;margin:.9rem 0 1.25rem;padding:0;display:grid;grid-gap:.7rem;gap:.7rem}.legal-nav li{display:grid;grid-gap:.1rem;gap:.1rem}.legal-nav a{font-weight:540;text-decoration:none}.legal-nav a:hover{text-decoration:underline}.legal-nav li span{font-size:.9rem;color:var(--faint)}.danger{margin-top:clamp(1.75rem,4vw,2.25rem);padding:clamp(1.25rem,3vw,1.6rem);border:1px solid var(--border-strong);border-radius:var(--r);background:var(--surface);max-width:62ch}.danger h2{font-family:var(--ff-serif);font-weight:600;font-size:1.18rem;margin:0 0 .6rem}.danger>p{margin:0 0 1rem;color:var(--muted)}.danger .banner{margin-top:1rem}.danger-choice{margin:0 0 1.25rem;padding:0;border:0;display:grid;grid-gap:.7rem;gap:.7rem}.danger-choice legend{padding:0;margin-bottom:.6rem}.danger-choice label{display:flex;gap:.7rem;align-items:flex-start;padding:.8rem .9rem;border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer}.danger-choice label:has(:checked){border-color:var(--text);background:var(--surface-2)}.danger-choice input{margin:.25rem 0 0;accent-color:var(--accent);flex:none}.danger-choice label>span{display:grid;grid-gap:.2rem;gap:.2rem}.danger-choice strong{font-weight:560}.danger-choice .fine-note{margin:0;max-width:none}.danger-confirm{display:grid;grid-gap:.4rem;gap:.4rem;margin-bottom:.6rem;font-size:.95rem}.danger-confirm input{font-family:var(--ff-mono);font-size:1rem;letter-spacing:.08em;padding:.6rem .75rem;max-width:14rem;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-sm)}.danger-confirm input:focus-visible{border-color:var(--accent)}.week{--week-row:3.6rem;display:grid;grid-template-columns:4.2rem minmax(0,1fr);grid-gap:.5rem;gap:.5rem;margin-top:1.5rem}.week-ruler{position:relative;margin-top:2.1rem;height:calc(var(--week-hours) * var(--week-row))}.week-hour{position:absolute;right:.4rem;transform:translateY(-50%);font-size:.72rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--faint);white-space:nowrap}.week-days{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-gap:.35rem;gap:.35rem}.week-day{min-width:0}.week-day-name{margin:0 0 .4rem;height:1.7rem;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:560;color:var(--muted)}.week-day-name abbr{text-decoration:none}.week-col{position:relative;height:calc(var(--week-hours) * var(--week-row));border-radius:var(--r-sm);background:var(--surface-2);overflow:hidden}.week-line{position:absolute;left:0;right:0;height:1px;background:var(--border)}.block{position:absolute;overflow:hidden;padding:.3rem .4rem;border:1px solid var(--border);border-left:3px solid var(--tint,var(--border-strong));border-radius:var(--r-sm);background:var(--surface);box-shadow:var(--shadow);font-size:.78rem;line-height:1.25;text-align:left}.block,.block-in{display:flex;flex-direction:column;gap:.05rem}.block-in{min-height:0}.block-subject{font-weight:560;color:var(--text)}.block-when,.block-where,.block-who{color:var(--muted);font-size:.72rem}.block-btn{font-family:inherit;cursor:pointer;transition:border-color .15s var(--ease),box-shadow .15s var(--ease),var(--press-transition)}.block-btn:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg)}.sched-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.75rem 1.5rem}.sched-status{margin:0;font-size:.85rem;color:var(--faint);min-width:4.5rem;text-align:right}.sched-sum{margin:.5rem 0 0;font-size:.95rem;color:var(--muted)}.actions-tight{margin-top:0}.sched-work{display:grid;grid-gap:1.25rem;gap:1.25rem;margin-top:1rem;align-items:flex-start}@media (min-width:60rem){.sched-work{grid-template-columns:minmax(0,1fr) 17rem}.sched-work .week{margin-top:0}}.sched-side{display:grid;grid-gap:.75rem;gap:.75rem}.sched-form{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:1rem}.sched-form .field-block{margin-bottom:.9rem}.sched-form .field-block span{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.3rem}.sched-form input,.sched-form select{width:100%;font-family:inherit;font-size:.95rem;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);padding:.5rem .6rem}.sched-form input:focus-visible,.sched-form select:focus-visible{border-color:var(--accent)}.sched-form-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.sched-form-empty{color:var(--muted)}.sched-form-empty .fine-note{margin-top:.4rem}.sched-times{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.tint-row{display:flex;flex-wrap:wrap;gap:.35rem;border:0;margin:0 0 .9rem;padding:0}.tint-dot{width:1.35rem;height:1.35rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--tint,transparent);cursor:pointer;padding:0}.tint-dot.is-on{outline:2px solid var(--text);outline-offset:2px}.sched-list{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.sched-row{width:100%;display:grid;grid-template-columns:2.5rem 9.5rem minmax(0,1fr) minmax(0,7rem);grid-gap:.6rem;gap:.6rem;align-items:center;text-align:left;font-family:inherit;font-size:.9rem;padding:.5rem .6rem;border:1px solid transparent;border-radius:var(--r-sm);background:none;color:var(--muted);cursor:pointer}.sched-row.is-on,.sched-row:hover{background:var(--surface-2)}.sched-row.is-on{border-color:var(--border-strong)}.sched-row-day{font-weight:560;color:var(--text)}.sched-row-when{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sched-row-what{color:var(--text);font-weight:540;border-left:3px solid var(--tint,transparent);padding-left:.5rem}.sched-row-where{text-align:right}@media (max-width:40rem){.sched-row{grid-template-columns:2.2rem minmax(0,1fr);row-gap:.15rem}.sched-row-when{grid-column:2}.sched-row-what{grid-column:2;border-left:0;padding-left:0;order:-1}.sched-row-where{grid-column:2;text-align:left}.week{--week-row:3rem;grid-template-columns:3.2rem minmax(0,1fr)}.block{font-size:.7rem;padding:.25rem .3rem}.block-when,.block-where,.block-who{font-size:.65rem}.week-days{overflow-x:auto;overscroll-behavior-x:contain;grid-auto-columns:minmax(5.5rem,1fr);padding-bottom:.25rem}}.sched-group{margin-top:2rem}.sched-cards{list-style:none;margin:.75rem 0 0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.sched-card{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:.9rem 1rem;display:grid;grid-gap:.15rem;gap:.15rem}.sched-card-name{font-family:var(--ff-serif);font-size:1.1rem;font-weight:600;color:var(--text);text-decoration:none}.sched-card-name:hover{text-decoration:underline}.sched-card-note{margin:0;font-size:.88rem;color:var(--faint)}.sched-card-acts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.block[data-mode=online]{border-left-style:dashed;background:var(--bg)}.block-mode{align-self:start;font-size:.62rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.block-link{margin-top:auto;align-self:start;font-size:.68rem;font-weight:560;color:var(--accent);text-decoration:none;border:1px solid var(--accent-line);border-radius:999px;padding:.05rem .4rem;background:var(--accent-soft)}.block-link:hover{text-decoration:underline}.tag-online{display:inline-block;margin-right:.35rem;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);border:1px solid var(--border);border-radius:999px;padding:0 .35rem}.mode-pick{border:0;padding:0;margin-bottom:.9rem}.mode-pick legend{font-size:.85rem;color:var(--muted);margin-bottom:.3rem;padding:0}.mode-pick .seg{display:inline-flex;margin-bottom:0}.week-board .block-live{touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;cursor:-webkit-grab;cursor:grab;padding-bottom:.5rem}.week-board.is-locked .block-live{cursor:default}.block-live.is-dragging{cursor:-webkit-grabbing;cursor:grabbing;z-index:3;box-shadow:var(--shadow-lg);opacity:.92}.block-live.is-picked{border-color:var(--text);box-shadow:var(--shadow-lg)}.block-hit{position:absolute;inset:0;z-index:0;width:100%;height:100%;padding:0;border:0;background:none;cursor:inherit}.week-board .block-mode,.week-board .block-subject,.week-board .block-when,.week-board .block-where{position:relative;z-index:1;pointer-events:none}.block-grip{position:absolute;left:0;right:0;bottom:0;height:12px;z-index:2;cursor:ns-resize;touch-action:none;display:flex;align-items:flex-end;justify-content:center}.block-grip:after{content:"";width:1.6rem;height:3px;margin-bottom:2px;border-radius:999px;background:var(--border-strong);opacity:0;transition:opacity .15s var(--ease)}.block-live.is-picked .block-grip:after,.block-live:hover .block-grip:after{opacity:1}.sched-tools{display:flex;align-items:center;gap:.6rem}.lock-btn.is-on{background:var(--text);color:var(--bg);border-color:var(--text)}.handle-box{margin-top:1.5rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface-2)}.handle-box .fine-note{margin-top:.5rem}.handle-now{margin:0;font-size:.95rem}.handle-pick{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.url-edit{display:inline-flex;align-items:center;min-width:0;border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--bg);font-family:var(--ff-mono);font-size:.9rem;overflow:hidden}.url-fixed{padding:.45rem .1rem .45rem .6rem;color:var(--faint);white-space:nowrap}.url-edit input{flex:1 1 8rem;min-width:0;font-family:inherit;font-size:inherit;color:var(--text);background:none;border:0;padding:.45rem .6rem .45rem .1rem}.url-edit input:focus{outline:none}.url-edit:focus-within{border-color:var(--accent)}.share .url-edit{margin:.75rem 0 0;width:100%}.share-switches{display:grid;grid-gap:.7rem;gap:.7rem;margin-top:1rem}.switch{display:flex;gap:.6rem;align-items:flex-start;cursor:pointer}.switch input{margin:.3rem 0 0;accent-color:var(--accent);flex:none}.switch>span{display:grid;grid-gap:.15rem;gap:.15rem}.switch strong{font-weight:560;font-size:.95rem}.switch .fine-note{margin:0}.switch input:disabled+span{opacity:.55}.sched-card-url{font-family:var(--ff-mono);font-size:.82rem}.tag-private{margin-left:.4rem;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);border:1px solid var(--border);border-radius:999px;padding:0 .35rem}.who{border:0;margin:0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.who legend{padding:0;margin-bottom:.5rem}.people-box{display:grid;grid-gap:.35rem;gap:.35rem;margin-top:.9rem}.people-box textarea{width:100%;font-family:var(--ff-mono);font-size:.88rem;line-height:1.5;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:.55rem .7rem;resize:vertical}.people-box textarea:focus-visible{outline:none;border-color:var(--accent)}.people-box .fine-note{margin:0}.pick-user{display:grid;grid-gap:.7rem;gap:.7rem;padding:.9rem var(--gutter);background:var(--accent-wash);border-bottom:1px solid var(--accent-line)}.pick-user-title{margin:0;font-weight:560}.pick-user .fine-note{margin:.15rem 0 0}.pick-user-row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.pick-user-done{margin:0}.handle-tag{font-family:var(--ff-mono);font-size:.9rem;color:var(--faint)}@media (min-width:46rem){.pick-user{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem}}.trio{margin-top:2.25rem;display:grid;grid-gap:1.25rem;gap:1.25rem}.trio-card{display:grid;grid-template-rows:auto auto 1fr auto;grid-gap:.5rem;gap:.5rem;padding:1.1rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.trio-demo{display:grid;grid-gap:.4rem;gap:.4rem;align-content:start;min-height:8.5rem;padding:.8rem;border-radius:var(--r-sm);background:var(--surface-2)}.trio-demo-q{margin:0 0 .25rem;font-size:.85rem;font-weight:540}.trio-demo .opt{padding:.45rem .6rem;gap:.55rem}.trio-demo .opt-text{font-size:.85rem}.trio-go{align-self:end;display:inline-flex;align-items:center;gap:.35rem;font-size:.95rem;font-weight:540;text-decoration:none}.trio-go:hover{text-decoration:underline}.go-arrow{flex:none;transition:transform var(--duration-quick) var(--ease-smooth-out)}.trio-go:hover .go-arrow{transform:translateX(2px)}@media (min-width:52rem){.trio{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}.week-mini{grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem}.week-mini-day{display:grid;grid-gap:.3rem;gap:.3rem;align-content:start}.week-mini-name{margin:0 0 .05rem;font-size:.72rem;font-weight:560;color:var(--muted)}.mini-block{display:grid;grid-gap:.05rem;gap:.05rem;padding:.35rem .45rem;border:1px solid var(--border);border-left:3px solid var(--tint,var(--border-strong));border-radius:var(--r-sm);background:var(--surface)}.mini-block.is-online{border-left-style:dashed;background:var(--bg)}.mini-block-name{font-size:.74rem;font-weight:560}.mini-block-when{font-size:.68rem;color:var(--faint)}.grade-mini-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;padding-bottom:.45rem;border-bottom:1px solid var(--border)}.grade-mini-name{margin:0;font-size:.82rem;font-weight:560}.grade-mini-now{margin:0;font-family:var(--ff-serif);font-size:1.35rem;font-weight:600;letter-spacing:-.02em}.grade-mini-rows{list-style:none;margin:.1rem 0 0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.grade-mini-rows li{display:grid;grid-template-columns:minmax(0,1fr) 2.4rem 2rem;grid-gap:.4rem;gap:.4rem;font-size:.78rem;color:var(--muted)}.grade-mini-weight{color:var(--faint);text-align:right}.grade-mini-got{color:var(--text);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.share-trio .trio-card{grid-template-rows:auto auto auto 1fr auto}.share-link{margin:0;display:flex;align-items:center;gap:.45rem;min-width:0;padding:.35rem .65rem;border:1px solid var(--border);border-radius:999px;font-family:var(--ff-mono);font-size:.74rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-link:before{content:"";flex:none;width:.85rem;height:.85rem;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M8.5 11.5a3.5 3.5 0 0 0 5 0l2.5-2.5a3.5 3.5 0 0 0-5-5l-1 1'/%3E%3Cpath d='M11.5 8.5a3.5 3.5 0 0 0-5 0L4 11a3.5 3.5 0 0 0 5 5l1-1'/%3E%3C/svg%3E") center /contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round'%3E%3Cpath d='M8.5 11.5a3.5 3.5 0 0 0 5 0l2.5-2.5a3.5 3.5 0 0 0-5-5l-1 1'/%3E%3Cpath d='M11.5 8.5a3.5 3.5 0 0 0-5 0L4 11a3.5 3.5 0 0 0 5 5l1-1'/%3E%3C/svg%3E") center /contain no-repeat}.share-trio .board-live{margin-bottom:.5rem;padding-bottom:.5rem;font-size:.78rem}.share-trio .board-rows{gap:.3rem}.share-trio .board-rows li{grid-template-columns:1rem minmax(0,1fr) auto;gap:.5rem;font-size:.8rem}.share-weights li{grid-template-columns:minmax(0,1fr) 2.4rem}.share-take{justify-self:start;margin-top:.35rem;padding:.3rem .7rem;border-radius:999px;background:var(--text);color:var(--bg);font-size:.74rem;font-weight:560}.bands{margin:1.5rem 0 0;width:100%;border-collapse:collapse;font-size:.93rem}.bands caption{text-align:left;padding-bottom:.5rem;color:var(--muted)}.bands td{padding:.5rem 0;border-top:1px solid var(--border);color:var(--muted)}.bands td:last-child{text-align:right;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.screen-list>.deck,.screen-list>.display,.screen-list>.fine-note,.screen-list>.handle-box{max-width:56rem}@media (min-width:60rem){.screen-list .mine-list,.screen-list .sched-cards{grid-template-columns:repeat(auto-fill,minmax(24rem,1fr));gap:.9rem}.screen-list .mine-item{flex-direction:column;align-items:stretch;justify-content:start;gap:.9rem}.screen-list .mine-links{margin-top:auto}}.preset-part{margin-top:2.25rem}.preset-part>.rubric{margin-bottom:.7rem}.preset-terms{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.preset-terms li{padding:.3rem .7rem;border:1px solid var(--border);border-radius:999px;font-size:.9rem;color:var(--muted)}.preset-subjects{list-style:none;margin:0;padding:0;display:grid;grid-gap:.7rem;gap:.7rem}.preset-subject{border:1px solid var(--border);border-left:3px solid var(--tint,var(--border-strong));border-radius:var(--r);background:var(--surface);padding:.9rem 1.1rem}.preset-subject-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.3rem 1rem}.preset-subject-name{margin:0;font-weight:560;font-size:1.02rem}.preset-subject-meta{margin:0;font-size:.88rem;color:var(--faint)}.preset-weights{list-style:none;margin:.7rem 0 0;padding:0;display:grid;grid-gap:.3rem;gap:.3rem}.preset-weights li{display:flex;justify-content:space-between;gap:1rem;font-size:.92rem;color:var(--muted)}.preset-weight{color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.preset-subject .fine-note{margin-top:.6rem}.preset-scales{list-style:none;margin:0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem}.preset-scale-name{margin:0;font-weight:540;font-size:.95rem}.preset-scale-bands{margin:.15rem 0 0;font-size:.88rem;color:var(--faint)}.term-subjects{flex:none;font-family:inherit;font-size:.82rem;color:var(--muted);background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:.2rem .6rem;cursor:pointer;white-space:nowrap}.term-subjects:hover{border-color:var(--border-strong);color:var(--text)}.term-subjects.is-open{background:var(--text);border-color:var(--text);color:var(--bg)}.picks{border:1px solid var(--border-strong);border-radius:var(--r-sm);background:var(--surface-2);padding:.7rem .8rem;max-width:100%;min-width:0}.picks .fine-note{margin-top:.6rem}.picks-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.3rem .8rem;margin-bottom:.5rem}.picks-title{margin:0;font-size:.9rem;font-weight:560;min-width:0;overflow-wrap:anywhere}.picks-acts{display:flex;gap:.75rem;font-size:.88rem;flex:none}.picks-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.1rem;gap:.1rem;max-height:15rem;overflow-y:auto}.pick{display:flex;align-items:flex-start;gap:.55rem;padding:.35rem .4rem;border-radius:var(--r-sm);font-size:.9rem;line-height:1.35;color:var(--muted);cursor:pointer}.pick:hover{background:var(--surface)}.pick.is-on{color:var(--text)}.pick input{margin:.2rem 0 0;accent-color:var(--accent);flex:none}.pick-name{min-width:0;overflow-wrap:anywhere}.pick-only{flex:none;align-self:center;margin-left:auto;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--faint);border:1px solid var(--border);border-radius:999px;padding:0 .35rem}.pick input:disabled{accent-color:var(--faint)}.pick:has(input:disabled){cursor:default}.pick:has(input:disabled):hover{background:none}.corner-card{position:fixed;left:clamp(1rem,3vw,2rem);bottom:clamp(1rem,3vw,2rem);z-index:40;width:min(20rem,calc(100vw - 2rem));display:grid;grid-gap:.8rem;gap:.8rem;padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg)}.corner-card-title{margin:0;font-weight:560}.corner-card .fine-note{margin:.25rem 0 0}.corner-card-row{display:flex;align-items:center;gap:.9rem}.corner-card-text{width:100%;resize:vertical;padding:.55rem .65rem;font:inherit;font-size:.92rem;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:6px}.corner-card-text:focus-visible{outline:none;border-color:var(--accent)}.feedback-list{list-style:none;margin:1.5rem 0 0;padding:0;display:grid;grid-gap:.75rem;gap:.75rem}.feedback-item{padding:1rem 1.1rem}.feedback-message{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.feedback-meta{margin:.6rem 0 0}.coin{display:inline-block;flex:none;vertical-align:-.15em;transform-origin:50% 50%}@keyframes coin-turn{0%{transform:scaleX(1)}25%{transform:scaleX(.12);filter:brightness(.85)}50%{transform:scaleX(1)}75%{transform:scaleX(.12);filter:brightness(.85)}to{transform:scaleX(1)}}@keyframes coin-idle{0%,84%{transform:scaleX(1)}88%{transform:scaleX(.12);filter:brightness(.85)}92%{transform:scaleX(1)}96%{transform:scaleX(.12);filter:brightness(.85)}to{transform:scaleX(1)}}.coin-spin-always{animation:coin-turn .7s linear infinite}.coin-spin-idle{animation:coin-idle 5s ease-in-out infinite}.coin-amount:hover .coin-spin-idle,a:hover .coin-spin-idle,button:hover .coin-spin-idle{animation:coin-turn .7s linear 1}.coin-amount{gap:.3em;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.coin-amount,.coin-pop{display:inline-flex;align-items:center}.coin-pop{position:absolute;left:50%;bottom:100%;gap:.3rem;font-weight:700;color:var(--coin-deep);pointer-events:none;animation:coin-pop 1.3s cubic-bezier(.2,.8,.3,1) forwards}.coin-pop-n{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@keyframes coin-pop{0%{transform:translate(-50%,10px);opacity:0}15%{transform:translate(-50%,-26px);opacity:1}30%{transform:translate(-50%,-18px)}70%{transform:translate(-50%,-22px);opacity:1}to{transform:translate(-50%,-34px);opacity:0}}.coin-anchor{position:relative;display:inline-flex}.balance-coins{margin:0;font-size:2.1rem;letter-spacing:-.02em}.account-coins{margin:0 0 .35rem;font-size:1.45rem}.meter dd .coin-amount,.queue-meta .coin-amount{font-weight:600}.voucher-said .coin-amount{font-weight:700}@media (prefers-reduced-motion:reduce){.coin-amount:hover .coin-spin-idle,.coin-spin-always,.coin-spin-idle,a:hover .coin-spin-idle,button:hover .coin-spin-idle{animation:none}.coin-pop{animation:coin-pop-still 1.3s linear forwards}@keyframes coin-pop-still{0%,80%{opacity:1;transform:translate(-50%,-22px)}to{opacity:0;transform:translate(-50%,-22px)}}}.guest-gate{display:grid;justify-items:center;grid-gap:.9rem;gap:.9rem;text-align:center;padding:clamp(2rem,6vw,3.5rem) 1.25rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.guest-gate .rubric,.guest-gate h2{margin:0}.guest-gate-count{margin:0;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.guest-gate-note{margin:0;font-size:.88rem;color:var(--muted)}.cookie-note{position:fixed;left:50%;bottom:1rem;z-index:60;translate:-50% 0;width:min(34rem,calc(100% - 2rem));display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:.85rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--shadow-lg)}.cookie-note p{margin:0;font-size:.92rem;color:var(--muted)}.cookie-note-actions{display:flex;gap:.5rem}.cookie-note .btn{padding:.5rem 1rem}:where(button,[role=button],.btn,.auth-btn,.new-fab,.seg-btn,.pick){transition-property:color,background-color,border-color,box-shadow,opacity,scale;transition-duration:var(--duration-quick);transition-timing-function:var(--ease-smooth-out)}:where(button,[role=button],.btn,.auth-btn,.new-fab,.seg-btn,.pick,.opt,.mode-card):active:not(:disabled,[aria-disabled=true],.is-locked){scale:var(--press-scale)}:where(.opt,.mode-card,.pick,.menu-row,.rail-year,.rail-term,.cell-btn,.weakspots,.resume-go,.subject-brief,.year-name,.account-out,.block-btn){--press-scale:.985}.t-dropdown{transform-origin:top left;transform:scale(var(--dropdown-pre-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-open-dur) var(--dropdown-ease),opacity var(--dropdown-open-dur) var(--dropdown-ease);will-change:transform,opacity}.t-dropdown[data-origin=top-right]{transform-origin:top right}.t-dropdown[data-origin=top-center]{transform-origin:top center}.t-dropdown[data-origin=bottom-left]{transform-origin:bottom left}.t-dropdown[data-origin=bottom-center]{transform-origin:bottom center}.t-dropdown[data-origin=bottom-right]{transform-origin:bottom right}.t-dropdown.is-open{transform:scale(1);opacity:1;pointer-events:auto}.t-dropdown.is-closing{transform:scale(var(--dropdown-closing-scale));opacity:0;pointer-events:none;transition:transform var(--dropdown-close-dur) var(--dropdown-ease),opacity var(--dropdown-close-dur) var(--dropdown-ease)}@media (prefers-reduced-motion:reduce){.t-dropdown{transition:none!important}}.t-modal{transform-origin:center;transform:scale(var(--modal-scale));opacity:0;pointer-events:none;transition:transform var(--modal-open-dur) var(--modal-ease),opacity var(--modal-open-dur) var(--modal-ease);will-change:transform,opacity}.t-modal.is-open{transform:scale(1);opacity:1;pointer-events:auto}.t-modal.is-closing{transform:scale(var(--modal-scale-close));opacity:0;pointer-events:none;transition:transform var(--modal-close-dur) var(--modal-ease),opacity var(--modal-close-dur) var(--modal-ease)}@media (prefers-reduced-motion:reduce){.t-modal{transition:none!important}}.t-panel-slide{transform:translateY(var(--panel-translate-y));opacity:0;filter:blur(var(--panel-blur));pointer-events:none;transition:transform var(--panel-close-dur) var(--panel-ease),opacity var(--panel-close-dur) var(--panel-ease),filter var(--panel-close-dur) var(--panel-ease);will-change:transform,opacity,filter}.t-panel-slide[data-open=true]{transform:translateY(0);opacity:1;filter:blur(0);pointer-events:auto;transition:transform var(--panel-open-dur) var(--panel-ease),opacity var(--panel-open-dur) var(--panel-ease),filter var(--panel-open-dur) var(--panel-ease)}@media (prefers-reduced-motion:reduce){.t-panel-slide{transition:none!important}}.mathpad.t-panel-slide{--panel-translate-y:100%}.t-toast{opacity:0;transform:translateY(var(--toast-distance)) scale(var(--toast-scale));filter:blur(var(--toast-blur));will-change:transform,opacity,filter;transition:opacity var(--toast-close) var(--toast-ease),transform var(--toast-close) var(--toast-ease),filter var(--toast-close) var(--toast-ease)}.t-toast.is-open{opacity:1;transform:translateY(0) scale(1);filter:blur(0);transition:opacity var(--toast-open) var(--toast-ease),transform var(--toast-open) var(--toast-ease),filter var(--toast-open) var(--toast-ease)}@media (prefers-reduced-motion:reduce){.t-toast{transition:none!important}}.t-acc-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--acc-collapse) var(--acc-ease)}.t-acc[data-open=true] .t-acc-panel{grid-template-rows:1fr;transition:grid-template-rows var(--acc-expand) var(--acc-ease)}.t-acc-panel-inner{overflow:hidden;opacity:0;filter:blur(2px);transition:opacity var(--acc-collapse) var(--acc-ease),filter var(--acc-collapse) var(--acc-ease)}.t-acc[data-open=true] .t-acc-panel-inner{opacity:1;filter:blur(0);transition:opacity var(--acc-expand) var(--acc-ease),filter var(--acc-expand) var(--acc-ease)}.t-acc-chevron{display:inline-flex;transform:scaleY(1);transform-origin:center;transition:transform var(--acc-chevron) var(--acc-ease)}.t-acc-chevron path{vector-effect:non-scaling-stroke}.t-acc[data-open=true] .t-acc-chevron{transform:scaleY(-1)}@media (prefers-reduced-motion:reduce){.t-acc-chevron,.t-acc-panel,.t-acc-panel-inner{transition:none!important}}.t-icon-swap{position:relative;display:inline-grid}.t-icon-swap .t-icon{grid-area:1/1;transition:opacity var(--icon-swap-dur) var(--icon-swap-ease),filter var(--icon-swap-dur) var(--icon-swap-ease),transform var(--icon-swap-dur) var(--icon-swap-ease);will-change:opacity,filter,transform}.t-icon-swap[data-state=a] .t-icon[data-icon=a],.t-icon-swap[data-state=b] .t-icon[data-icon=b]{opacity:1;filter:blur(0);transform:scale(1)}.t-icon-swap[data-state=a] .t-icon[data-icon=b],.t-icon-swap[data-state=b] .t-icon[data-icon=a]{opacity:0;filter:blur(var(--icon-swap-blur));transform:scale(var(--icon-swap-start-scale))}@media (prefers-reduced-motion:reduce){.t-icon-swap .t-icon{transition:none!important}}.t-success-check{display:inline-block;transform-origin:center;opacity:0;will-change:transform,opacity,filter}.t-success-check svg{display:block;overflow:visible}.t-success-check svg path{stroke-dasharray:15;stroke-dashoffset:15}.t-success-check[data-state=in]{animation:t-check-fade var(--check-opacity-dur) var(--check-ease-opacity) forwards,t-check-rotate var(--check-rotate-dur) var(--check-ease-rotate) forwards,t-check-blur var(--check-blur-dur) var(--check-ease-out) forwards,t-check-bob var(--check-bob-dur) var(--check-ease-bob) forwards}.t-success-check[data-state=in] svg path{animation:t-check-draw var(--check-path-dur) var(--check-ease-path) var(--check-path-delay,0s) forwards}@keyframes t-check-fade{0%{opacity:0}to{opacity:1}}@keyframes t-check-rotate{0%{transform:rotate(var(--check-rotate-from))}to{transform:rotate(0deg)}}@keyframes t-check-blur{0%{filter:blur(var(--check-blur-from))}to{filter:blur(0)}}@keyframes t-check-bob{0%{translate:0 var(--check-y-amount)}to{translate:0 0}}@keyframes t-check-draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.t-success-check{animation:none!important;opacity:1}.t-success-check svg path{animation:none!important;stroke-dashoffset:0!important}}.t-stagger-line{display:block;opacity:0;transform:translateY(var(--stagger-distance));filter:blur(var(--stagger-blur));transition:opacity var(--stagger-dur) var(--stagger-ease),transform var(--stagger-dur) var(--stagger-ease),filter var(--stagger-dur) var(--stagger-ease);will-change:transform,opacity,filter}.t-stagger-line--2{transition-delay:var(--stagger-stagger)}.t-stagger.is-shown .t-stagger-line{opacity:1;transform:translateY(0);filter:blur(0)}.t-stagger.is-hiding .t-stagger-line{opacity:0;transform:translateY(0);filter:blur(0);transition:opacity .2s ease,transform 0s linear,filter 0s linear;transition-delay:0s}@media (prefers-reduced-motion:reduce){.t-stagger-line{transition:none!important}}.t-stagger-line--3{transition-delay:calc(var(--stagger-stagger) * 2)}.t-stagger-line--4{transition-delay:calc(var(--stagger-stagger) * 3)}.t-stagger-line--5{transition-delay:calc(var(--stagger-stagger) * 4)}.btn.t-stagger-line{display:inline-flex}@keyframes t-digit-pop-in{0%{transform:translate(calc(var(--digit-distance) * var(--digit-dir-x)),calc(var(--digit-distance) * var(--digit-dir-y)));opacity:0;filter:blur(var(--digit-blur))}to{transform:translate(0);opacity:1;filter:blur(0)}}.t-digit-group{display:inline-flex;align-items:baseline}.t-digit{display:inline-block;will-change:transform,opacity,filter}.t-digit-group.is-animating .t-digit{animation:t-digit-pop-in var(--digit-dur) var(--digit-ease) both}.t-digit-group.is-animating .t-digit[data-stagger="1"]{animation-delay:var(--digit-stagger)}.t-digit-group.is-animating .t-digit[data-stagger="2"]{animation-delay:calc(var(--digit-stagger) * 2)}@media (prefers-reduced-motion:reduce){.t-digit-group .t-digit{animation:none!important}}.score-tile{--tile-delay:calc(var(--stagger-stagger) * 3)}.score-tile:nth-child(2){--tile-delay:calc(var(--stagger-stagger) * 3 + var(--digit-stagger))}.score-tile:nth-child(3){--tile-delay:calc(var(--stagger-stagger) * 3 + var(--digit-stagger) * 2)}.score-tile:nth-child(4){--tile-delay:calc(var(--stagger-stagger) * 3 + var(--digit-stagger) * 3)}.scoreboard .t-digit-group.is-animating .t-digit{animation-delay:var(--tile-delay)}.scoreboard .t-digit-group.is-animating .t-digit[data-stagger="1"]{animation-delay:calc(var(--tile-delay) + var(--digit-stagger))}.scoreboard .t-digit-group.is-animating .t-digit[data-stagger="2"]{animation-delay:calc(var(--tile-delay) + var(--digit-stagger) * 2)}.score-tile .t-success-check{margin-left:.45rem;color:var(--good);vertical-align:-.05em;--check-y-amount:10px;--check-blur-from:6px}.score-tile .t-success-check svg{width:.8em;height:.8em}.score-tile .t-success-check[data-state=in]{animation-delay:calc(var(--tile-delay) + var(--reel-landed))}.score-tile .t-success-check[data-state=in] svg path{animation-delay:calc(var(--tile-delay) + var(--reel-landed) + var(--check-path-delay))}:root{--reel-dur:1400ms;--reel-cell:30px;--reel-spin-blur:3px;--reel-stagger:90ms;--reel-ease:cubic-bezier(0.16,1,0.3,1);--reel-landed:calc(var(--reel-dur) + var(--reel-stagger) * 2)}.score-tile{--reel-cell:1.25em}.t-reel{position:relative;display:inline-flex;align-items:baseline;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.t-reel-defs{position:absolute;width:0;height:0;overflow:hidden}.t-reel-col{position:relative;height:var(--reel-cell);overflow:clip;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 22%,#000 78%,transparent);mask-image:linear-gradient(180deg,transparent 0,#000 22%,#000 78%,transparent)}.t-reel-strip{display:flex;flex-direction:column;transition:transform var(--reel-dur) var(--reel-ease);transition-delay:calc(var(--reel-delay, 0s) + var(--col, 0) * var(--reel-stagger));will-change:transform,filter}.t-reel-digit,.t-reel-static{display:block;height:var(--reel-cell);line-height:var(--reel-cell);text-align:center}@media (prefers-reduced-motion:reduce){.t-reel-strip{transition:none!important;filter:none!important}}@keyframes reveal-in{0%{opacity:0;transform:translateY(calc(var(--distance-base) * -1));filter:blur(var(--blur-small))}}.pick-user,.picks,.rail-terms{animation:reveal-in var(--duration-fast) var(--ease-smooth-out)}@media (prefers-reduced-motion:reduce){.pick-user,.picks,.rail-terms{animation:none}}@supports (interpolate-size:allow-keywords){.preview,.ref{interpolate-size:allow-keywords}.preview::details-content,.ref::details-content{block-size:0;overflow:hidden;transition:block-size var(--acc-collapse) var(--acc-ease),content-visibility var(--acc-collapse) var(--acc-ease) allow-discrete}.preview[open]::details-content,.ref[open]::details-content{block-size:auto;transition:block-size var(--acc-expand) var(--acc-ease),content-visibility var(--acc-expand) var(--acc-ease) allow-discrete}}@media (prefers-reduced-motion:reduce){.preview::details-content,.ref::details-content{transition:none}}.t-check{transition:background var(--check-box) var(--check-ease),box-shadow var(--check-box) var(--check-ease)}.t-check svg path{stroke-dasharray:var(--check-len,15);stroke-dashoffset:var(--check-len,15);transition:stroke-dashoffset var(--check-uncheck) var(--check-ease)}.t-check[aria-checked=true] svg path{stroke-dashoffset:0;transition:stroke-dashoffset var(--check-draw) var(--check-ease) var(--check-delay)}@media (prefers-reduced-motion:reduce){.t-check,.t-check svg path{transition:none!important}}.opt .bubble.t-check,.tick .bubble.t-check{--check-len:15;transition:border-color .15s var(--ease),background var(--check-box) var(--check-ease),box-shadow var(--check-box) var(--check-ease)}.opt .bubble.t-check svg,.tick .bubble.t-check svg{position:absolute;inset:0;margin:auto;width:64%;height:64%;overflow:visible}.opt .bubble.t-check path,.tick .bubble.t-check path{fill:none;stroke:var(--surface);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.opt .bubble.t-check[aria-checked=true],.tick .bubble.t-check[aria-checked=true]{background:var(--accent)}.opt.is-correct .bubble.t-check[aria-checked=true]{background:var(--good)}.opt.is-wrongpick .bubble.t-check[aria-checked=true]{background:var(--bad)}@media (prefers-reduced-motion:reduce){.opt .bubble.t-check,.tick .bubble.t-check{transition:none}}.t-question{--t-page-from-x:var(--page-slide-distance);animation:t-question-in var(--page-slide-dur) var(--page-slide-ease) backwards,t-question-fade var(--page-fade-dur) var(--page-fade-ease) backwards}.t-question[data-heading=back]{--t-page-from-x:calc(var(--page-slide-distance) * -1)}@keyframes t-question-in{0%{transform:translateX(var(--t-page-from-x));filter:blur(var(--page-blur))}}@keyframes t-question-fade{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.t-question{animation:none}}.landing{--landing-max:63rem}.landing .band,.landing .closer{max-width:var(--landing-max);margin-inline:auto}.landing .footer,.landing .hero{padding-inline:max(var(--gutter),calc((100% + 2 * var(--gutter) - var(--landing-max)) / 2))}@media (min-width:58rem){.landing .hero{grid-template-columns:minmax(0,1fr) minmax(0,28rem);gap:clamp(2.5rem,5vw,4.5rem)}.landing .hero h1{font-size:clamp(2.9rem,4.6vw,4.1rem);max-width:14ch}.landing .hero-lead{font-size:1.15rem;max-width:42ch}}.landing .hero-fine{margin:1rem 0 0;font-size:.9rem;color:var(--muted)}.landing .hero-quiz{margin:0;min-width:0}.landing .hero-quiz legend{float:left;width:100%;padding:0}.landing .hero-quiz .opts{clear:both;display:grid}.landing .hero-quiz .opt-verdict{min-width:0}.hero-quiz-foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem 1rem;margin-top:.85rem;min-height:1.5rem}.hero-quiz-why{margin:0;font-size:.9rem;line-height:1.5;color:var(--muted);max-width:40ch}.landing h2{text-wrap:balance}.landing .band-head h2{max-width:18ch}.landing .band-head .deck{max-width:40ch}.landing .band-body{min-width:0;margin-top:2rem}.landing .band-body>:first-child{margin-top:0}.band-aside{margin:2rem 0 0;max-width:62ch;font-size:.98rem;line-height:1.6;color:var(--muted)}.band-aside a{color:var(--accent)}@media (min-width:58rem){.landing .band{display:grid;grid-template-columns:minmax(0,22rem) minmax(0,1fr);grid-gap:clamp(2.5rem,6vw,6rem);gap:clamp(2.5rem,6vw,6rem);align-items:start}.landing .band-body{margin-top:.35rem}}.route{list-style:none;margin:2.5rem 0 0;padding:0;grid-gap:2rem;gap:2rem}.route,.route-step{position:relative;display:grid}.route-step{grid-gap:.5rem;gap:.5rem;align-content:start}.route-mark{position:relative;z-index:1;display:grid;place-items:center;width:32px;height:32px;margin-bottom:.55rem;border-radius:50%;border:2px solid var(--accent);background:var(--bg);color:var(--accent);font-size:.9rem;font-weight:650;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.route-name{font-size:1.15rem;letter-spacing:-.02em}.route-note{margin:0;font-size:.98rem;line-height:1.6;color:var(--muted);max-width:38ch}@media (min-width:46rem){.route{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem}.route:before{content:"";position:absolute;top:15px;left:16px;right:calc((100% - 5rem) / 3 - 16px);height:2px;background:var(--accent-line)}}.study-ways{margin:2rem 0 0;display:grid}.study-way{display:grid;grid-gap:.25rem;gap:.25rem;padding:1rem 0;border-top:1px solid var(--border)}.study-way:last-child{border-bottom:1px solid var(--border)}.study-way dt{font-weight:620;letter-spacing:-.015em}.study-way dd{margin:0;color:var(--muted);line-height:1.55;max-width:52ch}@media (min-width:40rem){.study-way{grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;align-items:baseline}}.answer-key{width:100%;max-width:58rem;margin:2.25rem 0 0;border-collapse:collapse;font-size:.98rem}.answer-key th{padding:0 1rem .7rem 0;font-size:.85rem;font-weight:550;color:var(--muted);text-align:left;border-bottom:1px solid var(--border-strong)}.answer-key td{padding:.95rem 1rem .95rem 0;border-bottom:1px solid var(--border);vertical-align:middle}.answer-key td:first-child{width:30%}.answer-key td:nth-child(2){width:26%}.key-verdict{display:flex;align-items:center;gap:.65rem;line-height:1.4}.key-mark{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:50%}.key-verdict.is-right .key-mark{color:var(--good);background:var(--good-soft);box-shadow:inset 0 0 0 1px var(--good)}.key-verdict.is-wrong .key-mark{color:var(--bad);background:var(--bad-soft);box-shadow:inset 0 0 0 1px var(--bad)}@media (max-width:39.99rem){.answer-key thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.answer-key,.answer-key tbody,.answer-key td,.answer-key tr{display:block}.answer-key tr{padding:.9rem 0;border-bottom:1px solid var(--border)}.answer-key td,.answer-key td:first-child,.answer-key td:nth-child(2){width:auto;padding:.2rem 0;border:0}.answer-key td[data-label]:before{content:attr(data-label);display:inline-block;min-width:6.5rem;font-size:.82rem;color:var(--muted)}.answer-key .key-verdict{display:flex;padding-top:.45rem}}.pair{display:grid;grid-gap:2.5rem;gap:2.5rem;margin-top:2.25rem}@media (min-width:46rem){.pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,5vw,4rem)}}.pair-item{display:grid;grid-gap:.6rem;gap:.6rem;align-content:start}.pair-item .trio-demo{margin-bottom:.6rem}.pair-name{font-size:1.2rem;letter-spacing:-.02em}.pair-note{margin:0;color:var(--muted);line-height:1.6;max-width:46ch}.pair-go{justify-self:start;font-size:.95rem;font-weight:560;color:var(--accent);text-decoration:none}.pair-go:hover{text-decoration:underline}.pair-go:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.cost{display:grid;grid-gap:2rem;gap:2rem;margin-top:2rem}@media (min-width:40rem){.cost{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.cost-part:first-child{padding-right:2rem}.cost-part+.cost-part{padding-left:2rem;border-left:1px solid var(--border)}}.cost-head{font-size:1.1rem;letter-spacing:-.02em}.cost-free{list-style:none;margin:.9rem 0 0;padding:0;display:grid;grid-gap:.65rem;gap:.65rem}.cost-free li{position:relative;padding-left:1.6rem;line-height:1.5;color:var(--muted)}.cost-free li:before{content:"";position:absolute;left:0;top:.3em;width:13px;height:13px;box-sizing:border-box;border-radius:50%;border:2px solid var(--accent);background:radial-gradient(circle,var(--accent) 0 2.6px,transparent 3px)}.cost-rule{margin:.9rem 0 0;color:var(--muted)}.cost-packs{list-style:none;margin:.8rem 0 0;padding:0;display:grid}.cost-packs li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--border);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-packs li:first-child{border-top:1px solid var(--border)}.cost-price{font-weight:620}.cost-fine{margin:.9rem 0 0;font-size:.92rem;color:var(--muted)}.cost-fine a{color:var(--accent);font-weight:560;white-space:nowrap}.faq{margin-top:1.75rem;max-width:46rem;border-bottom:1px solid var(--border)}.faq-item{border-top:1px solid var(--border)}.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.05rem 0;font-size:1.05rem;font-weight:560;letter-spacing:-.015em;cursor:pointer;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"";flex:none;width:16px;height:16px;box-sizing:border-box;border-radius:50%;border:2px solid var(--border-strong);background:radial-gradient(circle,var(--accent) 0 3px,transparent 3.5px) 50% /0 0 no-repeat;transition:border-color .18s var(--ease),background-size .22s var(--ease)}.faq-item summary:hover:after{border-color:var(--accent)}.faq-item[open] summary:after{border-color:var(--accent);background-size:100% 100%}.faq-item summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.faq-item p{margin:0 0 1.1rem;max-width:60ch;line-height:1.6;color:var(--muted)}.landing .closer h2{font-size:clamp(1.9rem,3.6vw,2.75rem);line-height:1.1}@media (prefers-reduced-motion:reduce){.faq-item summary:after{transition:none}}.retention-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));grid-gap:1px;gap:1px;margin:2rem 0 0;background:var(--border);border:1px solid var(--border);border-radius:var(--r);overflow:hidden}.retention-figures>div{background:var(--surface);padding:1rem 1.1rem}.retention-figures dt{font-size:.85rem;color:var(--muted)}.retention-figures dd{margin:.25rem 0 0;font-family:var(--ff-serif);font-size:2rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.retention-figures p{margin:.35rem 0 0;font-size:.85rem;line-height:1.5;color:var(--muted)}.retention-head{margin:2.5rem 0 0;font-size:1.15rem;letter-spacing:-.02em}.retention-scroll{overflow-x:auto;margin-top:1rem}.retention-table{width:100%;border-collapse:collapse;font-size:.92rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.retention-table td,.retention-table th{padding:.55rem .75rem .55rem 0;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.retention-table thead th{font-size:.82rem;font-weight:550;color:var(--muted);border-bottom-color:var(--border-strong)}.retention-table tbody th{font-weight:520;white-space:normal}.retention-table a{color:inherit}.retention-foot{margin-top:2rem}.retention-foot code{font-size:.85em}.screen.admin{max-width:64rem}.admin-nav{display:flex;flex-wrap:wrap;gap:.25rem;margin:0 0 1.75rem;padding:0 0 .75rem;border-bottom:1px solid var(--border)}.admin-nav a{padding:.4rem .75rem;font-size:.88rem;font-weight:520;color:var(--muted);text-decoration:none;border-radius:var(--r-sm);transition:background .15s var(--ease),color .15s var(--ease)}.admin-nav a:hover,.admin-nav a[aria-current=page]{color:var(--text);background:var(--surface-2)}.admin-nav a[aria-current=page]{font-weight:600}.admin-nav a:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.admin-tools{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));grid-gap:.7rem;gap:.7rem}.admin-tool{display:grid;grid-gap:.3rem;gap:.3rem;height:100%;padding:1rem 1.1rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface);color:inherit;text-decoration:none;transition:border-color .15s var(--ease)}.admin-tool:hover{border-color:var(--accent)}.admin-tool:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-tool-name{font-weight:600;letter-spacing:-.015em}.admin-tool-note{font-size:.88rem;line-height:1.5;color:var(--muted)}.retention-figures a{color:var(--bad);font-weight:560}.retention-table tr.is-loss td,.retention-table tr.is-loss th{color:var(--bad);background:var(--bad-soft)}.retention-table tr.is-failed td{color:var(--faint)}.admin-file{max-width:16rem;overflow:hidden;text-overflow:ellipsis}.voucher-make{display:grid;grid-gap:1rem;gap:1rem;justify-items:start;margin-top:1.75rem;padding:1.1rem 1.2rem;border:1px solid var(--border);border-radius:var(--r);background:var(--surface)}.voucher-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(11rem,1fr));grid-gap:.8rem 1rem;gap:.8rem 1rem;width:100%}.voucher-fields label{display:grid;grid-gap:.3rem;gap:.3rem;font-size:.85rem;color:var(--muted)}.voucher-fields input{font:inherit;font-size:.95rem;color:var(--text);background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--r-sm);padding:.5rem .65rem}.voucher-fields input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.voucher-note-field{grid-column:1/-1}.voucher-result{width:100%;font-size:.92rem;color:var(--bad)}.voucher-result.is-ok{color:var(--good)}.voucher-result p{margin:0}.voucher-result p+p{margin-top:.35rem;color:var(--text)}.voucher-result code{font-size:.9em;word-break:break-all}.gift-amounts{margin:0;justify-self:start}.gift-amounts .seg-btn{display:inline-flex;align-items:center;padding:.4rem .8rem}.gift-amounts .seg-btn:has(input:disabled){opacity:.4;cursor:default}.gift-amounts .seg-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.gift-card .corner-card-title .coin-amount{vertical-align:-2px}@media (max-width:59.99rem){.gift-card.is-mid-run{position:static;width:auto;margin-top:1.5rem;box-shadow:none}}.tag-locked{color:var(--text);border-color:var(--text)}.btn.btn-icon.btn-lock.is-on{color:var(--text);background:var(--surface-2)}:where(input[type=checkbox]){-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:none;width:18px;height:18px;margin:0;vertical-align:-3px;border:calc(18px * var(--bubble-ring)) solid var(--border-strong);border-radius:5px;background:var(--surface) var(--check-tick) center /0 0 no-repeat;cursor:pointer;transition:border-color .15s var(--ease),background-color var(--check-box) var(--check-ease),background-size var(--check-uncheck) var(--check-ease)}:where(input[type=checkbox]):hover:not(:disabled){border-color:var(--muted)}:where(input[type=checkbox]):checked{border-color:var(--accent);background-color:var(--accent);background-size:64% 64%;transition:border-color .15s var(--ease),background-color var(--check-box) var(--check-ease),background-size var(--check-draw) var(--ease-bounce) var(--check-delay)}:where(input[type=checkbox]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:where(input[type=checkbox]):disabled{opacity:.45;cursor:default}@media (prefers-reduced-motion:reduce){:where(input[type=checkbox]){transition:none!important}}.calc{position:fixed;right:clamp(1rem,3vw,2rem);bottom:calc(var(--mlk-height, 0px) + clamp(1rem, 3vw, 2rem));z-index:45;width:19.5rem;display:grid;grid-gap:.75rem;gap:.75rem;padding:.9rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg)}.calc:focus{outline:none}.calc:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.calc-head{display:flex;align-items:center;gap:.6rem}.calc-title{margin:0;font-weight:600;font-size:.95rem}.calc-angle{margin:0 0 0 auto;padding:2px}.calc-angle .seg-btn{padding:.2rem .6rem;font-size:.8rem;cursor:pointer}.calc-angle .seg-btn:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}.calc-close,.ptable-close{display:grid;place-items:center;width:30px;height:30px;color:var(--muted);background:none;border:0;border-radius:var(--r-sm);cursor:pointer}.calc-close:hover,.ptable-close:hover{color:var(--text);background:var(--surface-2)}.calc-close:focus-visible,.ptable-close:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.calc-screen{display:grid;grid-gap:.2rem;gap:.2rem;padding:.7rem .8rem;text-align:right;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm)}.calc-sum{overflow-x:auto;white-space:nowrap;font-family:var(--ff-mono);font-size:1.15rem;line-height:1.4;color:var(--text);scrollbar-width:none}.calc-sum::-webkit-scrollbar{display:none}.calc-result{margin:0;min-height:1.4em;font-family:var(--ff-mono);font-size:.95rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.calc-screen.is-done .calc-sum{font-size:.9rem;color:var(--muted)}.calc-screen.is-done .calc-result{font-size:1.5rem;font-weight:600;color:var(--text)}.calc-result.is-error{color:var(--bad);font-family:inherit;font-size:.92rem;font-weight:560}.calc-keys{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.35rem;gap:.35rem}.calc-key{height:2.5rem;font:inherit;font-size:.98rem;font-weight:520;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:background .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease),var(--press-transition)}.calc-key:hover{border-color:var(--border-strong);background:var(--surface-2)}.calc-key:active{scale:.95}.calc-key:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.calc-key.is-fn{font-size:.85rem;color:var(--muted);background:var(--surface-2)}.calc-key.is-fn:hover{color:var(--text)}.calc-key.is-op{color:var(--accent);font-size:1.05rem}.calc-key.is-warn{color:var(--bad);font-size:.85rem;font-weight:600}.calc-key.is-go{color:#fff;background:var(--accent);border-color:var(--accent);font-size:1.15rem}.calc-key.is-go:hover{background:var(--accent);filter:brightness(1.08)}.calc-key.is-on{color:#fff;background:var(--accent);border-color:var(--accent)}.calc-key.is-shifted{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.calc-use{width:100%;justify-content:center}@media (max-width:47.99rem){.calc{left:.75rem;right:.75rem;bottom:calc(var(--mlk-height, 0px) + .75rem);width:auto}.calc-key{height:2.75rem}}.ptable{--block-s:#2a78d6;--block-p:#eb6834;--block-d:#1baf7a;--block-f:#eda100;--cell-w:2.45rem;--cell-h:2.55rem;position:fixed;left:0;right:0;bottom:calc(var(--mlk-height, 0px) + clamp(1rem, 3vw, 2rem));z-index:45;width:min(53rem,calc(100vw - 2rem));max-height:calc(100dvh - var(--mlk-height, 0px) - 2rem);margin-inline:auto;overflow-y:auto;display:grid;grid-gap:.75rem;gap:.75rem;padding:.9rem;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r);box-shadow:var(--shadow-lg)}:root[data-theme=dark] .ptable{--block-s:#3987e5;--block-p:#d95926;--block-d:#199e70;--block-f:#c98500}.ptable:focus{outline:none}.ptable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ptable [data-block=s]{--block:var(--block-s)}.ptable [data-block=p]{--block:var(--block-p)}.ptable [data-block=d]{--block:var(--block-d)}.ptable [data-block=f]{--block:var(--block-f)}.ptable-head{display:flex;align-items:center;gap:.9rem}.ptable-title{margin:0;font-weight:600;font-size:.95rem}.ptable-legend{display:flex;flex-wrap:wrap;gap:.25rem .8rem;margin:0 0 0 auto;padding:0;list-style:none;font-size:.78rem;color:var(--muted)}.ptable-legend li{display:flex;align-items:center;gap:.35rem}.ptable-swatch{width:.8rem;height:.8rem;border-radius:3px;background:var(--block);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 18%,transparent)}.ptable-scroll{overflow-x:auto;padding:2px;margin:-2px}.ptable-grid{display:grid;grid-template-columns:1.1rem repeat(18,minmax(var(--cell-w),1fr));grid-template-rows:auto repeat(7,var(--cell-h)) .55rem repeat(2,var(--cell-h));grid-gap:.15rem;gap:.15rem}.ptable-group,.ptable-period{font-size:.62rem;color:var(--faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ptable-group{align-self:end;text-align:center;padding-bottom:.1rem}.ptable-period{align-self:center;text-align:right;padding-right:.2rem}.ptable-cell{position:relative;display:grid;place-items:center;padding:0;font:inherit;color:var(--text);background:color-mix(in srgb,var(--block) 13%,var(--surface));border:1px solid color-mix(in srgb,var(--block) 42%,var(--surface));border-radius:5px;cursor:pointer;transition:background .12s var(--ease),box-shadow .12s var(--ease),var(--press-transition)}.ptable-cell:hover{background:color-mix(in srgb,var(--block) 24%,var(--surface))}.ptable-cell:active{scale:.95}.ptable-cell:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ptable-cell[aria-pressed=true]{background:color-mix(in srgb,var(--block) 30%,var(--surface));box-shadow:inset 0 0 0 2px var(--block)}.ptable-cell-z{position:absolute;top:.15rem;left:.25rem;font-size:.56rem;line-height:1;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ptable-cell-symbol{margin-top:.4rem;font-size:.95rem;font-weight:640;line-height:1}.ptable-gap{display:grid;place-items:center;font-size:.56rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;border:1px dashed color-mix(in srgb,var(--block) 55%,var(--surface));border-radius:5px}.ptable-inset{min-width:0;padding:0 .6rem}.ptable-detail{display:flex;align-items:flex-start;gap:.8rem}.ptable-detail.is-below{display:none}.ptable-detail.is-empty p{margin:.3rem 0 0;font-size:.82rem;color:var(--muted)}.ptable-tile{position:relative;flex:none;display:grid;place-items:center;width:3.6rem;height:3.6rem;background:color-mix(in srgb,var(--block) 16%,var(--surface));border:2px solid var(--block);border-radius:var(--r-sm)}.ptable-tile-z{position:absolute;top:.25rem;left:.35rem;font-size:.68rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ptable-tile-symbol{margin-top:.3rem;font-size:1.45rem;font-weight:650;line-height:1}.ptable-facts{min-width:0}.ptable-name{margin:0 0 .25rem;font-weight:600;font-size:.95rem}.ptable-dl{display:grid;grid-template-columns:auto 1fr;grid-gap:.1rem .75rem;gap:.1rem .75rem;margin:0;font-size:.8rem}.ptable-dl dt{color:var(--muted)}.ptable-dl dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ptable-dl sup{font-size:.7em}.ptable-held{color:var(--faint);font-style:italic}@media (max-width:47.99rem){.ptable{left:.75rem;right:.75rem;bottom:calc(var(--mlk-height, 0px) + .75rem);width:auto;margin-inline:0;--cell-w:2.3rem;--cell-h:2.4rem}.ptable-head{flex-wrap:wrap}.ptable-legend{order:3;width:100%;margin:0}.ptable-close{margin-left:auto}.ptable-inset{display:none}.ptable-detail.is-below{display:flex;padding:.65rem;background:var(--surface-2);border-radius:var(--r-sm)}}@media (prefers-reduced-motion:reduce){.ptable-cell{transition:none}.ptable-cell:active{scale:1}}.tick{position:relative;cursor:pointer}.tick.is-off{cursor:default}.tick input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.tick .bubble{border-radius:5px}.tick:hover .bubble{border-color:var(--muted)}.tick input:checked~.bubble{border-color:var(--accent)}.tick input:focus-visible~.bubble{outline:2px solid var(--accent);outline-offset:3px}.retention{--viz-again:#2563EB;--viz-first:#EB6834}:root[data-theme=dark] .retention{--viz-again:#3987E5;--viz-first:#D95926}.retention-period{margin:1.25rem 0 0}.retention-period .seg-btn{text-decoration:none}.viz-bars{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.viz-bar{display:grid;grid-template-columns:minmax(8rem,11rem) minmax(0,1fr) 5.5rem;align-items:center;grid-gap:.9rem;gap:.9rem;font-size:.92rem}.viz-bar-label{color:var(--text)}.viz-bar-track{height:14px;border-radius:4px;background:var(--surface-2);overflow:hidden}.viz-bar-fill{display:block;height:100%;border-radius:0 4px 4px 0;background:var(--viz-again)}.viz-bar-value{font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text)}.viz-bar-note{margin-left:.4rem;font-weight:450;color:var(--muted)}.viz-daily{margin:1rem 0 0}.viz-legend{display:flex;gap:1.1rem;font-size:.85rem;color:var(--muted)}.viz-legend span{display:inline-flex;align-items:center;gap:.4rem}.viz-swatch{width:10px;height:10px;border-radius:3px;display:inline-block}.viz-seg.is-again,.viz-swatch.is-again{background:var(--viz-again)}.viz-seg.is-first,.viz-swatch.is-first{background:var(--viz-first)}.viz-plot{position:relative;margin-top:.75rem;padding-top:1.25rem}.viz-max{position:absolute;top:0;left:0;font-size:.75rem;color:var(--muted)}.viz-columns{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-gap:2px;gap:2px;height:11rem;border-top:1px dashed var(--border);border-bottom:1px solid var(--border-strong)}.viz-col{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}.viz-col:hover{background:var(--surface-2)}.viz-stack{display:flex;flex-direction:column;gap:2px;min-height:0}.viz-seg{display:block;min-height:2px}.viz-stack>.viz-seg:first-child{border-radius:4px 4px 0 0}.viz-tick{position:absolute;top:calc(100% + .35rem);left:50%;translate:-50% 0;font-size:.72rem;color:var(--muted);white-space:nowrap}.viz-table{margin-top:2.25rem}.retention-more summary,.viz-table summary{cursor:pointer;font-size:.88rem;font-weight:560;color:var(--accent)}.viz-table .retention-table{margin-top:.75rem}.retention-more{margin-top:2.5rem}.retention-more .fine-note{margin-top:.6rem}@media (max-width:40rem){.viz-bar{grid-template-columns:minmax(0,1fr) 5rem}.viz-bar-track{grid-column:1/-1;grid-row:2}}.molecules{display:grid;grid-gap:.75rem;gap:.75rem;margin:1rem 0 1.25rem}.molecule{margin:0;display:grid;grid-template-columns:minmax(0,16rem) minmax(0,1fr);align-items:center;grid-gap:1rem 1.25rem;gap:1rem 1.25rem;padding:.9rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.molecule.is-plain{grid-template-columns:minmax(0,1fr)}.molecule-pictures{display:grid;grid-gap:.6rem;gap:.6rem;min-width:0}.molecule-lewis{display:grid;place-items:center;padding:.5rem;border-radius:var(--r-sm);background:var(--surface-2);overflow-x:auto}.lewis{display:block;max-width:100%;height:auto}.lewis-bond line{stroke:var(--text);stroke-width:1.6;stroke-linecap:round}.lewis-atom text{fill:var(--text);font-size:17px;font-weight:560}.lewis-atom circle{fill:var(--text)}.lewis-atom .lewis-charge{font-size:11px;font-weight:600}.molecule-model{position:relative;aspect-ratio:4/3;border-radius:var(--r-sm);background:var(--surface-2);overflow:hidden;cursor:-webkit-grab;cursor:grab}.molecule-model:active{cursor:-webkit-grabbing;cursor:grabbing}.molecule-model.is-flat{cursor:default}.molecule-canvas{position:absolute;inset:0}.molecule-model.is-failed{display:grid;place-items:center;padding:.75rem;font-size:.85rem;text-align:center;color:var(--muted);cursor:default}.molecule-facts{min-width:0}.molecule-name{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.015em}.molecule-list{margin:.5rem 0 0;display:grid;grid-gap:.35rem;gap:.35rem}.molecule-list>div{display:flex;align-items:baseline;gap:.75rem}.molecule-list dt{min-width:5.5rem;font-size:.85rem;color:var(--muted)}.molecule-list dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.molecule-name+.molecule-list{margin-top:.6rem}.molecule-hint{margin:.65rem 0 0;font-size:.8rem;color:var(--faint)}@media (max-width:36rem){.molecule{grid-template-columns:minmax(0,1fr)}}.orbitals-list{display:grid;grid-gap:.75rem;gap:.75rem;margin:1rem 0 1.25rem}.orbitals{margin:0;display:flex;flex-wrap:wrap;align-items:flex-start;gap:.9rem 1.1rem;padding:.9rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm)}.orbitals-group{display:grid;justify-items:center;grid-gap:.35rem;gap:.35rem}.orbitals-boxes{display:flex}.orbitals-box{display:inline-flex;align-items:center;justify-content:center;width:30px;height:34px;margin-left:-1px;font-size:1.1rem;font-weight:600;line-height:1;color:var(--text);border:1.5px solid var(--text)}.orbitals-box:first-child{margin-left:0}.orbitals-down{margin-left:-1px}.orbitals-core{display:inline-flex;align-items:center;height:34px;padding:0 .6rem;font-weight:600;border-radius:5px;background:var(--surface-2)}.orbitals-label{font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted)}