:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;line-height:1.5;text-rendering:optimizeLegibility}:root[data-theme=dark]{--background: #0b1020;--surface: #151c2f;--surface-strong: #202a43;--primary: #b7f34a;--secondary: #8b6cff;--success: #43d69c;--success-bg: #12382f;--error: #ff647c;--error-bg: #421923;--info: #7cc7ff;--info-bg: #102f45;--warning: #ffc857;--text: #f5f7ff;--muted: #b8c1d9;--border: #33405f;--focus: #ffc857;color-scheme:dark}:root[data-theme=light]{--background: #f4f7fb;--surface: #ffffff;--surface-strong: #e8eef8;--primary: #4f7d00;--secondary: #5941c9;--success: #087f5b;--success-bg: #dff6ec;--error: #c92a2a;--error-bg: #ffe3e3;--info: #1c6ea4;--info-bg: #e0f2ff;--warning: #8a5a00;--text: #13203a;--muted: #46546f;--border: #c8d2e3;--focus: #5941c9;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--background);color:var(--text)}button,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default}select{min-height:2.5rem;border:1px solid var(--border);border-radius:.375rem;background-color:var(--surface);color:var(--text);appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%23b8c1d9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;background-size:.75rem;padding:0 2.25rem 0 .75rem}:root[data-theme=light] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' stroke='%2346546f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}button:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.app-frame{display:flex;min-height:100vh;flex-direction:column}.app-shell{width:min(100% - 2rem,78rem);flex:1;margin:0 auto;padding:1rem 0 3rem}.app-navbar{position:sticky;top:0;z-index:30;background:var(--surface);border-bottom:1px solid var(--border)}.app-navbar-inner,.app-footer-inner{width:min(100% - 2rem,78rem);margin:0 auto}.app-navbar-inner{display:flex;flex-wrap:nowrap;align-items:center;gap:1.25rem;padding:.6rem 0}.brand-button{border:none;border-radius:.375rem;background:transparent;padding:.15rem .25rem}.app-navbar-links{display:flex;flex-wrap:nowrap;gap:.35rem}.app-navbar-link,.brand-wordmark{white-space:nowrap}.app-navbar-tail{position:relative;display:flex;flex:1 1 auto;min-width:0;align-items:center;justify-content:flex-end;gap:.75rem}.app-navbar-link{border:1px solid transparent;border-radius:.375rem;background:transparent;color:var(--muted);font-weight:800;padding:.5rem .85rem}.app-navbar-link:hover{color:var(--text);background:var(--surface-strong)}.app-navbar-link.is-active{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.app-navbar-actions{display:flex;min-width:0;justify-content:flex-end}.help-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex:none;border:1px solid transparent;border-radius:.375rem;background:transparent;color:var(--muted)}.help-toggle:hover{color:var(--text);background:var(--surface-strong)}.help-toggle.is-active{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.settings-controls{display:none}.settings-toggle{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface);color:var(--text)}.settings-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:10;display:grid;gap:.75rem;min-width:14rem;max-width:calc(100vw - 2rem);border:1px solid var(--border);border-radius:.375rem;background:var(--surface);box-shadow:0 .75rem 2rem #00000059;padding:.75rem}.settings-menu .selectors{justify-content:stretch}.settings-menu .selectors label{flex:1 1 100%}.settings-menu-item{border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);color:var(--text);font-weight:800;text-align:left;padding:.5rem .75rem}.settings-menu-item.is-active{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.app-tabbar{position:fixed;right:0;bottom:0;left:0;z-index:30;display:none;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--border);background:var(--surface);padding-bottom:env(safe-area-inset-bottom)}.app-tabbar-item{position:relative;display:grid;gap:.15rem;justify-items:center;min-height:3.6rem;border:none;background:transparent;color:var(--muted);font-size:.75rem;font-weight:800;padding:.5rem .25rem .4rem}.app-tabbar-icon{display:block}.app-tabbar-item.is-active{color:var(--primary)}.app-tabbar-item.is-active:before{content:"";position:absolute;top:0;left:25%;width:50%;height:3px;border-radius:0 0 3px 3px;background:var(--primary)}.app-footer{border-top:1px solid var(--border)}.app-footer-inner{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:clamp(1.25rem,3vw,2rem) 0;text-align:center}.app-footer-line{color:var(--muted);font-size:.875rem}.brand-lockup{display:inline-flex;align-items:center;gap:.5rem}.brand-mark{display:block;flex:0 0 auto}.brand-wordmark{font-weight:800;font-size:1.125rem;letter-spacing:-.01em}.brand-wordmark-name{color:var(--text)}.brand-wordmark-code{color:var(--primary)}.selectors{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}.selectors label{display:grid;gap:.25rem;color:var(--muted);font-size:.875rem}.app-navbar-actions .selectors{flex-wrap:nowrap;align-items:center}.app-navbar-actions .selectors label span{display:none}.home-layout,.match-layout,.tutorial-layout,.result-layout,.progress-layout,.categories-layout,.review-layout,.help-layout,.state-panel{display:grid;gap:clamp(1rem,3vw,1.75rem);align-content:start;padding:clamp(1rem,2.5vw,1.75rem) 0 clamp(2rem,4vw,3rem)}.home-layout{max-width:64rem;margin:0 auto;width:100%}.home-hero{display:grid;gap:.6rem;justify-items:start}.categories-head{display:grid;gap:.75rem}.categories-head p:not(.eyebrow){color:var(--muted);font-size:clamp(1rem,2vw,1.1875rem)}.category-card .primary-action,.category-card .secondary-action{margin-top:.25rem}.eyebrow{margin:0;color:var(--primary);font-size:.875rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}h1,h2,p{margin:0}h1{font-weight:900;letter-spacing:0}.app-hero-heading,.result-heading,.tutorial-welcome-heading{max-width:24ch;font-size:clamp(1.75rem,1.3rem + 1.4vw,2.5rem);line-height:1.15}.question-prompt,.tutorial-question-prompt{max-width:27ch;font-size:clamp(1.25rem,1rem + 1vw,2rem);line-height:1.28}.tutorial-question-prompt{max-width:29ch}.question-prompt .prompt-acronym{color:var(--primary)}h2{font-size:clamp(2rem,4vw,3rem);line-height:1}.state-panel p,.explanation p,.review p{color:var(--muted);font-size:clamp(1rem,2vw,1.1875rem)}.tutorial-invite{display:grid;grid-column:1 / -1;gap:1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:clamp(1.25rem,3vw,2rem)}.tutorial-invite h2{font-size:clamp(1.75rem,4vw,2.5rem)}.tutorial-invite p:not(.eyebrow){color:var(--muted);font-size:clamp(1rem,2vw,1.1875rem)}.result-stats span{border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);padding:1rem}.primary-action,.secondary-action{min-height:3.25rem;border-radius:.375rem;padding:.75rem 1rem;font-weight:900}.primary-action{border:1px solid color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.secondary-action{border:1px solid var(--border);background:var(--surface);color:var(--text)}.match-layout{max-width:58rem;gap:clamp(.85rem,2.5vw,1.5rem);padding-top:clamp(.75rem,2.5vw,1.5rem);padding-bottom:1.5rem}.match-topbar{display:flex;justify-content:flex-end}.match-leave{border:1px solid var(--border);border-radius:.375rem;background:var(--surface);color:var(--muted);font-weight:800;padding:.4rem .8rem}.match-leave:hover{color:var(--text);background:var(--surface-strong)}.match-advance{position:sticky;bottom:0;z-index:5;display:grid;margin-top:.5rem;padding:.75rem 0;background:linear-gradient(to top,var(--background) 68%,transparent)}.match-advance .primary-action{display:flex;align-items:center;justify-content:center;gap:.75rem}.key-hint{border:1px solid currentColor;border-radius:.3rem;padding:.05rem .4rem;font-size:.75rem;font-weight:800;opacity:.7}.leave-guard-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:1rem;background:#0000008c}.leave-guard{display:grid;gap:1.25rem;width:min(28rem,100%);border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:clamp(1.25rem,3vw,2rem)}.leave-guard p{margin:0;font-size:clamp(1.1rem,2.5vw,1.35rem);font-weight:800}.tutorial-layout{max-width:62rem}.match-meta,.actions,.result-stats{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.match-meta{justify-content:space-between;color:var(--muted);font-weight:800}progress{width:100%;height:1rem;appearance:none;-webkit-appearance:none;-moz-appearance:none;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);overflow:hidden}progress::-webkit-progress-bar{background:var(--surface-strong)}progress::-webkit-progress-value{background:var(--primary)}progress::-moz-progress-bar{background:var(--primary)}.options{display:grid;gap:.75rem}.answer-option-stack{display:grid;gap:.5rem}.answer-option{display:flex;min-height:4.5rem;align-items:center;justify-content:space-between;gap:1rem;border:2px solid var(--border);border-radius:.5rem;background:var(--surface);color:var(--text);padding:1rem;text-align:left;font-size:clamp(1.0625rem,2vw,1.35rem);font-weight:800}.answer-option:hover:not(:disabled){border-color:var(--primary);background:var(--surface-strong)}.answer-option strong{flex:0 0 auto;color:var(--muted);font-size:.8rem;text-transform:uppercase}.answer-option.is-correct{border-color:var(--success);background:var(--success-bg)}.answer-option.is-incorrect{border-color:var(--error);background:var(--error-bg)}.explanation{display:grid;gap:.5rem;border-left:.375rem solid var(--primary);background:var(--surface);padding:1rem}.inline-feedback{margin-left:1rem;border:1px solid var(--border);border-left-width:.375rem;border-radius:0 .5rem .5rem 0}.inline-feedback.is-info{border-color:var(--info);background:var(--info-bg)}.answer-option.is-correct+.inline-feedback{margin-left:0;margin-top:-.35rem;border-left-color:var(--success);border-top-left-radius:0;border-top-right-radius:0}.match-xp-pending{color:var(--muted);font-weight:700}.instruction-panel{display:grid;gap:.75rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:1rem}.instruction-panel p{color:var(--muted);font-size:clamp(1rem,2vw,1.1875rem)}.inline-error{border:1px solid var(--error);border-radius:.5rem;background:var(--error-bg);color:var(--text);padding:1rem}.recovery-warning{color:var(--muted);font-size:1rem;max-width:52rem}.result-layout{max-width:64rem}.progress-layout{max-width:72rem}.score{display:flex;flex-wrap:wrap;gap:1rem;align-items:end}.score strong{color:var(--primary);font-size:clamp(4rem,12vw,9rem);line-height:.9}.score span{color:var(--muted);font-size:clamp(2rem,5vw,4rem);font-weight:900}.review{border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:1rem}.review summary{cursor:pointer;font-weight:900}.review ol{display:grid;gap:1rem;margin:1rem 0 0;padding-left:1.25rem}.review li{padding-left:.5rem}.progress-summary,.category-card{border:1px solid var(--border);border-radius:.5rem;background:var(--surface)}.category-card p,.progression-feedback{color:var(--muted)}.progress-summary{display:grid;gap:1rem;padding:1rem}.progress-summary h2{font-size:clamp(1.35rem,3vw,2rem)}.progress-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin:0}.progress-metrics div{border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);padding:.875rem}.progress-metrics dt,.question-row-timing dt{color:var(--muted);font-size:.8rem;text-transform:uppercase}.progress-metrics dd,.question-row-timing dd{margin:.25rem 0 0;font-weight:900}.category-grid,.question-progress-list{display:grid;gap:.75rem}.category-grid{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr))}.category-card{display:grid;gap:.75rem;padding:1rem}.category-card h3{margin:0;font-size:1.1rem}.areas-mastered{display:grid;gap:.35rem;padding:.6rem .9rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface-strong)}.areas-mastered-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.areas-mastered-head h3{margin:0;font-size:1.1rem}.areas-mastered-head strong{color:var(--success);font-size:1.35rem;font-weight:900;line-height:1}.areas-mastered-track{height:.4rem}.areas-mastered-track::-webkit-progress-value{background:var(--success)}.areas-mastered-track::-moz-progress-bar{background:var(--success)}.category-card progress{height:.7rem;background:color-mix(in srgb,var(--surface-strong),var(--border) 55%)}.category-card progress::-webkit-progress-bar{background:color-mix(in srgb,var(--surface-strong),var(--border) 55%)}.category-card-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.category-card-head h3{min-width:0;overflow-wrap:anywhere}.category-card.is-mastered{border-color:var(--success);background:var(--success-bg)}.category-card.is-mastered progress::-webkit-progress-value{background:var(--success)}.category-card.is-mastered progress::-moz-progress-bar{background:var(--success)}.mastered-badge{flex-shrink:0;padding:.2rem .6rem;border-radius:999px;background:var(--success);color:var(--background);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.mode-grid{grid-template-columns:1fr}@media(min-width:781px){.mode-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.mode-grid .mode-card{gap:.85rem;padding:1.5rem}}.progress-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:.6rem 1rem}.progress-strip-stats{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;color:var(--muted);font-weight:700}.progress-strip-stats strong{color:var(--primary);font-size:1.25rem;line-height:1.2}.progress-strip.is-unavailable{border-color:var(--warning)}.progress-strip-actions{display:flex;flex-wrap:wrap;gap:.5rem}.progress-strip-link{border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--text);font-size:.9rem;font-weight:800;padding:.35rem .85rem}.progress-strip-link:hover{border-color:var(--primary)}.deck-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0}.deck-chip{padding:.25rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-size:.8rem;font-weight:800}.deck-chip.is-locked{border-style:dashed;background:transparent;color:var(--muted)}.mode-card p{font-size:1rem}.length-selector{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.length-selector-label{flex-basis:100%;color:var(--muted);font-size:.8rem;font-weight:800}.length-option{min-width:2.75rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);color:var(--muted);font-weight:800;padding:.4rem .7rem}.length-option.is-active{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.category-card.is-coming-soon{border-style:dashed;background:var(--surface-strong)}.category-card.is-coming-soon h3{color:var(--muted)}.coming-soon-badge{flex-shrink:0;padding:.2rem .6rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.category-card.is-coming-soon .secondary-action:disabled{color:var(--muted)}.mastery-level-0{--mastery-color: color-mix(in srgb, var(--muted) 35%, var(--surface-strong))}.mastery-level-1{--mastery-color: color-mix(in srgb, var(--primary) 25%, var(--surface-strong))}.mastery-level-2{--mastery-color: color-mix(in srgb, var(--primary) 45%, var(--surface-strong))}.mastery-level-3{--mastery-color: color-mix(in srgb, var(--primary) 70%, var(--surface-strong))}.mastery-level-4{--mastery-color: var(--primary)}.mastery-level-5{--mastery-color: var(--success)}.mastery-bar{display:flex;height:1.1rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);overflow:hidden}.mastery-bar-segment{display:block;background:var(--mastery-color)}.mastery-legend{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;margin:0;padding:0;list-style:none}.mastery-legend-item{display:inline-flex;align-items:center;gap:.4rem;color:var(--muted);font-size:.875rem;font-weight:700}.mastery-legend-swatch{width:.85rem;height:.85rem;flex:none;border:1px solid var(--border);border-radius:.25rem;background:var(--mastery-color)}.mastery-legend-count{color:var(--text);font-weight:900}.question-list-controls{display:flex;flex-wrap:wrap;align-items:end;gap:.6rem .75rem}.question-list-controls label{display:grid;gap:.25rem;color:var(--muted);font-size:.8rem;font-weight:800}.question-list-controls input[type=search]{min-height:2.5rem;min-width:11rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);color:var(--text);font:inherit;padding:0 .75rem}.question-list-controls input[type=search]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.question-list-search{flex:1 1 12rem}.question-list-toggle{min-height:2.5rem;border:1px solid var(--border);border-radius:999px;background:var(--surface-strong);color:var(--muted);font-weight:800;padding:.35rem .95rem}.question-list-toggle[aria-pressed=true]{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.question-list-count{color:var(--muted);font-size:.9rem;font-weight:700}.question-list-empty{border:1px dashed var(--border);border-radius:.5rem;background:var(--surface-strong);color:var(--muted);font-weight:700;padding:1rem}.question-list-more{justify-self:start;min-height:2.75rem;padding:.5rem 1.25rem}.question-row{display:grid;gap:.5rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:.6rem .9rem}.question-row-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem 1rem}.question-row-lead{flex:1 1 14rem;min-width:0}.question-row-acronym{margin:0;font-size:1.05rem}.question-row-context{margin:.1rem 0 0;color:var(--muted);font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.question-row-stats{display:flex;flex:none;align-items:center;gap:.6rem}.question-row-chip{flex:none;border:1px solid var(--mastery-color);border-radius:999px;background:color-mix(in srgb,var(--mastery-color) 18%,transparent);color:var(--text);font-size:.75rem;font-weight:900;letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;padding:.2rem .6rem}.question-row-tally{color:var(--muted);font-size:.9rem;font-weight:800;white-space:nowrap}.question-row-unseen-mark{color:var(--muted);font-weight:800}.question-row-toggle{border:1px solid var(--border);border-radius:.375rem;background:transparent;color:var(--muted);font-size:.8rem;font-weight:800;padding:.3rem .6rem}.question-row-toggle:hover{color:var(--text);background:var(--surface-strong)}.question-row-timing{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin:0;border-top:1px solid var(--border);padding-top:.6rem}.progression-feedback{display:grid;gap:.25rem;margin:.5rem 0 0;padding-left:1.25rem}.completion-message{border:1px solid var(--success);border-radius:.5rem;background:var(--success-bg);padding:1rem;font-weight:900}.review-count{border:1px solid var(--border);border-radius:.5rem;background:var(--surface-strong);padding:1rem}.review-count strong{color:var(--primary);font-size:clamp(1.15rem,3vw,1.5rem);font-weight:900;line-height:1.1}.review-list{display:grid;gap:.5rem;max-width:56rem}.review-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:.65rem .9rem}.review-row>div:first-child{flex:1 1 auto;min-width:0}.review-row h3{margin:0;font-size:1.05rem}.review-row p{margin:.15rem 0 0;color:var(--muted)}.review-row-meta{display:flex;align-items:center;gap:.6rem;color:var(--muted);font-size:.9rem;font-weight:700}.mastery-chip{flex-shrink:0;padding:.2rem .6rem;border-radius:999px;border:1px solid var(--warning);color:var(--warning);font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.qa-login-layout .category-card-head{align-items:flex-start}.qa-login-layout .mastery-chip{white-space:normal}.review-locked{display:grid;gap:.5rem;border:1px solid var(--warning);border-radius:.5rem;background:var(--surface-strong);padding:clamp(1.25rem,3vw,2rem)}.review-locked h2{font-size:clamp(1.5rem,4vw,2.25rem)}.review-locked p{color:var(--muted);font-size:clamp(1rem,2vw,1.1875rem)}.review-locked-count{color:var(--warning);font-weight:900}.state-panel{max-width:52rem;min-height:60vh;align-content:center}.categories-head .length-selector{width:fit-content;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:.6rem .9rem}@media(max-width:1199px){.app-navbar-links,.app-navbar-actions{display:none}.settings-controls{display:block}.app-tabbar{display:grid}.app-frame{padding-bottom:calc(3.9rem + env(safe-area-inset-bottom))}.match-advance{bottom:calc(3.9rem + env(safe-area-inset-bottom))}.account-email{max-width:8rem}}@media(max-width:780px){.answer-option{align-items:flex-start;flex-direction:column}.inline-feedback{margin-left:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}.account-sign-in{border:1px solid var(--border);border-radius:.375rem;background:var(--surface);color:var(--text);font-weight:800;padding:.5rem .85rem}.account-sign-in:hover{background:var(--surface-strong)}.account-controls{position:relative;min-width:0;max-width:16rem}.account-chip{display:flex;align-items:center;gap:.5rem;max-width:100%;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-weight:800;padding:.35rem .85rem .35rem .35rem}.account-chip:hover{background:var(--surface-strong)}.account-avatar{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;flex:none;border-radius:50%;background:var(--primary);color:#101806;font-weight:900}.account-email{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.875rem}.account-menu{position:absolute;top:calc(100% + .35rem);right:0;z-index:10;min-width:10rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface);box-shadow:0 .75rem 2rem #00000059;padding:.35rem}.account-menu-item{display:block;width:100%;border:1px solid transparent;border-radius:.25rem;background:transparent;color:var(--text);font-weight:800;text-align:left;padding:.5rem .75rem}.account-menu-item:hover{background:var(--surface-strong)}.auth-layout{display:grid;min-height:70vh;align-content:center;justify-content:center;padding:clamp(2rem,5vw,5rem) 0}.auth-card{display:grid;gap:1.25rem;width:min(28rem,100%);border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:clamp(1.25rem,3vw,2rem)}.auth-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;border:1px solid var(--border);border-radius:.375rem;background:var(--surface-strong);padding:.25rem}.auth-toggle-option{border:1px solid transparent;border-radius:.25rem;background:transparent;color:var(--muted);font-weight:800;padding:.5rem .75rem}.auth-toggle-option.is-active{border-color:color-mix(in srgb,var(--primary),#000 20%);background:var(--primary);color:#101806}.auth-form{display:grid;gap:.85rem}.auth-form label{display:grid;gap:.25rem;color:var(--muted);font-size:.875rem;font-weight:800}.auth-form input{min-height:2.75rem;border:1px solid var(--border);border-radius:.375rem;background:var(--background);color:var(--text);font:inherit;padding:0 .75rem}.auth-form input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.auth-save-promise{border:1px solid var(--success);border-radius:.375rem;background:var(--success-bg);color:var(--text);font-weight:700;padding:.75rem 1rem}.auth-conflict-warning{border:1px solid var(--warning);border-radius:.375rem;background:var(--surface-strong);color:var(--text);font-weight:700;padding:.75rem 1rem}.auth-hint{margin:0;color:var(--muted);font-size:.875rem}.auth-error{border:1px solid var(--error);border-radius:.375rem;background:var(--error-bg);color:var(--text);font-weight:700;padding:.75rem 1rem}.auth-coming-soon{margin:0;color:var(--muted);font-size:.875rem;text-align:center}.save-progress-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.35rem 1rem;border:1px solid var(--success);border-radius:.5rem;background:var(--success-bg);padding:.45rem 1rem}.save-progress-strip p{color:var(--text);font-size:.9rem;font-weight:700}.save-progress-strip-action{border:1px solid var(--success);border-radius:999px;background:var(--surface);color:var(--text);font-size:.85rem;font-weight:800;padding:.3rem .85rem}.save-progress-strip-action:hover{background:var(--surface-strong)}.info-tooltip{position:relative;display:inline-flex;vertical-align:middle}.info-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;flex:none;border:none;border-radius:999px;background:transparent;color:var(--muted);padding:0;cursor:pointer}.info-tooltip-trigger:hover,.info-tooltip-trigger[aria-expanded=true]{color:var(--text);background:var(--surface-strong)}.info-tooltip-popover{position:absolute;top:calc(100% + .45rem);left:50%;z-index:30;display:grid;gap:.3rem;width:max-content;max-width:min(17rem,calc(100vw - 1.5rem));transform:translate(calc(-50% + var(--info-tooltip-shift, 0px)),var(--info-tooltip-lift, 0px));border:1px solid var(--border);border-radius:.5rem;background:var(--surface);box-shadow:0 .75rem 1.5rem #060a1959;color:var(--text);font-size:.85rem;font-weight:500;letter-spacing:normal;text-transform:none;text-align:left;white-space:normal;padding:.6rem .75rem}.info-tooltip-popover:before{content:"";position:absolute;top:-.3rem;left:calc(50% - var(--info-tooltip-shift, 0px));width:.55rem;height:.55rem;transform:translate(-50%) rotate(45deg);border-top:1px solid var(--border);border-left:1px solid var(--border);background:var(--surface)}.info-tooltip-popover.is-above{top:auto;bottom:calc(100% + .45rem)}.info-tooltip-popover.is-above:before{top:auto;bottom:-.3rem;border-top:none;border-left:none;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}.info-tooltip-term{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.info-tooltip-description{color:var(--muted);line-height:1.45}.info-tooltip-scale{display:grid;gap:.25rem;margin:.2rem 0 0;border-top:1px solid var(--border);padding:.5rem 0 0;list-style:none}.info-tooltip-scale-item{display:flex;align-items:center;gap:.5rem;color:var(--muted)}.info-tooltip-scale-item.is-current{color:var(--text);font-weight:800}.info-tooltip-scale-level{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;flex:none;border:1px solid var(--mastery-color, var(--border));border-radius:999px;background:color-mix(in srgb,var(--mastery-color, transparent) 22%,transparent);color:var(--text);font-size:.7rem;font-weight:800}.info-tooltip-scale-item.is-current .info-tooltip-scale-level{background:color-mix(in srgb,var(--mastery-color, var(--primary)) 45%,transparent);box-shadow:0 0 0 2px color-mix(in srgb,var(--mastery-color, var(--primary)) 55%,transparent)}.section-heading-with-info{display:flex;align-items:center;gap:.35rem}.section-heading-with-info h2{margin:0}.question-list-toggle-with-info{display:inline-flex;align-items:center;gap:.1rem}.help-layout{max-width:52rem}.help-tutorial-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--border);border-radius:.5rem;background:var(--surface);padding:clamp(1rem,3vw,1.5rem)}.help-tutorial-card h2{margin:0 0 .25rem;font-size:1.25rem}.help-tutorial-card p{margin:0;color:var(--muted)}.help-faq{display:grid;gap:1rem}.help-faq h2{margin:0;font-size:clamp(1.25rem,3vw,1.75rem)}.faq-sections{display:grid;gap:1.25rem}.faq-section{display:grid;gap:.6rem}.faq-section h3{margin:0;color:var(--muted);font-size:.85rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.faq-list{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.faq-item{border:1px solid var(--border);border-radius:.5rem;background:var(--surface)}.faq-question{display:flex;width:100%;align-items:center;justify-content:space-between;gap:.75rem;border:none;border-radius:.5rem;background:transparent;color:var(--text);font-weight:800;text-align:left;padding:.75rem .9rem}.faq-question:hover{background:var(--surface-strong)}.faq-chevron{flex:none;color:var(--muted);transition:transform .15s ease}.faq-question[aria-expanded=true] .faq-chevron{transform:rotate(180deg)}.faq-answer{display:grid;gap:.5rem;color:var(--muted);line-height:1.5;padding:0 .9rem .85rem}.faq-answer p{margin:0}
