@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-400.v1.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Sans;src:url(/fonts/ibm-plex-sans-600.v1.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:"IBM Plex Serif";src:url(/fonts/ibm-plex-serif-400.v1.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400.v1.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:light dark;--bg: #f1efe9;--surface: #ffffff;--surface-sunk: #e6e3db;--ink: #17160f;--ink-soft: #55524a;--ink-faint: #7c7669;--line: #dbd7cd;--line-strong: #c3beb1;--accent: #1f4b3f;--accent-strong: #16362d;--accent-soft: #e2ebe6;--wrong: #8c2f24;--wrong-soft: #f6e8e5;--font-display: "IBM Plex Sans", "Söhne", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-read: "IBM Plex Serif", Georgia, "Iowan Old Style", "Palatino Linotype", serif;--font-ui: "IBM Plex Sans", "Söhne", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-xs: .8125rem;--text-sm: .9375rem;--text-base: 1.0625rem;--text-lg: 1.25rem;--text-xl: 1.4rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--tracking-display: -.018em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--radius: 3px;--radius-pill: 999px;--tap: 44px;--measure: 42rem;--measure-wide: 68rem;--rail: 20rem;--shadow: 0 1px 2px rgb(23 22 15 / 4%), 0 2px 8px rgb(23 22 15 / 4%);--motion-fast: 90ms;--motion: .14s}@media (prefers-color-scheme: dark){:root{--bg: #13130f;--surface: #21211a;--surface-sunk: #0c0c09;--ink: #f1eee5;--ink-soft: #aca79c;--ink-faint: #7a7468;--line: #37362e;--line-strong: #4f4d43;--accent: #7fbfa4;--accent-strong: #9ed3bd;--accent-soft: #1d2b25;--wrong: #e08b80;--wrong-soft: #2e1e1c;--shadow: 0 1px 2px rgb(0 0 0 / 32%), 0 2px 8px rgb(0 0 0 / 24%)}}@media (prefers-reduced-motion: reduce){:root{--motion-fast: 0ms;--motion: 0ms}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-wrap:anywhere}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;color:inherit}code,kbd,samp{font-family:var(--font-mono);font-size:.95em}.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}.app-shell,.gate-screen{max-width:var(--measure);margin:0 auto;padding:var(--space-5) var(--space-4) calc(var(--space-7) + env(safe-area-inset-bottom,0px))}.app-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-6);padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);text-decoration:none;color:var(--ink)}.brand .logo{display:block;flex:none}.brand-name{font-family:var(--font-read);font-size:var(--text-lg);letter-spacing:-.01em}.brand-name b{font-weight:400;color:var(--accent)}.app-main{display:block}.app-footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-5);margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid var(--line);font-size:var(--text-sm)}.app-footer a{color:var(--ink-soft);text-decoration:none;min-height:var(--tap);display:inline-flex;align-items:center}.app-footer a:hover{color:var(--ink);text-decoration:underline}.app-legal{order:0}.app-disclaimer{flex:1 1 100%;margin:0;color:var(--ink-soft);font-size:var(--text-sm);line-height:1.4}.app-credit{flex:1 1 100%;color:var(--ink-soft);font-size:var(--text-sm);line-height:1.4;margin-top:calc(-1 * var(--space-4))}.app-credit a{min-height:0;display:inline;padding:var(--space-2) 0;color:inherit;text-decoration:underline}.app-nav{flex:1 1 auto;min-width:0}.app-nav-list{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.app-nav-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-2) 0;font-size:var(--text-sm);text-decoration:none;color:var(--ink-soft)}.app-nav-link:hover{color:var(--ink)}.app-nav-link-active{color:var(--ink);font-weight:600}.app-nav-label{white-space:nowrap}.app-nav-toggle{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:0 var(--space-2);background:none;border:0;color:var(--ink);font:inherit;font-size:var(--text-sm);cursor:pointer}.app-nav-toggle-label{white-space:nowrap}.app-menu{display:none;min-width:0}.app-menu-open{display:flex;flex-direction:column;gap:var(--space-4);flex-basis:100%;padding-top:var(--space-3);border-top:1px solid var(--line)}.app-nav-badge{color:var(--ink-soft);font-weight:400}.app-shell .q-actions{bottom:0}.skip-link{position:absolute;left:-9999px;top:0;background:var(--surface);color:var(--ink);padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius);z-index:20}.skip-link:focus{left:var(--space-4);top:var(--space-4)}.lede{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:600;letter-spacing:var(--tracking-display);line-height:1.15;margin:0 0 var(--space-2)}.statement{font-family:var(--font-read);font-size:var(--text-xl);font-weight:400;line-height:1.3;margin:0 0 var(--space-2)}.lede-sub{color:var(--ink-soft);margin:0 0 var(--space-5)}.section-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;letter-spacing:calc(var(--tracking-display) / 3);line-height:1.3;margin:var(--space-6) 0 var(--space-3)}.note{font-size:var(--text-sm);color:var(--ink-faint);margin-top:var(--space-5)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:var(--space-3) var(--space-5);border-radius:var(--radius);border:1px solid transparent;font:inherit;font-family:var(--font-ui);text-decoration:none;cursor:pointer;transition:background-color var(--motion-fast) linear,border-color var(--motion-fast) linear}.btn-primary{background:var(--accent);color:var(--bg)}.btn-secondary{background:none;color:var(--ink);border-color:var(--line)}.btn-secondary:hover{border-color:var(--ink-faint)}.btn[disabled],.btn[aria-disabled=true]{opacity:.4;cursor:not-allowed}.btn-full{width:100%}.action-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5)}@media (max-width: 30rem){.action-row{flex-direction:column;align-items:stretch}.action-row>.btn{width:100%}}.exam-switcher{position:relative;min-width:0}.exam-trigger{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap);padding:var(--space-2) var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);font:inherit;font-size:var(--text-sm);color:var(--ink);white-space:nowrap;cursor:pointer}.exam-trigger:hover{border-color:var(--line-strong)}.exam-trigger-title{overflow:hidden;text-overflow:ellipsis}.exam-menu{position:absolute;z-index:20;top:calc(100% + var(--space-2));right:0;min-width:15rem;max-width:min(22rem,calc(100vw - var(--space-5)));list-style:none;margin:0;padding:var(--space-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.exam-option{display:flex;flex-direction:column;gap:2px;justify-content:center;min-height:var(--tap);padding:var(--space-2) var(--space-3);border-radius:var(--radius);color:var(--ink-soft);cursor:pointer}.exam-option:hover,.exam-option:focus-visible{background:var(--surface-sunk);color:var(--ink)}.exam-option-active{color:var(--ink);font-weight:600}.exam-option-title{font-size:var(--text-sm)}.exam-option-summary{font-size:var(--text-xs);color:var(--ink-faint);font-weight:400}.bar-row{display:grid;grid-template-columns:1fr 5rem auto;grid-template-areas:"label track figure" "detail detail detail";align-items:center;gap:var(--space-2) var(--space-3);width:100%;min-height:var(--tap);padding:var(--space-2) 0;border:none;background:none;text-align:left;font:inherit;color:inherit}.bar-row-button{cursor:pointer}.bar-row-button:hover .bar-label{text-decoration:underline}.bar-label{grid-area:label;font-size:var(--text-sm)}.bar-track{grid-area:track;height:5px;border-radius:var(--radius-pill);background:var(--line);overflow:hidden}.bar-track-unassessed{background:none;height:0;border-top:1px dashed var(--line);border-radius:0}.bar-fill{display:block;height:100%;background:var(--accent)}.bar-figure{grid-area:figure;font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;color:var(--ink-soft);text-align:right;min-width:3.5rem}.bar-figure-unassessed{color:var(--ink-faint)}.bar-detail{grid-area:detail;font-size:var(--text-xs);color:var(--ink-faint)}.blueprint-list{list-style:none;margin:0;padding:0}.blueprint-row{display:grid;grid-template-columns:1.5rem minmax(0,1fr) 2.75rem;grid-template-areas:"index track figure";align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;border:0;background:none;font:inherit;color:inherit;text-align:left;text-decoration:none}a.blueprint-row,button.blueprint-row{min-height:var(--tap)}.blueprint-row-titled{grid-template-columns:1.75rem minmax(0,1fr) 3rem;grid-template-areas:"index title title" "index track figure";gap:var(--space-1) var(--space-3);align-items:center;padding:var(--space-2) 0}.blueprint-title{grid-area:title;min-width:0;font-size:var(--text-sm)}a.blueprint-row:hover .blueprint-title,button.blueprint-row:hover .blueprint-title{text-decoration:underline}.blueprint-index{grid-area:index;font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ink-faint);text-align:right}.blueprint-track{grid-area:track;display:block;min-width:0}.blueprint-mark{display:block;width:var(--bp-weight);min-width:2px;height:1.25rem;border-radius:2px;background:var(--surface-sunk);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.blueprint-fill{display:block;height:100%;width:var(--bp-mastery);background:var(--accent);transition:width var(--motion) ease-out}.blueprint-mark-unassessed{background:none;box-shadow:inset 0 0 0 1px var(--line);background-image:repeating-linear-gradient(-45deg,transparent 0 3px,var(--line) 3px 4px)}.blueprint-figure{grid-area:figure;font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--ink-soft);text-align:right}.blueprint-figure-unassessed{color:var(--ink-faint)}.blueprint-legend{margin:0 0 var(--space-3);font-size:var(--text-sm);color:var(--ink-soft)}.notice{border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);margin-bottom:var(--space-5);background:var(--surface);box-shadow:var(--shadow)}.notice-strong{border-color:var(--wrong)}.notice-title{margin:0 0 var(--space-2);font-weight:600;font-size:var(--text-base)}.notice-body{margin:0;color:var(--ink-soft);font-size:var(--text-sm)}.notice-links{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-3) 0 0}.skeleton{background:var(--line);border-radius:var(--radius);opacity:.6}.skeleton-lede{height:var(--text-xl);width:80%;margin-bottom:var(--space-3)}.skeleton-sub{height:var(--text-base);width:55%;margin-bottom:var(--space-5)}.skeleton-action{height:var(--tap);width:12rem}.empty-state{padding:var(--space-5) 0}.sheet-inline{margin-top:var(--space-5)}.sheet-inline .sheet-panel{border-top:1px solid var(--line);padding-top:var(--space-4)}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;justify-content:flex-end}.sheet-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ink);opacity:.25}.sheet-overlay .sheet-panel{position:relative;background:var(--surface);border-top:1px solid var(--line);border-radius:var(--radius) var(--radius) 0 0;padding:var(--space-4) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom,0px));max-height:70vh;overflow-y:auto;animation:sheet-rise var(--motion) ease-out}@keyframes sheet-rise{0%{transform:translateY(8px)}to{transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.sheet-overlay .sheet-panel{animation:none}}.sheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.sheet-title{font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;letter-spacing:calc(var(--tracking-display) / 3);margin:0}.sheet-close{background:none;border:none;color:var(--ink-faint);font:inherit;font-size:var(--text-sm);cursor:pointer;min-height:var(--tap);padding:0 var(--space-2)}.sheet-close:hover{color:var(--ink)}.sheet-body p{color:var(--ink-soft);margin:0 0 var(--space-3)}.sheet-footer{margin-top:var(--space-4);display:flex;gap:var(--space-3);justify-content:flex-end}@media (max-width: 30rem){.sheet-footer>.btn{width:100%}}@media (min-width: 48rem){.app-shell,.gate-screen{padding-top:var(--space-7)}.app-nav-toggle{display:none}.app-header{gap:var(--space-4)}.app-menu{display:flex;flex:1 1 auto;align-items:center;justify-content:space-between;gap:var(--space-5);flex-basis:auto;padding-top:0;border-top:none}.app-nav-list{flex-direction:row;gap:var(--space-5)}.app-nav-link{padding:0}.app-menu-open{flex-direction:row}}.reference-links{display:flex;flex-direction:column;gap:var(--space-1)}.reference-links a{min-height:var(--tap);display:inline-flex;align-items:center;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:.15em}.note a,.lesson-crumb a{color:currentColor;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:.15em}.note a:hover,.lesson-crumb a:hover{text-decoration-color:currentColor}.reference-links a:hover{text-decoration-color:var(--ink-soft)}.landing-hero{margin-bottom:var(--space-6)}.landing-title{font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;letter-spacing:var(--tracking-display);line-height:1.2;margin:0 0 var(--space-3);max-width:28ch}.landing-papers{list-style:none;display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0}.landing-paper{display:flex;flex-direction:column;gap:var(--space-1);min-height:var(--tap);padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;color:var(--ink)}.landing-paper:hover{border-color:var(--line-strong)}.landing-paper-title{font-family:var(--font-display);font-weight:600}.landing-paper-figure{font-size:var(--text-sm);color:var(--ink-soft)}.landing-steps{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);color:var(--ink-soft)}.landing-steps strong{color:var(--ink);font-weight:600}@media (min-width: 48rem){.landing-title{font-size:var(--text-2xl)}}.lesson-crumb{margin-top:0;margin-bottom:var(--space-2)}.lesson-prose{font-family:var(--font-read);line-height:1.6;margin:0 0 var(--space-4)}.lesson-terms{margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.lesson-terms dt{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink)}.lesson-terms dd{margin:0;font-size:var(--text-sm);color:var(--ink-soft)}.diagram{margin:var(--space-5) 0}.diagram-svg{display:block;width:100%;max-width:32rem;height:auto}.diagram figcaption{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--ink-soft);max-width:32rem}.dg-box{fill:none;stroke:var(--line-strong);stroke-width:1}.dg-ghost{fill:none;stroke:var(--line);stroke-width:1;stroke-dasharray:3 3}.dg-fill{fill:var(--surface-sunk);stroke:none}.dg-connector,.dg-axis{stroke:var(--line-strong);stroke-width:1;fill:none}.dg-rule{stroke:var(--line);stroke-width:1}.dg-arrowhead{fill:var(--line-strong);stroke:none}.dg-label,.dg-heading{font-family:var(--font-ui);font-size:13px;fill:var(--ink)}.dg-heading{font-weight:600}.dg-note{font-family:var(--font-ui);font-size:11px;fill:var(--ink-soft)}.dg-mono{font-family:var(--font-mono);font-size:12.5px;fill:var(--ink)}.dg-index{font-family:var(--font-mono);font-size:10px;fill:var(--ink-soft)}.lesson-watch{margin:0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);color:var(--ink-soft)}.lesson-actions{margin-top:var(--space-6)}@media (min-width: 40rem){.lesson-terms>div{display:grid;grid-template-columns:12rem 1fr;gap:var(--space-4);align-items:baseline}}.stat-strip{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3) var(--space-5);margin-bottom:var(--space-5)}.stat-fact{display:flex;align-items:center;gap:var(--space-2);min-height:var(--tap)}.stat-figure{font-family:var(--font-mono);font-size:var(--text-lg);font-variant-numeric:tabular-nums;line-height:1}.stat-label{font-size:var(--text-sm);color:var(--ink-soft)}.stat-goal-change{min-height:var(--tap);display:inline-flex;align-items:center;padding:0;border:0;background:none;font:inherit;font-size:var(--text-sm);color:var(--accent);text-decoration:underline;cursor:pointer}.goal-ring{display:block;flex:none}.goal-ring-arc{transition:stroke-dasharray var(--motion) ease-out}.recommendation{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--space-5);margin-bottom:var(--space-5)}.recommendation>.action-row:last-child{margin-bottom:0}.recommendation>.lede-sub{margin-bottom:var(--space-4)}.path{list-style:none;margin:0 0 var(--space-5);padding:0;position:relative}.disclosure-heading{margin:0}.more-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;min-height:var(--tap);margin-top:var(--space-6);padding:var(--space-2) 0;border:0;border-top:1px solid var(--line);background:none;font:inherit;font-size:var(--text-sm);color:var(--ink-soft);text-align:left;cursor:pointer}.more-toggle:hover{color:var(--ink)}.more-panel>:first-child{margin-top:var(--space-4)}.disclosure-toggle{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap);margin:var(--space-6) 0 var(--space-3);padding:0;border:0;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer}.disclosure-toggle-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.disclosure-title{font-weight:600}.disclosure-figure{font-size:var(--text-sm);font-weight:400;color:var(--ink-soft)}.chevron{flex:none;color:var(--ink-soft);transition:transform var(--motion-fast) ease-out}.chevron-open{transform:rotate(180deg)}.disclosure-panel[hidden],.more-panel[hidden]{display:none}.path:before{content:"";position:absolute;top:calc(var(--tap) / 2);bottom:calc(var(--tap) / 2);left:calc(var(--tap) / 2 - 1px);width:2px;background:var(--line)}.chapter-list{list-style:none;margin:0 0 var(--space-5);padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.row-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;color:var(--ink);transition:border-color var(--motion-fast) ease-out}.row-link:hover{border-color:var(--ink-soft)}.row-link:active{transform:translateY(1px)}.row-mark{flex:none;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-width:1px;border-style:solid;border-color:var(--ink-faint);border-radius:var(--radius);color:var(--ink-soft);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.row-title{font-weight:600}.row-figure{font-size:var(--text-sm);color:var(--ink-soft)}.row-link-next{border-color:var(--accent)}.row-link-next .row-mark{border-color:var(--accent);color:var(--accent)}.crumb{margin-top:0;margin-bottom:var(--space-2)}.lesson-node{position:relative;display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap);text-decoration:none;color:var(--ink);transition:transform var(--motion-fast) ease-out}.lesson-node:active{transform:scale(.97)}.lesson-node-mark{flex:none;display:inline-flex;align-items:center;justify-content:center;width:var(--tap);height:var(--tap);border-radius:var(--radius-pill);border:1px solid;border-color:var(--ink-faint);background:transparent;font-size:var(--text-sm);color:var(--ink-soft);transition:border-color var(--motion) ease-out,background-color var(--motion) ease-out,color var(--motion) ease-out}.lesson-node-body{display:flex;flex-direction:column;gap:2px;min-width:0}.lesson-node-title{font-size:var(--text-base)}.lesson-node-figure{font-size:var(--text-sm);color:var(--ink-soft)}.lesson-node-untouched .lesson-node-title{color:var(--ink-soft)}.lesson-node-open .lesson-node-mark{border-width:2px;background:var(--bg);color:var(--ink)}.lesson-node-held .lesson-node-mark{border-width:2px;border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.lesson-node-due .lesson-node-mark{border-width:2px;border-style:dashed;border-color:var(--accent);background:var(--surface);color:var(--ink)}.lesson-node-next .lesson-node-mark{border-width:2px;border-style:solid;border-color:var(--accent);background:var(--accent);color:var(--bg)}.lesson-node-next .lesson-node-title{color:var(--ink);font-weight:600}.streak-grid{display:grid;grid-template-columns:repeat(14,1fr);gap:var(--space-1);max-width:22rem;margin:0 0 var(--space-5)}.streak-dot{aspect-ratio:1;border-radius:var(--radius);background:var(--line)}.streak-dot-on{background:var(--accent)}.goal-choices{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.goal-choice[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--ink);font-weight:600}.honesty-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3);color:var(--ink-soft);font-size:var(--text-sm)}.q-status{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-3);font-size:var(--text-sm);color:var(--ink-faint);margin-bottom:var(--space-1)}.q-objective{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 var(--space-5)}.q-stem{font-family:var(--font-read);font-size:var(--text-xl);font-weight:400;line-height:1.3;margin:0 0 var(--space-3)}.q-instruction{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 var(--space-4)}.q-options{border:none;margin:0 0 var(--space-4);padding:0;display:grid;gap:var(--space-2)}.q-option{display:flex;align-items:flex-start;gap:var(--space-3);min-height:var(--tap);padding:var(--space-3) var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);cursor:pointer;transition:border-color var(--motion-fast) linear,background-color var(--motion-fast) linear}.q-option-disabled{cursor:default}.q-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.q-option-selected,.q-option-correct{border-color:var(--accent);background:var(--accent-soft)}.q-option-picked{border-color:var(--wrong);background:var(--wrong-soft)}.q-key{flex:none;display:grid;place-items:center;width:1.5rem;height:1.5rem;border:1px solid var(--line);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-faint)}.q-option-selected .q-key,.q-option-correct .q-key{border-color:var(--accent);color:var(--accent)}.q-option-text{flex:1 1 auto}.q-mark{flex:none;font-size:var(--text-sm);color:var(--accent)}.q-option-picked .q-mark{color:var(--wrong)}.q-input{width:100%;min-height:var(--tap);padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-base);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.q-input-label{display:block;font-size:var(--text-sm);color:var(--ink-soft);margin-bottom:var(--space-2)}.q-fill{margin:0 0 var(--space-4)}.q-actions{position:sticky;bottom:0;z-index:5;display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding:var(--space-3) 0 calc(var(--space-3) + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--line)}.q-actions .q-primary{margin-left:auto}.q-guess{min-height:var(--tap);padding:var(--space-2) var(--space-4);background:none;color:var(--ink-soft);border:1px solid var(--line);border-radius:var(--radius-pill);font:inherit;font-size:var(--text-sm);cursor:pointer}.q-guess[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.q-hint{font-size:var(--text-sm);color:var(--ink-faint);margin:var(--space-3) 0 0}@media (max-width: 30rem){.q-hint{display:none}.q-actions{flex-wrap:wrap;align-items:center}.q-actions .q-primary{order:2;margin-left:0;width:100%}.q-actions .btn:not(.q-primary),.q-actions .q-guess{order:1;flex:0 1 auto;width:auto;font-size:var(--text-sm);padding-left:var(--space-3);padding-right:var(--space-3)}}.ex-answer{font-family:var(--font-read);font-size:var(--text-lg);margin:0 0 var(--space-3)}.ex-accepted,.ex-prose{color:var(--ink-soft);margin:0 0 var(--space-3)}.ex-heading{font-size:var(--text-base);font-weight:600;margin:var(--space-5) 0 var(--space-3)}.ex-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}.ex-item{padding-left:var(--space-3);border-left:2px solid var(--line)}.ex-item-correct{border-left-color:var(--accent)}.ex-item-picked{border-left-color:var(--wrong)}.ex-item-text{margin:0 0 var(--space-1)}.ex-item-why{margin:0;color:var(--ink-soft);font-size:var(--text-sm)}.ex-tag{color:var(--ink-faint);font-size:var(--text-sm)}.ex-tag-correct{color:var(--accent)}.ex-source,.ex-unverified{font-size:var(--text-sm);color:var(--ink-faint);margin:var(--space-4) 0 0}.mock-clock{font-variant-numeric:tabular-nums}.mock-tools{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-3) 0 var(--space-5)}.mock-gone{font-family:var(--font-read);font-size:var(--text-xl);font-weight:400;line-height:1.35;margin:0 0 var(--space-3)}.mock-actions{margin-top:var(--space-5)}.qgrid{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--tap),1fr));gap:var(--space-2);margin:0 0 var(--space-3);padding:0}.qgrid-cell{position:relative;display:grid;place-items:center;width:100%;min-width:var(--tap);min-height:var(--tap);padding:0;border:1px solid var(--line);border-radius:var(--radius);background:none;font:inherit;font-size:var(--text-sm);color:var(--ink-faint);cursor:pointer}.qgrid-answered,.qgrid-answered-flagged{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.qgrid-flagged{color:var(--ink);border-style:dashed;border-color:var(--ink-faint)}.qgrid-current{border-width:2px;border-color:var(--ink);color:var(--ink);font-weight:600}.qgrid-flag{position:absolute;top:3px;right:3px;width:6px;height:6px;border-radius:var(--radius-pill);background:var(--ink-soft)}.qgrid-key{margin-top:0}@media (min-width: 64rem){.app-shell,.gate-screen{max-width:var(--measure-wide);padding-left:var(--space-6);padding-right:var(--space-6)}.app-main>:not(.screen-wide){max-width:var(--measure)}.screen-split{display:grid;grid-template-columns:minmax(0,1fr) var(--rail);align-items:start;gap:var(--space-6)}.screen-rail{position:sticky;top:var(--space-6)}.lede{font-size:var(--text-3xl)}}
