@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Plex Mono";src:url(fonts/ibm-plex-mono-latin-700-normal.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Plex Sans";src:url(fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex Sans";src:url(fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  --bg:#070706; --panel:#0C0B08; --panel2:#12100B; --line:#27231A; --line2:#3A3322;
  --ink:#EFE8D2; --mute:#9A927A; --dim:#615B49;
  --gold:#F3BA2F; --leg:#FFD970; --joint:#FF7A2B; --up:#9AD27C;
  --mono:"Plex Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --sans:"Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --top:38px; --foot:26px;
  color-scheme:dark;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.5 var(--mono);-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
::selection{background:var(--gold);color:#000}
.gold{color:var(--gold)} .mute{color:var(--mute)} .dim{color:var(--dim)} .joint{color:var(--joint)} .up{color:var(--up)} .ink{color:var(--ink)}
.b{font-weight:700}
:focus-visible{outline:2px solid var(--leg);outline-offset:1px}

/* top bar */
.top{position:sticky;top:0;z-index:20;height:var(--top);display:flex;align-items:stretch;background:#0A0906;border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;padding:0 10px 0 12px;border-right:1px solid var(--line)}
.logo svg{width:22px;height:22px;display:block}
.tabs{display:flex;min-width:0;overflow-x:auto;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tab{display:flex;align-items:center;padding:0 12px;border-right:1px solid var(--line);color:var(--mute);text-decoration:none;white-space:nowrap;font-size:12.5px}
.tab:hover{color:var(--ink)}
.tab[aria-current="page"]{background:var(--gold);color:#0A0906;font-weight:700}
.top-r{margin-left:auto;display:flex;align-items:stretch;white-space:nowrap}
.top-r>*{display:flex;align-items:center;gap:7px;padding:0 12px;border-left:1px solid var(--line);font-size:12.5px;text-decoration:none}
.top-r .k{color:var(--dim)}
.top-r .hatch{color:var(--joint);font-weight:600}
.top-r .buy{background:var(--ink);color:#0A0906;font-weight:700}
.top-r .buy:hover{background:#fff}
.top-r button:hover,.top-r a:hover{color:var(--leg)}
.top-r .buy:hover{color:#0A0906}

/* status bar */
.status{position:fixed;left:0;right:0;bottom:0;z-index:20;height:var(--foot);display:flex;align-items:center;gap:0;background:#0A0906;border-top:1px solid var(--line);font-size:12px;color:var(--mute)}
.status .name{background:var(--gold);color:#0A0906;font-weight:700;padding:0 10px;height:100%;display:flex;align-items:center}
.status .path{padding:0 10px;color:var(--dim)}
.status .r{margin-left:auto;padding:0 12px;display:flex;gap:14px;white-space:nowrap}
main{padding-bottom:var(--foot)}

/* shared bits */
.prompt{color:var(--dim);font-size:12.5px}
.prompt b{color:var(--ink);font-weight:500}
.chev{color:var(--gold);font-weight:700}
.btn{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 14px;border:1px solid var(--line2);background:var(--panel2);color:var(--ink);font-weight:600;font-size:12.5px;text-decoration:none;white-space:nowrap}
.btn:hover{border-color:var(--leg);color:var(--leg)}
.btn.solid{background:var(--gold);border-color:var(--gold);color:#0A0906}
.btn.solid:hover{background:var(--leg);border-color:var(--leg);color:#0A0906}
.rowbox{display:flex;align-items:center;gap:10px;border:1px solid var(--line2);background:var(--panel);padding:0 0 0 10px;min-height:32px;min-width:0}
.rowbox .lab{color:var(--dim);font-size:11.5px;flex:0 0 auto}
.rowbox .val{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}
.rowbox .copy{flex:0 0 auto;align-self:stretch;padding:0 12px;border-left:1px solid var(--line2);color:var(--mute);font-size:12px}
.rowbox .copy:hover{color:var(--leg)}
.h{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-weight:600}
.pad{padding:18px 20px}
table{border-collapse:collapse;width:100%}
th{font-weight:600;text-align:left;color:#0A0906;background:var(--gold);padding:2px 8px;white-space:nowrap;font-size:12px}
td{padding:2px 8px;white-space:nowrap;font-size:12.5px;font-variant-numeric:tabular-nums}
td.num,th.num{text-align:right}
tr.sel td{background:#1B170C}
.scroll{overflow:auto;scrollbar-width:thin;scrollbar-color:var(--line2) transparent}

/* live view */
.live{display:grid;grid-template-columns:minmax(0,44fr) minmax(0,56fr);grid-template-rows:minmax(0,1fr) 240px;height:calc(100dvh - var(--top) - var(--foot));min-height:640px}
.live>section{min-width:0;min-height:0}
.hero{padding:14px 20px 12px;display:flex;flex-direction:column;gap:10px;overflow:auto;scrollbar-width:none}
.word{font-weight:700;font-size:clamp(44px,5.4vw,80px);line-height:.95;letter-spacing:.02em;color:transparent;-webkit-text-stroke:1.6px var(--leg);margin:2px 0 0 -2px;user-select:none}
.word i{font-style:normal;-webkit-text-stroke:1.6px var(--joint)}
.tag{font-size:15px;font-weight:700;line-height:1.35;max-width:36ch;margin:0;text-wrap:balance}
.lede{color:var(--mute);margin:0;max-width:58ch;font-size:12.5px}
.lede b{color:var(--ink);font-weight:600}
.stats{color:var(--mute);font-size:12.5px;margin:0}
.stats b{color:var(--ink);font-weight:600}
.stats .sep{color:var(--dim);padding:0 3px}
.pool{border:1px dashed var(--line2);padding:8px 10px;color:var(--mute);font-size:12.5px;max-width:64ch}
.pool b{color:var(--gold);font-weight:700}
.pool a{color:var(--joint);text-decoration:none;font-weight:600}
.cta{display:flex;gap:8px;flex-wrap:wrap}
.hero .rowbox{max-width:64ch}
.man{color:var(--mute);text-decoration:none;font-size:12.5px}
.man:hover{color:var(--leg)}

.viewer{border-left:1px solid var(--line);display:flex;flex-direction:column;background:var(--panel)}
.vbar{display:flex;align-items:center;gap:10px;height:30px;padding:0 10px;border-bottom:1px solid var(--line);font-size:12px;white-space:nowrap;min-width:0}
.vbar .nav{display:flex;align-items:center;gap:6px;color:var(--mute)}
.vbar .nav button{width:20px;height:20px;border:1px solid var(--line2);color:var(--ink);line-height:1}
.vbar .nav button:hover{border-color:var(--leg);color:var(--leg)}
.vbar .who{font-weight:700;color:var(--gold)}
.vbar .url{color:var(--mute);overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}
.vbar .open{color:var(--mute);text-decoration:none}
.vbar .open:hover{color:var(--leg)}
.frame{position:relative;flex:1;min-height:0;overflow:hidden;background:#F5F2E9;color:#1E1D19;font-family:var(--sans)}
.page{position:absolute;inset:0 0 auto 0;transition:transform 1.6s cubic-bezier(.3,.1,.2,1)}
.pg-top{display:flex;align-items:center;gap:22px;height:48px;padding:0 20px;border-bottom:1px solid #DDD8C8;background:#FBF9F3;font-size:13.5px;white-space:nowrap}
.pg-brand{display:flex;align-items:center;gap:9px;font-weight:600;font-size:15px}
.pg-brand span{width:20px;height:20px;border-radius:6px;display:block}
.pg-top .sp{margin-left:auto;border:1px solid #DDD8C8;border-radius:7px;padding:5px 46px 5px 11px;color:#8A8676;font-size:12.5px;background:#fff}
.pg-body{display:grid;grid-template-columns:200px minmax(0,1fr) 170px;gap:0}
.pg-side{padding:18px 16px;border-right:1px solid #E4DFD0;font-size:13px;display:flex;flex-direction:column;gap:11px;color:#55524A}
.pg-side .on{color:#8A5A00;font-weight:600;background:#F2E7C4;margin:-4px -8px;padding:4px 8px;border-radius:5px}
.pg-main{padding:22px 30px 60px;font-size:14px;line-height:1.62;min-width:0}
.pg-main h1{font-size:26px;line-height:1.2;margin:0 0 12px;font-weight:600}
.pg-main h2{font-size:18.5px;margin:22px 0 8px;font-weight:600}
.pg-main p{margin:0 0 11px}
.pg-main li{margin:0 0 7px}
.pg-main ol,.pg-main ul{margin:0 0 12px;padding-left:22px}
.pg-main a{color:#2456C9;text-decoration:none}
.pg-toc{padding:20px 14px;font-size:12px;color:#77735F;display:flex;flex-direction:column;gap:9px}
.pg-toc b{color:#55524A;font-weight:600}
.pg-toc .on{color:#2456C9}
.crawl{position:absolute;left:0;top:0;width:66px;height:66px;margin:-33px 0 0 -33px;pointer-events:none;transition:transform 1.5s cubic-bezier(.5,.05,.2,1);filter:drop-shadow(0 3px 6px rgba(40,30,0,.28));z-index:3}
.hl{outline:2px solid var(--joint);outline-offset:2px;border-radius:2px;background:#FFE9B0}
.vlog{border-top:1px solid var(--line);padding:7px 10px 8px;font-size:12px;display:flex;flex-direction:column;gap:2px;min-height:62px}
.vlog .l{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--mute)}
.vlog .say{color:var(--ink)}
.vlog .say b{color:var(--joint)}

.procs{border-top:1px solid var(--line);display:flex;flex-direction:column}
.meters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2px 22px;padding:8px 12px 6px;font-size:12px}
.meter{display:flex;gap:6px;white-space:nowrap;overflow:hidden}
.meter .n{color:var(--gold);width:1.2em;text-align:right;flex:0 0 auto}
.meter .bar{flex:1;min-width:0;overflow:hidden;color:var(--joint);letter-spacing:-1px}
.meter .bar.g{color:var(--leg)}
.meter .v{color:var(--mute);flex:0 0 auto}
.facts{color:var(--mute)}
.facts b{color:var(--ink);font-weight:600}
.procs .scroll{flex:1;min-height:0}
.procs td:last-child{color:var(--dim);overflow:hidden;text-overflow:ellipsis;max-width:0;width:99%}
.procs td.nm{font-weight:700}
.procs td.nm.own{color:var(--joint)}
.st-R{color:var(--up)} .st-W{color:var(--leg)}
.reqs{border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--panel);display:flex;flex-direction:column}
.reqs .scroll{flex:1;min-height:0;padding:6px 10px 8px;font-size:12px}
.req{display:flex;gap:9px;white-space:nowrap}
.req .t{color:var(--dim)} .req .c{color:var(--leg);font-weight:600} .req .m{color:var(--mute)} .req .ok{color:var(--up)} .req .u{color:var(--ink);overflow:hidden;text-overflow:ellipsis;min-width:0} .req .k{color:var(--dim);flex:0 0 auto}
.subbar{display:flex;justify-content:space-between;align-items:center;height:26px;padding:0 10px;border-bottom:1px solid var(--line);font-size:12px;color:var(--dim)}

/* inner pages */
.doc{max-width:1180px;margin:0 auto;padding:22px 20px 60px;display:flex;flex-direction:column;gap:18px}
.doc h1{font-size:22px;margin:4px 0 0;font-weight:700;letter-spacing:.01em}
.doc h1 span{color:var(--gold)}
.doc .sub{color:var(--mute);margin:0;max-width:70ch}
.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.card{border:1px solid var(--line);background:var(--panel);padding:12px 14px;min-width:0}
.card .v{font-size:22px;font-weight:700;margin-top:4px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.card .s{color:var(--mute);font-size:12px;margin-top:2px}
.panel{border:1px solid var(--line);background:var(--panel);min-width:0}
.panel>.subbar{color:var(--mute)}
.tablewrap{overflow-x:auto}
.tablewrap td{padding:5px 10px;border-top:1px solid #17140E}
.tablewrap th{padding:4px 10px}
.tablewrap a{color:var(--leg);text-decoration:none}
.search{width:100%;height:34px;border:1px solid var(--line2);background:var(--panel);color:var(--ink);font:inherit;padding:0 12px}
.search::placeholder{color:var(--dim)}
.two{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:14px;align-items:start}
.ladder{display:flex;flex-direction:column}
.rung{display:grid;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:14px;border-top:1px solid var(--line)}
.rung:first-child{border-top:0}
.rung .ver{font-size:20px;font-weight:700;color:var(--dim)}
.rung.now .ver{color:var(--gold)}
.rung .t{font-weight:700}
.rung p{margin:3px 0 8px;color:var(--mute);max-width:62ch}
.prog{height:14px;border:1px solid var(--line2);background:#0A0906;position:relative}
.prog i{position:absolute;left:0;top:0;bottom:0;background:repeating-linear-gradient(90deg,var(--gold) 0 3px,transparent 3px 5px)}
.prog.o i{background:repeating-linear-gradient(90deg,var(--joint) 0 3px,transparent 3px 5px)}
.progl{display:flex;justify-content:space-between;color:var(--mute);font-size:12px;margin-top:4px}
.bars{padding:12px 14px;display:flex;flex-direction:column;gap:9px}
.barrow{display:grid;grid-template-columns:150px minmax(0,1fr) 62px;gap:10px;align-items:center;font-size:12.5px}
.barrow .nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.barrow .num{text-align:right;color:var(--mute)}
.ask{padding:14px;display:flex;flex-direction:column;gap:10px}
.ask .fake{border:1px solid var(--line2);background:#0A0906;padding:10px 12px;color:var(--dim)}
.split{display:flex;height:34px;border:1px solid var(--line2)}
.split div{display:flex;align-items:center;padding:0 12px;font-weight:700;color:#0A0906;white-space:nowrap;overflow:hidden}
.form{padding:16px;display:flex;flex-direction:column;gap:12px}
.field{display:flex;flex-direction:column;gap:5px}
.field label{color:var(--mute);font-size:12px}
.field input{height:36px;border:1px solid var(--line2);background:#0A0906;color:var(--ink);font:inherit;padding:0 12px;width:100%}
.field input::placeholder{color:var(--dim)}
.field select{height:36px;border:1px solid var(--line2);background:#0A0906;color:var(--ink);font:inherit;padding:0 8px;width:100%}
.already{font-size:12.5px;color:var(--mute)}
.already summary{cursor:pointer}
.btn:disabled{opacity:.55;cursor:wait}
.steps{margin:0;padding:14px 14px 14px 34px;display:flex;flex-direction:column;gap:9px;color:var(--mute)}
.steps b{color:var(--ink)}
.note{color:var(--joint);font-size:12.5px;min-height:19px}
.manual{max-width:860px}
.manual section{border-top:1px solid var(--line);padding-top:14px}
.manual h2{font-size:14px;margin:0 0 8px;color:var(--gold);font-weight:700}
.manual p{margin:0 0 9px;color:#CFC8B2;max-width:74ch}
.manual ul{margin:0 0 9px;padding-left:20px;color:#CFC8B2}
.manual li{margin-bottom:5px}
.flow{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-weight:700}
.flow span{border:1px solid var(--leg);padding:4px 10px;background:var(--panel)}
.flow em{font-style:normal;color:var(--joint)}

@media (max-width:1040px){
  .live{display:flex;flex-direction:column;height:auto;min-height:0}
  .hero{overflow:visible}
  .viewer{border-left:0;border-top:1px solid var(--line)}
  .frame{flex:none;height:440px}
  .procs .scroll,.reqs .scroll{max-height:300px}
  .reqs{border-left:0}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .two{grid-template-columns:minmax(0,1fr)}
  .top-r .hide-m{display:none}
}
@media (max-width:640px){
  body{font-size:12.5px}
  .top-r .hide-s{display:none}
  .tab{padding:0 10px}
  .hero{padding:14px 16px}
  .pg-body{grid-template-columns:minmax(0,1fr)}
  .pg-side,.pg-toc{display:none}
  .pg-main{padding:16px 18px 50px;font-size:13.5px}
  .pg-top{gap:14px;padding:0 14px}
  .pg-top .lk,.pg-top .sp{display:none}
  .frame{height:380px}
  .meters{grid-template-columns:minmax(0,1fr)}
  .procs th:nth-child(1),.procs td:nth-child(1),.procs th:nth-child(6),.procs td:nth-child(6),.procs th:nth-child(7),.procs td:nth-child(7){display:none}
  .doc{padding:18px 16px 60px}
  .rung{grid-template-columns:minmax(0,1fr);gap:4px}
  .barrow{grid-template-columns:110px minmax(0,1fr) 54px}
  .status .path,.status .hide-s{display:none}
}
@media (prefers-reduced-motion:reduce){.page,.crawl{transition:none}}

a.copy{display:flex;align-items:center;text-decoration:none}

/* whitepaper */
.man a{color:inherit;text-decoration:none}
.man a:hover{color:var(--gold)}
.man .sep{margin:0 8px;color:var(--dim)}
.paper{max-width:900px}
.paper section{scroll-margin-top:52px;padding-bottom:6px}
.paper h2{display:flex;align-items:baseline;gap:12px;letter-spacing:.04em}
.paper h2 .no{color:var(--joint);font-weight:500}
.paper ol{margin:0 0 9px;padding-left:22px;color:#CFC8B2}
.paper ol li{margin-bottom:6px}
.paper b{color:var(--ink)}
.toc{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin:4px 0 22px}
.toc button{display:flex;gap:10px;align-items:baseline;text-align:left;background:var(--panel);border:0;color:#CFC8B2;font:inherit;font-size:12.5px;padding:9px 12px;cursor:pointer}
.toc button span{color:var(--joint)}
.toc button:hover{background:#15130C;color:var(--gold)}
.wpsteps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 12px}
.wpsteps>div{border:1px solid var(--line);background:var(--panel);padding:11px 13px}
.wpsteps b{color:var(--gold);font-size:12.5px}
.wpsteps p{margin:5px 0 0;font-size:12.5px;color:var(--mute);max-width:none}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 12px}
.chips span{border:1px solid var(--line2);background:var(--panel);padding:3px 9px;font-size:12px;color:#CFC8B2}
.wpt{width:100%;border-collapse:collapse;margin:4px 0 12px;font-size:12.5px}
.wpt th{background:var(--gold);color:#000;text-align:left;padding:5px 10px;font-weight:700;font-size:11.5px}
.wpt td{border-bottom:1px solid var(--line);padding:7px 10px;color:#CFC8B2;vertical-align:top;white-space:normal;overflow-wrap:anywhere}
.wpt th{white-space:normal}
.wpt td:first-child{color:var(--ink);white-space:nowrap;font-weight:600}
.mono{word-break:break-all}
.formula{border:1px solid var(--leg);background:var(--panel);margin:4px 0 12px}
.formula div{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px;padding:9px 13px;border-bottom:1px solid var(--line)}
.formula div:last-child{border-bottom:0}
.formula span{color:var(--mute)}
.formula b{color:var(--leg)}
.paper .split{margin:6px 0 12px}
@media (max-width:640px){.toc{grid-template-columns:1fr 1fr}.wpsteps{grid-template-columns:1fr}.formula div{grid-template-columns:1fr;gap:2px}.wpt td:first-child{white-space:normal}}
