/* Presentation-only atmosphere. Loaded after style.css; no layout or asset changes.
   Sky, lilac clouds and desert rose surround the original cinematic artwork.
   The archive controls now share the same airy palette and fine ink outlines. */
:root {
  color-scheme: light;
  --void-0: #edf4fa;
  --void-1: #f7fafb;
  --void-2: #e8eff7;
  --void-3: #dfe9f4;
  --void-violet: #eee8f5;
  --spice: #703951;
  --spice-hot: #315f86;
  --spice-dim: #70475b;
  --gold: #643852;
  --gold-leaf: #643852;
  --hazard: #703951;
  --cerulean: #25627e;
  --magenta: #793c62;
  --giger: #30677a;
  --giger-dim: #30677a;
  --bone: #293b53;
  --bone-mid: #4e596e;
  --bone-dim: #596177;
  --glow-gold: none;
  --glow-teal: none;
  --glow-violet: none;
  --hazard-stripe: linear-gradient(90deg, #9fc9e6, #d8c3e5, #e7bdc6, #e7d5ac);
  --check: repeating-conic-gradient(#e7d5ac 0% 25%, #d0e2f0 0% 50%) 50% / 18px 18px;
  --atmo-paper: #fffaf2;
  --atmo-line: #8b9bb1;
  --atmo-soft-line: rgba(65, 88, 122, 0.28);
  --atmo-cta: #315f86;
  --atmo-cta-hover: #244965;
  --atmo-depth: 0 10px 30px rgba(65, 88, 122, 0.09);
}

/* Light across the whole page: no scanlines, grid overlay or whole-body filter. */
body {
  background: linear-gradient(155deg, #e7f2fa, #f0edf7 42%, #faf3eb 75%, #e9f3fa);
}
body::before, body::after { content: none; }
a:hover { text-shadow: var(--glow-gold); }
.hud-header {
  background: linear-gradient(110deg, rgba(232, 243, 250, 0.98), rgba(247, 241, 247, 0.98));
  border-color: var(--atmo-soft-line);
  box-shadow: 0 4px 20px rgba(65, 88, 122, 0.08);
  backdrop-filter: none;
}
.hud-glyph {
  background: radial-gradient(circle, #fff4d6, #e2edf7);
  border-color: var(--atmo-line);
}
.hud-tag, .hud-title a, .kicker, .manifesto-kicker, .proclamation,
.stat-num, .chapter-plate, .spread-title, .rally, .stage-num, .stage-num.final,
.wc-glyph, .cx-num, .pc-num, .mid-stat, .jcb-num,
.join-thanks, .gate-sigil, .gate-title, .gate-error { text-shadow: none; }
.hud-dot { background: var(--cerulean); box-shadow: none; animation: none; }
.chapter-mark { color: rgba(72, 105, 146, 0.16); text-shadow: none; }
.chapter-title, .monumental-title, .oracle-text, .art-break-title {
  background: none;
  color: var(--bone);
  -webkit-text-fill-color: currentColor;
  filter: none;
}
.monumental-title, .art-break-title { color: #303950; }
.mandala-divider { filter: none; }
/* Keep every original sacred-geometry path, with fine ink rather than neon. */
.hud-glyph [stroke], .mandala-divider [stroke] { stroke: #547896; }
.hud-glyph [stroke="#39c7b4"], .mandala-divider [stroke="#39c7b4"],
.mandala-divider [stroke="#2fb7dd"] { stroke: #4e8195; }
.mandala-divider [stroke="#de3b8a"] { stroke: #956981; }
.hud-glyph [fill]:not([fill="none"]),
.mandala-divider [fill]:not([fill="none"]) { fill: #aa8053; }

/* Original cover composition and type positions, seen through a light veil. */
.cover-chapter {
  background: linear-gradient(125deg, #dceefa, #eee3f3 55%, #f8ecda);
  border-color: var(--atmo-soft-line);
}
.cover-art-bg { opacity: 1; filter: saturate(0.96); }
.cover-art-bg::after {
  background: radial-gradient(ellipse at 50% 40%, rgba(247, 246, 251, 0.84) 0%, rgba(240, 243, 250, 0.77) 48%, rgba(234, 243, 250, 0.32) 100%);
}
.proclamation { background: rgba(247, 250, 251, 0.94); border-color: var(--atmo-line); }
.nav-chip, .doc-btn {
  background: #f7fafb;
  color: var(--bone);
  border-color: var(--atmo-line);
  box-shadow: none;
}
.nav-chip:hover, .doc-btn:hover {
  background: #e0ecf6;
  color: #244965;
  border-color: #547896;
  box-shadow: none;
  text-shadow: none;
}
.nav-chip.cta, .gate-btn {
  background: var(--atmo-cta);
  color: var(--atmo-paper);
  border-color: var(--atmo-cta);
  box-shadow: 0 5px 16px rgba(49, 95, 134, 0.16);
  text-shadow: none;
}
.nav-chip.cta:hover, .gate-btn:hover {
  background: var(--atmo-cta-hover);
  border-color: var(--atmo-cta-hover);
  color: var(--atmo-paper);
  filter: none;
  text-shadow: none;
}

/* Section-specific broad washes; all grids, spacing and breakpoints stay native. */
#ch1 { background: linear-gradient(155deg, #e8f3fa, #f5edf5); }
#ch2 { background: linear-gradient(135deg, #e5f0fa, #ece8f6 65%, #f6ecf0); }
#ch3 { background: linear-gradient(145deg, #f4e9f0, #e8eff9 65%, #e5f3f8); }
.archive-section {
  background: linear-gradient(135deg, #e0eff8, #eceaf6);
  border-color: var(--atmo-soft-line);
}
.codex-section {
  background: linear-gradient(145deg, #e9f2f9, #f8efe2);
  border-color: var(--atmo-soft-line);
}
.launch-section { background: linear-gradient(130deg, #f7efe5, #f3e7ef, #eaf2fa); }
.partners-section {
  background: linear-gradient(135deg, #e5f1f8, #eee9f6, #f9f1e8);
  border-color: var(--atmo-soft-line);
}
.join-section {
  background: radial-gradient(ellipse at 15% 15%, #d8ecfa, transparent 65%),
              linear-gradient(135deg, #e8f2fa, #f0e2f0 65%, #f9eddc);
  border-color: var(--atmo-soft-line);
}
.rights-section { background: linear-gradient(145deg, #eef2f8, #f8f2ea); }

/* Explicitly replace hardcoded non-viewer dark card surfaces. */
.stat-box, .stage-card, .warrior-card, .codex-card, .launch-card,
.p-card, .join-contact, .join-docs, .note-box {
  background: linear-gradient(135deg, #f7fafb, #f4f0f7);
  border-color: var(--atmo-soft-line);
  box-shadow: var(--atmo-depth);
}
.stat-box { background: rgba(247, 250, 251, 0.96); }
.stage-card::before { box-shadow: none; }
.stage-card:hover, .warrior-card:hover {
  border-color: #728aa6;
  box-shadow: 0 14px 34px rgba(65, 88, 122, 0.13);
}
.stage-card-final, .steps-card {
  background: linear-gradient(125deg, #e3eff9, #f0e6f2 55%, #faf0dd);
  border-color: #8998b1;
  box-shadow: var(--atmo-depth);
}
.stage-card-final:hover { box-shadow: 0 14px 34px rgba(65, 88, 122, 0.13); }
.stage-rule-box, .rally-banner {
  background: linear-gradient(110deg, #e5eff8, #f4e8ee 60%, #f9f0df);
  border-color: var(--atmo-soft-line);
  box-shadow: var(--atmo-depth);
}
.warrior-card::before, .gate-card::before { border-color: rgba(91, 114, 145, 0.22); }
.warrior-card:hover::before { border-color: rgba(134, 82, 113, 0.3); }
.wc-glyph { color: #956981; }
.wc-need { border-color: var(--atmo-soft-line); }
.stage-chip, .stage-chip.chip-final {
  background: #e4edf5;
  color: #315c77;
  border-color: #819bb0;
}
.stage-chip.chip-gold {
  background: #703951;
  color: var(--atmo-paper);
  border-color: #703951;
  box-shadow: none;
}
.lc-mid, .join-counter-box {
  background: radial-gradient(ellipse at 50% 10%, #e5d9ef, transparent 85%), #f7f4fa;
  border-color: #ad8ca9;
  box-shadow: var(--atmo-depth);
}
.oracle-strip {
  background: linear-gradient(90deg, #e6f1f8, #eadff0 35%, #f6e6e8 65%, #f9eedb);
  border-color: var(--atmo-soft-line);
}
.oracle-glyph { animation: none; }
.pull-quote { background: linear-gradient(90deg, #eee1eb, transparent); }
.spread-art { border-color: var(--atmo-line); box-shadow: 0 14px 38px rgba(65, 88, 122, 0.15); }
.spread-caption {
  background: rgba(255, 250, 242, 0.95);
  color: #4e3d55;
}

/* The tarot keeps its native colors; only its existing text pane is veiled. */
.art-break { border-color: var(--atmo-soft-line); }
.art-break-img { filter: none; }
.art-break-img::after {
  background: linear-gradient(180deg, rgba(232, 243, 250, 0.2), transparent 22%, transparent 78%, rgba(240, 231, 242, 0.2));
}
.art-break-text {
  background: rgba(255, 250, 242, 0.94);
  box-shadow: 0 12px 40px rgba(65, 88, 122, 0.12);
}

/* Invitation and native gate: labels, placeholders, choices and errors are ink. */
.join-form, .gate-card {
  background: linear-gradient(145deg, #f7fafb, #f2edf7 70%, #fcf4e9);
  border-color: #8394af;
  box-shadow: 0 16px 46px rgba(65, 88, 122, 0.14);
}
.form-row input, .form-row select, .form-row textarea, .gate-input {
  background: #fffaf2;
  color: var(--bone);
  border-color: #718697;
  box-shadow: none;
  color-scheme: light;
}
.form-row input::placeholder, .form-row textarea::placeholder, .gate-input::placeholder {
  color: #596177;
  opacity: 1;
}
.form-row select option { background: #fffaf2; color: #293b53; }
.form-row input:focus, .form-row select:focus, .form-row textarea:focus, .gate-input:focus {
  border-color: #315f86;
  outline: 2px solid #315f86;
  outline-offset: 2px;
  box-shadow: none;
}
.cell-kicker { color: var(--giger); }
.join-thanks {
  background: #e7f0f6;
  border-color: #718697;
  color: #30677a;
}
.join-thanks .thanks-again {
  background: #f7fafb;
  color: #293b53;
  border-color: #718697;
}
.join-thanks .thanks-again:hover { background: #e0ecf6; color: #244965; border-color: #547896; }
.nav-chip:focus-visible, .doc-btn:focus-visible, .gate-btn:focus-visible,
.join-thanks .thanks-again:focus-visible, .footer-links a:focus-visible,
.mail-link:focus-visible, .gate-hint a:focus-visible {
  outline: 2px solid #315f86;
  outline-offset: 3px;
  text-shadow: none;
}
.access-gate {
  background: radial-gradient(ellipse at 15% 20%, #cde6f7, transparent 65%),
              radial-gradient(ellipse at 85% 75%, #f4dedf, transparent 60%),
              linear-gradient(145deg, #e7f2fa, #e8dff1 65%, #faf0dc);
  backdrop-filter: none;
}
.gate-error { color: #793c62; }
.site-footer {
  background: linear-gradient(110deg, #e3edf6, #eee7f2);
  border-color: var(--atmo-soft-line);
}

/* A unified illustration workspace, not an isolated black/neon control panel.
   The real sky and lighting are rendered by viewer.js and included in PNGs.
   These light surfaces remain readable with any of the legacy lighting choices. */
.viewport-wrap {
  background: linear-gradient(180deg, #cde4f4, #e7dfef 58%, #f1e1cd);
  border-color: var(--atmo-line);
  box-shadow: var(--atmo-depth);
}
.viewport-wrap[data-light-preset]:not([data-light-preset="moebius"]) {
  background: radial-gradient(ellipse at 40% 30%, #161a44, #05060b 78%);
}
.lore-panel {
  background: linear-gradient(155deg, #f7fafb, #efeaf5 70%, #fbf2e6);
  border-color: var(--atmo-soft-line);
  box-shadow: var(--atmo-depth);
  color: var(--bone);
}
.lore-panel::-webkit-scrollbar-thumb { background: #9a8ea7; }
.tab-btn {
  background: #f7fafb;
  border-color: var(--atmo-line);
  color: var(--bone);
  box-shadow: none;
}
.tab-btn:hover { background: #e3edf7; border-color: #547896; color: #244965; box-shadow: none; }
.tab-btn.active {
  background: var(--atmo-cta);
  color: var(--atmo-paper);
  border-color: var(--atmo-cta);
  box-shadow: 0 4px 12px rgba(49, 95, 134, 0.13);
}
.tab-btn.active strong, .tab-btn.active small, .tab-btn.active .tab-index {
  color: var(--atmo-paper);
  text-shadow: none;
}
.toolbar, .stat-card, .viewer-quality, .compass-chip, .viewer-status {
  background: rgba(247, 250, 251, 0.97);
  color: var(--bone);
  border-color: var(--atmo-line);
  box-shadow: 0 5px 18px rgba(65, 88, 122, 0.11);
  text-shadow: none;
}
.stat-title, .panel-kicker { border-color: var(--atmo-soft-line); text-shadow: none; }
.tool-btn, .color-swatch, .dl-btn.secondary {
  background: #f7fafb;
  color: var(--bone);
  border-color: var(--atmo-line);
  box-shadow: none;
}
.tool-btn:hover, .color-swatch:hover, .dl-btn.secondary:hover {
  background: #e3edf7;
  color: #244965;
  border-color: #547896;
  text-shadow: none;
}
.tool-btn.active, .color-swatch.active {
  background: #d8e8f4;
  color: #244965;
  border-color: #547896;
  box-shadow: none;
}
.dl-btn.primary { background: var(--atmo-cta); color: var(--atmo-paper); border-color: var(--atmo-cta); box-shadow: none; }
.dl-btn.primary:hover { background: var(--atmo-cta-hover); color: var(--atmo-paper); filter: none; }
.spec-grid, .spec { border-color: var(--atmo-soft-line); }
.chip-amber { background: #f4e7eb; border-color: #b692a5; }
.chip-teal { background: #e2edf4; border-color: #8faaba; }
.loader { background: rgba(238, 245, 250, 0.96); color: var(--bone); }
.loader-spinner { border-color: #b5cbdf; border-top-color: #315f86; box-shadow: none; }
.loader-text { text-shadow: none; }
