:root{--bg:#14110f;--panel:#1d1a17;--panel-2:#252119;--line:#3a332c;--ink:#f4efe8;--ink-2:#cfc6bb;--muted:#9b9188;--faint:#776e66;--gold:#dda63f;--teal:#69a6a2;--rust:#cd6a51;--moss:#8bbf7a;--sky:#7fa8c9;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:ui-sans-serif,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{max-width:1340px;margin:0 auto;padding:0 34px 90px}.k{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.hidden{display:none!important}button{font-family:inherit}.bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 34px;border-bottom:1px solid var(--line);flex-wrap:wrap}.brand{font-family:var(--serif);font-size:20px;letter-spacing:-.01em;text-decoration:none}.brand span{font-family:var(--mono);font-size:9px;letter-spacing:.22em;color:var(--faint);display:block;text-transform:uppercase;margin-top:2px}.barright{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--muted)}.linkbtn{background:transparent;border:1px solid var(--line);color:var(--ink-2);font-size:12.5px;padding:7px 14px;border-radius:2px;cursor:pointer;text-decoration:none;display:inline-block}.linkbtn:hover{border-color:var(--muted);color:var(--ink)}.linkbtn.solid{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:500}.linkbtn.solid:hover{background:#fff}.hero{max-width:1340px;margin:0 auto;padding:78px 34px 60px}.eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,6vw,68px);line-height:1;margin:0 0 20px;letter-spacing:-.02em;max-width:15ch}.lede{max-width:58ch;color:var(--ink-2);font-size:17px;margin:0 0 12px}.thesis{margin:30px 0 0;padding-left:20px;border-left:2px solid var(--gold);max-width:56ch;color:var(--ink);font-family:var(--serif);font-size:20px;line-height:1.4}.ctarow{display:flex;gap:12px;align-items:center;margin-top:40px;flex-wrap:wrap}.ctanote{font-size:12.5px;color:var(--faint)}.gatestrip{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:1px;gap:1px;background:var(--line);border:1px solid var(--line);margin:70px 0 0}.gs{background:var(--bg);padding:18px 16px 22px}.gs .n{font-family:var(--mono);font-size:9.5px;color:var(--gold);letter-spacing:.16em}.gs .t{font-family:var(--serif);font-size:19px;margin:7px 0 6px}.gs .q{font-size:11.5px;color:var(--faint);line-height:1.4}.three{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-gap:44px;gap:44px;margin-top:80px;padding-top:40px;border-top:1px solid var(--line)}.three h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 10px}.three p{color:var(--muted);font-size:14px;margin:0;line-height:1.6}.split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}.splitleft{border-right:1px solid var(--line);padding:34px 56px 40px;display:flex;flex-direction:column;background:var(--bg)}.splitleft .brand{text-decoration:none;display:inline-block;margin-bottom:auto}.leftbody{max-width:44ch;padding:48px 0 36px}.leftbody h1{font-size:clamp(27px,2.7vw,37px);margin:0 0 20px;max-width:17ch}.leftbody .thesis{margin:0 0 34px;font-size:16.5px;padding-left:18px;max-width:40ch}.gatelist{list-style:none;margin:0;padding:0;max-width:42ch}.gatelist li{display:grid;grid-template-columns:32px auto 1fr;grid-column-gap:12px;column-gap:12px;align-items:baseline;padding:7px 0;border-top:1px solid var(--line)}.gatelist li:last-child{border-bottom:1px solid var(--line)}.gatelist .glnum{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;color:var(--gold)}.gatelist .glname{font-family:var(--serif);font-size:17px;color:var(--ink-2);white-space:nowrap}.gatelist .glq{font-size:11.5px;color:var(--faint);line-height:1.35}.leftfoot{font-size:12.5px;color:var(--faint);max-width:44ch;margin:0;line-height:1.6}.splitright{background:var(--panel);display:flex;align-items:center;padding:48px;border-left:1px solid var(--line)}.authwrap{width:100%;max-width:370px}.authwrap h2{font-family:var(--serif);font-weight:400;font-size:34px;margin:0 0 10px;letter-spacing:-.015em}.authwrap .sub{color:var(--muted);font-size:14px;margin:0 0 32px}.splitright input[type=email],.splitright input[type=password]{background:var(--bg)}label{display:block;font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0 0 7px}input[type=email],input[type=password],textarea{width:100%;background:var(--panel);border:1px solid var(--line);color:var(--ink);font-family:var(--sans);font-size:14.5px;padding:11px 13px;border-radius:2px}input:focus,textarea:focus{outline:none;border-color:var(--gold)}.field{margin-bottom:18px}.submit{width:100%;background:var(--ink);color:var(--bg);border:0;font-size:14.5px;font-weight:500;padding:12px;border-radius:2px;cursor:pointer;margin-top:6px}.submit:disabled{opacity:.5;cursor:default}.msg{margin-top:18px;font-size:13.5px;padding:12px 14px;border-radius:2px;line-height:1.5}.msg.err{background:rgba(205,106,81,.12);border:1px solid rgba(205,106,81,.4);color:#e59a83}.msg.ok{background:rgba(139,191,122,.1);border:1px solid rgba(139,191,122,.35);color:#a9d69a}.toggle{margin-top:24px;font-size:13.5px;color:var(--muted);text-align:center}.toggle button{background:none;border:0;color:var(--gold);cursor:pointer;font-size:13.5px;padding:0;text-decoration:underline}.tabs{display:flex;border:1px solid var(--line);border-radius:3px;overflow:hidden}.tabs button{background:transparent;border:0;color:var(--muted);font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;padding:9px 16px;cursor:pointer}.tabs button+button{border-left:1px solid var(--line)}.tabs button:hover{color:var(--ink)}.tabs button[aria-selected=true]{background:var(--ink);color:var(--bg)}.topbar{gap:14px;justify-content:space-between;margin:28px 0 0}.pathrow,.topbar{display:flex;flex-wrap:wrap;align-items:center}.pathrow{gap:9px}.path{background:transparent;border:1px solid var(--line);color:var(--ink-2);font-size:12.5px;padding:7px 15px;border-radius:2px;cursor:pointer;white-space:nowrap}.path:hover{border-color:var(--muted);color:var(--ink)}.path[aria-pressed=true][data-path=boot]{background:var(--panel-2);border-color:var(--moss);color:var(--ink)}.path[aria-pressed=true][data-path=vc]{background:var(--panel-2);border-color:var(--sky);color:var(--ink)}.spinewrap{position:relative;margin:30px 0 0}.curvebox{position:relative;height:118px;margin-bottom:2px}.curvebox svg{display:block;width:100%;height:118px;overflow:visible}.curvelab{font-size:8.5px;letter-spacing:.12em;white-space:nowrap;pointer-events:none}.curvecap,.curvelab{position:absolute;font-family:var(--mono);text-transform:uppercase;color:var(--faint)}.curvecap{left:0;top:0;font-size:9px;letter-spacing:.16em}.railline{right:0;background:var(--line)}.railfill,.railline{position:absolute;left:0;top:0;height:1px}.railfill{background:var(--gold);transition:width .35s cubic-bezier(.2,.7,.3,1)}.nodes{position:relative;display:grid;grid-template-columns:repeat(7,1fr)}.node{background:transparent;border:0;cursor:pointer;padding:0 7px 4px;text-align:left;display:flex;flex-direction:column}.node .dot{width:13px;height:13px;border-radius:50%;border:1px solid var(--line);background:var(--bg);margin:-6px 0 13px;transition:.2s}.node .num{font-family:var(--mono);font-size:9.5px;color:var(--muted);letter-spacing:.16em;margin-bottom:7px}.node .nm{font-family:var(--serif);font-size:19px;color:var(--muted);line-height:1.1;transition:.2s}.node .q{font-size:11px;color:var(--faint);margin-top:5px;line-height:1.35;max-width:16ch}.node:hover .nm{color:var(--ink-2)}.node[aria-current=true] .dot{background:var(--gold);border-color:var(--gold);box-shadow:0 0 0 5px rgba(221,166,63,.16)}.node[aria-current=true] .nm{color:var(--ink)}.node[aria-current=true] .num{color:var(--gold)}.node.done .dot{background:var(--line);border-color:var(--line)}.gate{border-top:1px solid var(--line);margin-top:34px;padding-top:32px;display:grid;grid-template-columns:1.2fr .8fr;grid-gap:50px;gap:50px}.gate h2{font-weight:400;font-size:clamp(28px,3.6vw,44px);line-height:1.03;margin:0 0 8px;letter-spacing:-.02em}.gate .qline,.gate h2{font-family:var(--serif)}.gate .qline{font-size:19px;color:var(--ink-2);margin:0 0 18px;max-width:52ch}.gate p.body{color:var(--ink-2);margin:0 0 24px;max-width:56ch}.moves{list-style:none;margin:0;padding:0;counter-reset:m}.moves li{counter-increment:m;position:relative;padding:0 0 15px 40px;color:var(--ink-2);font-size:14.5px;line-height:1.55;max-width:58ch}.moves li:before{content:counter(m,decimal-leading-zero);position:absolute;left:0;top:1px;font-family:var(--mono);font-size:10px;color:var(--gold);letter-spacing:.08em}.moves li b{color:var(--ink);font-weight:600}.src{font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--faint);display:block;margin-top:6px}.src:before{content:"Source — "}.pathbox{margin-top:8px;border:1px solid var(--line);border-radius:3px;padding:16px 18px;background:var(--panel)}.pathbox.boot{border-left:2px solid var(--moss)}.pathbox.vc{border-left:2px solid var(--sky)}.pathbox .hd{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:9px}.pathbox.boot .hd{color:var(--moss)}.pathbox.vc .hd{color:var(--sky)}.pathbox .tx{font-size:14px;color:var(--ink-2);line-height:1.55}.trig{border:1px solid var(--line);border-radius:3px;padding:14px 16px;margin-bottom:10px;background:var(--panel)}.trig .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.17em;text-transform:uppercase;margin-bottom:7px;display:flex;align-items:center;gap:8px}.trig .lbl:before{content:"";width:6px;height:6px;border-radius:1px;flex:none}.trig.proof .lbl{color:var(--moss)}.trig.proof .lbl:before{background:var(--moss)}.trig.falsx .lbl{color:var(--gold)}.trig.falsx .lbl:before{background:var(--gold)}.trig.stop .lbl{color:var(--rust)}.trig.stop .lbl:before{background:var(--rust)}.trig.stop{border-color:rgba(205,106,81,.4);background:rgba(205,106,81,.09)}.trig .txt{font-size:14px;color:var(--ink-2);line-height:1.5}.tools{margin-top:26px;border-top:1px solid var(--line);padding-top:18px}.tool{font-size:13px;color:var(--muted);line-height:1.45;padding:8px 0 8px 15px;border-left:1px solid var(--line);margin-bottom:3px}.tool b{color:var(--ink-2);font-weight:500}.tool .who{color:var(--faint);font-size:11.5px;display:block;margin-top:2px}.gapnote{margin-top:16px;font-size:12.5px;color:var(--rust);line-height:1.5;padding-left:15px;border-left:1px solid rgba(205,106,81,.45)}.notebox{margin-top:30px;border-top:1px solid var(--line);padding-top:20px}.notebox textarea{min-height:110px;resize:vertical;line-height:1.55}.noterow{display:flex;align-items:center;gap:14px;margin-top:10px}.savebtn{background:transparent;border:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;padding:8px 15px;border-radius:2px;cursor:pointer}.savebtn:hover{border-color:var(--gold);color:var(--ink)}.savestate{font-size:12px;color:var(--faint)}.railtable{overflow-x:auto;margin-top:14px}table.grid{border-collapse:collapse;width:100%;min-width:1040px}table.grid td,table.grid th{border:1px solid var(--line);vertical-align:top;padding:13px 14px;text-align:left}table.grid thead th{background:var(--panel);font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted);font-weight:400}table.grid td.rl{width:118px;background:var(--panel)}table.grid td.rl .t{font-family:var(--serif);font-size:20px;margin-bottom:5px}table.grid td.rl .g{font-size:11.5px;color:var(--faint);line-height:1.4}table.grid td .cell{font-size:13px;color:var(--ink-2);line-height:1.5}.r0 .t{color:var(--gold)}.r1 .t{color:var(--teal)}.r2 .t{color:var(--sky)}.r3 .t{color:var(--moss)}.intro{max-width:66ch;color:var(--ink-2);margin:6px 0 26px}.intro b{color:var(--ink)}.drow{border-top:1px solid var(--line);padding:15px 0;display:grid;grid-template-columns:170px 1fr;grid-gap:24px;gap:24px;align-items:start}.drow .dn{font-family:var(--serif);font-size:17px;color:var(--ink)}.drow .dn span{display:block;font-family:var(--mono);font-size:9px;color:var(--faint);letter-spacing:.16em;margin-top:3px}.opts{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:9px;gap:9px}.opt{border:1px solid var(--line);border-radius:3px;padding:11px 13px;cursor:pointer;background:transparent;text-align:left;color:var(--muted);font-size:12.5px;line-height:1.45}.opt:hover{border-color:var(--muted);color:var(--ink-2)}.opt .lv{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;text-transform:uppercase;margin-bottom:6px;color:var(--faint)}.opt[aria-pressed=true]{background:var(--panel-2);color:var(--ink)}.opt[data-lv="0"][aria-pressed=true]{border-color:var(--rust)}.opt[data-lv="0"][aria-pressed=true] .lv{color:var(--rust)}.opt[data-lv="1"][aria-pressed=true]{border-color:var(--gold)}.opt[data-lv="1"][aria-pressed=true] .lv{color:var(--gold)}.opt[data-lv="2"][aria-pressed=true]{border-color:var(--moss)}.opt[data-lv="2"][aria-pressed=true] .lv{color:var(--moss)}.opt.blank{opacity:.55;font-style:italic}.scorebar{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding:16px 0;display:flex;flex-wrap:wrap;gap:26px;align-items:baseline}.scorebar .big{font-family:var(--serif);font-size:34px;line-height:1;color:var(--gold)}.scorebar .lab{font-size:13px;color:var(--muted);max-width:52ch}.scorebar .lab b{color:var(--ink)}.resetbtn{background:transparent;border:1px solid var(--line);color:var(--muted);font-family:var(--mono);font-size:9.5px;letter-spacing:.15em;text-transform:uppercase;padding:7px 13px;border-radius:2px;cursor:pointer;margin-left:auto}.resetbtn:hover{color:var(--ink);border-color:var(--muted)}.glosgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:0 26px;gap:0 26px;margin-top:12px}.gt{border-top:1px solid var(--line);padding:11px 0}.gt .ab{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--gold)}.gt .fu{font-size:13.5px;color:var(--ink);margin:3px 0}.gt .de{font-size:12.5px;color:var(--muted);line-height:1.45}.search{width:100%;max-width:340px;margin-top:6px}.note{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);font-size:12.5px;color:var(--faint);max-width:80ch;line-height:1.6}@media (max-width:900px){.split{grid-template-columns:1fr;min-height:0}.splitleft{border-right:0;border-bottom:1px solid var(--line);padding:26px 22px 30px}.leftbody{padding:30px 0 26px;max-width:none}.gatelist,.leftfoot{display:none}.splitright{border-left:0;padding:36px 22px 60px;align-items:flex-start}.authwrap{max-width:none}}@media (max-width:1040px){.gate{grid-template-columns:1fr;gap:32px}.nodes{grid-template-columns:repeat(4,1fr);row-gap:24px}.curvebox,.railfill,.railline{display:none}.drow{grid-template-columns:1fr;gap:12px}.gatestrip{grid-template-columns:repeat(2,1fr)}.three{grid-template-columns:1fr;gap:28px}}@media (max-width:640px){.hero,.wrap{padding-left:18px;padding-right:18px}.bar{padding:16px 18px}.nodes{grid-template-columns:repeat(2,1fr)}.opts{grid-template-columns:1fr}}