/* ============================================================
   MCA Pre-Production Book — slate/gold dark repaint.
   VISUAL ONLY. Overrides the cream theme via CSS variables +
   class overrides. No HTML content is altered.
   Loaded LAST in <head>, so these win the cascade.
   ============================================================ */
:root{
  --ink:#ECEFF6 !important;      /* body text -> light */
  --paper:#141C2A !important;    /* page card -> dark slate */
  --rust:#E9CB80 !important;     /* accent -> gold */
  --smoke:#AEB8CB !important;    /* secondary text -> light grey */
  --cream:#243049 !important;    /* hairlines / subtle panels */
  --gold:#E9CB80 !important;
  --ember:#E9CB80 !important;
}
html{ background:#0E1420 !important; }
body{
  background:#0E1420 !important;
  color:#ECEFF6 !important;
  background-image:
    radial-gradient(1100px 480px at 84% -10%,rgba(201,162,75,0.08),transparent 60%),
    radial-gradient(900px 520px at 3% 108%,rgba(45,74,116,0.22),transparent 62%) !important;
}
body::before{ opacity:0.22 !important; }

/* page card */
.page{
  background:#141C2A !important;
  box-shadow:0 6px 34px rgba(0,0,0,0.45) !important;
  border:1px solid rgba(200,214,240,0.08) !important;
}

/* --- hardcoded dark text -> light --- */
.body-text,.prod-val,.prod-key,.theme-item,.egg-detail,.egg-connection,
.showman-note,.belief-item,.pillar-item,.lyric-lines,.mv-callout-text,
.question-item,.meta-item{ color:#D6DCE8 !important; }
.meta-item span,.prod-key{ color:#E9CB80 !important; }

/* --- accent-colored labels stay gold --- */
.section-label,.lyric-section-label,.toc-tag,.eyebrow,.section-eyebrow,
.footer-label,.subsection-label,.ref-tag,.page-tab{ color:#E9CB80 !important; }
.section-title,.song-title,.toc-title,.section-header{ color:#ECEFF6 !important; }
.song-title em,.section-title em{ color:#E9CB80 !important; }

/* --- elements that used --ink as BACKGROUND (dark bar + cream text):
       give them a dark panel bg + light text so they don't invert --- */
.header,.easter-egg-box,.mv-callout,.single-banner{
  background:#0A0F18 !important; color:#ECEFF6 !important;
  border-color:rgba(201,162,75,0.30) !important;
}
.easter-egg-box *{ color:#ECEFF6 !important; }
.ref-tag{ background:#243049 !important; color:#E9CB80 !important; border:1px solid rgba(201,162,75,0.25) !important; }
.instrument-tag{ background:#243049 !important; color:#D6DCE8 !important; }
.page-tab{ background:#0A0F18 !important; }

/* inline-styled elements that use the flipped vars as bg/text (e.g. the
   "Lead Single" banner) — repaint them so they don't invert to light blocks */
[style*="background:var(--ink)"],[style*="background: var(--ink)"]{ background:#0A0F18 !important; }
[style*="color:var(--paper)"],[style*="color: var(--paper)"]{ color:#E9CB80 !important; }
[style*="background:var(--rust)"],[style*="background: var(--rust)"]{ background:#3A2A12 !important; }

/* pull-quote + highlight */
.pull-quote{ color:#E9CB80 !important; border-left-color:#C9A24B !important; }
.highlight-note{ background:#1C2536 !important; color:#D6DCE8 !important; border-left-color:#C9A24B !important; }

/* hairlines / dividers */
.section,.section-divider,.footer,.meta-row{ border-color:rgba(200,214,240,0.10) !important; }
.footer-brand{ color:#AEB8CB !important; }

/* ===== accordion bubbles (progressive enhancement) ===== */
details.pp-acc{
  border:1px solid rgba(200,214,240,0.12); border-radius:12px;
  background:#161E2C; margin:10px 0; overflow:hidden;
}
details.pp-acc>summary{
  list-style:none; cursor:pointer; padding:15px 18px;
  display:flex; align-items:center; gap:12px;
  font-family:'IBM Plex Mono',monospace;
}
details.pp-acc>summary::-webkit-details-marker{ display:none; }
details.pp-acc>summary:hover{ background:#1A2333; }
.pp-acc .pp-t{
  flex:1; font-size:13px; letter-spacing:0.06em; text-transform:uppercase;
  color:#E9CB80; font-weight:600;
}
.pp-acc .pp-ch{ color:#C9A24B; font-size:20px; transition:transform .18s; }
details.pp-acc[open]>summary .pp-ch{ transform:rotate(90deg); }
.pp-acc>*:not(summary){ padding:0 18px; }
.pp-acc>*:not(summary):last-child{ padding-bottom:18px; }
details.pp-acc[open]{ border-color:rgba(201,162,75,0.30); }
