/* ApiToll v2 — light, editorial, toll-amber accent */

@font-face{font-family:Inter;font-weight:400;font-style:normal;src:url(https://fonts.bunny.net/inter/files/inter-latin-400-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Inter;font-weight:500;font-style:normal;src:url(https://fonts.bunny.net/inter/files/inter-latin-500-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Inter;font-weight:600;font-style:normal;src:url(https://fonts.bunny.net/inter/files/inter-latin-600-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:Inter;font-weight:700;font-style:normal;src:url(https://fonts.bunny.net/inter/files/inter-latin-700-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:JBMono;font-weight:400;font-style:normal;src:url(https://fonts.bunny.net/jetbrains-mono/files/jetbrains-mono-latin-400-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:JBMono;font-weight:600;font-style:normal;src:url(https://fonts.bunny.net/jetbrains-mono/files/jetbrains-mono-latin-600-normal.woff2) format("woff2");font-display:swap}

:root{
  --ink:#0e0d0b;
  --ink-2:#2a2723;
  --muted:#6b6660;
  --muted-2:#948e86;
  --line:#e6e1d8;
  --paper:#ffffff;
  --paper-2:#faf7f0;
  --tint:#fff6d6;
  --tint-line:#f0d87a;
  --accent:#d9a400;
  --accent-ink:#1a1200;
  --accent-hover:#bc8c00;
  --good:#067a3a;
  --good-bg:#eaf8ef;
  --good-line:#a7dcbc;
  --bad:#a8321f;
  --code-bg:#0e1116;
  --code-fg:#e3e4e6;
  --shadow:0 0 0 3px rgba(217,164,0,.18);
  --sans:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
  --mono:JBMono,ui-monospace,SFMono-Regular,Consolas,monospace;
  color-scheme:light;
}
html[data-theme="dark"]{
  --ink:#ece7de;
  --ink-2:#cfc8bc;
  --muted:#8f877c;
  --muted-2:#6b645b;
  --line:#2a2620;
  --paper:#131210;
  --paper-2:#1b1814;
  --tint:#2a2210;
  --tint-line:#5a4416;
  --accent:#f1b928;
  --accent-ink:#1a1200;
  --accent-hover:#ffcc4a;
  --good:#4ec07f;
  --good-bg:#17291f;
  --good-line:#2c4d3a;
  --bad:#e07560;
  --code-bg:#07080b;
  --code-fg:#e3e4e6;
  --shadow:0 0 0 3px rgba(241,185,40,.22);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{margin:0;padding:0}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;text-decoration-thickness:2px}
a:hover{color:var(--accent-hover)}

/* layout */
.container{width:100%;max-width:1180px;margin:0 auto;padding:0 28px}
.prose{max-width:720px}
main{flex:1}

/* header */
.site-header{
  background:var(--paper);
  border-bottom:1px solid var(--line);
  position:sticky;top:0;z-index:50;
}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:28px;height:68px}
.brand{font-weight:700;font-size:19px;letter-spacing:-.015em;color:var(--ink);text-decoration:none}
.brand:hover{color:var(--ink);text-decoration:none}
.brand .mark{display:inline-block;width:11px;height:11px;background:var(--accent);margin-right:9px;vertical-align:1px;border-radius:2px}
.nav{display:flex;gap:26px;font-size:15px}
.nav a{color:var(--muted);text-decoration:none}
.nav a:hover{color:var(--ink)}
.nav a.on{color:var(--ink);font-weight:500}
.nav-toggle{display:none;background:none;border:1px solid var(--line);color:var(--ink);padding:8px 14px;border-radius:6px;cursor:pointer;font:inherit;font-size:14px}
@media (max-width:820px){
  .nav{display:none}
  .nav.open{display:flex;position:absolute;top:68px;right:0;left:0;background:var(--paper);padding:16px 28px;flex-direction:column;border-bottom:1px solid var(--line);gap:14px}
  .nav-toggle{display:inline-flex}
}

/* typography */
h1,h2,h3,h4{font-family:var(--sans);color:var(--ink);margin:0 0 .5em;line-height:1.15;letter-spacing:-.02em;font-weight:700}
h1{font-size:clamp(2.4rem,5.2vw,4rem);letter-spacing:-.035em;font-weight:700}
h2{font-size:clamp(1.7rem,3.2vw,2.3rem);margin-top:0}
h3{font-size:1.25rem;font-weight:600;letter-spacing:-.01em}
h4{font-size:.82rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 .8em}
p{margin:0 0 1.1em}
.lede{font-size:1.28rem;line-height:1.55;color:var(--ink-2);max-width:640px;margin-bottom:0}

/* sections */
.section{padding:80px 0;border-bottom:1px solid var(--line)}
.section:last-of-type{border-bottom:none}
.section-head{margin-bottom:48px;max-width:680px}
.section-head h4{margin-bottom:14px}
.section-head p{color:var(--muted);font-size:1.05rem;margin:12px 0 0}

/* hero */
.hero{padding:80px 0 60px;background:var(--paper)}
.hero h1{max-width:900px;margin-bottom:.4em}
.hero .lede{margin-bottom:48px}

/* fork */
.fork{display:grid;grid-template-columns:1fr;gap:18px;margin:0 0 20px}
@media (min-width:720px){.fork{grid-template-columns:1fr 1fr}}
.fork-card{
  display:block;padding:28px 28px 26px;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:4px;
  text-decoration:none;color:var(--ink);
  transition:border-color .15s,background .15s,transform .15s;
  position:relative;
}
.fork-card:hover{border-color:var(--accent);background:var(--paper-2);color:var(--ink);text-decoration:none;transform:translateY(-1px)}
.fork-icon{font-size:34px;display:block;margin-bottom:12px;line-height:1}
.fork-card h3{margin:0 0 6px;font-size:1.2rem;font-weight:600}
.fork-card p{margin:0;color:var(--muted);font-size:.96rem;line-height:1.5}
.fork-card .arrow{position:absolute;top:28px;right:28px;color:var(--muted);font-family:var(--mono);font-size:14px}
.fork-card:hover .arrow{color:var(--accent)}
.fork-note{color:var(--muted);font-size:.92rem;margin-top:18px}
.fork-note code{font-family:var(--mono);font-size:.88em;background:var(--paper-2);padding:2px 6px;border-radius:3px}

/* code */
code,kbd,samp{font-family:var(--mono);font-size:.94em}
p code,li code{background:var(--paper-2);border:1px solid var(--line);padding:.08em .4em;border-radius:3px;font-size:.88em}
pre{
  background:var(--code-bg);
  color:var(--code-fg);
  border-radius:6px;
  padding:20px 22px;
  overflow-x:auto;
  font-size:.92rem;
  line-height:1.6;
  margin:1.5em 0;
  position:relative;
  font-family:var(--mono);
}
pre code{color:inherit;background:none;padding:0;border:none;font-size:inherit}
.tok-c{color:#8b949e}
.tok-k{color:#ff9e64}
.tok-s{color:#a5d6a3}
.tok-n{color:#f3c969}
.tok-hdr{color:#d2a8ff}
.tok-status{color:#a5d6a3}
.tok-url{color:#79c0ff}

.copy-btn{position:absolute;top:10px;right:10px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#cfd2d6;padding:4px 11px;border-radius:4px;font:inherit;font-size:12px;cursor:pointer;font-family:var(--mono)}
.copy-btn:hover{background:rgba(255,255,255,.14);color:#fff}
.copy-btn.ok{color:var(--accent);border-color:var(--accent)}

/* numbered list (no pills, no cards — just type) */
.numbered{list-style:none;counter-reset:s;padding:0;margin:0;display:grid;gap:28px}
.numbered li{counter-increment:s;padding-left:56px;position:relative;min-height:40px}
.numbered li::before{
  content:counter(s,decimal-leading-zero);
  position:absolute;left:0;top:-2px;
  font-family:var(--mono);font-weight:600;font-size:1.05rem;
  color:var(--accent);
  letter-spacing:-.02em;
}
.numbered h3{margin:0 0 6px;font-size:1.1rem;font-weight:600}
.numbered p{margin:0;color:var(--muted);font-size:.98rem}

/* stats ticker */
.ticker{
  background:var(--paper-2);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:20px 0;
  font-family:var(--mono);font-size:.92rem;
}
.ticker .container{display:flex;flex-wrap:wrap;gap:28px 40px;align-items:baseline;justify-content:center;color:var(--muted)}
.ticker .t-val{color:var(--ink);font-weight:600}
.ticker .t-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--good);margin-right:8px;vertical-align:1px;animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}

/* kv table */
.kv{
  display:grid;grid-template-columns:160px 1fr;gap:12px 36px;
  margin:32px 0;padding:24px 0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.kv dt{color:var(--muted);font-family:var(--mono);font-size:.86rem;letter-spacing:.02em;margin:0}
.kv dd{margin:0;color:var(--ink);font-size:.98rem}
@media (max-width:560px){.kv{grid-template-columns:1fr;gap:2px 0}.kv dt{margin-top:10px}}

/* breadcrumb */
.crumb{color:var(--muted);font-size:.92rem;margin:0 0 24px}
.crumb a{color:var(--muted);text-decoration:none}
.crumb a:hover{color:var(--ink)}

/* two-column rows */
.two-col{display:grid;grid-template-columns:1fr;gap:40px;align-items:start}
@media (min-width:820px){.two-col{grid-template-columns:1fr 1fr;gap:80px}}
.two-col h2{margin-bottom:.3em}

/* catalog strip */
.catalog-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}
.catalog-list > li{
  border-bottom:1px solid var(--line);
  padding:28px 0;
  display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;
}
.catalog-list h3{margin:0 0 4px;font-size:1.15rem;font-weight:600}
.catalog-list p{margin:0;color:var(--muted);font-size:.98rem}
.catalog-list .price{font-family:var(--mono);color:var(--ink);font-size:.98rem;white-space:nowrap}
.catalog-list .status{display:inline-block;margin-left:8px;font-size:.78rem;font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;padding:2px 7px;border-radius:3px;background:var(--tint);color:var(--accent-hover)}
html[data-theme="dark"] .catalog-list .status{color:var(--accent)}
.catalog-list .status.live{background:var(--good-bg);color:var(--good)}

/* partner callout */
.callout{
  background:var(--tint);
  border:1px solid var(--tint-line);
  border-radius:6px;
  padding:36px 32px;
  margin:0;
}
.callout h2{margin-top:0;margin-bottom:.3em}
.callout p{color:var(--ink-2);max-width:620px}
.callout .lede{color:var(--ink-2);font-size:1.1rem}

/* buttons */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:13px 22px;
  font:inherit;font-weight:500;font-size:15px;
  cursor:pointer;
  text-decoration:none;
  border:1px solid var(--ink);
  background:var(--ink);color:var(--paper);
  border-radius:4px;
  transition:background .15s,border-color .15s,color .15s;
}
.btn:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);text-decoration:none}
.btn-alt{background:var(--paper);color:var(--ink);border-color:var(--ink)}
.btn-alt:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}

/* footer */
.site-footer{
  background:var(--paper-2);
  border-top:1px solid var(--line);
  padding:56px 0 36px;
  color:var(--muted);
  font-size:14px;
  margin-top:auto;
}
.footer-grid{display:grid;grid-template-columns:2fr repeat(4,1fr);gap:40px;margin-bottom:40px}
@media (max-width:820px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}}
.footer-col h5{color:var(--ink);font-size:.78rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;margin:0 0 14px}
.footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}
.footer-col a{color:var(--muted);text-decoration:none}
.footer-col a:hover{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent)}
.footer-about{max-width:360px}
.footer-about p{color:var(--muted);font-size:.95rem;margin:10px 0 0}
.footer-bottom{padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted-2)}

