/* ============================================================
   MCA slate/gold dark THEME OVERRIDE — repaints the existing
   cream design system. Restyles classes only. No content touched.
   ============================================================ */
:root{
  --s-bg:#0E1420; --s-2:#161E2C; --s-3:#1C2536; --s-4:#222C40;
  --s-line:rgba(200,214,240,0.10); --s-line2:rgba(200,214,240,0.18);
  --s-ink:#ECEFF6; --s-ink2:#AEB8CB; --s-mut:#727C90;
  --s-gold:#C9A24B; --s-goldb:#E9CB80;
  --s-sans:-apple-system,'SF Pro Display','SF Pro Text','Inter',system-ui,sans-serif;
}
body{ background:var(--s-bg)!important; color:var(--s-ink)!important;
  font-family:var(--s-sans)!important; letter-spacing:-0.006em;
  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{ display:none!important; }
.page{ background:transparent!important; border-left:1px solid var(--s-line)!important; border-right:1px solid var(--s-line)!important; color:var(--s-ink); }
footer{ background:transparent!important; border-color:var(--s-line)!important; }

/* nav → slate */
.site-nav{ background:#0A0F18!important; border-bottom:1px solid var(--s-line)!important; }
.site-nav .brand span, .nav-confidential{ color:var(--s-gold)!important; }
.nav-menu>li>a.active{ color:var(--s-goldb)!important; box-shadow:inset 0 -2px 0 var(--s-gold)!important; }
.nav-dd-panel{ background:#0C1220!important; border-color:var(--s-line2)!important; }
.nav-dd-col-head, .nav-dd-panel a .flag{ color:var(--s-gold)!important; }

/* type */
.section-title,.song-title,.song-section-title{ color:var(--s-ink)!important; }
.section-title em,.song-title em{ color:var(--s-gold)!important; }
.section-eyebrow,.header-eyebrow{ color:var(--s-gold)!important; }
.subsection-label span{ color:var(--s-goldb)!important; }
.subsection-label{ border-color:var(--s-line)!important; }
.body-text{ color:#D6DCE8!important; font-family:var(--s-sans)!important; }
.pull-quote{ color:var(--s-ink)!important; border-left-color:var(--s-gold)!important; }
.rule{ border-top-color:var(--s-line)!important; } .rule-heavy{ border-top-color:var(--s-line2)!important; }
.doc-header,.header-eyebrow{ border-color:var(--s-line)!important; }
.page-num,.nav-confidential{ color:var(--s-mut)!important; }

/* color-coded buckets: keep the colored LABEL bar, darken the BODY */
.cat-block{ border:1px solid var(--s-line)!important; background:var(--s-2)!important; }
.cat-body{ background:var(--s-2)!important; color:#D6DCE8!important; font-family:var(--s-sans)!important; }
.cat-body ul li{ border-bottom-color:var(--s-line)!important; }
.cat-body strong{ color:var(--s-ink)!important; }
.cat-body a{ color:var(--s-goldb)!important; }

/* song sheet bits */
.song-header-block{ border-color:var(--s-line)!important; }
.field-block{ background:var(--s-2)!important; border-color:var(--s-line)!important; }
.field-label span,.field-label{ color:var(--s-goldb)!important; }
.field-content{ color:var(--s-ink2)!important; }
.tag{ background:var(--s-gold)!important; color:#14180E!important; }
.tag-outline{ border-color:var(--s-line2)!important; color:var(--s-ink2)!important; }
.song-pager a{ background:var(--s-2)!important; border-color:var(--s-line)!important; color:var(--s-ink)!important; }
.song-pager .lbl{ color:var(--s-gold)!important; } .song-pager{ border-top-color:var(--s-line2)!important; }
.song-pager a:hover{ background:var(--s-3)!important; }

/* tables (Outreach) */
.otbl-wrap{ border-color:var(--s-line)!important; }
table.otbl{ background:var(--s-2)!important; }
table.otbl td{ color:var(--s-ink)!important; border-bottom-color:var(--s-line)!important; }
table.otbl td.sm{ color:var(--s-ink2)!important; }
tr.otr-div td{ background:var(--s-3)!important; color:var(--s-goldb)!important; border-top-color:var(--s-line2)!important; }
table.otbl tr:hover td{ background:rgba(255,255,255,0.03)!important; }
.stat-tile{ background:var(--s-3)!important; }
.stat-tile .n{ color:var(--s-goldb)!important; }

/* misc components */
.placeholder-note{ background:rgba(255,255,255,0.02)!important; border-color:var(--s-line2)!important; color:var(--s-mut)!important; }
.locked-badge{ background:var(--s-3)!important; color:var(--s-ink2)!important; }
.link-grid a{ background:var(--s-2)!important; border-color:var(--s-line)!important; color:var(--s-ink)!important; }
.link-grid a:hover{ background:var(--s-3)!important; }
.link-grid .lg-label{ color:var(--s-gold)!important; }
.belief-cell{ background:var(--s-2)!important; color:var(--s-ink2)!important; border-color:var(--s-line)!important; }

/* neutralize common CREAM inline backgrounds so callouts don't glare */
[style*="#F5F0E8"],[style*="#F5F0E0"],[style*="#F9EDE9"],[style*="#EDE7D9"],[style*="#EDF2EB"],[style*="#ECEEF5"],[style*="#F0EAF5"],[style*="#F5F2E5"],[style*="#F0E9DC"],[style*="#E8F2F2"]{ background:var(--s-2)!important; }

/* ===== big-title accordions (song sheets, strategy, album) ===== */
details.acc2{border:1px solid var(--s-line)!important;border-radius:14px!important;overflow:hidden;margin:12px 0!important;background:var(--s-2)!important;}
details.acc2>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:15px;padding:18px 20px;transition:background .15s;}
details.acc2>summary::-webkit-details-marker{display:none;}
details.acc2>summary:hover{background:var(--s-3)!important;}
details.acc2 .a2bar{width:4px;align-self:stretch;border-radius:3px;flex-shrink:0;margin:-2px 0;}
details.acc2 .a2ic{font-size:19px;width:24px;text-align:center;flex-shrink:0;}
details.acc2 .a2tt{flex:1;min-width:0;}
details.acc2 .a2t{display:block;font-family:'Playfair Display',Georgia,serif;font-size:22px;font-weight:700;letter-spacing:-0.01em;line-height:1.15;color:var(--s-ink);}
details.acc2 .a2s{display:block;font-size:12px;color:var(--s-mut);margin-top:5px;font-weight:450;text-transform:none;letter-spacing:0;}
details.acc2 .a2ct{font-size:12px;color:var(--s-ink2);font-weight:600;background:rgba(255,255,255,0.05);padding:5px 11px;border-radius:999px;white-space:nowrap;}
details.acc2 .a2ch{color:var(--s-mut);font-size:15px;transition:transform .2s;margin-left:2px;}
details.acc2[open] .a2ch{transform:rotate(90deg);}
details.acc2[open]>summary{border-bottom:1px solid var(--s-line);}
details.acc2 .cat-body{background:transparent!important;padding:8px 22px 20px!important;}

/* ===== readability fixes: remaining dark-text classes ===== */
.philosophy-block{ background:var(--s-2)!important; color:var(--s-ink)!important; border-left-color:var(--s-gold)!important; }
.dash-list li{ color:var(--s-ink)!important; border-bottom-color:var(--s-line)!important; }
.dash-list li::before{ color:var(--s-gold)!important; }
.hook-text{ color:var(--s-ink2)!important; }
.doc-title-block h1,.footer-brand,.toc-title{ color:var(--s-ink)!important; }
.cat-release .cat-body{ color:var(--s-ink2)!important; }
/* any stray element still using the cream ink var reads light now */
[style*="var(--ink-mid)"],[style*="var(--ink)"]{ color:var(--s-ink2)!important; }
details.acc2-tbl .otbl-wrap{margin:8px 0 4px!important;border:0!important;}
details.acc2-tbl[open]>summary{border-bottom:1px solid var(--s-line);}
details.acc2-tbl .body-text{padding:8px 20px 0!important;}
/* collaborators as photo + bio cards */
.collab-grid{display:flex;flex-direction:column;gap:14px;margin-top:22px;}
.collab-card{background:var(--s-2)!important;border:1px solid var(--s-line);border-radius:16px;padding:22px 24px;}
.collab-top{display:flex;gap:18px;align-items:center;}
.collab-av{width:64px;height:64px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#161009;background:linear-gradient(135deg,var(--s-goldb),var(--rust));overflow:hidden;}
.collab-av img{width:100%;height:100%;object-fit:cover;}
.collab-meta .nm{font-family:'Playfair Display',serif;font-size:23px;font-weight:700;color:var(--s-ink);}
.collab-meta .role{font-size:11px;letter-spacing:0.14em;text-transform:uppercase;color:var(--s-gold);font-weight:600;margin-top:4px;}
.collab-bio{color:var(--s-ink2);font-size:14.5px;margin-top:15px;line-height:1.6;max-width:640px;}
.collab-card details.acc2 .cat-body{padding-top:8px!important;}
.collab-av .ini{width:100%;height:100%;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#161009;background:linear-gradient(135deg,var(--s-goldb),var(--rust));}
.collab-av img{display:block;width:100%;height:100%;object-fit:cover;}

/* platform posture cards */
.plat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin:12px 0 6px;}
.plat-card{display:flex;gap:14px;align-items:flex-start;background:var(--s-2)!important;border:1px solid var(--s-line)!important;border-radius:14px;padding:14px 16px;}
.plat-ic{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 14px rgba(0,0,0,0.35);}
.plat-ic svg{width:22px;height:22px;}
.plat-name{font-weight:650;font-size:14.5px;color:var(--s-ink)!important;margin-bottom:3px;}
.plat-role{font-size:12.5px;line-height:1.45;color:#D6DCE8!important;}
/* album cover hero */
.album-hero{display:flex;gap:22px;align-items:center;margin:18px 0 6px;flex-wrap:wrap;}
.album-hero img{width:200px;height:200px;object-fit:cover;border-radius:16px;box-shadow:0 18px 44px rgba(0,0,0,0.5);border:1px solid rgba(201,162,75,0.25);}
.album-hero-cap .ah-title{font-family:'Playfair Display',serif;font-size:22px;color:var(--s-ink);font-weight:700;}
.album-hero-cap .ah-sub{font-size:12.5px;letter-spacing:0.02em;color:var(--s-gold);margin-top:6px;text-transform:uppercase;}

/* Pass-3 prose bubbles: philosophy blocks & lists collapsed into acc2 */
details.acc2-prose .a2t{font-size:18px!important;}
details.acc2 .philosophy-block{background:transparent!important;border-left:none!important;margin:0!important;padding:6px 22px 20px!important;color:#D6DCE8!important;}
details.acc2 .dash-list{padding:6px 22px 20px!important;margin:0!important;}
details.acc2 .dash-list li{color:#D6DCE8!important;}

/* app feel: pages size to content, no book-page empty space */
.page{ min-height:0!important; }

/* ============================================================
   READABILITY PASS — no dark-red / dark text on the dark bg.
   Redefine the cream accent vars to readable tones (text only;
   backgrounds/borders that used them are protected below).
   ============================================================ */
:root{
  --rust:#E0A17A !important;        /* was #8B3A2A dark red -> readable warm */
  --rust-light:#EBC0A6 !important;  /* was #B05A44 */
  --warm-gray:#AEB8CB !important;   /* muted text -> readable */
  --smoke:#AEB8CB !important;
}
/* keep the few elements that used --rust as a BACKGROUND dark enough for light text */
[style*="background:var(--rust)"],[style*="background: var(--rust)"]{ background:#7A3120 !important; }
[style*="background:var(--ink)"],[style*="background: var(--ink)"]{ background:#0A0F18 !important; }
/* secondary/subtitle text a touch brighter */
details.acc2 .a2s{ color:#9BA6BC !important; }
.footer-brand,.footer-label,.doc-footer span{ color:#AEB8CB !important; }

/* ── Song Story (3-layer) + Lyrics buckets ─────────────────────────── */
.slayer{font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--rust-light)!important;font-weight:600;margin:20px 0 10px;padding-bottom:7px;border-bottom:1px solid var(--s-line2);display:flex;justify-content:space-between;align-items:baseline;gap:10px;}
.slayer:first-child{margin-top:2px;}
.slayer span{color:var(--s-mut)!important;letter-spacing:0.08em;font-size:9px;}
.cat-body .sfan{font-style:italic;color:var(--s-ink)!important;margin:0 0 12px;}
.cat-body .snote{color:var(--s-ink)!important;margin:8px 0;}
.spq{font-family:'Playfair Display',serif;font-style:italic;font-size:18px;line-height:1.5;color:var(--rust-light)!important;border-left:2px solid var(--rust);padding:4px 0 4px 18px;margin:14px 0 4px;}
.sscript{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--s-goldb)!important;margin:14px 0 5px;font-weight:600;}
.squote{background:rgba(255,255,255,0.02);border-left:2px solid var(--s-line2);padding:11px 15px;margin:0 0 8px;color:var(--s-ink)!important;font-style:italic;border-radius:0 8px 8px 0;line-height:1.55;}
/* Lyrics */
.lyric-credits{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:0.1em;text-transform:uppercase;color:var(--s-mut)!important;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--s-line2);}
.lyric-body{font-family:'Playfair Display',serif;font-size:18px;line-height:1.75;color:var(--s-ink)!important;white-space:pre-wrap;}
.lyric-body .lsec{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:0.12em;text-transform:uppercase;color:var(--s-goldb)!important;display:block;margin:16px 0 4px;font-style:normal;}
.lyric-body .lsec:first-child{margin-top:0;}
.lyric-note{font-family:'IBM Plex Mono',monospace;font-size:11px;line-height:1.6;color:var(--s-mut)!important;font-style:normal;margin-bottom:12px;white-space:normal;}
