/* AI pages only: a dark stack band, the one dark moment on the page (like the homepage footer).
   The hero itself comes from hero-demo.css. */
body.ai-theme { --ai-ink: #0b0d12; --ai-sky: #60a5fa; }
/* ---------- Dark stack band (kept: one dark moment, like the homepage footer) ---------- */
body.ai-theme :is(.techstack-section, #models, #stack) { position: relative; background: var(--ai-ink); color: #e8edf8; border-top: 1px solid rgba(255, 255, 255, 0.13); border-bottom: 1px solid rgba(255, 255, 255, 0.13); background-image: radial-gradient(60% 80% at 100% 0%, rgba(59, 130, 246, 0.2), transparent 60%), radial-gradient(rgba(255, 255, 255, 0.06) 1px, transparent 1.3px); background-size: auto, 28px 28px; }
body.ai-theme :is(.techstack-section, #models, #stack) :is(h2, .section-title) { color: #fff; }
body.ai-theme :is(.techstack-section, #models, #stack) :is(.section-sub, .ed-head p, .section-header p) { color: #a9b6cf; }
/* Section labels use the shared style (assets/primitives.css), lightened for the dark band. */
body.ai-theme :is(.techstack-section, #models, #stack) :is(.hs-eyebrow, .ed-label) { color: rgba(255, 255, 255, 0.72); }
body.ai-theme :is(.techstack-section, #models, #stack) .hs-eyebrow .dot { display: none; }
body.ai-theme :is(.techstack-section, #models, #stack) :is(.hs-eyebrow, .ed-label)::before { background: #93c5fd; }
body.ai-theme .techstack-group { border-top-color: rgba(255, 255, 255, 0.13); }
body.ai-theme .techstack-group:first-child { border-top-color: rgba(255, 255, 255, 0.4); }
body.ai-theme .techstack-group h4 { color: var(--ai-sky); }
body.ai-theme .techstack-pill, body.ai-theme .techstack-pill span { color: #e3eaf8; }
body.ai-theme .loc-stack > div { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.13); }
body.ai-theme .loc-stack h3 { color: var(--ai-sky); }
body.ai-theme .loc-stack p { color: #dbe4f5; }

