/*
 * The Party Carty — BLACK & GOLD theme (owner's pick, 2026-09-25).
 * Matches the logo as she prefers it: gold on black (ops/brand/owner-preference-black-and-gold-story.png).
 *
 * A layer over site.css, loaded only when settings.brand_theme = 'gold'
 * (/admin/settings → Brand → Site colors). site.css stays the coral theme
 * underneath, so switching back is a setting, not a rewrite.
 * Screen only: printouts keep the light base styles.
 */
@media screen {

:root {
  --gold:    #D4AF37;
  --gold-l:  #F3D98B;
  --gold-d:  #A87B1E;
  --gold-grad: linear-gradient(135deg, #F6E08C 0%, #D4AF37 48%, #A87B1E 100%);
  --black:   #0B0A08;

  --ink: #F3EAD2;          /* ivory text */
  --ink-2: #CDBF9F;
  --mid: #9A8E74;
  --cream: var(--black);   /* page */
  --paper: #15130F;        /* cards */
  --ghost: #1C1914;
  --lilac: #231F17;        /* soft fill */
  --blush: #2B1A1A;
  --border: #3A3224;
  --coral: var(--gold);    /* primary */
  --coral-d: #E8C660;      /* links / hover text — lighter so it reads on black */
  --sun: var(--gold-l);
  --teal: #6CC4A1;
  --amber: #E0A84A;
  --shadow: 0 1px 0 rgba(0,0,0,.4), 0 12px 30px -14px rgba(0,0,0,.8);

  /* status tints */
  --ok-bg: rgba(108,196,161,.14);  --ok-fg: #92DDBE;
  --warn-bg: rgba(224,168,74,.16); --warn-fg: #F0C57A;
  --bad-bg: rgba(229,95,95,.15);   --bad-fg: #F2A0A0;
  --dim-bg: rgba(255,255,255,.07); --dim-fg: #BDB29A;
  color-scheme: dark;
}

[data-bs-theme=dark] {
  --bs-body-bg: var(--paper);
  --bs-body-color: var(--ink);
  --bs-secondary-color: var(--mid);
  --bs-tertiary-bg: var(--ghost);
  --bs-border-color: var(--border);
  --bs-link-color: var(--coral-d);
  --bs-link-hover-color: var(--gold-l);
  --bs-link-color-rgb: 232,198,96;
  --bs-link-hover-color-rgb: 243,217,139;
  --bs-emphasis-color: #fff;
}

body { background: var(--black); color: var(--ink); }
::selection { background: rgba(212,175,55,.35); color: #fff; }
a:hover { color: var(--gold-l); }
h1, .quote-total, .fact .v, .step .num, .cal-month {
  background: var(--gold-grad); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.text-muted, .muted { color: var(--mid) !important; }
hr { border-color: var(--border); opacity: 1; }

/* Buttons */
.btn-party { background: var(--gold-grad); color: var(--black); box-shadow: 0 6px 0 -1px var(--gold-d); }
.btn-party:hover, .btn-party:focus { background: var(--gold-l); color: var(--black); }
.btn-party:active { box-shadow: 0 3px 0 -1px var(--gold-d); }
.btn-party:disabled, .btn-party.disabled { color: var(--black); }
.btn-ghost { color: var(--gold-l); border-color: var(--gold); }
.btn-ghost:hover { background: var(--gold); color: var(--black); }
.btn-quiet { background: var(--ghost); color: var(--ink); }
.btn-quiet:hover { border-color: var(--gold); color: var(--gold-l); }

/* Nav + footer */
.site-nav { border-bottom: 1px solid var(--border); }
.logo-word { color: var(--gold-l); }
.nav-links a:hover, .ig-link:hover { color: var(--gold-l); }
.nav-links a.btn-party, .nav-links a.btn-party:hover { color: var(--black); }
footer.site-foot { background: #070605; }

/* Flash + errors */
.flash-success { background: var(--ok-bg); color: var(--ok-fg); }
.flash-error, .q-error { background: var(--bad-bg); color: var(--bad-fg); }
.flash-info { background: var(--lilac); color: var(--ink); }

/* Hero + bands: the old "ink" surfaces become black with a gold edge */
.hero .kicker { background: var(--gold-grad); color: var(--black); }
.confetti rect, .confetti circle { fill: var(--gold); }
.confetti circle { fill: var(--gold-l); }
.hero-card, .ai-read { background: #000; border: 1px solid var(--gold-d); color: var(--ink); }
.hero-card h3, .ai-read h3 { color: var(--gold-l); }
.hero-card .q-why, .ai-read .q { background: rgba(212,175,55,.08); color: var(--ink-2); }
.band-ink { background: #000; color: var(--ink-2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.band-ink h2, .band-ink h3 { color: var(--gold-l); }
.band-ink .step { border: 1px solid var(--border); }
.ai-read .small-caps { color: var(--gold); }
/* a few inline lavender tints from the coral theme */
[style*="#B8B2E6"], [style*="#8E88C2"] { color: var(--mid) !important; }
[style*="#EDEAFF"] { color: var(--ink-2) !important; }
.band-ink strong[style*="#fff"], .hero-card strong[style*="#fff"] { color: var(--gold-l) !important; }

/* Cards */
.step, .card-pc, .clause, .money-tiles .tile, .shift-card, .cal-day, .cm-day { border: 1px solid var(--border); }
.small-caps { color: var(--gold); }

/* Interview */
.progress-pc { background: var(--ghost); }
.progress-pc > span { background: var(--gold-grad); }
.q-section { color: var(--gold); }
.q-why { background: var(--ghost); border: 1px solid var(--border); }
.q-why::before { background: var(--gold-grad); color: var(--black); }
.choice .face::before { border-color: var(--mid); background: transparent; }
.choice:hover .face { border-color: var(--gold-d); }
.choice input:checked + .face { border-color: var(--gold); background: rgba(212,175,55,.08); box-shadow: 0 0 0 3px rgba(212,175,55,.18); }
.choice input:checked + .face::before { border-color: var(--gold); background: var(--gold); box-shadow: inset 0 0 0 3px var(--paper); }
.chip-radio input:checked + span, .chip-radio span.is-picked { border-color: var(--gold); background: rgba(212,175,55,.10); color: var(--gold-l); }
.big-input, .form-control, .form-select { background-color: var(--ghost); color: var(--ink); }
.big-input:focus, .form-control:focus, .form-select:focus { border-color: var(--gold); box-shadow: 0 0 0 3px rgba(212,175,55,.2); background-color: var(--ghost); color: var(--ink); }
.form-control::placeholder { color: var(--mid); }
.venue-note.ok, .known-list { background: var(--ok-bg); color: var(--ok-fg); }
.venue-note.unv { background: var(--warn-bg); color: var(--warn-fg); }

/* Status pills, tags, modes */
.st-draft, .st-cancelled, .st-declined, .tag-info, .mode-locked, .vs-hidden { background: var(--dim-bg); color: var(--dim-fg); }
.st-submitted, .mode-staff, .vs-listed { background: rgba(212,175,55,.12); color: var(--gold-l); }
.st-proposed, .tag-conditional, .tag-unverified, .vs-warn { background: var(--warn-bg); color: var(--warn-fg); }
.st-negotiating, .tag-required, .need-short { background: var(--bad-bg); color: var(--bad-fg); }
.st-accepted, .st-completed, .tag-verified, .mode-self, .vs-ok, .need-ok { background: var(--ok-bg); color: var(--ok-fg); }

/* Event page */
.fact { border: 1px solid var(--border); }
.fact.hot { background: rgba(224,168,74,.12); } .fact.cool { background: rgba(110,160,220,.12); }
.insight .dot { background: var(--mid); }
.flag.sev-high { background: rgba(229,95,95,.08); border-left-color: #E56A6A; }
.flag.sev-medium { background: rgba(212,175,55,.08); }
.flag.sev-low { background: rgba(108,196,161,.07); }
.curve .bar { background: linear-gradient(180deg, var(--gold-l), var(--gold-d)); }
.clause summary, .cm-link { color: var(--gold-l); }
.sign-box { border-color: var(--gold); }
.lever b { color: var(--ok-fg); }

/* Admin + crew */
.admin-bar { background: #000; border-bottom: 1px solid var(--gold-d); }
.admin-bar a { color: var(--ink-2); }
.admin-bar a.on, .admin-bar a:hover { color: var(--gold-l); }
.schools-table th { background: var(--ghost); }
.schools-table .row-title:hover { color: var(--gold-l); }
.view-toggle a.on, .shift-date { background: var(--gold-grad); color: var(--black); }
.shift-date span { color: rgba(11,10,8,.7); }
.act-menu form button:hover, .act-menu form button:focus-visible, .settings-toc a:hover, .ta-list li.on, .ta-list li:hover { background: var(--lilac); color: var(--gold-l); }
.ta-list { border-color: var(--gold-d); }
.act-menu[open] summary, .chip-check:has(input:checked), .drink-form.is-editing, .cal-ev:hover { border-color: var(--gold); outline-color: var(--gold); }
tr.is-editing td { background: rgba(212,175,55,.08) !important; }
.save-bar { background: rgba(11,10,8,.94); }
.comm-in { background: rgba(108,196,161,.06); }
.refuse-box summary, .cal-warn { color: var(--bad-fg); }
.cal-day.is-today, .cm-day.is-today { border-color: var(--gold); }
.cal-day.is-blocked, .cm-day.is-off { background: repeating-linear-gradient(45deg, #1C1914 0 8px, #15130F 8px 16px); }
.cal-dot-blocked { background: repeating-linear-gradient(45deg, #4A4030 0 3px, #1C1914 3px 6px); }
.msg-mine { background: rgba(212,175,55,.12); }

/* Bootstrap bits that default to light */
.table { --bs-table-bg: transparent; --bs-table-color: var(--ink); }
.dropdown-menu, .modal-content { background: var(--paper); border-color: var(--border); }
.alert { border-color: var(--border); }
.input-group-text { background: var(--lilac); color: var(--ink-2); border-color: var(--border); }
.btn-outline-secondary, .btn-outline-dark { color: var(--ink-2); border-color: var(--border); }
.btn-outline-secondary:hover, .btn-outline-dark:hover { background: var(--gold); border-color: var(--gold); color: var(--black); }
.btn-link { color: var(--coral-d); }
.border-dark { border-color: var(--gold-d) !important; }

}

@media screen { [style*="solid var(--ink)"] { border-color: var(--gold-d) !important; } }
