/* ==========================================================================
   Themes. "classic" is the default and lives in tokens.css; every other theme only overrides variables.
   All of it sits inside @media screen on purpose: printed receipts and statements always use the light colours.
   A theme is chosen with <html data-theme="...">. To add one: copy a block, change the values, and list it in app/core/Theme.php.
   ========================================================================== */
@media screen {

html[data-theme="emerald"] {
  --color-blue-900: #0B3B2E; --color-blue-700: #11553F; --color-blue-500: #1C7A5B; --color-blue-300: #7FB8A0; --color-blue-100: #E1F0EA; --color-blue-50: #F3F8F6;
  --color-gold-700: #8F6A1A; --color-gold-500: #C9972B; --color-gold-300: #E6C77A; --color-gold-100: #FAF1DC;
  --color-ink-900: #16201C; --color-ink-700: #3A4640; --color-ink-500: #5B6B64; --color-ink-300: #C2CCC7; --color-ink-100: #E6ECE9;
  --color-info: #2B6CB0; --color-info-bg: #E4EEF8;
  --chart-3: #2B6CB0;
  --shadow-card: 0 1px 3px rgba(11, 59, 46, 0.08), 0 1px 2px rgba(11, 59, 46, 0.06); --shadow-modal: 0 8px 24px rgba(11, 59, 46, 0.18);
  --surface-topbar: rgba(243,248,246,0.92); --surface-hover: #F8FBFA;
}

html[data-theme="slate"] {
  --color-blue-900: #17212B; --color-blue-700: #1F3A4D; --color-blue-500: #0F766E; --color-blue-300: #6FB3AD; --color-blue-100: #DDF0EE; --color-blue-50: #F4F7F8;
  --color-gold-700: #B4532A; --color-gold-500: #E07A3F; --color-gold-300: #F0B48C; --color-gold-100: #FCEBDD;
  --color-ink-900: #18212A; --color-ink-700: #3B4650; --color-ink-500: #5F6B76; --color-ink-300: #C5CDD3; --color-ink-100: #E6EBEE;
  --color-info: #2B6CB0; --color-info-bg: #E4EEF8;
  --chart-3: #2B6CB0;
  --logo-fg: #17212B;
  --shadow-card: 0 1px 3px rgba(23, 33, 43, 0.08), 0 1px 2px rgba(23, 33, 43, 0.06); --shadow-modal: 0 8px 24px rgba(23, 33, 43, 0.18);
  --surface-topbar: rgba(244,247,248,0.92); --surface-hover: #F9FBFB;
}

html[data-theme="burgundy"] {
  --color-blue-900: #3F1626; --color-blue-700: #5E2038; --color-blue-500: #8C2F52; --color-blue-300: #C98AA3; --color-blue-100: #F4E4EA; --color-blue-50: #FAF5F6;
  --color-gold-700: #8A5A2B; --color-gold-500: #C08B5C; --color-gold-300: #DDB892; --color-gold-100: #F6EADD;
  --color-ink-900: #241A1E; --color-ink-700: #4A3D43; --color-ink-500: #6C5F64; --color-ink-300: #D1C7CB; --color-ink-100: #EDE7E9;
  --shadow-card: 0 1px 3px rgba(63, 22, 38, 0.08), 0 1px 2px rgba(63, 22, 38, 0.06); --shadow-modal: 0 8px 24px rgba(63, 22, 38, 0.18);
  --surface-topbar: rgba(250,245,246,0.92); --surface-hover: #FCF9FA;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --color-blue-900: #DCE6F5; --color-blue-700: #8DBBF0; --color-blue-500: #5B9BE6; --color-blue-300: #6F8FB8; --color-blue-100: #1E2D45; --color-blue-50: #1B2740;
  --color-gold-700: #E0C060; --color-gold-500: #D4AF37; --color-gold-300: #8F7A2E; --color-gold-100: #2D2610;
  --color-ink-900: #E6EAF0; --color-ink-700: #C3CCD9; --color-ink-500: #9AA7B8; --color-ink-300: #3A4A63; --color-ink-100: #26344A;
  --color-white: #172131;
  --color-success: #4CC38A; --color-success-bg: #11291F;
  --color-warning: #E3B341; --color-warning-bg: #2D2410;
  --color-danger: #F28B82;  --color-danger-bg: #35171A;
  --color-info: #7DB2F0;    --color-info-bg: #14263D;
  --surface-page: #0F1722; --surface-card: #172131; --surface-input: #111A28; --surface-hover: #1E2B42; --surface-topbar: rgba(15,23,34,0.92);
  --on-primary: #0B1420; --on-danger: #1A0B0B; --warning-text: #E9C46A; --danger-hover: #F5A39C; --danger-ring: rgba(242,139,130,.28);
  --backdrop: rgba(0,0,0,.65);
  --shadow-card: 0 1px 3px rgba(0, 0, 0, 0.45), 0 1px 2px rgba(0, 0, 0, 0.35); --shadow-modal: 0 8px 28px rgba(0, 0, 0, 0.6);
  --sidebar-bg: #0A111B; --sidebar-text: #C9D4E3; --sidebar-muted: #8396B0; --sidebar-strong: #FFFFFF;
  --logo-bg: #D4AF37; --logo-fg: #0B1420;
  --chart-1: #5B9BE6; --chart-2: #D4AF37; --chart-3: #4CC38A; --chart-4: #8FB6E8; --chart-5: #E3C875; --chart-6: #8C99AB;
}

}
