/* Decision Companion — Saifuliya MART PRIDE themes.
   Colors are flat interior pixels from the owner logo screenshots (24 Sep 2026).
   Cream and white plates agree. The black plate is a darker grade, so theme-black
   uses that plate's red, gold, and PRIDE purple.
   Load with data-theme="cream|light|black" on <html> (default cream), or with
   class theme-cream / theme-light / theme-black on any subtree.

   Cream + white plates: red #B71D28, gold #DE9F15, PRIDE #492985, navy #181473,
   white #FFFFFF, cream #F8E9BD.
   Black plate: red #CD151C, gold #EFA900, PRIDE #27138D, navy #180C76, black #000000.
   Default cream: navy text on a near-white card, cream page behind it. */

:root,
.theme-cream,
[data-theme="cream"] {
  color-scheme: light;
  --bg: #F8E9BD;
  --card: #FFFDF8;
  --field: #FFFFFF;
  --sunk: #FBF4E0;
  --ink: #181473;
  --muted: #3C3870;
  --faint: #4E4A72;
  --line: #E2D3A6;
  --line-soft: #EBD9AE;
  --accent: #181473;
  --accent-press: #100C4E;
  --accent-wash: #F3EEF8;
  --accent-line: #D4C6E8;
  --accent-ink: #FFFFFF;
  --pride: #492985;
  --pride-ink: #FFFFFF;
  --brand-red: #B71D28;
  --gold: #DE9F15;
  --chart-out: #805400;
  --action: #DE9F15;
  --action-press: #C2870C;
  --action-ink: #181473;
  --profit: #17693F;
  --profit-wash: #E6F3EC;
  --loss: #A8352A;
  --loss-wash: #FBE9E6;
  --header-bg: #181473;
  --header-ink: #FFFDF8;
  --header-marker: #DE9F15;
  --label-ink: #3C3870;
  --num-font: ui-monospace, "SF Mono", "Roboto Mono", monospace;
  --erp-navy: var(--navy);
  --erp-gold: var(--action);
  --erp-green: var(--profit);
  --erp-red: var(--loss);
  --gold-wash: #FFF6DC;
  --gold-line: #E2C16A;
  --navy: #181473;
  --subtitle: #181473;
  --danger: #B71D28;
  --warn: #7A4E00;
  --warn-wash: #FFF6DC;
  --warn-line: #E2C16A;
  --planned: #4E4A72;
  --shadow-card: 0 1px 2px rgba(24, 20, 115, 0.05), 0 8px 20px rgba(24, 20, 115, 0.06);
  --focus: 0 0 0 3px rgba(73, 41, 133, 0.45);
  --theme-bar: #F8E9BD;
}

.theme-light,
[data-theme="light"] {
  color-scheme: light;
  --bg: #FFFFFF;
  --card: #FFFFFF;
  --field: #FFFFFF;
  --sunk: #F6F3FA;
  --ink: #181473;
  --muted: #3C3870;
  --faint: #5C587E;
  --line: #E4E0EE;
  --line-soft: #EEEAF4;
  --accent: #181473;
  --accent-press: #100C4E;
  --accent-wash: #F4F0FA;
  --accent-line: #D9CDEA;
  --accent-ink: #FFFFFF;
  --pride: #492985;
  --pride-ink: #FFFFFF;
  --brand-red: #B71D28;
  --gold: #DE9F15;
  --chart-out: #805400;
  --action: #DE9F15;
  --action-press: #C2870C;
  --action-ink: #181473;
  --profit: #1C7A4D;
  --profit-wash: #E8F5EE;
  --loss: #B23B2E;
  --loss-wash: #FCECEA;
  --header-bg: #181473;
  --header-ink: #FFFFFF;
  --header-marker: #DE9F15;
  --label-ink: #3C3870;
  --num-font: ui-monospace, "SF Mono", "Roboto Mono", monospace;
  --erp-navy: var(--navy);
  --erp-gold: var(--action);
  --erp-green: var(--profit);
  --erp-red: var(--loss);
  --gold-wash: #FFF6DC;
  --gold-line: #E2C16A;
  --navy: #181473;
  --subtitle: #181473;
  --danger: #B71D28;
  --warn: #7A4E00;
  --warn-wash: #FFF6DC;
  --warn-line: #E2C16A;
  --planned: #5C587E;
  --shadow-card: 0 1px 2px rgba(24, 20, 115, 0.04), 0 8px 22px rgba(24, 20, 115, 0.06);
  --focus: 0 0 0 3px rgba(73, 41, 133, 0.4);
  --theme-bar: #FFFFFF;
}

