/*
 * Theme palettes.
 *
 * GENERATED from Theme::PRESETS — do not edit. Change the class and run
 *   bin/rails runner "Theme.write_stylesheet!"
 * The test suite fails if this file and the class disagree.
 *
 * Applied via data-theme on <body>, not <html>: Turbo replaces the body on
 * every visit and leaves <html> attributes exactly as they were, so a theme
 * written to <html> would go stale the moment somebody navigated. A small
 * script mirrors the attribute up to <html> anyway, because color-scheme only
 * reaches the scrollbars and the form controls from the root element.
 */

[data-theme="light"] {
  --bg: #f6f7f8;
  --surface: #ffffff;
  --surface-2: #fafbfc;
  --border: #e2e4e8;
  --border-soft: #eef0f3;
  --text: #1f2126;
  --muted: #5c626b;
  --accent: #2b2e35;
  --accent-strong: #12141a;
  --accent-soft: #e9ebef;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #e3f2e7;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

[data-theme="dark"] {
  --bg: #101114;
  --surface: #17181c;
  --surface-2: #1c1e23;
  --border: #2a2d34;
  --border-soft: #212429;
  --text: #e8eaee;
  --muted: #9aa1ac;
  --accent: #e8eaee;
  --accent-strong: #ffffff;
  --accent-soft: #23252b;
  --accent-text: #14161a;
  --ok: #6fd68d;
  --ok-soft: #14231a;
  --warn: #e8bf6a;
  --warn-soft: #251f12;
  --danger: #f08585;
  --danger-soft: #251617;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
  color-scheme: dark;
}

[data-theme="mint"] {
  --bg: #f2fbf6;
  --surface: #ffffff;
  --surface-2: #f6fbf8;
  --border: #cfe9db;
  --border-soft: #e4f3ea;
  --text: #123024;
  --muted: #4f6f5f;
  --accent: #0d7f52;
  --accent-strong: #095f3d;
  --accent-soft: #dcf3e8;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #daf1e2;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

[data-theme="mint-dark"] {
  --bg: #07130d;
  --surface: #0f1e16;
  --surface-2: #13251b;
  --border: #1d3a2b;
  --border-soft: #162c20;
  --text: #e2ffee;
  --muted: #8cb5a2;
  --accent: #2bff9e;
  --accent-strong: #6dffc0;
  --accent-soft: #0c2b1d;
  --accent-text: #04170e;
  --ok: #5cf0a0;
  --ok-soft: #0f2a1c;
  --warn: #f5c96b;
  --warn-soft: #2a2213;
  --danger: #ff8a8a;
  --danger-soft: #2c1417;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
  color-scheme: dark;
}

[data-theme="blossom"] {
  --bg: #fff5f8;
  --surface: #ffffff;
  --surface-2: #fff9fb;
  --border: #f7d6e0;
  --border-soft: #fbe9ef;
  --text: #45222f;
  --muted: #7b5464;
  --accent: #c1376b;
  --accent-strong: #9d2854;
  --accent-soft: #fbe1eb;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #ddf1e4;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

[data-theme="blossom-dark"] {
  --bg: #140a12;
  --surface: #1e1019;
  --surface-2: #251320;
  --border: #3a1e30;
  --border-soft: #2b1624;
  --text: #ffe9f4;
  --muted: #c095ac;
  --accent: #ff3d9a;
  --accent-strong: #ff79bd;
  --accent-soft: #3a1028;
  --accent-text: #16060f;
  --ok: #5cf0a0;
  --ok-soft: #10291d;
  --warn: #f5c96b;
  --warn-soft: #2a2213;
  --danger: #ff8a8a;
  --danger-soft: #2e1418;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
  color-scheme: dark;
}

[data-theme="tide"] {
  --bg: #f4f8fd;
  --surface: #ffffff;
  --surface-2: #f8fbfe;
  --border: #d5e3f2;
  --border-soft: #e6eff9;
  --text: #10243a;
  --muted: #4f6580;
  --accent: #1160a8;
  --accent-strong: #0d4a82;
  --accent-soft: #dceafa;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #dcf1e3;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

[data-theme="tide-dark"] {
  --bg: #070d16;
  --surface: #0f1620;
  --surface-2: #131c28;
  --border: #1e2c3d;
  --border-soft: #172231;
  --text: #e4f1ff;
  --muted: #8ba6c4;
  --accent: #4cc2ff;
  --accent-strong: #8ad8ff;
  --accent-soft: #0c2233;
  --accent-text: #04121e;
  --ok: #5cf0a0;
  --ok-soft: #0f2a1c;
  --warn: #f5c96b;
  --warn-soft: #2a2213;
  --danger: #ff8a8a;
  --danger-soft: #2c1417;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
  color-scheme: dark;
}

[data-theme="ember"] {
  --bg: #fff6f3;
  --surface: #ffffff;
  --surface-2: #fff9f7;
  --border: #f5d9cf;
  --border-soft: #fbeae4;
  --text: #3a1c14;
  --muted: #7a5347;
  --accent: #b5451d;
  --accent-strong: #8f3616;
  --accent-soft: #fbe3d8;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #ddf1e4;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

[data-theme="ember-dark"] {
  --bg: #150a07;
  --surface: #1f110c;
  --surface-2: #271510;
  --border: #3d2116;
  --border-soft: #2e1911;
  --text: #ffece4;
  --muted: #c39a88;
  --accent: #ff6b35;
  --accent-strong: #ff9163;
  --accent-soft: #37170c;
  --accent-text: #1a0703;
  --ok: #5cf0a0;
  --ok-soft: #10291d;
  --warn: #f5c96b;
  --warn-soft: #2a2213;
  --danger: #ff8a8a;
  --danger-soft: #2e1418;
  --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
  --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
  color-scheme: dark;
}


/* Signed out, or nobody has chosen: mint, or mint-dark if the machine asks. */
[data-theme="auto"] {
  --bg: #f2fbf6;
  --surface: #ffffff;
  --surface-2: #f6fbf8;
  --border: #cfe9db;
  --border-soft: #e4f3ea;
  --text: #123024;
  --muted: #4f6f5f;
  --accent: #0d7f52;
  --accent-strong: #095f3d;
  --accent-soft: #dcf3e8;
  --accent-text: #ffffff;
  --ok: #1c6b3f;
  --ok-soft: #daf1e2;
  --warn: #7a4f00;
  --warn-soft: #fdf0d3;
  --danger: #b3261e;
  --danger-soft: #fbe6e4;
  --shadow-sm: 0 1px 2px rgb(16 24 32 / 0.06);
  --shadow-md: 0 8px 24px rgb(16 24 32 / 0.12);
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  [data-theme="auto"] {
    --bg: #07130d;
    --surface: #0f1e16;
    --surface-2: #13251b;
    --border: #1d3a2b;
    --border-soft: #162c20;
    --text: #e2ffee;
    --muted: #8cb5a2;
    --accent: #2bff9e;
    --accent-strong: #6dffc0;
    --accent-soft: #0c2b1d;
    --accent-text: #04170e;
    --ok: #5cf0a0;
    --ok-soft: #0f2a1c;
    --warn: #f5c96b;
    --warn-soft: #2a2213;
    --danger: #ff8a8a;
    --danger-soft: #2c1417;
    --shadow-sm: 0 1px 2px rgb(0 0 0 / 0.5);
    --shadow-md: 0 8px 24px rgb(0 0 0 / 0.55);
    color-scheme: dark;
  }
}


/* A custom theme's colours arrive inline on <body>; only this cannot. Which
   of the two applies depends on the preset the custom theme is built on. */
[data-theme="custom"] { color-scheme: light; }
[data-theme="custom-dark"] { color-scheme: dark; }
