:root{--font-display:"Barlow Condensed", "Arial Narrow", "Helvetica Neue", sans-serif;--font-body:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Chivo Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--bg:#f4f4f0;--surface:#fff;--sunk:#ebebe5;--ink:#0e0e0c;--text:#0e0e0c;--muted:#5b5b54;--faint:#8c8c84;--border:#d9d9d1;--rule:#0e0e0c;--hi:#ffe14a;--hi-soft:#fff4b8;--on-hi:#0e0e0c;--primary:#0e0e0c;--on-primary:#fff;--success:#0f7f47;--success-bg:#e2f4e9;--danger:#c8321f;--danger-bg:#fbe7e3;--card-back:#0e0e0c;--card-back-text:#fff;--mark-bg:#0e0e0c;--mark-fg:#ffe14a;--scrim:#0e0e0c8c;--m0:#ffe14a;--m1:#ff9db8;--m2:#8fc8ff;--m3:#8be0a4;--m4:#ffb36b;--m5:#c9adff;--heat-0:var(--sunk);--heat-1:#fff0a0;--heat-2:#ffe14a;--heat-3:#f5b800;--heat-4:#0e0e0c;--radius:2px;--gutter:clamp(16px, 4vw, 32px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0d0d0c;--surface:#171715;--sunk:#22221f;--ink:#f3f3ec;--text:#f3f3ec;--muted:#a4a49b;--faint:#73736b;--border:#2e2e2a;--rule:#f3f3ec;--hi:#ffdd2e;--hi-soft:#3b3611;--on-hi:#0d0d0c;--primary:#f3f3ec;--on-primary:#0d0d0c;--success:#4fd88a;--success-bg:#12291c;--danger:#ff7561;--danger-bg:#351611;--card-back:#f3f3ec;--card-back-text:#0d0d0c;--mark-bg:#ffdd2e;--mark-fg:#0d0d0c;--scrim:#000000b3;--m0:#ffdd2e;--m1:#ff7fa3;--m2:#6bb6ff;--m3:#5bd486;--m4:#ff9a4a;--m5:#b28cff;--heat-0:#22221f;--heat-1:#4a4213;--heat-2:#a98f12;--heat-3:#ffdd2e;--heat-4:#fffbe0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:15px;line-height:1.55}#root{min-height:100dvh}::selection{background:var(--hi);color:var(--on-hi)}h1,h2,h3,p,ul,ol{margin:0}h1{font:800 clamp(44px, 7vw, 72px) / .9 var(--font-display);text-transform:uppercase;letter-spacing:-.005em}h2{font:700 22px / 1.05 var(--font-display);text-transform:uppercase;letter-spacing:.05em}h3{font:700 17px / 1.25 var(--font-body);letter-spacing:-.005em}a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1.5px}kbd{min-width:22px;height:22px;font:500 11px / 1 var(--font-mono);opacity:.75;border:1.5px solid;border-radius:3px;justify-content:center;align-items:center;padding:0 6px;display:inline-flex}@media (hover:none){.kbd-hint{display:none!important}}:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:12.5px}.eyebrow{font:600 13px / 1 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:700;line-height:.9}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:disabled{opacity:.45;cursor:not-allowed}button.primary,button.ghost,button.success,button.danger{border-radius:var(--radius);white-space:nowrap;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 20px;font-size:15px;font-weight:600;line-height:1;transition:background .12s,color .12s,box-shadow .12s;display:inline-flex}button.primary{background:var(--primary);color:var(--on-primary)}button.ghost{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}button.success{background:var(--success);color:#fff}button.danger{background:var(--danger);color:#fff}@media (hover:hover){button.primary:not(:disabled):hover{background:var(--hi);color:var(--on-hi);box-shadow:inset 0 0 0 1.5px var(--ink)}button.ghost:not(:disabled):hover{background:var(--sunk)}button.success:not(:disabled):hover,button.danger:not(:disabled):hover{filter:brightness(1.08)}}button:not(:disabled):active{transform:translateY(1px)}button.small{min-height:34px;padding:0 14px;font-size:13px}button.link{color:var(--muted);text-underline-offset:3px;padding:8px 0;text-decoration:underline;text-decoration-thickness:1.5px}button.link:hover{color:var(--ink)}@media (pointer:coarse){button.small{min-height:40px}button.link{min-height:44px}}input,textarea,select{font:inherit;color:var(--text);background:var(--surface);border:1.5px solid var(--ink);border-radius:var(--radius)}input:not([type=checkbox]):not([type=radio]):not([type=file]),select{min-height:46px;padding:0 14px}textarea{padding:12px 14px}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px var(--hi);outline:none}::placeholder{color:var(--faint);opacity:1}@media (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),textarea,select{font-size:16px!important}}.panel{--panel-pad:24px;background:var(--surface);border:1px solid var(--border);padding:var(--panel-pad)}.panel>h2:first-child{border-bottom:2px solid var(--rule);margin-bottom:18px;padding-bottom:10px}.quiz-feedback p+p{margin-top:.6em}@media (width<=640px){.panel{--panel-pad:18px}}mark{background:linear-gradient(transparent 58%, var(--hi) 58%);color:inherit;-webkit-box-decoration-break:clone;box-decoration-break:clone}.topic-tag,.quiz-topic-tag,.flashcard-row-topic{background:var(--hi);color:var(--on-hi);font:600 12px / 1 var(--font-display);letter-spacing:.09em;text-transform:uppercase;border-radius:2px;padding:5px 8px 4px;display:inline-block}.difficulty-dots{gap:3px;display:inline-flex}.difficulty-dots .dot{background:var(--border);width:7px;height:7px;display:inline-block}.difficulty-dots .dot.filled{background:var(--ink)}.segmented{border:1.5px solid var(--ink);border-radius:var(--radius);display:inline-flex}.segmented button{min-height:34px;color:var(--ink);padding:0 14px;font-size:13px;font-weight:600}.segmented button+button{border-left:1.5px solid var(--ink)}.segmented button.active{background:var(--ink);color:var(--surface)}@media (pointer:coarse){.segmented button{min-height:42px}}.progress{margin-top:16px}.progress-bar{border:1.5px solid var(--ink);background:var(--surface);height:10px;overflow:hidden}.progress-bar-fill{background:var(--hi);height:100%;transition:width .2s}.spinner{border:2.5px solid var(--border);border-top-color:var(--ink);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.spinner-tiny{vertical-align:-2px;border-width:2px;width:12px;height:12px;margin-right:4px}@keyframes spin{to{transform:rotate(360deg)}}.decks-loading{color:var(--muted);align-items:center;gap:10px;padding:20px 0;display:flex}.error{color:var(--danger);font-size:14px;font-weight:600}.warning{background:var(--hi-soft);border-left:4px solid var(--hi);margin-top:12px;padding:10px 14px;font-size:13px}.deck-load-error{background:var(--danger-bg);border-left:4px solid var(--danger);justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;font-size:13px;font-weight:600;display:flex}.deck-load-error button{flex-shrink:0}@media (prefers-reduced-motion:no-preference){.stagger-in>*{animation:.22s ease-out both page-in}}@keyframes page-in{0%{opacity:0}to{opacity:1}}.brand{color:var(--ink);font:800 26px / 1 var(--font-display);text-transform:uppercase;letter-spacing:.01em;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--mark-bg);width:26px;height:26px;color:var(--mark-fg);flex-shrink:0;display:inline-block}.brand-mark svg{width:100%;height:100%;display:block}.brand-name b{background:var(--hi);color:var(--on-hi);margin-left:1px;padding:0 4px;font-weight:800}.app-shell{flex-direction:column;min-height:100dvh;display:flex}.app-topbar{z-index:50;background:var(--surface);border-bottom:2px solid var(--rule);position:sticky;top:0}.app-topbar-inner{max-width:1240px;height:60px;padding:0 var(--gutter);align-items:stretch;gap:28px;margin:0 auto;display:flex}.app-topbar .brand{align-self:center}.app-nav{align-items:stretch;gap:2px;display:flex}.app-nav-item{font:600 16px / 1 var(--font-display);letter-spacing:.09em;text-transform:uppercase;color:var(--ink);align-items:center;padding:0 14px;display:inline-flex}@media (hover:hover){.app-nav-item:not(.active):hover{background:var(--sunk)}}.app-nav-item.active{background:var(--hi);color:var(--on-hi)}.app-topbar-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.palette-trigger{border:1.5px solid var(--border);border-radius:var(--radius);height:36px;color:var(--muted);align-items:center;gap:10px;padding:0 8px 0 12px;font-size:13px;display:inline-flex}@media (hover:hover){.palette-trigger:hover{border-color:var(--ink);color:var(--ink)}}.account-menu{position:relative}.account-button{background:var(--ink);width:36px;height:36px;color:var(--surface);font:700 17px / 1 var(--font-display)}.account-popover{z-index:60;background:var(--surface);border:1.5px solid var(--ink);width:288px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 18px 44px -12px #00000059}.account-who,.account-theme{border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;display:flex}.account-email{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:600;overflow:hidden}.account-item{text-align:left;border-bottom:1px solid var(--border);align-items:center;width:100%;min-height:46px;padding:0 16px;font-weight:600;display:flex}.account-item:last-child{border-bottom:0}@media (hover:hover){.account-item:hover{background:var(--hi);color:var(--on-hi)}}.account-signout{color:var(--danger)}.app-shell-content{width:100%;max-width:1240px;padding:36px var(--gutter) 80px;flex-direction:column;flex:1;gap:28px;min-width:0;margin:0 auto;display:flex}.app-shell-content>.quiz-layout{max-width:none}.page-head{border-bottom:2px solid var(--rule);justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:16px;display:flex}.page-head>div{flex-direction:column;gap:10px;min-width:0;display:flex}.page-head p:not(.eyebrow){color:var(--muted);max-width:62ch}.app-tabbar{display:none}@media (width<=899px){.app-nav{display:none}.app-topbar-inner{height:56px}.palette-trigger{justify-content:center;width:36px;padding:0}.palette-trigger-label{display:none}.app-shell-content{padding-top:24px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.app-tabbar{z-index:50;background:var(--surface);border-top:2px solid var(--rule);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.app-tabbar button{min-height:58px;font:600 14px / 1 var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--ink);padding:0 2px}.app-tabbar button.active{background:var(--hi);color:var(--on-hi)}.app-tabbar button+button{border-left:1px solid var(--border)}}@media (width<=380px){.app-tabbar button{letter-spacing:.04em;font-size:12.5px}}.palette-backdrop{z-index:400;background:var(--scrim);justify-content:center;align-items:flex-start;padding:12vh 16px 16px;display:flex;position:fixed;inset:0}.palette{background:var(--surface);border:2px solid var(--ink);flex-direction:column;width:min(640px,100%);max-height:min(72vh,580px);display:flex;box-shadow:0 30px 80px -20px #00000080}.palette-input{border:0!important;border-bottom:2px solid var(--ink)!important;min-height:60px!important;box-shadow:none!important;border-radius:0!important;padding:0 20px!important;font-size:18px!important}.palette-list{overscroll-behavior:contain;flex:1;min-height:0;margin:0;padding:6px 0;list-style:none;overflow-y:auto}.palette-heading{padding:12px 20px 6px}.palette-item{text-align:left;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:46px;padding:0 20px;font-weight:500;display:flex}.palette-item[aria-selected=true]{background:var(--hi);color:var(--on-hi)}.palette-item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.palette-item-group{font:600 12px / 1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;opacity:.6;flex-shrink:0}.palette-empty{color:var(--muted);padding:24px 20px}.palette-foot{border-top:1px solid var(--border);color:var(--muted);gap:18px;padding:10px 20px;font-size:12px;display:flex}.palette-foot kbd{min-width:20px;height:20px;font-size:10px}@media (width<=640px){.palette-backdrop{padding-top:8vh}}.section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.panel-head{border-bottom:2px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;padding-bottom:10px;display:flex}.panel-head>p{padding-top:3px}.auth-loading{min-height:100vh;color:var(--muted);justify-content:center;align-items:center;display:flex}.error-boundary-actions{gap:10px;margin-top:16px;display:flex}.home{flex-direction:column;gap:28px;display:flex}.home-top,.home-mid,.home-bottom{gap:24px;min-width:0;display:grid}.home-top{grid-template-columns:minmax(280px,5fr) 7fr;align-items:stretch}.home-mid{grid-template-columns:7fr 5fr;align-items:start}.home-bottom{grid-template-columns:5fr 7fr;align-items:stretch}.home-bottom>:only-child{grid-column:1/-1}@media (width<=899px){.home-top,.home-mid,.home-bottom{grid-template-columns:1fr}}.plan-badge{border:1.5px solid var(--ink);height:32px;font:600 13px / 1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;align-items:center;gap:8px;padding:0 12px;display:inline-flex}@media (hover:hover){.plan-badge:hover{background:var(--hi);color:var(--on-hi)}}.plan-badge-dot{background:var(--faint);width:8px;height:8px}.plan-badge-dot.pro{background:var(--hi);outline:1.5px solid var(--ink)}.due-now{border-top:4px solid var(--ink);flex-direction:column;align-items:flex-start;gap:14px;display:flex}.due-count{letter-spacing:-.02em;font-size:clamp(96px,13vw,140px)}.due-count mark{background:linear-gradient(transparent 62%, var(--hi) 62%);padding:0 .06em}.due-now button.primary{text-align:left;white-space:normal;max-width:100%;height:auto;min-height:44px;padding-block:12px;line-height:1.25}.due-caption{color:var(--muted);font-size:15px}.due-zero{font:800 clamp(40px, 5vw, 56px) / .95 var(--font-display);text-transform:uppercase}.activity-figures{gap:36px;margin:0 0 20px;display:flex}.activity-figures>div{flex-direction:column-reverse;gap:8px;display:flex}.activity-figures dd{margin:0;font-size:48px}.activity-figures dt{margin:0}.heatmap{grid-template-rows:repeat(7,1fr);grid-auto-flow:column;grid-template-columns:repeat(var(--weeks,17), 1fr);gap:4px;max-width:580px;display:grid}.heat{aspect-ratio:1;background:var(--heat-0);display:block}.heat[data-level="1"]{background:var(--heat-1)}.heat[data-level="2"]{background:var(--heat-2)}.heat[data-level="3"]{background:var(--heat-3)}.heat[data-level="4"]{background:var(--heat-4)}.heat[data-future]{background:0 0}.heat[data-today]{outline:2px solid var(--ink);outline-offset:1px}.heat-legend{max-width:580px;color:var(--muted);justify-content:flex-end;align-items:center;gap:4px;margin-top:12px;font-size:11px;display:flex}.heat-legend .heat{width:12px;margin-inline:0}.heat-legend span:first-child{margin-right:4px}.heat-legend span:last-child{margin-left:4px}.stats-main{align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.stats-pct{font-size:76px}.stats-pct small{margin-left:2px;font-size:.5em}.stats-bar{border:1.5px solid var(--ink);background:var(--surface);height:12px;margin-bottom:18px;display:flex}.stats-bar .ok{background:var(--success)}.stats-bar .bad{background:var(--danger)}.stats-list{grid-template-columns:1fr 1fr;gap:0 24px;margin:0;display:grid}.stats-list>div{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.stats-list dt{color:var(--muted)}.stats-list dd{font-variant-numeric:tabular-nums;margin:0;font-weight:700}.random-card{flex-direction:column;display:flex}.random-card-flip{border:1.5px solid var(--ink);background:var(--bg);text-align:left;white-space:normal;flex-direction:column;flex:1;align-items:flex-start;gap:12px;min-height:150px;padding:20px;display:flex}.random-card-flip.is-answer{background:var(--card-back);color:var(--card-back-text)}.random-card-flip .eyebrow{color:inherit;opacity:.65}.random-card-text{overflow-wrap:anywhere;font-size:17px;line-height:1.4}.random-card-hint{opacity:.6;margin-top:auto;font-size:12px}.home-chat{flex-direction:column;min-width:0;min-height:380px;display:flex}.home-chat .chat-panel{flex:1;min-height:0}.chat-panel{flex-direction:column;gap:12px;min-width:0;display:flex}.chat-messages{flex-direction:column;flex:1;gap:10px;min-width:0;min-height:160px;max-height:340px;display:flex;overflow-y:auto}.chat-empty{text-align:center;max-width:320px;margin:auto}.chat-bubble{white-space:pre-wrap;overflow-wrap:anywhere;max-width:85%;padding:10px 14px;font-size:14px;line-height:1.5}.chat-bubble.user{background:var(--ink);color:var(--surface);align-self:flex-end}.chat-bubble.assistant{background:var(--sunk);align-self:flex-start}.chat-thinking{color:var(--muted);align-items:center;gap:8px;display:flex}.chat-thinking .spinner-tiny{margin-right:0}.chat-error{margin:0}.chat-input-row{align-items:flex-end;gap:8px;display:flex}.chat-input{resize:none;flex:1;min-width:0;min-height:46px;max-height:120px;line-height:1.4}.chat-overlay-backdrop{z-index:190;background:var(--scrim);position:fixed;inset:0}.home-chat.expanded{z-index:200;border:2px solid var(--ink);width:min(720px,92vw);height:min(680px,88dvh);position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 80px -20px #00000080}.home-chat.expanded .chat-messages{max-height:none}.ledger{background:var(--surface);border:1px solid var(--border);margin:0;padding:0;list-style:none}.panel .ledger{margin:0 calc(var(--panel-pad) * -1) calc(var(--panel-pad) * -1);border:0;border-top:1px solid var(--border)}.ledger-row{align-items:center;gap:16px;padding:16px 20px 16px 28px;display:flex;position:relative}.ledger-row+.ledger-row{border-top:1px solid var(--border)}.deck-chip{background:var(--m0);width:8px;position:absolute;top:0;bottom:0;left:0}.ledger-row[data-hue="1"] .deck-chip{background:var(--m1)}.ledger-row[data-hue="2"] .deck-chip{background:var(--m2)}.ledger-row[data-hue="3"] .deck-chip{background:var(--m3)}.ledger-row[data-hue="4"] .deck-chip{background:var(--m4)}.ledger-row[data-hue="5"] .deck-chip{background:var(--m5)}.ledger-main{flex:1;min-width:0}.ledger-main h3{overflow-wrap:anywhere}.ledger-main p{flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:2px;display:flex}.due-tag{background:var(--hi);color:var(--on-hi);font:600 12px / 1.1 var(--font-display);letter-spacing:.09em;text-transform:uppercase;padding:3px 7px 2px}.ledger-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:4px 10px;display:flex}.ledger-actions button.link{padding:0 4px}.delete-link:hover{color:var(--danger)}.ledger-row.is-busy{opacity:.55;pointer-events:none}@media (width<=720px){.ledger-row{flex-wrap:wrap}.ledger-actions{justify-content:flex-start;width:100%}}.upload-panel{flex-direction:column;align-items:flex-start;gap:16px;display:flex}.upload-panel .progress,.upload-panel .warning{width:100%}.dropzone{border:2px dashed var(--ink);background:var(--bg);text-align:center;cursor:pointer;flex-direction:column;justify-content:center;align-self:stretch;align-items:center;gap:8px;min-height:168px;padding:28px;transition:background .12s;display:flex}.dropzone input{display:none}@media (hover:hover){.dropzone:hover{background:var(--hi-soft)}}.dropzone.has-file{background:var(--surface);border-style:solid}.dropzone.is-dragging{background:var(--hi);color:var(--on-hi);border-style:solid}.dropzone-title{max-width:100%;font:700 clamp(24px, 3.4vw, 32px) / 1.05 var(--font-display);letter-spacing:.03em;text-transform:uppercase;overflow-wrap:anywhere}.dropzone-hint{color:var(--muted);font-size:13px}.dropzone.is-dragging .dropzone-hint{color:inherit}.deck-picker{flex-wrap:wrap;gap:8px;display:flex}.deck-picker-item{border:1.5px solid var(--ink);background:var(--surface);text-align:left;white-space:normal;overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:2px;max-width:100%;padding:10px 14px;display:flex}.deck-picker-name{font-weight:600}.deck-picker-count{color:var(--muted);font-size:12px}.deck-picker-item.active{background:var(--hi);color:var(--on-hi)}.deck-picker-item.active .deck-picker-count{color:inherit;opacity:.75}.flashcard-browser{flex-direction:column;gap:20px;display:flex}.flashcard-browser-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;display:flex}.flashcard-browser-header h3{overflow-wrap:anywhere}.flashcard-browser-actions{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.flashcard-table{background:var(--surface);border:1px solid var(--border)}.flashcard-row{padding:18px 20px}.flashcard-row+.flashcard-row{border-top:1px solid var(--border)}.flashcard-row-topic{margin-bottom:10px}.flashcard-row-q{margin:0 0 6px;font-weight:600}.flashcard-row-a{color:var(--muted);white-space:pre-wrap;font-size:14px}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:24px;display:grid}@media (width<=899px){.settings-grid{grid-template-columns:1fr}}.settings-stack{flex-direction:column;align-items:flex-start;gap:14px;display:flex}.settings-row{flex-direction:column;gap:4px;display:flex}.plan-name{font:800 30px / 1 var(--font-display);text-transform:uppercase}.plan-name mark{background:var(--hi);color:var(--on-hi);padding:0 6px}.usage-line{flex-direction:column;gap:6px;width:100%;display:flex}.usage-line-text{justify-content:space-between;gap:12px;display:flex}.usage-line-figure{font-variant-numeric:tabular-nums;font-weight:700}.shortcut-list{flex-direction:column;margin:0;display:flex}.shortcut-list>div{border-top:1px solid var(--border);align-items:center;gap:16px;padding:9px 0;display:flex}.shortcut-list dt{align-items:center;gap:4px;min-width:110px;display:flex}.shortcut-list dd{color:var(--muted);margin:0}.auth-page{grid-template-columns:minmax(340px,5fr) 6fr;min-height:100dvh;display:grid}.auth-aside{padding:32px var(--gutter);color:#f3f3ec;background:#0e0e0c;flex-direction:column;justify-content:space-between;gap:32px;display:flex}.auth-aside .brand{color:#f3f3ec}.auth-aside .brand-mark{background:var(--hi);color:#0e0e0c}.auth-aside h1{white-space:nowrap;font-size:clamp(48px,5.4vw,88px);line-height:.92}.auth-aside-copy p{color:#b9b9b0;max-width:34ch;margin-top:22px;font-size:17px}.auth-aside-foot{font:600 13px / 1 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:#8c8c84}.auth-main{padding:40px var(--gutter);justify-content:center;align-items:center;display:flex}.auth-card{flex-direction:column;gap:20px;width:100%;max-width:400px;display:flex}.auth-card h2{letter-spacing:.03em;font-size:34px}.auth-form{flex-direction:column;gap:18px;display:flex}.auth-form label{flex-direction:column;gap:8px;display:flex}.auth-submit{width:100%}.auth-switch{color:var(--muted)}.auth-switch a,.warning a{color:var(--ink);font-weight:700}.auth-check-email{line-height:1.6}@media (width<=899px){.auth-page{grid-template-rows:auto 1fr;grid-template-columns:1fr}.auth-aside{gap:20px;padding-block:20px 28px}.auth-aside h1{font-size:52px}.auth-aside-copy p,.auth-aside-foot{display:none}.auth-main{align-items:flex-start;padding-top:32px}}.study-panel{flex-direction:column;gap:14px;width:100%;max-width:920px;margin-inline:auto;padding:24px;display:flex}.study-header{align-items:center;gap:14px;display:flex}.study-header h2{min-width:0;font:700 20px / 1.1 var(--font-display);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.study-count{font:700 24px / 1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.04em}.study-exit-top{display:none}.study-progress{background:var(--sunk);height:6px}.study-progress>div{background:var(--ink);height:100%;transition:width .2s}.flashcard{perspective:1400px;cursor:pointer;height:min(64dvh,560px);min-height:320px;margin:6px 0}.flashcard-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s cubic-bezier(.2,.7,.2,1);position:relative}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}@media (prefers-reduced-motion:reduce){.flashcard-inner{transition:none}}.flashcard-face{border:2px solid var(--ink);backface-visibility:hidden;flex-direction:column;justify-content:center;align-items:flex-start;gap:14px;padding:64px 44px 52px;display:flex;position:absolute;inset:0;overflow-y:auto}.flashcard-face.front{background:var(--surface)}.flashcard-face.back{background:var(--card-back);color:var(--card-back-text);justify-content:flex-start;transform:rotateY(180deg)}.flashcard-face p{font-size:20px;line-height:1.5}.flashcard-face.front p{letter-spacing:-.01em;font-size:clamp(22px,3vw,30px);font-weight:600;line-height:1.3}.flashcard-face .topic-tag{position:absolute;top:20px;left:24px}.flip-hint{color:var(--faint);font-size:12px;position:absolute;bottom:22px;left:44px}.touch-hint{display:none}@media (hover:none){.touch-hint{display:inline}}.card-label{background:var(--hi);color:var(--on-hi);padding:4px 8px 3px}.card-answer{white-space:pre-wrap}.card-table{border-collapse:collapse;width:100%;font-size:14px}.card-table th,.card-table td{text-align:left;border:1px solid #8080808c;padding:7px 10px}.card-table th{background:#80808033}.card-mnemonic{border-top:1px solid #8080808c;width:100%;padding-top:14px;font-size:15px!important}.card-mnemonic .eyebrow{color:inherit;opacity:.6;margin-bottom:4px;display:block}.slide-image-toggle{color:var(--muted);font-size:13px}.slide-image-toggle summary{cursor:pointer}.slide-image{border:1px solid var(--border);width:100%;margin-top:12px}.study-actions{flex-direction:column;align-items:center;gap:6px;display:flex}.answer-actions{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;display:flex}.answer-actions button{flex:160px;max-width:260px;min-height:52px}.study-show{min-width:220px;min-height:52px!important}button kbd{margin-left:2px}.study-done{align-items:flex-start;gap:14px}.study-done h2{font-size:clamp(40px,6vw,64px);line-height:.95}.quiz-layout{grid-template-columns:300px 1fr;align-items:start;gap:24px;width:100%;max-width:1100px;margin-inline:auto;display:grid}.quiz-topbar{display:none}.quiz-centered{justify-content:center;align-items:center;min-height:60vh;display:flex}.quiz-panel-narrow{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:440px;display:flex}.quiz-panel-narrow h2,.quiz-panel-narrow p{margin:0}.quiz-panel-narrow>h2:first-child{border:0;padding:0}.quiz-setup-panel{text-align:left;align-items:stretch;max-width:500px}.quiz-setup-options{flex-direction:column;gap:18px;margin:12px 0 20px;display:flex}.quiz-setup-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.quiz-setup-row strong{font-size:14px}.quiz-setup-row p{margin:2px 0 0}.quiz-generating-panel{width:100%;max-width:560px}.live-topic-feed{border-top:1px solid var(--border);max-height:320px;margin:20px 0 0;padding:0;list-style:none;overflow-y:auto}.live-topic-item{border-bottom:1px solid var(--border);animation:.25s topic-arrive}@keyframes topic-arrive{0%{opacity:0}to{opacity:1}}.live-topic-toggle{width:100%;color:var(--success);text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;font-weight:600;display:flex}.live-topic-toggle:disabled,.live-topic-item.errored .live-topic-toggle span:first-child{color:var(--danger);cursor:default;opacity:1}.live-topic-questions{flex-direction:column;gap:8px;margin:0 0 12px;padding:0 4px;list-style:none;display:flex}.live-topic-questions li{text-align:left;align-items:baseline;gap:10px;display:flex}.quiz-panel{padding:32px}.quiz-question-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.quiz-stem{margin:0 0 24px;font-size:21px;font-weight:500;line-height:1.45}.quiz-options{flex-direction:column;gap:10px;margin-bottom:22px;display:flex}.quiz-option{border:1.5px solid var(--ink);background:var(--surface);text-align:left;white-space:normal;align-items:flex-start;gap:14px;width:100%;padding:14px 16px;font-weight:500;line-height:1.4;display:flex}.quiz-key{width:28px;height:28px;font:700 16px / 1 var(--font-display);border:1.5px solid;flex:none;justify-content:center;align-items:center;margin-top:-2px;display:inline-flex}.quiz-option-text{overflow-wrap:anywhere;min-width:0;padding-top:1px}@media (hover:hover){.quiz-option:not(:disabled):hover{background:var(--hi-soft)}}.quiz-option.selected{background:var(--hi);color:var(--on-hi)}.quiz-option.selected .quiz-key{background:var(--ink);border-color:var(--ink);color:var(--surface)}.quiz-option:disabled{cursor:default;opacity:1}.quiz-option:disabled:not(.correct):not(.incorrect){opacity:.5}.quiz-option.correct{border-color:var(--success);background:var(--success-bg)}.quiz-option.correct .quiz-key{background:var(--success);border-color:var(--success);color:#fff}.quiz-option.incorrect{border-color:var(--danger);background:var(--danger-bg)}.quiz-option.incorrect .quiz-key{background:var(--danger);border-color:var(--danger);color:#fff}.quiz-feedback{border-left:6px solid var(--border);margin-bottom:22px;padding:16px 18px;font-size:14px;line-height:1.55}.quiz-feedback.correct{border-color:var(--success);background:var(--success-bg)}.quiz-feedback.incorrect{border-color:var(--danger);background:var(--danger-bg)}.quiz-feedback-verdict{margin:0 0 6px;font-weight:700}.quiz-skip{flex-wrap:wrap;gap:2px 22px;margin-top:12px;display:flex}.quiz-sidebar{flex-direction:column;gap:4px;max-height:calc(100vh - 108px);display:flex;position:sticky;top:84px;overflow-y:auto}.sidebar-minimize-toggle{border:1.5px solid var(--ink);align-self:flex-end;width:28px;height:28px;font-size:14px;line-height:1}.quiz-sidebar.minimized{align-items:center;width:60px;padding:20px 8px}.quiz-stats-mini{flex-direction:column;align-items:center;gap:10px;margin-top:8px;display:flex}.quiz-stats-bar{border-bottom:1px solid var(--border);justify-content:space-between;gap:8px;margin-bottom:4px;padding-bottom:16px;display:flex}.quiz-stat{flex-direction:column;flex:1;align-items:center;gap:2px;display:flex}.quiz-stat-value{font:700 34px / 1 var(--font-display);font-variant-numeric:tabular-nums}.quiz-stat-value.correct{color:var(--success)}.quiz-stat-value.wrong{color:var(--danger)}.quiz-bg-generating{align-items:center;padding:6px 2px;display:flex}.quiz-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 0;display:flex}.toolbar-btn{border:1.5px solid var(--ink);min-height:32px;padding:0 12px;font-size:12px;font-weight:600}.toolbar-btn.active{background:var(--hi);color:var(--on-hi)}.quiz-difficulty-badge{border:1px solid var(--ink);font:600 12px / 1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;padding:5px 8px 4px}.locked-in-hint{padding:2px 0 8px;line-height:1.4}.locked-in-hint code{background:var(--sunk);font-family:var(--font-mono);padding:1px 5px;font-size:11px}.locked-in-bar{background:var(--ink);color:var(--surface);grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;display:flex}.locked-in-timer{flex-direction:column;gap:4px;display:flex}.locked-in-timer .eyebrow{color:inherit;opacity:.6}.locked-in-clock{font:600 26px / 1 var(--font-mono);letter-spacing:.02em}.locked-in-bar button.ghost{color:inherit;box-shadow:inset 0 0 0 1.5px}.locked-in-bar button.primary{background:var(--hi);color:var(--on-hi)}.locked-in-exit-form{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.locked-in-password-hint code{font-family:var(--font-mono);letter-spacing:.02em;background:#8080804d;padding:2px 6px}.locked-in-exit-form input{width:220px;color:inherit;font:12px var(--font-mono);background:0 0;border-color:currentColor;padding:0 10px;min-height:36px!important}.locked-in-exit-form .error{color:var(--danger)}.sidebar-section{border-bottom:1px solid var(--border);padding:8px 0}.sidebar-section:last-child{border-bottom:0}.sidebar-section-header{width:100%;font:700 14px / 1 var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);justify-content:space-between;align-items:center;padding:6px 2px;display:flex}.sidebar-section-body{flex-direction:column;align-items:flex-start;gap:8px;padding:8px 2px 4px;display:flex}.topic-tree{flex-direction:column;gap:2px;margin:6px 0 0;padding:0;list-style:none;display:flex}.topic-tree-toggle{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px;font-size:13px;display:flex}@media (hover:hover){.topic-tree-toggle:not(.active):hover,.question-tree-select:hover{background:var(--sunk)}}.topic-tree-toggle.active{background:var(--hi);color:var(--on-hi)}.topic-tree-toggle.mastered{color:var(--success);font-weight:600}.topic-tree-toggle.mastered.active{color:var(--on-hi)}.topic-tree-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.topic-progress{font-family:var(--font-mono);flex-shrink:0}.question-tree-list{border-left:2px solid var(--ink);flex-direction:column;gap:4px;margin:2px 0 6px;padding:0 0 0 12px;list-style:none;display:flex}.question-tree-item{font-size:12px;line-height:1.4}.question-tree-select{width:100%;color:var(--muted);text-align:left;align-items:flex-start;gap:8px;padding:5px 8px;font-size:12px;line-height:1.4;display:flex}.question-tree-select .difficulty-dots{flex-shrink:0;margin-left:auto}.question-tree-select .difficulty-dots .dot{width:5px;height:5px}.question-tree-item.active .question-tree-select{background:var(--hi-soft);color:var(--text)}.question-status-icon{flex-shrink:0;font-weight:700}.question-status-icon.correct{color:var(--success)}.question-status-icon.wrong{color:var(--danger)}.question-status-icon.unattempted{color:var(--border)}@media (width<=720px){.quiz-layout{grid-template-columns:1fr}.quiz-panel{padding:22px}}html.study-locked,html.study-locked body{overscroll-behavior:none;overflow:hidden}.anatomy-study{top:var(--vv-top,0px);z-index:300;width:100%;height:var(--vv-height,100vh);height:var(--vv-height,100dvh);background:var(--bg);overscroll-behavior:contain;touch-action:manipulation;-webkit-tap-highlight-color:transparent;flex-direction:column;display:flex;position:fixed;left:0}.anatomy-bar{min-height:60px;padding:8px max(16px, env(safe-area-inset-right)) 8px max(16px, env(safe-area-inset-left));padding-top:max(8px, env(safe-area-inset-top));background:var(--surface);border-bottom:2px solid var(--rule);flex-shrink:0;align-items:center;gap:14px;display:flex}.anatomy-exit{flex-shrink:0;min-height:44px;padding:0 18px}.anatomy-title{min-width:0;font:700 20px / 1.1 var(--font-display);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.anatomy-score{font:700 22px / 1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.04em;flex-shrink:0;align-items:baseline;gap:16px;display:flex}.anatomy-score-right{color:var(--success)}.anatomy-score-wrong{color:var(--danger)}.anatomy-progress{background:var(--sunk);flex-shrink:0;height:6px}.anatomy-progress>div{background:var(--ink);height:100%;transition:width .25s}.anatomy-body{flex-direction:column;flex:1;min-height:0;display:flex}.anatomy-stage{flex:1;justify-content:center;align-items:center;min-width:0;min-height:0;padding:16px;display:flex}.anatomy-controls{padding:14px max(20px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));background:var(--surface);border-top:2px solid var(--rule);flex-shrink:0}@media (width>=900px) and (aspect-ratio>=5/4){.anatomy-body{flex-direction:row}.anatomy-stage{padding:24px}.anatomy-controls{border-top:0;border-left:2px solid var(--rule);flex-direction:column;justify-content:center;width:clamp(320px,30vw,440px);padding:28px;display:flex}}.occlusion-wrap{border:1.5px solid var(--ink);background:#fff;flex-shrink:0;position:relative;overflow:hidden}.occlusion-image{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;position:absolute}.occlusion-box{background:#0e0e0c;position:absolute}.occlusion-ring{pointer-events:none;border:3px solid #0e0e0c;position:absolute;box-shadow:0 0 0 3px #ffe14a}.anatomy-answer{flex-direction:column;gap:8px;display:flex}.anatomy-answer-row{gap:12px;display:flex}.anatomy-input{flex:1;min-width:0;font-size:18px;min-height:54px!important}.anatomy-cta{min-height:54px!important;padding:0 28px!important;font-size:16px!important}.anatomy-reveal{align-items:center;gap:20px;display:flex}.anatomy-compare{flex:1;grid-template-columns:1fr 1fr;gap:16px;min-width:0;display:grid}.anatomy-compare p{overflow-wrap:anywhere;margin:4px 0 0}.anatomy-guess{color:var(--muted);font-size:18px;font-style:italic}.anatomy-correct{font:800 28px / 1.05 var(--font-display);letter-spacing:.01em;text-transform:uppercase}.anatomy-grade{flex-shrink:0;gap:12px;display:flex}@media (width>=900px) and (aspect-ratio>=5/4){.anatomy-answer-row{flex-direction:column}.anatomy-reveal{flex-direction:column;align-items:stretch;gap:24px}.anatomy-compare{grid-template-columns:1fr}.anatomy-correct{font-size:34px}.anatomy-grade .anatomy-cta{flex:1}}@media (width<=640px){.anatomy-reveal{flex-direction:column;align-items:stretch;gap:14px}.anatomy-grade .anatomy-cta{flex:1}.anatomy-title{display:none}.anatomy-score{margin-left:auto}}.anatomy-center{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.anatomy-done{flex-direction:column;align-items:flex-start;gap:14px;max-width:480px;display:flex}@media (pointer:coarse),(width<=1100px){.app-shell-content>.study-panel,.app-shell-content>.quiz-layout{z-index:300;background:var(--bg);overscroll-behavior:contain;touch-action:manipulation;border:0;width:auto;max-width:none;margin:0;position:fixed;inset:0;overflow-y:auto}.app-shell-content>.study-panel{padding:max(16px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));flex-direction:column;gap:12px;display:flex}.study-panel>*{flex-shrink:0;width:100%;max-width:1100px;margin-inline:auto}.study-panel .study-header{gap:14px}.study-panel .study-exit-top{align-items:center;gap:6px;min-height:44px;padding:0 18px;display:inline-flex}.study-panel .flashcard{flex:auto;height:auto;min-height:280px;margin:4px auto}.study-panel .flashcard-face{padding:64px 32px 52px}.study-panel .flashcard-face p{font-size:clamp(20px,2.6vw,28px)}.study-panel .slide-image{object-fit:contain;max-height:55vh}.study-exit-bottom{display:none}.study-panel .answer-actions button{flex:1;max-width:none;min-height:54px;font-size:16px}.study-show{min-width:min(360px,100%);min-height:54px!important;font-size:16px!important}.study-done{justify-content:center;align-items:flex-start}.app-shell-content>.quiz-layout{padding:0 max(16px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;align-items:center;gap:16px;display:flex}.quiz-layout>*{flex-shrink:0;width:100%;max-width:880px}.quiz-layout .quiz-topbar{z-index:2;max-width:none;padding:max(10px, env(safe-area-inset-top)) 0 10px;background:var(--bg);border-bottom:2px solid var(--rule);align-items:center;gap:14px;display:flex;position:sticky;top:0}.quiz-topbar>button{flex-shrink:0;min-height:44px;padding:0 18px}.quiz-topbar-title{min-width:0;font:700 19px / 1.1 var(--font-display);letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;flex:1;overflow:hidden}.quiz-topbar-stats{font:700 22px / 1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:.04em;gap:14px;display:flex}.quiz-topbar-correct{color:var(--success)}.quiz-topbar-wrong{color:var(--danger)}.quiz-layout .quiz-panel{order:1;padding:28px}.quiz-layout .quiz-sidebar{order:2;max-height:none;position:static;overflow:visible}.quiz-layout .quiz-sidebar.minimized{align-items:stretch;width:100%;padding:20px 28px}.quiz-layout .quiz-stats-mini{flex-direction:row;justify-content:center;gap:24px}.quiz-layout .locked-in-bar{order:0;max-width:none;margin-top:12px}.quiz-stem{font-size:22px}.quiz-option{padding:16px 18px;font-size:17px}.quiz-panel .primary{width:100%;min-height:54px;font-size:16px}.quiz-panel button.link.quiz-exit{display:none}}@media (pointer:coarse){.toolbar-btn{min-height:40px;padding:0 14px}.sidebar-minimize-toggle{width:40px;height:40px}}.difficulty-block{border-bottom:1px solid var(--border);flex-direction:column;align-items:flex-start;gap:6px;padding:12px 0;display:flex}.difficulty-switch{border:1.5px solid var(--ink);grid-template-columns:1fr 1fr;width:100%;display:grid}.difficulty-option{text-align:left;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 12px;display:flex}.difficulty-option+.difficulty-option{border-left:1.5px solid var(--ink)}@media (hover:hover){.difficulty-option:not(:disabled):not(.active):hover{background:var(--sunk)}}.difficulty-option.active{background:var(--hi);color:var(--on-hi)}.difficulty-option-name{font:700 17px / 1 var(--font-display);letter-spacing:.08em;text-transform:uppercase}.difficulty-option-meta{font:500 11px / 1.2 var(--font-mono);color:var(--muted)}.difficulty-option.active .difficulty-option-meta{color:inherit;opacity:.8}.confirm-box{background:var(--hi-soft);border-left:4px solid var(--hi);flex-direction:column;gap:8px;margin:8px 0;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.confirm-actions{align-items:center;gap:14px;display:flex}.undo-bar{background:var(--sunk);border-left:4px solid var(--ink);justify-content:space-between;align-items:center;gap:12px;margin:-4px 0 18px;padding:10px 14px;font-size:14px;display:flex}.undo-bar button.link{color:var(--ink);padding:0;font-weight:700}.topic-tree-skipped,.question-tree-omitted{color:var(--muted);justify-content:space-between;align-items:baseline;gap:8px;padding:6px 8px;display:flex}.topic-tree-item.skipped .topic-tree-name,.question-tree-omitted .question-tree-stem{text-decoration:line-through;text-decoration-thickness:1px}.question-tree-omitted .question-tree-stem{flex:1;min-width:0;font-size:12px}.topic-tree-skipped button.link,.question-tree-omitted button.link{flex-shrink:0;padding:0}.memory-aid{border-top:1px solid;margin-top:14px;padding-top:12px}.memory-aid summary{cursor:pointer;font-weight:700}.memory-aid .eyebrow{color:inherit;opacity:.75}.memory-aid-text{margin:4px 0 0;line-height:1.5}.memory-aid.open .memory-aid-text{font-size:15px}.quiz-summary{flex-direction:column;gap:20px;display:flex}.quiz-summary h3{font:700 14px / 1 var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.quiz-summary h2{font-size:clamp(30px,4vw,44px);line-height:.95}.summary-score{align-items:baseline;gap:14px;display:flex}.summary-percent{font:800 clamp(64px, 9vw, 96px) / .85 var(--font-display);background:linear-gradient(transparent 62%, var(--hi) 62%)}.summary-block{flex-direction:column;gap:10px;display:flex}.summary-list,.summary-plan{margin:0;padding:0;list-style:none}.summary-list li{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:9px 0;display:flex}.summary-plan{counter-reset:step}.summary-plan li{padding:6px 0 6px 34px;line-height:1.5;position:relative}.summary-plan li:before{counter-increment:step;content:counter(step);background:var(--ink);width:24px;height:24px;color:var(--surface);font:700 15px / 24px var(--font-display);text-align:center;position:absolute;top:5px;left:0}.summary-weak{background:var(--danger-bg);border-left:4px solid var(--danger);padding:12px 14px}.summary-weak+.summary-weak{margin-top:4px}.summary-weak-title{justify-content:space-between;gap:12px;margin-bottom:6px;display:flex}.summary-missed{border-top:1px solid var(--border);padding:8px 0;font-size:14px;line-height:1.5}.summary-missed .memory-aid-text{margin-top:6px}.summary-actions{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}@media (pointer:coarse),(width<=1100px){.quiz-summary .summary-actions .primary{width:auto}}.landing{min-height:100dvh}.landing-nav{z-index:40;background:var(--surface);border-bottom:2px solid var(--rule);position:sticky;top:0}.landing-nav-inner,.landing-footer-inner,.hero,.l-section{max-width:1240px;padding-inline:var(--gutter);margin:0 auto}.landing-nav-inner{align-items:center;gap:32px;height:64px;display:flex}.landing-links{gap:4px;margin-left:8px;display:flex}.landing-links a{color:var(--ink);font:600 16px / 1 var(--font-display);letter-spacing:.09em;text-transform:uppercase;padding:8px 12px;text-decoration:none}@media (hover:hover){.landing-links a:hover{background:var(--hi);color:var(--on-hi)}}.landing-nav-actions{align-items:center;gap:18px;margin-left:auto;display:flex}.landing-signin{font-weight:600}.btn{border-radius:var(--radius);white-space:nowrap;justify-content:center;align-items:center;min-height:46px;padding:0 22px;font-size:15px;font-weight:600;line-height:1;text-decoration:none;transition:background .12s,color .12s;display:inline-flex}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}@media (hover:hover){.btn-primary:hover{background:var(--hi);color:var(--on-hi);box-shadow:inset 0 0 0 1.5px var(--ink)}.btn-ghost:hover{background:var(--sunk)}}.hero{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;padding-block:72px 88px;display:grid}.hero-copy{flex-direction:column;align-items:flex-start;gap:22px;display:flex}.hero h1{white-space:nowrap;font-size:clamp(52px,7vw,96px);line-height:.92}.hero-sub{max-width:46ch;color:var(--muted);font-size:18px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-note{color:var(--muted);font-size:13px}.demo{background:var(--surface);border:2px solid var(--ink)}.demo-bar{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;min-height:44px;padding:0 16px;display:flex}.demo-stage{justify-content:center;align-items:center;min-height:320px;padding:24px;display:flex}.demo-center{text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;display:flex}.demo-file{border:1.5px solid var(--ink);align-items:center;gap:10px;padding:10px 14px;font-weight:600;display:inline-flex}.demo-file b{background:var(--hi);color:var(--on-hi);font:700 12px / 1 var(--font-display);letter-spacing:.08em;padding:3px 6px 2px}.demo-progress{width:min(280px,100%);margin:0}.demo-ready{flex-direction:column;gap:14px;width:100%;display:flex}.demo-card{border:2px solid var(--ink);background:var(--surface);text-align:left;flex-direction:column;justify-content:center;gap:14px;min-height:250px;padding:56px 28px 44px;display:flex;position:relative}.demo-card.is-answer{background:var(--card-back);color:var(--card-back-text)}.demo-card .topic-tag{position:absolute;top:16px;left:20px}.demo-card-text{font-size:21px;font-weight:600;line-height:1.35}.demo-card.is-answer .demo-card-text{font-size:17px;font-weight:400;line-height:1.5}.demo-card-hint{opacity:.6;font-size:12px;position:absolute;bottom:14px;left:28px}.demo-actions{align-items:center;gap:12px;min-height:34px;display:flex}.demo-note{color:var(--muted);font-size:13px}.l-section{background:linear-gradient(var(--rule), var(--rule)) center top / calc(100% - var(--gutter) * 2) 2px no-repeat;padding-block:64px}.l-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:32px;display:flex}.l-head h2{letter-spacing:.03em;font-size:clamp(34px,5vw,52px);line-height:.95}.steps{grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;list-style:none;display:grid}.steps li{border-left:1.5px solid var(--border);flex-direction:column;gap:10px;padding:0 28px 4px;display:flex}.steps li:first-child{border-left:0;padding-left:0}.step-num{font-size:88px;line-height:.8}.steps h3{font:700 26px / 1 var(--font-display);letter-spacing:.05em;text-transform:uppercase}.sample-question{max-width:820px}.spec{margin:0}.spec>div{border-top:1px solid var(--border);grid-template-columns:minmax(150px,1fr) 3fr;gap:8px 32px;padding:18px 0;display:grid}.spec>div:last-child{border-bottom:1px solid var(--border)}.spec dt{font:700 24px / 1.05 var(--font-display);letter-spacing:.05em;text-transform:uppercase}.spec dd{max-width:62ch;color:var(--muted);margin:0;font-size:16px}.plans{border-collapse:collapse;width:100%;max-width:760px}.plans th,.plans td{border-top:1px solid var(--border);text-align:left;font-variant-numeric:tabular-nums;padding:16px 20px}.plans thead th,.plans thead td{border-top:0;padding-bottom:10px}.plans thead th{font:800 34px / 1 var(--font-display);letter-spacing:.04em;text-transform:uppercase}.plans tbody th{color:var(--muted);font-weight:500}.plans-pro{background:var(--hi-soft)}.plans thead .plans-pro{background:var(--hi);color:var(--on-hi)}.plans-cta td{border-top:1.5px solid var(--ink);padding-block:20px 0}.plans-cta .plans-pro{padding-bottom:20px}.plans-note{margin-top:14px}.landing-footer{border-top:2px solid var(--rule);padding-block:32px 40px}.landing-footer-inner{justify-content:space-between;align-items:center;gap:16px;display:flex}@media (width<=899px){.landing-links{display:none}.landing-nav-inner{height:58px}.hero{grid-template-columns:1fr;gap:40px;padding-block:40px 56px}.l-section{padding-block:48px}.steps{grid-template-columns:1fr;gap:28px}.steps li,.steps li:first-child{border-left:0;padding:0}.spec>div{grid-template-columns:1fr;gap:4px}}@media (width<=480px){.landing-signin{display:none}.plans th,.plans td{padding-inline:10px}.plans thead th{font-size:26px}}
