:root{--bg:#f6f5f2;--surface:#fff;--ink:#16171b;--muted:#5b5d66;--faint:#8a8c94;--rule:#e1dfda;--tint:#efede8;--accent:#2a78d6;--accent-2:#eb6834;--good:#1baf7a;--bad:#e34948;--gray-mark:#b9bbc2;--note-bg:#fff6da;--note-ink:#6b5300;--note-rule:#ebcb6b;--display:"Bricolage Grotesque","Avenir Next","Segoe UI",system-ui,sans-serif;--body:"Source Serif 4","Iowan Old Style",Georgia,serif;--mono:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace;color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#111214;--surface:#1a1a19;--ink:#f0efec;--muted:#c3c2b7;--faint:#8e8d86;--rule:#2c2d30;--tint:#202124;--accent:#3987e5;--accent-2:#d95926;--good:#199e70;--bad:#e66767;--gray-mark:#55565c;--note-bg:#2b2513;--note-ink:#e9d18a;--note-rule:#6a5a26;color-scheme:dark}}:root[data-theme="dark"]{--bg:#111214;--surface:#1a1a19;--ink:#f0efec;--muted:#c3c2b7;--faint:#8e8d86;--rule:#2c2d30;--tint:#202124;--accent:#3987e5;--accent-2:#d95926;--good:#199e70;--bad:#e66767;--gray-mark:#55565c;--note-bg:#2b2513;--note-ink:#e9d18a;--note-rule:#6a5a26;color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:18.5px;line-height:1.65;padding:0 max(16px,env(safe-area-inset-right)) 80px max(16px,env(safe-area-inset-left))}.col{max-width:680px;margin:0 auto}.wide{max-width:1040px;margin:0 auto}header.top{padding:64px 0 8px}.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}h1{font-family:var(--display);font-weight:700;font-size:clamp(40px,7.4vw,70px);line-height:1.02;letter-spacing:-.02em;margin:14px 0 18px;text-wrap:balance}h1 em{font-style:normal;color:var(--accent)}.dek{font-size:21px;color:var(--muted);margin:0;text-wrap:pretty}.meta{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:22px;font-family:var(--mono);font-size:12.5px;color:var(--muted)}h2{font-family:var(--display);font-weight:700;font-size:30px;line-height:1.15;letter-spacing:-.01em;margin:72px 0 8px;text-wrap:balance}h2 .num{font-family:var(--mono);font-size:13px;font-weight:600;color:var(--accent);display:block;letter-spacing:.08em;margin-bottom:6px}p{margin:14px 0;text-wrap:pretty}a{color:var(--accent);text-underline-offset:3px}strong{font-weight:600}code{font-family:var(--mono);font-size:.86em;background:var(--tint);padding:1px 5px;border-radius:4px}ul,ol{padding-left:1.3em}li{margin:6px 0}.twin{display:grid;gap:12px;margin:22px 0}.twin>div{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:14px 18px;font-family:var(--display);font-size:22px;line-height:1.25;font-weight:500}.twin>div span{display:block;font-family:var(--mono);font-size:11.5px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-weight:400}@media(min-width:640px){.twin{grid-template-columns:1fr 1fr}}.note{background:var(--note-bg);color:var(--note-ink);border-left:3px solid var(--note-rule);border-radius:6px;padding:10px 14px;font-family:var(--mono);font-size:13px;line-height:1.5;margin:18px 0}.note b{font-weight:600}figure{margin:36px 0;padding:0}.fig{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:20px 20px 16px}.fig h4{font-family:var(--display);font-weight:500;font-size:17px;margin:0 0 2px}.fig .sub{font-family:var(--mono);font-size:12px;color:var(--muted);margin:0 0 12px}figcaption{font-family:var(--mono);font-size:12.5px;line-height:1.55;color:var(--muted);margin-top:10px;padding:0 4px}figcaption b{color:var(--ink);font-weight:600}svg text{font-family:var(--mono)}.chart{width:100%;height:auto;display:block;overflow:visible}.tbl{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:13.5px;margin:18px 0}.tbl th{text-align:left;font-weight:600;color:var(--muted);border-bottom:1px solid var(--rule);padding:6px 8px;font-size:12px;letter-spacing:.03em}.tbl td{border-bottom:1px solid var(--rule);padding:6px 8px}.tbl td.n,.tbl th.n{text-align:right;font-variant-numeric:tabular-nums}.tbl tr.total td{font-weight:600}.gallery{display:grid;gap:14px}@media(min-width:720px){.gallery.g2{grid-template-columns:1fr 1fr}}.lane{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:14px}.lane h5{font-family:var(--display);font-size:16px;font-weight:500;margin:0 0 2px}.lane .lsub{font-family:var(--mono);font-size:12px;color:var(--muted);margin:0 0 10px}.clips{display:grid;grid-template-columns:1fr 1fr;gap:10px}.clip{margin:0;position:relative}.clip video{width:100%;aspect-ratio:4/3;border-radius:8px;background:#000;display:block}.clip .cap{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-family:var(--mono);font-size:11.5px;margin-top:5px;color:var(--muted)}
.clip .cap b{color:var(--ink);font-weight:600}.badge{font-family:var(--mono);font-size:11px;padding:1px 6px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}.badge.ok{color:var(--good)}.badge.no{color:var(--bad)}.pair{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-top:14px}.arch{display:grid;gap:18px}@media(min-width:760px){.arch{grid-template-columns:1fr 1fr;gap:28px}}.arch-h{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.arch-h b{font-family:var(--display);font-weight:500;font-size:16px}.arch-h span{font-family:var(--mono);font-size:12px;color:var(--muted)}.arch svg .fn{fill:var(--accent-2);font-weight:600}#tip{position:fixed;pointer-events:none;z-index:9;background:var(--ink);color:var(--bg);font-family:var(--mono);font-size:12px;line-height:1.45;padding:7px 10px;border-radius:6px;opacity:0;transition:opacity .08s;max-width:260px}#tip b{font-weight:600}.seg{display:inline-flex;border:1px solid var(--rule);border-radius:8px;overflow:hidden;margin-bottom:12px}.seg button{font:inherit;font-family:var(--mono);font-size:12px;background:transparent;color:var(--muted);border:0;padding:6px 12px;cursor:pointer}.seg button[aria-pressed="true"]{background:var(--tint);color:var(--ink);font-weight:600}.legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-family:var(--mono);font-size:12px;color:var(--muted);margin:0 0 10px}.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}.big{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:16px}.big div{border-left:2px solid var(--rule);padding-left:12px}.big b{display:block;font-family:var(--display);font-size:30px;font-weight:700;line-height:1.1}.big span{font-family:var(--mono);font-size:12px;color:var(--muted)}.bets{list-style:none;padding:0;margin:20px 0;display:grid;gap:12px}.bets li{background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:14px 18px;margin:0}.bets li strong{font-family:var(--display);font-weight:700;font-size:19px;display:block;margin-bottom:2px}footer{margin-top:72px;border-top:1px solid var(--rule);padding-top:18px;font-family:var(--mono);font-size:12.5px;color:var(--muted)}footer li{margin:4px 0}.lang{position:absolute;top:18px;right:max(16px,env(safe-area-inset-right));font-family:var(--mono);font-size:13px;color:var(--ink);text-decoration:none;border:1px solid var(--rule);background:var(--surface);border-radius:999px;padding:4px 12px}.lang:hover{border-color:var(--accent);color:var(--accent)}.trace{list-style:none;padding:0;margin:0;display:grid;gap:0}.trace li{display:grid;grid-template-columns:22px 78px 1fr;gap:4px 12px;align-items:baseline;padding:9px 0;border-top:1px solid var(--rule);margin:0;font-family:var(--mono);font-size:13px;line-height:1.55}.trace li:first-child{border-top:0}.trace .n{color:var(--faint);text-align:right}.trace .k{font-weight:600;font-size:12.5px}.trace .k.say{color:var(--accent)}.trace .k.tool{color:var(--accent-2)}.trace .q{font-family:var(--body);font-size:16px;font-style:italic;line-height:1.5}.trace code{font-size:12px}.trace .ok{color:var(--good)}.trace .warn{color:var(--accent-2)}.trace-frames{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}.trace-frames figure{margin:0}.trace-frames img{width:100%;border-radius:8px;display:block}.trace-frames span{font-family:var(--mono);font-size:12px;color:var(--muted)}@media(max-width:560px){.trace li{grid-template-columns:22px 1fr}.trace li>*:nth-child(3){grid-column:2}}.arch svg #code text{white-space:pre}.eras-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.eras-in{min-width:720px}.eras-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.era{border:1px solid var(--rule);border-radius:10px;overflow:hidden;background:var(--surface);transition:border-color .15s}.era.on{border-color:var(--accent)}.era img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:center 30%}.era b{display:block;font-size:13px;line-height:1.3;padding:8px 10px 0;color:var(--ink)}.era span{display:block;font-size:12px;color:var(--muted);padding:2px 10px 10px}.era{cursor:pointer}.era.sel{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.era:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.era-panel{margin-top:16px;padding-top:16px;border-top:1px solid var(--rule);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.era-panel[hidden]{display:none}@media(max-width:700px){.era-panel{grid-template-columns:1fr}}.era-demo svg{display:block;width:100%;height:auto;background:var(--tint);border-radius:8px;touch-action:none}.era-ctl{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.era-ctl button{font:inherit;font-size:12.5px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);border-radius:999px;padding:5px 12px;cursor:pointer}.era-ctl button.primary{background:var(--accent);border-color:var(--accent);color:#fff}
.era-status{font-size:13px;color:var(--muted);min-height:2.8em;margin-top:8px;line-height:1.5}.era-code{font-size:12px;line-height:1.65;margin:10px 0 0;padding:8px 10px;background:var(--tint);border-radius:8px;overflow-x:auto}.era-code span{display:inline-block;padding:0 4px;border-radius:3px}.era-code span.cur{background:var(--accent);color:#fff}.era-text h5{margin:0 0 8px;font-size:16px;color:var(--ink)}.era-text p{font-size:15px;line-height:1.65;margin:0 0 12px;color:var(--ink)}.tplayer{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:22px;align-items:start}@media(max-width:760px){.tplayer{grid-template-columns:1fr}}.tp-left{position:sticky;top:12px}.tp-video{position:relative;border-radius:8px;overflow:hidden;background:#000;aspect-ratio:4/3}.tp-video video{display:block;width:100%;height:100%;object-fit:cover}.tp-badge{position:absolute;left:10px;top:10px;font-family:var(--mono);font-size:11.5px;background:rgba(0,0,0,.62);color:#fff;padding:3px 8px;border-radius:999px}.tp-badge[hidden]{display:none}.tp-ctl{display:flex;align-items:center;gap:10px;margin-top:10px}.tp-ctl button{flex:none;width:34px;height:34px;border-radius:50%;border:0;background:var(--ink);color:var(--surface);font-size:13px;cursor:pointer}.tp-bar{position:relative;flex:1;height:22px;cursor:pointer;touch-action:none;border-radius:4px;background:var(--tint)}.tp-seg{position:absolute;top:5px;height:12px;border-right:2px solid var(--surface);box-sizing:border-box}.tp-seg.say{background:var(--accent)}.tp-seg.meas{background:var(--accent-2)}.tp-seg.run{background:var(--gray-mark)}.tp-head{position:absolute;top:-2px;width:2px;height:26px;background:var(--ink);transform:translateX(-1px);pointer-events:none}.tp-meta{display:flex;justify-content:space-between;font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-top:6px}.tp-legend{display:flex;flex-wrap:wrap;gap:12px;font-family:var(--mono);font-size:11.5px;color:var(--muted);margin-top:8px}.tp-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}.tp-legend i.say{background:var(--accent)}.tp-legend i.meas{background:var(--accent-2)}.tp-legend i.run{background:var(--gray-mark)}#tp-list li{cursor:pointer;transition:opacity .2s;padding-left:6px;border-left:3px solid transparent;margin-left:-9px}#tp-list li.cur{border-left-color:var(--ink);background:var(--tint)}#tp-list li:not(.cur):not(.past){opacity:.45}@media(max-width:560px){.xscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -4px;padding:0 4px}.xscroll #fig-all{min-width:680px}.xscroll #fig-map{min-width:520px}}@media(max-width:760px){.tp-left{position:static}}.map-m{display:none}@media(max-width:560px){#fig-map{display:none}.map-m{display:grid;grid-template-columns:22px 1fr 1fr;gap:6px;font-family:var(--mono);font-size:11.5px;line-height:1.55;color:var(--ink)}.map-m>div{border:1px solid var(--rule);border-radius:6px;padding:8px}.map-m>div.ok{background:color-mix(in srgb,var(--accent) 12%,transparent)}.map-m .h{display:block;font-weight:600;margin-bottom:4px}.map-m .h.bad{color:var(--bad)}.map-m .h.acc{color:var(--accent)}.map-m .ax{font-weight:400;color:var(--muted);font-size:11px}.map-m .ay{font-weight:400;color:var(--muted);font-size:11px;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center}}.ag-cards{grid-template-columns:repeat(4,1fr)}.ag-thumb{display:block;width:100%;aspect-ratio:4/3;background:var(--tint)}.ag-panel .era-demo svg{touch-action:auto}.ag-src{font-family:var(--mono);font-size:12.5px!important;color:var(--muted)!important}.ag-panel svg text{white-space:pre}.probs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;counter-reset:none}.probs li{background:var(--surface);border:1px solid var(--rule);border-radius:12px;padding:16px 18px 14px;margin:0}.probs .pn{display:block;font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--accent);letter-spacing:.06em}.probs b{display:block;font-family:var(--display);font-weight:700;font-size:19px;line-height:1.25;margin:4px 0 8px;color:var(--ink)}.probs p{font-size:15.5px;line-height:1.6;margin:0;color:var(--ink)}@media(max-width:860px){.probs{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.probs{grid-template-columns:1fr}}