/* The member-chosen colour themes. Shared: src/index.css imports this for the app, and the
   public pages in site/ link it so a signed-in member sees their theme there too
   (session.js sets data-theme; styles.css maps these tokens onto the site's own). */
/* The themes. Chalk is also the default, so a page paints sensibly before the saved choice
   is applied. Every pair is checked by scripts/check-theme-contrast.cjs (run in CI): text
   4.5:1 or better, ink 7:1, control borders (field-line) 3:1. Keep that when editing. */
:root,
[data-theme="chalk"] {
  color-scheme: light;
  --t-surface: #f3ecd8;
  --t-panel: #fffaf0;
  --t-line: #d0c19b;
  --t-field-line: #8f8376;
  --t-placeholder: #776654;
  --t-tint: #eae0ca;
  --t-ink: #261510;
  --t-ink-muted: #54402f;
  --t-accent: #7a4f12;
  --t-accent-strong: #5e3b0c;
  --t-accent-line: #b8893a;
  --t-on-accent: #fffaf0;
  --t-danger: #b3261e;
  --t-warn: #a83a00;
  --t-ok: #1e6b34;
  --t-shadow: var(--shadow-light);
  --t-shadow-overlay: var(--shadow-light-overlay);
}
[data-theme="linen"] {
  color-scheme: light;
  --t-surface: #eceff3;
  --t-panel: #ffffff;
  --t-line: #c3cbd7;
  --t-field-line: #82878f;
  --t-placeholder: #626c7d;
  --t-tint: #e4e8ed;
  --t-ink: #141a26;
  --t-ink-muted: #465165;
  --t-accent: #1f4a8a;
  --t-accent-strong: #16376a;
  --t-accent-line: #6f8fc4;
  --t-on-accent: #ffffff;
  --t-danger: #b3261e;
  --t-warn: #8a5a00;
  --t-ok: #1e6b34;
  --t-shadow: var(--shadow-light);
  --t-shadow-overlay: var(--shadow-light-overlay);
}
[data-theme="sage"] {
  color-scheme: light;
  --t-surface: #e6ece0;
  --t-panel: #f8faf4;
  --t-line: #b9c8ae;
  --t-field-line: #7c877c;
  --t-placeholder: #5c6c61;
  --t-tint: #dce4d5;
  --t-ink: #17261b;
  --t-ink-muted: #44554a;
  --t-accent: #2f6b3f;
  --t-accent-strong: #214d2d;
  --t-accent-line: #7fa889;
  --t-on-accent: #f8faf4;
  --t-danger: #b3261e;
  --t-warn: #8a5a00;
  --t-ok: #1e6b34;
  --t-shadow: var(--shadow-light);
  --t-shadow-overlay: var(--shadow-light-overlay);
}
[data-theme="blush"] {
  color-scheme: light;
  --t-surface: #f4e6e8;
  --t-panel: #fff9f9;
  --t-line: #dcbfc5;
  --t-field-line: #8f7d84;
  --t-placeholder: #7f5f6b;
  --t-tint: #efdfe2;
  --t-ink: #2a1520;
  --t-ink-muted: #65414f;
  --t-accent: #8a2b5a;
  --t-accent-strong: #6a1e45;
  --t-accent-line: #c27a9d;
  --t-on-accent: #fff9f9;
  --t-danger: #b3261e;
  --t-warn: #8a5a00;
  --t-ok: #1e6b34;
  --t-shadow: var(--shadow-light);
  --t-shadow-overlay: var(--shadow-light-overlay);
}
[data-theme="contrast"] {
  color-scheme: light;
  --t-surface: #ffffff;
  --t-panel: #f0f0f0;
  --t-line: #4d4d4d;
  --t-field-line: #595959;
  --t-placeholder: #595959;
  --t-tint: #dde5ff;
  --t-ink: #000000;
  --t-ink-muted: #2b2b2b;
  --t-accent: #0033cc;
  --t-accent-strong: #001f80;
  --t-accent-line: #0033cc;
  --t-on-accent: #ffffff;
  --t-danger: #a40000;
  --t-warn: #6b4200;
  --t-ok: #005a1a;
  --t-shadow: var(--shadow-light);
  --t-shadow-overlay: var(--shadow-light-overlay);
}
[data-theme="mahogany"] {
  color-scheme: dark;
  --t-surface: #150a07;
  --t-panel: #2a1710;
  --t-line: #573527;
  --t-field-line: #72695f;
  --t-placeholder: #92856b;
  --t-tint: #3e251a;
  --t-ink: #f8f1de;
  --t-ink-muted: #dccda6;
  --t-accent: #d4ac5e;
  --t-accent-strong: #f0d28a;
  --t-accent-line: #a9803c;
  --t-on-accent: #150a07;
  --t-danger: #ff8a7a;
  --t-warn: #ff8540;
  --t-ok: #7fd18b;
  --t-shadow: var(--shadow-dark);
  --t-shadow-overlay: var(--shadow-dark-overlay);
  --t-glow: var(--glow);
  --t-texture: var(--grain);
}
[data-theme="felt"] {
  color-scheme: dark;
  --t-surface: #0c1f17;
  --t-panel: #153325;
  --t-line: #35634c;
  --t-field-line: #727b6f;
  --t-placeholder: #8d9b84;
  --t-tint: #234937;
  --t-ink: #f4f0e0;
  --t-ink-muted: #c9d6b8;
  --t-accent: #d9b25f;
  --t-accent-strong: #f0d28a;
  --t-accent-line: #b08a40;
  --t-on-accent: #0c1f17;
  --t-danger: #ff8f80;
  --t-warn: #ff8540;
  --t-ok: #8fdc9a;
  --t-shadow: var(--shadow-dark);
  --t-shadow-overlay: var(--shadow-dark-overlay);
  --t-glow: var(--glow);
  --t-texture: var(--grain);
}
[data-theme="midnight"] {
  color-scheme: dark;
  --t-surface: #0d121b;
  --t-panel: #172030;
  --t-line: #34445f;
  --t-field-line: #696d74;
  --t-placeholder: #808a9c;
  --t-tint: #243045;
  --t-ink: #eef0f4;
  --t-ink-muted: #aab6cc;
  --t-accent: #e0b866;
  --t-accent-strong: #f3d58f;
  --t-accent-line: #b38d44;
  --t-on-accent: #0d121b;
  --t-danger: #ff8d80;
  --t-warn: #ff8540;
  --t-ok: #86d99a;
  --t-shadow: var(--shadow-dark);
  --t-shadow-overlay: var(--shadow-dark-overlay);
  --t-glow: var(--glow);
}
[data-theme="oxblood"] {
  color-scheme: dark;
  --t-surface: #1a0a0e;
  --t-panel: #2b1118;
  --t-line: #5c333e;
  --t-field-line: #736466;
  --t-placeholder: #967e80;
  --t-tint: #412029;
  --t-ink: #f8ecea;
  --t-ink-muted: #dcbfc0;
  --t-accent: #e3b36a;
  --t-accent-strong: #f5d391;
  --t-accent-line: #b4854a;
  --t-on-accent: #1a0a0e;
  --t-danger: #ff9a8c;
  --t-warn: #ff8540;
  --t-ok: #86d99a;
  --t-shadow: var(--shadow-dark);
  --t-shadow-overlay: var(--shadow-dark-overlay);
  --t-glow: var(--glow);
}
[data-theme="slate"] {
  color-scheme: dark;
  --t-surface: #12161a;
  --t-panel: #1c2329;
  --t-line: #3b4852;
  --t-field-line: #6b6f72;
  --t-placeholder: #838c92;
  --t-tint: #2a343b;
  --t-ink: #eceff1;
  --t-ink-muted: #b6c1c8;
  --t-accent: #5fc7b8;
  --t-accent-strong: #8fe0d3;
  --t-accent-line: #3b9486;
  --t-on-accent: #0b1214;
  --t-danger: #ff8a80;
  --t-warn: #f2b84f;
  --t-ok: #7fd18b;
  --t-shadow: var(--shadow-dark);
  --t-shadow-overlay: var(--shadow-dark-overlay);
  --t-glow: var(--glow);
}