/* utility */
.mono{font-family:var(--mono)}
.muted{color:var(--muted)}
.small{font-size:.92rem}
.pill{display:inline-block;padding:3px 10px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--muted);font-family:var(--mono);margin:0 6px 4px 0;background:var(--paper)}
.pill.live{color:var(--good);border-color:var(--good-line);background:var(--good-bg)}
.pill.soon{color:var(--accent-hover);border-color:var(--tint-line);background:var(--tint)}
html[data-theme="dark"] .pill.soon{color:var(--accent)}

/* forms */
input,textarea,select{
  font:inherit;background:var(--paper);border:1px solid var(--line);
  color:var(--ink);border-radius:4px;padding:12px 14px;width:100%;
}
input:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--shadow)}

/* theme toggle */
.theme-toggle{
  display:inline-flex;align-items:center;justify-content:center;
  width:36px;height:36px;margin-left:6px;
  background:transparent;border:1px solid var(--line);
  color:var(--muted);border-radius:6px;cursor:pointer;font:inherit;
  transition:border-color .15s,color .15s,background .15s;
}
.theme-toggle:hover{color:var(--ink);border-color:var(--muted-2)}
.theme-toggle svg{width:16px;height:16px;display:block}
.theme-toggle .ico-sun{display:none}
.theme-toggle .ico-moon{display:block}
html[data-theme="dark"] .theme-toggle .ico-sun{display:block}
html[data-theme="dark"] .theme-toggle .ico-moon{display:none}
@media (max-width:820px){
  .theme-toggle{margin-left:auto}
}