.theme-black,
[data-theme="black"] {
  color-scheme: dark;
  --bg: #000000;
  --card: #141414;
  --field: #0A0A0A;
  --sunk: #1C1C1C;
  --ink: #F8E9BD;
  --muted: #D9CDB4;
  --faint: #B3A48C;
  --line: #3A3328;
  --line-soft: #2A241C;
  /* MART gold is the black plate's bright action color. Navy #180C76 sits too close to black. */
  --accent: #EFA900;
  --accent-press: #C98C00;
  --accent-wash: #2A2108;
  --accent-line: #6A5410;
  --accent-ink: #140E00;
  --pride: #27138D;
  --pride-ink: #FFFFFF;
  --brand-red: #CD151C;
  --gold: #EFA900;
  --chart-out: #FFD36A;
  --action: #EFA900;
  --action-press: #C98C00;
  --action-ink: #140E00;
  --profit: #5CC98A;
  --profit-wash: #0F2A1B;
  --loss: #EF7A6E;
  --loss-wash: #2E1412;
  --header-bg: #141414;
  --header-ink: #F8E9BD;
  --header-marker: #EFA900;
  --label-ink: #D9CDB4;
  --num-font: ui-monospace, "SF Mono", "Roboto Mono", monospace;
  --erp-navy: var(--navy);
  --erp-gold: var(--action);
  --erp-green: var(--profit);
  --erp-red: var(--loss);
  --gold-wash: #2A2108;
  --gold-line: #EFA900;
  --navy: #180C76;
  /* Plate navy #180C76 fails on black, so the product-name line uses cream. */
  --subtitle: #F8E9BD;
  /* Logo red #CD151C is 3.7:1 on black. Lifted so error text clears the card. */
  --danger: #E85A62;
  --warn: #EFA900;
  --warn-wash: #2A2108;
  --warn-line: #EFA900;
  --planned: #B3A48C;
  --shadow-card: 0 0 0 1px rgba(248, 233, 189, 0.04);
  --focus: 0 0 0 3px rgba(239, 169, 0, 0.55);
  --theme-bar: #000000;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.brand-lockup { margin: 2px 0 2px; }
.brand-logo { display: block; width: min(100%, 280px); max-width: 100%; height: auto; margin-inline: auto; border-radius: 12px; }
html[data-theme="black"] .brand-logo { border-radius: 0; background: transparent; filter: none; }

.product-name {
  margin: 2px 0 8px;
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 0.01em;
  line-height: 1.3;
  color: var(--subtitle);
}

html[data-theme="black"] .product-name {
  color: #FFFFFF;
  text-align: center;
}

.theme-switch { display: flex; gap: 6px; margin: 0 0 10px; }
.theme-switch button {
  flex: 1 1 0;
  width: auto;
  min-height: 44px;
  margin: 0;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: var(--card);
  color: var(--ink);
  font: inherit;
  font-weight: 700;
  font-size: 13px;
  line-height: 1.2;
  padding: 6px 8px;
  cursor: pointer;
  box-shadow: none;
}
.theme-switch button[aria-pressed="true"] {
  background: var(--pride);
  border-color: var(--pride);
  color: var(--pride-ink);
}
.theme-switch button:focus-visible { outline: none; box-shadow: var(--focus); }

input[type="radio"],
input[type="checkbox"] { accent-color: var(--pride); }
