:root {
  color-scheme: light; /* the dark values are under :root[data-theme='dark'], set by the head script from the device or the person's choice */
  --paper: #ffffff;
  --surface: #f1f6fa;
  --ink: #1e2340;
  --ink-soft: #4b5270;
  --rule: #8a939d;
  --hairline: #d5dadf;
  --action: #3a3c74;
  --action-ink: #ffffff;
  --focus: #b45309;
  --season: #3f7d52;
  --season-ink: #ffffff;
  --rehearsal-bg: #dcebf7;
  --rehearsal-ink: #1d3a5f;
  --rehearsal-ico: #2f6fb0;
  --service-bg: #fbefc9;
  --service-ink: #4f3a00;
  --service-ico: #b7860b;
  --off-bg: #e8ebf0;
  --off-ink: #4b5270;
  --font-text: var(--font-playfair), Georgia, serif;
  --font-ui: var(--font-figtree), system-ui, sans-serif;
  --radius-control: 10px;
  --radius-tag: 999px;
  --radius-sheet: 18px;
  --shadow: 0 1px 2px rgb(20 30 45 / 0.05), 0 8px 24px -14px rgb(20 30 45 / 0.22);
}
[data-season='purple'] { --season: #5b3a82; --season-ink: #ffffff; }
[data-season='white'] { --season: #ffffff; --season-ink: #20262e; }
[data-season='red'] { --season: #a52a2a; --season-ink: #ffffff; }

:root[data-theme='dark'] {
  color-scheme: dark;
  --paper: #171b24;
  --surface: #0f1219;
  --ink: #f1f3f8;
  --ink-soft: #b9c0d4;
  --rule: #7b84a0;
  --hairline: #2c3345;
  --action: #a9b4ff;
  --action-ink: #11142b;
  --focus: #f59e0b;
  --season: #5fae7a;
  --rehearsal-bg: #1d2c46;
  --rehearsal-ink: #cfe0f7;
  --rehearsal-ico: #7fb2ea;
  --service-bg: #3a3017;
  --service-ink: #f3dfa0;
  --service-ico: #e2b84a;
  --off-bg: #232a38;
  --off-ink: #b9c0d4;
}
:root[data-theme='dark'][data-season='purple'], [data-theme='dark'] [data-season='purple'] { --season: #a98bd6; }

/* Accent colors an administrator may choose (Admin > Settings). Indigo is the default and needs nothing here. */
:root[data-accent='blue'] { --action: #1f5f99; }
:root[data-accent='teal'] { --action: #0f6b6b; }
:root[data-accent='burgundy'] { --action: #8a2b4a; }
:root[data-accent='forest'] { --action: #2f6b3e; }
:root[data-accent='slate'] { --action: #3f4b5a; }
:root[data-accent='navy'] { --action: #1f3a68; }
:root[data-accent='cerulean'] { --action: #0b6e99; }
:root[data-accent='plum'] { --action: #6b3a7d; }
:root[data-accent='crimson'] { --action: #a02c2c; }
:root[data-accent='rust'] { --action: #9a4a1c; }
:root[data-accent='ochre'] { --action: #8a6100; }
:root[data-accent='olive'] { --action: #5c6a1f; }
:root[data-theme='dark'][data-accent='blue'] { --action: #8db8e8; }
:root[data-theme='dark'][data-accent='teal'] { --action: #7fd3d3; }
:root[data-theme='dark'][data-accent='burgundy'] { --action: #f0a8c0; }
:root[data-theme='dark'][data-accent='forest'] { --action: #9ad3a8; }
:root[data-theme='dark'][data-accent='slate'] { --action: #bac6d6; }
:root[data-theme='dark'][data-accent='navy'] { --action: #9bb6ef; }
:root[data-theme='dark'][data-accent='cerulean'] { --action: #7cc7ea; }
:root[data-theme='dark'][data-accent='plum'] { --action: #d2a6e6; }
:root[data-theme='dark'][data-accent='crimson'] { --action: #f2a3a3; }
:root[data-theme='dark'][data-accent='rust'] { --action: #f0b087; }
:root[data-theme='dark'][data-accent='ochre'] { --action: #e8c26a; }
:root[data-theme='dark'][data-accent='olive'] { --action: #c2d17a; }

/* No church-year color: the page uses the accent instead. */
[data-season='none'] { --season: var(--action); --season-ink: var(--action-ink); }
/* The page's season color comes from the church-year palette (Admin > Settings); AppShell sets --season-base and --season-ink inline. */
.shell[data-season-custom] { --season: var(--season-base); --season-line: var(--season-line-light); --season-text: var(--season-text-light); }
:root[data-theme='dark'] .shell[data-season-custom] { --season: color-mix(in srgb, var(--season-base) 62%, white); --season-line: var(--season); --season-text: var(--season); }
.shell[data-season='none'] { --season-line: var(--action); --season-text: var(--action); }
:root[data-theme='dark'] .shell[data-season='none'] { --season: var(--action); }
