/* Palette rules contain colors only. Structural styling lives in central-coding.css. */
:root {
  --version-update-text: #f3d58a;
  --version-update-background: #3b3222;
  --control-background: #365e53;
  --control-text: #e5eaf1;
  --page-background: #10151d;
  --text: #e5eaf1;
  --accent: #83cfb5;
  --muted-text: #b2bdce;
  --input-background: #19232f;
  --edit-background: #737300;
  --edit-text: #ffffff;
  --input-border: #425069;
  --focus: #f3d58a;
  --border: #303c4c;
  --card-background: #151e29;
  --warning: #b89b58;
  --forecast-color: #9d895d;
  --allowance-color: color-mix(in srgb, var(--accent) 65%, var(--border));
  --allowance-low-color: color-mix(in srgb, var(--warning) 65%, var(--border));
  --timestamp-text: #9ba9bb;
  --control-divider: #e5eaf140;
  --control-hover: #ffffff20;
  --control-hover-surface: color-mix(in srgb, var(--control-background) 94%, var(--control-text));
  --control-active-surface: color-mix(in srgb, var(--control-background) 88%, var(--control-text));
  --control-disabled-text: color-mix(in srgb, var(--control-text) 40%, transparent);
  --control-quiet-text: color-mix(in srgb, var(--muted-text) 65%, transparent);
  --sun-color: #ffdd83;
  --sun-glow: #ffcb5c80;
  --moon-color: #d6e7ff;
  --moon-glow: #9dc7ff66;
}
:root[data-palette='ocean'] {
  --accent: #8bbfe8;
  --control-background: #34556f;
}
:root[data-palette='violet'] {
  --accent: #c3a6e8;
  --control-background: #58456c;
}
:root[data-palette='amber'] {
  --accent: #dfbe83;
  --control-background: #655335;
}
:root[data-palette='red'] {
  --accent: #fca5a5;
  --control-background: #71343b;
}
:root[data-palette='yellow'] {
  --accent: #fde047;
  --control-background: #63551f;
}
:root[data-palette='blue'] {
  --accent: #93b5ff;
  --control-background: #274d88;
}

:root[data-mode='light'] {
  --color-scheme: light;
  --version-update-text: #963b00;
  --version-update-background: #ffe3a0;
  --control-background: #d8eae3;
  --control-text: #274b40;
  --control-divider: #274b4026;
  --control-hover: #236b5514;
  --sun-color: #925600;
  --sun-glow: #ffc74799;
  --moon-color: #365b88;
  --moon-glow: #91b9ef66;
  --page-background: #f4f7f6;
  --text: #202e2b;
  --accent: #236b55;
  --muted-text: #4f625c;
  --input-background: #ffffff;
  --edit-background: #eeedb0;
  --edit-text: #34360c;
  --input-border: #91a89f;
  --focus: #8a5800;
  --border: #c6d4ce;
  --card-background: #ffffff;
  --warning: #8a5800;
  --timestamp-text: #52685e;
}
:root[data-mode='light'][data-palette='ocean'] {
  --accent: #28638f;
  --control-background: #dbeaf5;
  --control-text: #294d68;
}
:root[data-mode='light'][data-palette='violet'] {
  --accent: #745095;
  --control-background: #eae2f3;
  --control-text: #59436e;
}
:root[data-mode='light'][data-palette='amber'] {
  --accent: #805d24;
  --control-background: #f2e7d2;
  --control-text: #624a26;
}
:root[data-mode='light'][data-palette='red'] {
  --accent: #b32638;
  --control-background: #fee2e2;
  --control-text: #76242f;
}
:root[data-mode='light'][data-palette='yellow'] {
  --accent: #775c00;
  --control-background: #fef3b0;
  --control-text: #61500a;
}
:root[data-mode='light'][data-palette='blue'] {
  --accent: #1e55b3;
  --control-background: #dbe7ff;
  --control-text: #234678;
}

.palette-controls [value='mint'] {
  --palette-swatch: #83cfb5;
}
.palette-controls [value='ocean'] {
  --palette-swatch: #8bbfe8;
}
.palette-controls [value='violet'] {
  --palette-swatch: #c3a6e8;
}
.palette-controls [value='amber'] {
  --palette-swatch: #dfbe83;
}
.palette-controls [value='red'] {
  --palette-swatch: #ef4444;
}
.palette-controls [value='yellow'] {
  --palette-swatch: #facc15;
}
.palette-controls [value='blue'] {
  --palette-swatch: #3b82f6;
}
