:root{--bg:#070907;--surface:#0b100b;--surface2:#101710;--line:#1e291c;--line2:#34452f;--text:#edf3e8;--muted:#7c8978;--dim:#465143;--acid:#b7ff3c;--green:#64f5a0;--amber:#efcb62;--red:#ff6978;--sans:"Geist",Inter,Arial,sans-serif;--mono:"IBM Plex Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}
.docs-topbar{position:fixed;z-index:30;top:0;left:0;right:0;height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;border-bottom:1px solid var(--line);background:rgba(7,9,7,.92);backdrop-filter:blur(16px)}
.docs-brand{display:flex;align-items:center;gap:10px}.docs-brand strong{font-size:15px;letter-spacing:-.03em}.docs-brand i{font:700 8px var(--mono);font-style:normal;color:var(--acid)}.docs-mark{width:30px;height:30px;border:1px solid var(--line2);border-radius:5px;overflow:hidden}.docs-mark img{width:100%;height:100%;object-fit:cover}.docs-topbar nav{display:flex;gap:28px;color:var(--muted);font:600 8px var(--mono);letter-spacing:.04em;text-transform:uppercase}.docs-topbar nav a:hover{color:var(--acid)}
.docs-sidebar{position:fixed;z-index:20;top:66px;bottom:0;left:0;width:286px;padding:30px 32px;border-right:1px solid var(--line);overflow:auto;background:var(--bg)}.mascot-lockup{display:flex;align-items:center;gap:13px;margin-bottom:28px}.mascot-lockup img{width:54px;height:54px;border:1px solid var(--line2);border-radius:7px}.mascot-lockup b,.mascot-lockup span{display:block;font:700 7px/1.4 var(--mono)}.mascot-lockup b{color:var(--acid);margin-bottom:5px}.mascot-lockup span{color:var(--dim)}
.docs-search{height:42px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid var(--line2);border-radius:5px;background:var(--surface);margin-bottom:36px}.docs-search kbd{color:var(--acid);font:700 11px var(--mono)}.docs-search input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:var(--text);font:500 11px var(--sans)}.docs-search input::placeholder{color:#566152}.nav-group{display:grid;margin-bottom:30px}.nav-group small,.docs-toc>small{margin-bottom:12px;color:var(--dim);font:700 7px var(--mono);letter-spacing:.07em}.nav-group a{padding:7px 0 7px 12px;border-left:1px solid transparent;color:var(--muted);font-size:12px;font-weight:500;transition:.15s}.nav-group a:hover{color:var(--text)}.nav-group a.active{color:var(--acid);border-left-color:var(--acid)}.side-note{position:relative;margin:44px 0 0;padding-top:18px;border-top:1px solid var(--line);color:var(--dim);font:600 7px/1.7 var(--mono)}
.docs-main{width:min(850px,calc(100% - 650px));margin-left:350px;padding:122px 0 130px}.docs-hero{padding-bottom:74px;border-bottom:1px solid var(--line)}.kicker,.section-index{margin:0 0 19px;color:var(--acid);font:700 8px/1 var(--mono);letter-spacing:.07em}.hero-line{display:grid;grid-template-columns:1fr 138px;gap:58px;align-items:start}.docs-hero h1{margin:0;font-size:62px;line-height:.92;letter-spacing:-.065em;font-weight:700}.docs-hero p:not(.kicker){max-width:710px;margin:26px 0 0;color:var(--muted);font-size:15px;line-height:1.72;letter-spacing:-.012em}.hero-mascot{width:138px;height:138px;border:1px solid var(--line2);border-radius:10px;overflow:hidden;background:var(--surface)}.hero-mascot img{width:100%;height:100%;object-fit:cover}.status-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:42px;border-left:1px solid var(--line);border-top:1px solid var(--line)}.status-row>div{padding:14px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.status-row small{display:block;margin-bottom:8px;color:var(--dim);font:700 7px var(--mono)}.status-row b{font:700 10px var(--mono)}.amber{color:var(--amber)}
.doc-section{padding:76px 0;border-bottom:1px solid var(--line);scroll-margin-top:80px}.doc-section h2{margin:0;font-size:39px;line-height:1.02;letter-spacing:-.05em;font-weight:650}.doc-section h3{margin:36px 0 14px;font-size:17px;letter-spacing:-.025em}.doc-section>p:not(.section-index):not(.callout):not(.muted){max-width:770px;margin:22px 0 0;color:var(--muted);font-size:14px;line-height:1.75}.muted{color:var(--dim);font-size:11px}.doc-section code{font-family:var(--mono)}
.codeblock{position:relative;margin-top:28px;border:1px solid var(--line2);border-radius:7px;background:#080c08}.codeblock pre{margin:0;padding:20px 22px;color:#dbe5d7;font:500 12px/1.75 var(--mono);overflow:auto}.codeblock button{position:absolute;right:10px;top:10px;height:28px;border:1px solid var(--line2);border-radius:4px;background:var(--surface2);color:var(--muted);font:700 6px var(--mono);cursor:pointer}.codeblock button:hover{color:var(--acid);border-color:#526b46}
.pipeline{margin-top:34px;border-top:1px solid var(--line)}.pipeline article{display:grid;grid-template-columns:48px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.pipeline article>b{color:var(--acid);font:700 8px var(--mono)}.pipeline strong{font:650 15px var(--sans)}.pipeline p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.65}.fact{display:flex;justify-content:space-between;gap:20px;margin-top:24px;padding:14px 16px;border:1px solid var(--line);color:var(--dim);font:700 7px var(--mono)}.fact code{color:#aab6a6}
.rulebox{display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;border-left:1px solid var(--line2);border-top:1px solid var(--line2)}.rulebox>div{padding:15px;border-right:1px solid var(--line2);border-bottom:1px solid var(--line2)}.rulebox small{display:block;color:var(--dim);font:700 6px var(--mono);margin-bottom:9px}.rulebox b{font:700 16px var(--mono);color:var(--text)}.clean-list{margin:18px 0 0;padding:0;list-style:none}.clean-list li{position:relative;padding:10px 0 10px 20px;border-bottom:1px solid #121912;color:var(--muted);font-size:13px;line-height:1.6}.clean-list li:before{content:"—";position:absolute;left:0;color:var(--acid)}.clean-list code{color:#dce6d8}.callout{margin:28px 0 0;padding:17px 19px;border-left:2px solid var(--acid);background:rgba(183,255,60,.035);color:var(--muted);font-size:12px;line-height:1.7}.callout b{color:var(--acid)}
.signal-table{margin-top:32px;border-top:1px solid var(--line)}.signal-table>div{display:grid;grid-template-columns:150px 60px 1fr;gap:18px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}.signal-table b,.signal-table span{font:700 8px var(--mono)}.signal-table b{color:var(--text)}.signal-table span{color:var(--acid)}.signal-table p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.decision-row{display:grid;grid-template-columns:repeat(3,1fr);margin-top:26px;border:1px solid var(--line)}.decision-row span{padding:14px;color:var(--muted);font:600 8px/1.5 var(--mono);border-right:1px solid var(--line)}.decision-row span:last-child{border-right:0}.decision-row b{color:var(--text)}
.provider-list{margin-top:30px}.provider-list article{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.provider-list article>span{color:var(--dim);font:700 7px var(--mono)}.provider-list b{font-size:15px}.provider-list p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.65}
.env-table{margin-top:30px;border-top:1px solid var(--line)}.env-table>div{display:grid;grid-template-columns:250px 1fr;gap:30px;padding:15px 0;border-bottom:1px solid var(--line)}.env-table code{color:#d7e1d3;font-size:10px}.env-table span{color:var(--muted);font-size:12px}.arch{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:28px;padding:18px;border:1px solid var(--line2);border-radius:6px;background:var(--surface)}.arch code{padding:6px 8px;border:1px solid var(--line);color:#cfd9cb;font-size:9px}.arch i{color:var(--acid);font-style:normal}.last{border-bottom:0}
.docs-toc{position:fixed;top:112px;right:34px;width:250px;display:grid}.docs-toc a{padding:7px 0;color:var(--muted);font-size:11px}.docs-toc a:hover{color:var(--acid)}.rail-fact{margin-top:24px;padding-top:17px;border-top:1px solid var(--line)}.rail-fact small{display:block;margin-bottom:8px;color:var(--dim);font:700 6px var(--mono)}.rail-fact code,.rail-fact b{color:#9ca998;font:700 8px var(--mono)}.rail-fact b{color:var(--amber)}
@media(max-width:1150px){.docs-toc{display:none}.docs-main{width:calc(100% - 360px);margin-left:330px;padding-right:28px}}
@media(max-width:760px){.docs-topbar nav{display:none}.docs-sidebar{display:none}.docs-main{width:auto;margin:0;padding:100px 20px 80px}.hero-line{grid-template-columns:1fr}.hero-mascot{width:100px;height:100px}.docs-hero h1{font-size:48px}.status-row,.rulebox,.decision-row{grid-template-columns:1fr 1fr}.signal-table>div{grid-template-columns:110px 50px 1fr}.env-table>div{grid-template-columns:1fr;gap:7px}.docs-topbar{padding:0 18px}}

/* V5.2 docs type cleanup */
:root{
  --sans:"Geist",Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;
}
body{font-synthesis:none;text-rendering:optimizeLegibility;line-height:1.62}
.docs-topbar nav{font-size:9px;line-height:1.35}
.docs-brand strong{font-size:16px;line-height:1}
.docs-brand i{font-size:9px;line-height:1.25}
.mascot-lockup b,.mascot-lockup span{font-size:8px;line-height:1.5}
.docs-search input{font-size:12px;line-height:1.4}
.nav-group small,.docs-toc>small{font-size:8px;line-height:1.35}
.nav-group a{font-size:12px;line-height:1.45;padding-top:8px;padding-bottom:8px}
.side-note{font-size:8px;line-height:1.7}
.kicker,.section-index{font-size:9px;line-height:1.35}
.docs-hero p:not(.kicker){font-size:15px;line-height:1.75}
.status-row small{font-size:8px;line-height:1.35}
.status-row b{font-size:10px;line-height:1.2}
.doc-section>p:not(.section-index):not(.callout):not(.muted){font-size:14px;line-height:1.78}
.codeblock pre{font-size:12px;line-height:1.75}
.pipeline article>b{font-size:8px;line-height:1.35}
.pipeline p,.signal-table p,.provider-list p,.env-table span{font-size:12px;line-height:1.65}
.fact{font-size:8px;line-height:1.5}
.rulebox small{font-size:8px;line-height:1.35}
.clean-list li{font-size:13px;line-height:1.65}
.callout{font-size:12px;line-height:1.72}
.signal-table b,.signal-table span,.decision-row span{font-size:8px;line-height:1.45}
.env-table code{font-size:10px;line-height:1.45}
.arch code{font-size:9px;line-height:1.4}
.docs-toc a{font-size:11px;line-height:1.45;padding-top:8px;padding-bottom:8px}


/* ============================================================
   V5.6 — docs responsive pass
   ============================================================ */
@media(min-width:1500px){
  .docs-main{
    width:min(920px,calc(100% - 720px))!important;
    margin-left:360px!important;
  }
}
@media(max-width:1180px){
  .docs-sidebar{width:250px!important;padding-left:24px!important;padding-right:24px!important}
  .docs-main{
    width:min(780px,calc(100% - 330px))!important;
    margin-left:290px!important;
    padding-right:20px!important;
  }
  .docs-toc{display:none!important}
}
@media(max-width:900px){
  .docs-topbar{padding:0 18px!important}
  .docs-sidebar{display:none!important}
  .docs-main{
    width:calc(100% - 40px)!important;
    max-width:820px!important;
    margin:0 auto!important;
    padding-top:110px!important;
  }
  .hero-line{grid-template-columns:1fr 110px!important;gap:28px!important}
  .hero-mascot{width:110px!important;height:110px!important}
  .docs-hero h1{font-size:52px!important}
}
@media(max-width:640px){
  .docs-topbar{height:62px!important;padding:0 12px!important}
  .docs-topbar nav{gap:13px!important}
  .docs-topbar nav a:nth-child(2){display:none}
  .docs-main{
    width:calc(100% - 24px)!important;
    padding-top:92px!important;
    padding-bottom:80px!important;
  }
  .hero-line{grid-template-columns:1fr!important}
  .hero-mascot{
    width:92px!important;
    height:92px!important;
    order:-1;
  }
  .docs-hero h1{font-size:44px!important}
  .docs-hero p:not(.kicker){font-size:14px!important}
  .status-row{grid-template-columns:1fr!important}
  .doc-section{padding:58px 0!important}
  .doc-section h2{font-size:34px!important}
  .pipeline article{grid-template-columns:38px 1fr!important;gap:14px!important}
  .codeblock pre{padding:18px 14px!important;font-size:11px!important}
}
@media(max-width:420px){
  .docs-brand i{display:none}
  .docs-topbar nav a:first-child{display:none}
  .docs-main{width:calc(100% - 16px)!important}
  .docs-hero h1{font-size:39px!important}
}


/* V5.7 — docs typography QA */
.docs-brand strong{line-height:1!important}
.docs-brand i,
.docs-topbar nav{font-size:9px!important;line-height:1.35!important}
.docs-search input{font-size:12px!important;line-height:1.45!important}
.nav-group small,.docs-toc>small{font-size:8px!important;line-height:1.4!important}
.nav-group a{font-size:12px!important;line-height:1.5!important;padding-top:8px!important;padding-bottom:8px!important}
.docs-hero h1{line-height:1.02!important}
.docs-hero p:not(.kicker){line-height:1.72!important}
.status-row small{font-size:8px!important;line-height:1.4!important}
.status-row b{line-height:1.25!important}
.doc-section>p:not(.section-index):not(.callout):not(.muted){line-height:1.75!important}
.codeblock pre{line-height:1.72!important}
.pipeline p,.signal-table p,.provider-list p,.env-table span{line-height:1.62!important}
.clean-list li,.callout{line-height:1.68!important}
.docs-toc a{line-height:1.45!important;padding-top:8px!important;padding-bottom:8px!important}
