:root{color-scheme:dark;--bg:#090e13;--panel:#101a23;--line:#273746;--ink:#e8eef4;--muted:#a3b4c3;--accent:#e8ad79;--cyan:#7cd8de;--good:#98d4ac;--bad:#ff9696}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:radial-gradient(ellipse at 75% 0,#1c334444,transparent 750px),var(--bg);color:var(--ink);font:18px/1.8 system-ui,sans-serif}a{color:var(--cyan);text-underline-offset:5px}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}.skip{position:absolute;top:-100px;padding:12px;background:var(--panel);z-index:10}.skip:focus{top:12px}.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:20}.layout{max-width:1600px;margin:auto;padding:0 36px;display:grid;grid-template-columns:205px minmax(0,1fr);gap:55px}.toc{position:sticky;top:30px;height:max-content;margin-top:38px;font-size:12px;border-left:1px solid var(--line);padding-left:20px;max-height:90vh;overflow:auto}.toc a{display:block;padding:8px 0;color:var(--muted);text-decoration:none}.toc a:hover,.toc a.active{color:var(--accent)}.toc .back{margin-top:25px}.kicker,.eyebrow{font:11px/1.5 ui-monospace,monospace;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent)}main{min-width:0}.hero{padding:38px 0 65px;border-bottom:1px solid var(--line)}.author{font-size:13px;text-decoration:none}.hero .kicker{margin-top:65px}h1{font-size:clamp(44px,5.8vw,84px);line-height:1.05;letter-spacing:-4px;font-weight:620;max-width:1050px;margin:25px 0}h1 em{font-style:normal;color:var(--accent)}.deck{font-size:23px;max-width:800px;color:#bacbd9;line-height:1.55}.meta{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.meta span,.chip{font:11px ui-monospace,monospace;padding:7px 11px;border:1px solid var(--line);border-radius:30px}.hero-links{display:flex;gap:25px;font-size:14px}.brief{padding:26px 30px;background:var(--panel);border-left:3px solid var(--accent);margin:35px 0;max-width:950px}.brief p{margin:12px 0}.chapter{padding:45px 0 12px;max-width:960px}.chapter h2{font-size:clamp(29px,3.4vw,43px);font-weight:620;line-height:1.2;letter-spacing:-1.3px;margin:15px 0 28px}.prose{max-width:820px}.prose p{margin:0 0 25px}.prose h3{font-size:23px;margin-top:34px}.prose blockquote{border-left:3px solid var(--accent);padding:12px 0 12px 25px;margin:35px 0;font-size:25px;line-height:1.5;color:#e6c29f}.prose code{font:14px ui-monospace,monospace;color:#add8e3}.prose pre{background:#0d1720;padding:23px;border:1px solid var(--line);border-radius:8px;overflow:auto;line-height:1.65}.prose pre code{font-size:12px}.prose table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.6;margin:30px 0}.prose td,.prose th{border:1px solid var(--line);padding:14px;text-align:left}.prose th{color:var(--cyan);background:var(--panel)}.visual{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:linear-gradient(130deg,#142431,#0b131a);margin:35px 0;max-width:1100px}.visual-head{padding:20px 25px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.visual-head h3{font-size:19px;margin:6px 0}.visual-head p{font-size:13px;color:var(--muted);margin:0}.controls{display:flex;gap:9px;flex-wrap:wrap}button{border:1px solid #4a6071;border-radius:5px;padding:8px 13px;color:var(--ink);background:#142330;cursor:pointer;font-size:12px}button:hover,button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.diagram{padding:26px;background-image:linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:24px 24px}.lanes{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lane{border:1px dashed #3b5060;border-radius:8px;padding:16px}.lane>p{font:10px ui-monospace,monospace;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.node{display:block;width:100%;text-align:left;margin:15px 0;padding:18px;background:#10202b;position:relative;border-color:#364e60;border-radius:8px;min-height:88px}.node b{display:block;font-size:14px;margin-bottom:6px;color:var(--ink)}.node span{font:11px/1.5 ui-monospace,monospace;color:var(--muted)}.node.selected{border-color:var(--accent);box-shadow:0 0 22px #e8ad7912}.arrow{height:28px;position:relative;margin:0 auto;border-left:1px solid #466174;width:1px}.arrow:after{content:'';position:absolute;left:-4px;bottom:0;border:4px solid transparent;border-top-color:var(--cyan)}.packet{position:absolute;background:var(--cyan);width:5px;height:8px;left:-3px;border-radius:4px;animation:packet 2s infinite;box-shadow:0 0 12px var(--cyan)}@keyframes packet{0%{top:0;opacity:0}20%{opacity:1}100%{top:23px;opacity:0}}.paused .packet{animation-play-state:paused}.detail{padding:20px 25px;border-top:1px solid var(--line);font-size:14px;color:var(--muted);min-height:105px}.detail strong{color:var(--accent)}.boundary{padding:14px 25px;font:11px/1.7 ui-monospace,monospace;border-top:1px solid var(--line);color:var(--muted)}.film-stage{padding:30px 25px}.chain{display:flex;gap:12px;align-items:center;min-height:125px}.chain-event{border:1px solid #405c6e;padding:20px 12px;border-radius:8px;flex:1;min-width:0;transition:border-color .3s,background .3s;text-align:center}.chain-event b{display:block;font-size:13px}.chain-event small{font:10px ui-monospace,monospace;color:var(--muted)}.chain-event.active{border-color:var(--cyan);background:#153438}.chain-event.broken{border-color:var(--bad);background:#3b1d27}.chain-arrow{color:var(--cyan);font-size:22px}.verdicts{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:25px}.verdict{border:1px solid var(--line);padding:15px;border-radius:7px;background:#0d1821}.verdict span{display:block;font:10px ui-monospace,monospace;color:var(--muted);text-transform:uppercase}.verdict b{font-size:21px;font-weight:500}.green{color:var(--good)}.red{color:var(--bad)}.film-caption{padding:25px;border-top:1px solid var(--line);min-height:170px}.film-caption h3{margin:6px 0;font-size:24px}.film-caption p{color:var(--muted);font-size:15px;max-width:800px}.film-controls{display:flex;align-items:center;gap:15px;padding:16px 25px;border-top:1px solid var(--line)}.film-controls input{flex:1;accent-color:var(--accent);min-width:40px}.steps{display:flex;gap:8px;padding:0 25px 20px;flex-wrap:wrap}.steps button{font-size:10px}.scope-note{font-size:12px;color:var(--muted);max-width:900px;line-height:1.7}.shot{margin:35px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}.shot-viewport{max-height:680px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.shot img{width:100%;height:auto;display:block}.shot-mobile .shot-viewport{max-width:414px;margin:0 auto}.shot-mobile img{max-width:390px;margin:0 auto}.shot figcaption a{display:inline-block;margin-left:8px}.shot figcaption{padding:17px 22px;font-size:12px;line-height:1.6;color:var(--muted)}.shot-pending{padding:30px;border:1px dashed #53606b;background:#101820;color:var(--muted);font-size:14px}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}.proof{padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--panel)}.proof h3{font-size:16px;margin:10px 0}.proof p{font-size:13px;color:var(--muted)}footer{border-top:1px solid var(--line);margin-top:50px;padding:35px 0 55px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}@media(max-width:1100px){.layout{grid-template-columns:170px minmax(0,1fr);gap:30px;padding:0 22px}.lanes{gap:10px}.lane{padding:10px}.diagram{padding:15px}}@media(max-width:850px){.layout{display:block}.toc{position:relative;margin-top:20px;max-height:none}.toc nav{display:grid;grid-template-columns:1fr 1fr}.hero .kicker{margin-top:40px}.lanes{grid-template-columns:1fr}.chain{flex-wrap:wrap}.chain-event{flex-basis:26%}.proof-grid{grid-template-columns:1fr}.hero{padding-bottom:35px}}@media(max-width:520px){body{font-size:17px}.layout{padding:0 16px}h1{letter-spacing:-2px}.deck{font-size:19px}.visual-head{flex-wrap:wrap}.verdicts{grid-template-columns:1fr}.prose table{display:block;overflow:auto}.hero-links{flex-wrap:wrap}.chain-event{flex-basis:38%}.film-stage{padding:20px 12px}.brief{padding:20px}footer{flex-direction:column;gap:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{.toc,.controls,.film-controls,.steps{display:none}.layout{display:block}body{background:white;color:black}.visual,.node,.proof{background:white;color:black}}
