:root{
  --bg:#f8fafc;--fg:#0f172a;--muted:#475569;--panel:#ffffff;--border:#e2e8f0;
  --accent:#b77900;--accent-fg:#ffffff;--top:rgba(248,250,252,.95);--footer:#f1f5f9;
  --warn:#fffbeb;--warn-border:#fde68a;--blue-badge:#2563eb;--card-shadow:0 1px 3px 0 rgb(0 0 0 / 0.1);
}
html.dark{
  --bg:#0b0f17;--fg:#f1f5f9;--muted:#94a3b8;--panel:#131b28;--border:#1e293b;
  --accent:#f5b400;--accent-fg:#0f172a;--top:rgba(11,15,23,.95);--footer:#0c111c;
  --warn:#1a1913;--warn-border:#382e11;--blue-badge:#60a5fa;--card-shadow:0 1px 3px 0 rgb(0 0 0 / 0.5);
}
body{margin:0;background:var(--bg);color:var(--fg);font:16px/1.65 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:2px}
main{max-width:960px;margin:0 auto;padding:28px 20px 64px}
.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 24px;background:var(--top);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.topbar a{text-decoration:none;font-weight:700}
.brand{display:flex;align-items:center;gap:10px;color:var(--fg);font-size:18px}
.brand img{width:32px;height:32px;object-fit:cover;border-radius:8px}
.topbar nav{display:flex;gap:18px;align-items:center}
.topbar nav a{color:var(--muted);font-size:14px;transition:color .15s}
.topbar nav a:hover{color:var(--fg)}
.header-actions{display:flex;align-items:center;gap:12px}
.theme-toggle{border:1px solid var(--border);background:var(--panel);color:var(--fg);border-radius:8px;padding:7px 12px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
.top-cta,.cta,.footer-cta{background:var(--accent);color:var(--accent-fg)!important;padding:9px 16px;border-radius:8px;font-weight:700;text-decoration:none;display:inline-block;transition:transform .15s,opacity .15s}
.top-cta:hover,.cta:hover,.footer-cta:hover{opacity:.92;transform:translateY(-1px)}
.eyebrow{color:var(--blue-badge);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800;margin-bottom:8px}
h1{font-size:clamp(32px,5.5vw,52px);line-height:1.15;margin:8px 0 16px;font-weight:800;letter-spacing:-0.02em}
h2{font-size:clamp(22px,3vw,30px);line-height:1.25;margin:40px 0 16px;font-weight:700;letter-spacing:-0.01em;border-top:1px solid var(--border);padding-top:28px}
h3{font-size:18px;margin:20px 0 10px;font-weight:700}
p{margin:12px 0}
.deck{font-size:19px;line-height:1.55;color:var(--muted);margin-bottom:20px}
.cta-row{margin:24px 0}
.toc,.proof-card,.related,.article-intro{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:20px;margin:22px 0;box-shadow:var(--card-shadow)}
.toc h2,.proof-card h2,.related h2,.article-intro h2{font-size:19px;margin:0 0 12px;border-top:none;padding-top:0}
.toc ol{columns:2;column-gap:32px;margin:0;padding-left:20px}
.toc li{break-inside:avoid;margin:4px 0}
.scene-beat{background:var(--panel);border:1px solid var(--border);border-left:4px solid #3b82f6;border-radius:8px;padding:16px 18px;margin:18px 0;box-shadow:var(--card-shadow)}
.scene-header{display:flex;align-items:center;gap:8px;font-weight:800;font-size:13px;color:#2563eb;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
html.dark .scene-header{color:#60a5fa}
.scene-visual{font-size:14.5px;font-style:italic;color:var(--muted);margin-bottom:8px;line-height:1.5}
.scene-spoken{font-size:15px;color:var(--fg);font-weight:600}
.myth-box{background:var(--warn);border:1px solid var(--warn-border);border-left:4px solid #ef4444;border-radius:8px;padding:16px 18px;margin:18px 0}
.myth-title{color:#dc2626;font-weight:800;font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}
html.dark .myth-title{color:#f87171}
.myth-body{font-size:15px;line-height:1.55}
.decision-box{background:var(--panel);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:8px;padding:16px 18px;margin:18px 0;box-shadow:var(--card-shadow)}
.decision-box p{margin:6px 0;font-size:15px}
.data-table-wrap{overflow-x:auto;margin:18px 0}
.data-table{width:100%;border-collapse:collapse;font-size:14px;background:var(--panel);border:1px solid var(--border);border-radius:8px}
.data-table th,.data-table td{padding:10px 14px;border:1px solid var(--border);text-align:left}
.data-table th{background:rgba(0,0,0,.03);font-weight:700}
html.dark .data-table th{background:rgba(255,255,255,.04)}
.field-protocol{background:var(--panel);border:1px solid var(--border);border-left:4px solid #10b981;border-radius:8px;padding:16px 18px;margin:18px 0;box-shadow:var(--card-shadow)}
.field-protocol h3{margin:0 0 10px;font-size:15px;text-transform:uppercase;letter-spacing:.05em;color:#059669}
html.dark .field-protocol h3{color:#34d399}
.field-protocol ol{margin:0;padding-left:20px}
.field-protocol li{margin:6px 0;font-size:15px;line-height:1.5}
.section-nav-hint{font-size:14px;color:var(--muted);margin-top:14px}
.visual-slot{margin:20px 0;background:var(--panel);border:1px solid var(--border);border-radius:10px;overflow:hidden;box-shadow:var(--card-shadow)}
.visual-slot img{display:block;width:100%;height:auto}
.visual-slot figcaption{font-size:13px;color:var(--muted);padding:10px 14px;border-top:1px solid var(--border)}
.site-footer{border-top:1px solid var(--border);background:var(--footer);color:var(--muted);padding:36px 20px 24px;margin-top:50px}
.footer-grid{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.footer-grid h2{font-size:15px;margin:0 0 10px;color:var(--fg);border-top:none;padding-top:0}
.footer-grid a{display:block;text-decoration:none;font-weight:600;margin:6px 0;font-size:14px}
.footer-note{max-width:1040px;margin:24px auto 0;padding-top:16px;border-top:1px solid var(--border);font-size:13px;text-align:center}
@media(max-width:860px){
  .topbar{align-items:flex-start;flex-direction:column}
  .topbar nav{flex-wrap:wrap;gap:12px}
  .toc ol{columns:1}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .footer-grid{grid-template-columns:1fr}
  .header-actions{width:100%;justify-content:space-between}
}