:root{--bg:#faf9f7;--surface:#fff;--line:#e4e0d9;--line-strong:#c9c3b8;--ink:#1c1a17;--ink-soft:#55504a;--ink-faint:#8b847a;--guess:#b4762b;--guess-soft:#f2e3cd;--truth:#1f6f5c;--truth-soft:#d6e8e2;--loss:#a63d40;--loss-soft:#f3dcdc;--accent:#3a5a8c;--radius:10px;--radius-sm:6px;--step--1:.82rem;--step-0:1rem;--step-1:1.18rem;--step-2:1.5rem;--step-3:2rem;--space-1:.35rem;--space-2:.7rem;--space-3:1.1rem;--space-4:1.8rem;--space-5:2.8rem;--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:ui-monospace,"SF Mono",Menlo,monospace;--shadow:0 1px 2px #1c1a170d,0 4px 16px #1c1a170d}@media (prefers-color-scheme:dark){:root{--bg:#16151a;--surface:#1e1d23;--line:#32303a;--line-strong:#4a4753;--ink:#f0eeea;--ink-soft:#b3aea6;--ink-faint:#7d776f;--guess:#e0a35a;--guess-soft:#3d3020;--truth:#5fc0a4;--truth-soft:#1c332d;--loss:#e57377;--loss-soft:#3a2224;--accent:#8fb0e0;--shadow:0 1px 2px #0000004d,0 4px 16px #00000040}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--step-0);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}button{font:inherit;cursor:pointer;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);padding:var(--space-2)var(--space-3);border-radius:var(--radius-sm);transition:background .12s,border-color .12s}button:hover:not(:disabled){border-color:var(--ink-faint)}button:disabled{opacity:.45;cursor:not-allowed}button[data-variant=primary]{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:550}button[data-variant=primary]:hover:not(:disabled){opacity:.88}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.ex{padding:var(--space-4)var(--space-3)var(--space-5);max-width:46rem;margin:0 auto}.ex__back{color:var(--ink-faint);font-size:var(--step--1);margin-bottom:var(--space-3);background:0 0;border:none;padding:0}.ex__back:hover{color:var(--ink)}.ex__eyebrow{margin:0 0 var(--space-1);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint)}.ex__id{color:var(--ink);margin-right:.4em;font-weight:650}.ex__title{margin:0 0 var(--space-2);font-size:var(--step-3);letter-spacing:-.02em;line-height:1.15}.ex__prompt{font-size:var(--step-1);color:var(--ink-soft);max-width:38rem;margin:0}.ex__body{margin-top:var(--space-4)}.ex__takeaway{margin-top:var(--space-4);padding:var(--space-3);background:var(--truth-soft);border-radius:var(--radius);border-left:3px solid var(--truth)}.ex__takeaway h2{margin:0 0 var(--space-1);font-size:var(--step--1);letter-spacing:.06em;text-transform:uppercase;color:var(--truth)}.ex__takeaway p{margin:0 0 var(--space-2)}.ex__takeaway p:last-child{margin-bottom:0}.subhead{margin:var(--space-4)0 var(--space-2);font-size:var(--step-1);font-weight:600}.flip{margin-top:var(--space-4);padding:var(--space-3);border:1px dashed var(--line-strong);border-radius:var(--radius)}.flip .subhead{margin-top:0}.flip p{margin:0 0 var(--space-2)}.flip__note{font-size:var(--step--1);color:var(--ink-faint);margin-bottom:0!important}.ex__foot{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--line);display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.ex__foot>button{flex:auto}@media (max-width:46rem){.ex__foot{flex-direction:column;align-items:stretch}}.plot{display:block;touch-action:none;user-select:none;overflow:visible;width:100%;height:auto}.plot__grid{stroke:var(--line);stroke-width:1}.plot__axis{stroke:var(--line-strong);stroke-width:1}.plot__tick{fill:var(--ink-faint);font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:11px}.plot__tick--y{text-anchor:end}.plot__axis-label{fill:var(--ink-faint);font-family:var(--sans);font-size:11px}.plot__handle{cursor:grab}.plot__handle:active{cursor:grabbing}.plot__handle:focus{outline:none}.plot__handle:focus-visible{outline:none}.plot__handle:focus .plot__handle-ring{opacity:1}.plot__handle:focus-visible .plot__handle-ring{opacity:1}.plot__handle-ring{opacity:0;pointer-events:none}.plot__label{font-family:var(--sans);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.verdict{margin-top:var(--space-3);padding:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.verdict__pair{display:flex;gap:var(--space-4);flex-wrap:wrap}.verdict__cell{display:flex;flex-direction:column;gap:2px}.verdict__label{font-size:var(--step--1);color:var(--ink-faint);letter-spacing:.04em;text-transform:uppercase}.verdict__value{font-size:var(--step-2);letter-spacing:-.01em;font-weight:650}.verdict__gap{margin:var(--space-2)0 0;font-size:var(--step-1)}.verdict__note{margin:var(--space-2)0 0;color:var(--ink-soft);font-size:var(--step--1)}.controls{display:flex;align-items: flex-end;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.range{flex:14rem;min-width:12rem}.range__label{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--step--1);color:var(--ink-soft);margin-bottom:2px}.range__value{color:var(--ink);font-weight:650}.range input[type=range]{accent-color:var(--accent);width:100%}.commit{flex:1 0 100%}.side{display:flex;gap:var(--space-1)}.jargon{margin-top:var(--space-4)}.jargon__term{display:inline-block;margin:0 0 var(--space-2);font-size:var(--step-1);letter-spacing:-.01em;color:var(--ink);background:var(--guess-soft);border-radius:var(--radius-sm);padding:2px 10px;font-weight:650}.jargon__body{color:var(--ink);margin:0}.legend{display:flex;gap:var(--space-2)var(--space-3);list-style:none;margin:var(--space-2)0 0;font-size:var(--step--1);color:var(--ink-soft);flex-wrap:wrap;padding:0}.legend__item{display:flex;align-items: center;gap:.45em}.legend__swatch{border-top:3px solid;width:20px}.legend__swatch[data-dashed]{border-top-style:dashed;border-top-width:2px}.readout{display:flex;gap:var(--space-4);margin:0 0 var(--space-3);padding:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-wrap:wrap}.readout__cell{display:flex;flex-direction:column;gap:1px}.readout dt{font-size:var(--step--1);color:var(--ink-faint);letter-spacing:.04em;text-transform:uppercase}.readout dd{font-size:var(--step-2);letter-spacing:-.01em;margin:0;font-weight:650}.readout dd[data-tone=good]{color:var(--truth)}.readout dd[data-tone=bad]{color:var(--loss)}.readout dd[data-tone=guess]{color:var(--guess)}.spark{display:block;width:100%;height:auto}.spark__line{fill:none;stroke-width:1.6;stroke-linejoin:round;vector-effect:non-scaling-stroke}.spark__level{stroke:var(--loss);stroke-width:1.5;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.spark__guide{stroke:var(--accent);stroke-width:1.5;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.spark__mark{fill:var(--loss);stroke:var(--surface);stroke-width:1.5}.panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-3);list-style:none;margin:0;padding:0}.panel{display:block;padding:var(--space-2);text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;width:100%}.panel:hover:not(:disabled){border-color:var(--line-strong)}.panel[data-marked]{border-color:var(--guess);box-shadow:inset 0 0 0 1px var(--guess)}.panel[data-verdict=right]{border-color:var(--truth);box-shadow:inset 0 0 0 1px var(--truth)}.panel[data-verdict=wrong]{border-color:var(--loss);box-shadow:inset 0 0 0 1px var(--loss)}.panel:disabled{cursor:default;opacity:1}.panel__id{display:block;font-size:var(--step--1);color:var(--ink-faint);font-variant-numeric:tabular-nums}.panel__tag{display:block;margin-top:var(--space-1);font-size:var(--step--1);color:var(--ink-soft)}.panel[data-marked] .panel__tag{color:var(--guess)}.panel[data-verdict=right] .panel__tag{color:var(--truth)}.panel[data-verdict=wrong] .panel__tag{color:var(--loss)}.exhibit{margin:var(--space-3)0;padding:var(--space-2);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.index{padding:var(--space-5)var(--space-3);max-width:52rem;margin:0 auto}.index__head{margin-bottom:var(--space-5)}.index__head h1{margin:0 0 var(--space-2);font-size:var(--step-3);letter-spacing:-.025em}.index__sub{font-size:var(--step-1);color:var(--ink-soft);max-width:34rem;margin:0}.index__progress{margin:var(--space-3)0 0;font-size:var(--step--1);color:var(--ink-faint);letter-spacing:.04em;text-transform:uppercase}.index__missing{margin:var(--space-2)0 0;font-size:var(--step--1);color:var(--loss)}.index__section{margin-bottom:var(--space-5)}.index__section h2{margin:0 0 var(--space-1);font-size:var(--step-2);letter-spacing:-.015em}.index__n{color:var(--ink-faint);margin-right:.3em;font-weight:400}.index__intuition{margin:0 0 var(--space-3);color:var(--ink-soft)}.cards{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:var(--space-2);margin:0;padding:0}.card{display:flex;text-align:left;padding:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;gap:3px;width:100%;height:100%}.card[data-built=true]:hover{border-color:var(--accent);box-shadow:var(--shadow)}.card[data-built=false]{opacity:1;background:0 0;border-style:dashed}.card__id{font-size:var(--step--1);color:var(--ink-faint);font-weight:650}.card__title{font-size:var(--step-1);font-weight:600;line-height:1.25}.card__star{color:var(--guess);margin-left:.35em;font-size:.85em}.card__blurb{font-size:var(--step--1);color:var(--ink-soft);line-height:1.4}.card__todo{margin-top:var(--space-1);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem}.index__foot{border-top:1px solid var(--line);padding-top:var(--space-3);color:var(--ink-faint);font-size:var(--step--1)}.index__foot p{max-width:34rem;margin:0}.hint{font-size:var(--step--1);color:var(--ink-faint);flex:16rem;margin:0}
