/* Static documentation pages reuse the Astro-generated site chrome without
   Astro's scoped data attributes, so the shared header/footer rules must be
   defined here without attribute selectors. */
.nav{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);background:linear-gradient(180deg,#faf7f2d9,#faf7f2a6);border-bottom:1px solid var(--border)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;gap:2rem}
.brand{display:inline-flex;align-items:center;gap:.6rem;font-weight:700;letter-spacing:-.01em;font-size:1.05rem;color:var(--text);text-decoration:none}
.brand:hover{color:var(--text);text-decoration:none}
.brand-mark{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;color:var(--accent);background:radial-gradient(circle at 30% 30%,rgba(255,107,53,.28),transparent 70%);border-radius:8px}
.brand-mark svg{display:block;width:22px;height:22px}
.nav-links{display:none;align-items:center;gap:1.8rem;font-size:.92rem;color:var(--text-dim);font-weight:500}
.nav-links a{color:var(--text-dim);text-decoration:none}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--text);text-decoration:none}
.footer{border-top:1px solid var(--border);padding:2.5rem 0}
.footer-inner{display:flex;flex-direction:column;gap:1.5rem;align-items:center;text-align:center}
.footer-brand{display:inline-flex;align-items:center;gap:.5rem;font-weight:700}
.footer-credit{font-size:.92rem;color:var(--text-dim);line-height:1.6;margin:0}
.footer-credit a{color:var(--accent);font-weight:600;text-decoration:none}
.footer-credit a:hover{color:var(--accent-bright)}
.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.88rem;color:var(--text-muted)}
.footer-links a{color:var(--text-muted);text-decoration:none}
.footer-links a:hover{color:var(--text)}
@media(min-width:768px){.nav-links{display:flex}.footer-inner{flex-direction:row;justify-content:space-between;text-align:left}}
.docs-shell{max-width:1180px;margin-inline:auto;padding:clamp(2rem,5vw,4rem) 0 4rem;display:grid;grid-template-columns:240px minmax(0,780px);gap:clamp(2rem,5vw,4rem);align-items:start}.docs-sidebar{position:sticky;top:1.25rem;padding:1rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:16px}.docs-sidebar-title{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:.1rem .65rem .65rem}.docs-sidebar a{display:block;padding:.48rem .65rem;border-radius:8px;color:var(--text-dim);font-size:.9rem;text-decoration:none;line-height:1.25}.docs-sidebar a:hover{background:var(--bg);color:var(--text);text-decoration:none}.docs-sidebar a[aria-current="page"]{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent);font-weight:600}.docs{min-width:0}.docs-eyebrow{font-family:var(--font-mono);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin:0 0 .85rem}.docs h1{font-family:var(--font-display);font-weight:700;font-size:clamp(2.15rem,5vw,3.2rem);line-height:1.04;letter-spacing:-.025em;margin:0 0 1rem;color:var(--text)}.docs .lead{font-size:1.16rem;line-height:1.7;color:var(--text-dim);margin:0 0 1.75rem}.docs .page-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--text-muted);margin:-.7rem 0 1.8rem}.docs .toc{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 2.2rem;padding:0;list-style:none}.docs .toc a{font-family:var(--font-mono);font-size:.79rem;color:var(--text-dim);text-decoration:none;padding:.38rem .66rem;border:1px solid var(--border-strong);border-radius:999px}.docs .toc a:hover{color:var(--accent);border-color:var(--accent);text-decoration:none}.docs figure{margin:0 0 2.4rem}.docs figure img{width:100%;height:auto;display:block;border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-card)}.docs figure figcaption{font-size:.85rem;color:var(--text-muted);margin-top:.65rem;text-align:center}.docs h2{font-family:var(--font-display);font-weight:650;font-size:1.58rem;letter-spacing:-.01em;color:var(--text);margin:2.75rem 0 .85rem;scroll-margin-top:2rem}.docs h3{font-family:var(--font-display);font-weight:600;font-size:1.15rem;color:var(--text);margin:1.8rem 0 .55rem}.docs p{font-size:1.01rem;line-height:1.75;color:var(--text-dim);margin:0 0 1rem}.docs ul,.docs ol{color:var(--text-dim);line-height:1.72;padding-left:1.25rem;margin:0 0 1rem}.docs li{margin-bottom:.46rem}.docs li::marker{color:var(--accent)}.docs strong{color:var(--text);font-weight:600}.docs a{color:var(--accent);text-decoration:none}.docs a:hover{text-decoration:underline}.docs code{font-family:var(--font-mono);font-size:.88em;background:var(--bg-elev);border:1px solid var(--border);border-radius:6px;padding:.12em .4em;color:var(--text)}.docs pre{overflow:auto;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px;padding:1rem 1.1rem;margin:1rem 0 1.35rem}.docs pre code{background:none;border:0;padding:0;font-size:.88rem;line-height:1.65}.docs .callout{background:var(--bg-elev);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:12px;padding:1.05rem 1.2rem;margin:1.4rem 0}.docs .callout.warning{border-left-color:#e6a23c}.docs .callout.danger{border-left-color:#ef6a73}.docs .callout p:last-child{margin-bottom:0}.docs .callout-title{font-family:var(--font-display);font-weight:650;color:var(--text);margin-bottom:.25rem}.docs table{width:100%;border-collapse:collapse;margin:1.25rem 0 1.75rem;font-size:.94rem}.docs th{font-family:var(--font-mono);font-size:.76rem;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);text-align:left;padding:.6rem .7rem;border-bottom:1px solid var(--border-strong)}.docs td{padding:.68rem .7rem;border-bottom:1px solid var(--border);color:var(--text-dim);line-height:1.52;vertical-align:top}.docs td:first-child{color:var(--text);font-weight:600}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1.2rem 0 1rem}.guide-card{display:block;padding:1.05rem 1.15rem;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:14px;text-decoration:none;transition:border-color .15s var(--ease),transform .15s var(--ease)}.guide-card:hover{border-color:var(--accent);transform:translateY(-2px);text-decoration:none}.guide-card strong{display:block;font-family:var(--font-display);font-size:1.04rem;color:var(--text);margin-bottom:.28rem}.guide-card span{font-size:.9rem;line-height:1.5;color:var(--text-dim)}.mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1rem 0 1.4rem}.mini-card{padding:1rem;background:var(--bg-elev);border:1px solid var(--border);border-radius:12px}.mini-card strong{display:block;margin-bottom:.28rem}.mini-card p{font-size:.93rem;line-height:1.58;margin:0}.keycap{display:inline-block;font-family:var(--font-mono);font-size:.8em;line-height:1;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;padding:.24em .42em;background:var(--bg-elev);color:var(--text)}.docs-foot{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border)}.docs-foot a{font-family:var(--font-mono);font-size:.84rem}.status-pill{display:inline-block;font-family:var(--font-mono);font-size:.72rem;border:1px solid var(--border-strong);border-radius:999px;padding:.08rem .44rem;color:var(--text-dim);white-space:nowrap}.status-pill.accent{border-color:var(--accent);color:var(--accent)}
@media(max-width:900px){.docs-shell{grid-template-columns:1fr}.docs-sidebar{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.2rem}.docs-sidebar-title{grid-column:1/-1}.docs-sidebar a{font-size:.82rem}}
@media(max-width:640px){.docs-shell{padding-top:1.6rem}.docs-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-grid,.mini-grid{grid-template-columns:1fr}.docs table{display:block;overflow-x:auto}.docs h1{font-size:2.2rem}}
