/* Built-in themes. theme.js sets data-theme and data-mode on <html> before first paint.
   Every theme has a light and a dark palette. The same attributes work on any element,
   which is how the theme picker cards draw themselves in their own colours. */
[data-mode="light"]{color-scheme:light;--shadow:0 1px 2px rgba(20,26,40,.06),0 8px 24px rgba(20,26,40,.06)}
[data-mode="dark"]{color-scheme:dark;--shadow:0 1px 2px rgba(0,0,0,.4),0 8px 24px rgba(0,0,0,.35)}

[data-theme="gridline"]{
  --bg:#eef0f4;--panel:#fff;--panel2:#f4f5f8;--ink:#161a22;--muted:#5c6472;--line:#dfe2e9;
  --accent:#ec6a10;--accent-ink:#1f1104;--go:#17914a;--on-go:#fff;--danger:#d32839;--on-danger:#fff;
  --rail:#171b26;--rail-ink:#b3bac9;--rail-on:#fff;--rail-accent:#ff8c3a}
[data-theme="gridline"][data-mode="dark"]{
  --bg:#0d1017;--panel:#161a23;--panel2:#1d222d;--ink:#e8eaee;--muted:#98a0af;--line:#272d39;
  --accent:#ff8a33;--accent-ink:#1f1104;--go:#2fc26b;--on-go:#04210f;--danger:#f25c6c;--on-danger:#2b0509;
  --rail:#0a0c12;--rail-ink:#a9b0c0;--rail-on:#fff;--rail-accent:#ff8c3a}

[data-theme="harbor"]{
  --bg:#e7eff2;--panel:#fff;--panel2:#eff5f7;--ink:#0f2630;--muted:#4b626e;--line:#d3e0e6;
  --accent:#0b7285;--accent-ink:#fff;--go:#148a58;--on-go:#fff;--danger:#c92a3a;--on-danger:#fff;
  --rail:#0f2a36;--rail-ink:#a9c4cf;--rail-on:#fff;--rail-accent:#4fd1d9}
[data-theme="harbor"][data-mode="dark"]{
  --bg:#08151b;--panel:#0f212a;--panel2:#163039;--ink:#e3eff3;--muted:#8fabb6;--line:#1f3b46;
  --accent:#38c6d4;--accent-ink:#06242b;--go:#2bbd7e;--on-go:#04211a;--danger:#ff6b78;--on-danger:#2b0509;
  --rail:#06121a;--rail-ink:#9db8c3;--rail-on:#fff;--rail-accent:#4fd1d9}

[data-theme="forest"]{
  --bg:#f0eee5;--panel:#fffdf7;--panel2:#f6f3ea;--ink:#1e2419;--muted:#585e4f;--line:#e0dbca;
  --accent:#2f6b3f;--accent-ink:#fff;--go:#2f7d45;--on-go:#fff;--danger:#b3261e;--on-danger:#fff;
  --rail:#20301f;--rail-ink:#b9c7b2;--rail-on:#fff;--rail-accent:#9bd4a4}
[data-theme="forest"][data-mode="dark"]{
  --bg:#11150f;--panel:#1a2017;--panel2:#232b1f;--ink:#e9eee3;--muted:#9ca792;--line:#2f3a2a;
  --accent:#7fc48c;--accent-ink:#10240f;--go:#6fcf85;--on-go:#0c2412;--danger:#f2766b;--on-danger:#2b0705;
  --rail:#0c100b;--rail-ink:#a7b3a0;--rail-on:#fff;--rail-accent:#9bd4a4}

[data-theme="plum"]{
  --bg:#f2edf6;--panel:#fff;--panel2:#f8f4fa;--ink:#221a2b;--muted:#625870;--line:#e3dbea;
  --accent:#6d3bbf;--accent-ink:#fff;--go:#1f8f55;--on-go:#fff;--danger:#c72640;--on-danger:#fff;
  --rail:#241736;--rail-ink:#c2b4d4;--rail-on:#fff;--rail-accent:#c9a6ff}
[data-theme="plum"][data-mode="dark"]{
  --bg:#120d19;--panel:#1c1526;--panel2:#261d33;--ink:#ece6f3;--muted:#a89bb8;--line:#342846;
  --accent:#b68cff;--accent-ink:#1e0f38;--go:#3fcb86;--on-go:#05241a;--danger:#ff6f86;--on-danger:#2b0510;
  --rail:#0d0913;--rail-ink:#b0a3c1;--rail-on:#fff;--rail-accent:#c9a6ff}

[data-theme="graphite"]{
  --bg:#ebebeb;--panel:#fff;--panel2:#f5f5f5;--ink:#161616;--muted:#5c5c5c;--line:#dcdcdc;
  --accent:#1f5fd6;--accent-ink:#fff;--go:#1a8a4c;--on-go:#fff;--danger:#cf2a36;--on-danger:#fff;
  --rail:#1b1b1b;--rail-ink:#b5b5b5;--rail-on:#fff;--rail-accent:#7fb0ff}
[data-theme="graphite"][data-mode="dark"]{
  --bg:#0e0e0e;--panel:#181818;--panel2:#222;--ink:#ececec;--muted:#a0a0a0;--line:#303030;
  --accent:#6aa5ff;--accent-ink:#0b1a33;--go:#34c274;--on-go:#04210f;--danger:#f4616e;--on-danger:#2b0509;
  --rail:#090909;--rail-ink:#adadad;--rail-on:#fff;--rail-accent:#7fb0ff}

[data-theme="contrast"]{
  --bg:#fff;--panel:#fff;--panel2:#efefef;--ink:#000;--muted:#2e2e2e;--line:#000;
  --accent:#0040c0;--accent-ink:#fff;--go:#006b2e;--on-go:#fff;--danger:#b00000;--on-danger:#fff;
  --rail:#000;--rail-ink:#fff;--rail-on:#fff;--rail-accent:#ffe600}
[data-theme="contrast"][data-mode="dark"]{
  --bg:#000;--panel:#000;--panel2:#1c1c1c;--ink:#fff;--muted:#e2e2e2;--line:#fff;
  --accent:#ffe600;--accent-ink:#000;--go:#00d463;--on-go:#000;--danger:#ff7a7a;--on-danger:#000;
  --rail:#000;--rail-ink:#fff;--rail-on:#fff;--rail-accent:#ffe600}

/* Every themed element starts with no effects, so a preview card never borrows the page's theme effects. */
[data-theme]{--art:initial;--aurora:initial;--overlay:initial;--glass:initial;--glow:initial;--ink-glow:initial;--font:initial;--font-head:initial;--surface:initial}

/* ---------- Showpiece themes (v0.5.5) ----------
   Besides colours these set optional effect tokens that app.css reads with a "none" fallback:
   --art       background image behind everything (gradients only, no files)
   --aurora    soft shapes that drift slowly behind the panels (still when reduced motion is on)
   --overlay   a layer over the whole app that never takes clicks (scanlines)
   --glass     backdrop-filter for panels, used with see-through --panel colours
   --glow      box-shadow for main buttons; --ink-glow text-shadow for all text
   --font, --font-head  type */

[data-theme="neon"]{
  --bg:#fbf0ff;--panel:rgba(255,255,255,.78);--panel2:rgba(250,232,255,.85);--ink:#2a0f3d;--muted:#6a4a80;--line:#ecd2f5;
  --accent:#c2189a;--accent-ink:#fff;--go:#0e8a6e;--on-go:#fff;--danger:#c8243b;--on-danger:#fff;
  --rail:#2a0f3d;--rail-ink:#e6c8f5;--rail-on:#fff;--rail-accent:#3ff0f3;
  --art:radial-gradient(60% 50% at 100% 0%,rgba(255,79,216,.28),transparent 70%),radial-gradient(50% 45% at 0% 100%,rgba(45,226,230,.28),transparent 70%),linear-gradient(180deg,#fdf3ff,#f3e9ff);
  --glass:blur(14px) saturate(1.2);--glow:0 4px 18px rgba(194,24,154,.35)}
[data-theme="neon"][data-mode="dark"]{
  --bg:#0b0618;--panel:rgba(22,11,44,.74);--panel2:rgba(40,20,74,.8);--ink:#f6e9ff;--muted:#b9a2d6;--line:#3b2266;
  --accent:#ff3ddb;--accent-ink:#22001c;--go:#2dffb3;--on-go:#00261a;--danger:#ff5c7a;--on-danger:#2b0510;
  --rail:#070310;--rail-ink:#b29ad3;--rail-on:#fff;--rail-accent:#2de2e6;
  --art:radial-gradient(70% 45% at 50% 105%,rgba(255,61,219,.38),transparent 70%),radial-gradient(45% 40% at 85% 0%,rgba(45,226,230,.2),transparent 70%),linear-gradient(180deg,#0b0618 0%,#0b0618 52%,rgba(11,6,24,0) 85%),repeating-linear-gradient(0deg,rgba(255,61,219,.28) 0 1px,transparent 1px 36px),repeating-linear-gradient(90deg,rgba(45,226,230,.18) 0 1px,transparent 1px 56px),linear-gradient(180deg,#0b0618,#1a0730);
  --glass:blur(16px) saturate(1.3);--glow:0 0 22px rgba(255,61,219,.55),0 0 2px rgba(255,61,219,.9);
  --ink-glow:0 0 10px rgba(255,61,219,.18)}

[data-theme="aurora"]{
  --bg:#eef5fb;--panel:rgba(255,255,255,.66);--panel2:rgba(255,255,255,.5);--ink:#0d2233;--muted:#4b6276;--line:rgba(13,34,51,.12);
  --accent:#0f766e;--accent-ink:#fff;--go:#15803d;--on-go:#fff;--danger:#c52a3a;--on-danger:#fff;
  --rail:#0d2233;--rail-ink:#a8c3d6;--rail-on:#fff;--rail-accent:#5eead4;
  --aurora:radial-gradient(35% 30% at 20% 25%,rgba(94,234,212,.55),transparent 70%),radial-gradient(30% 28% at 75% 20%,rgba(167,139,250,.45),transparent 70%),radial-gradient(40% 30% at 60% 80%,rgba(125,211,252,.5),transparent 70%);
  --art:linear-gradient(160deg,#e7f6f8,#eef0fb);--surface:transparent;
  --glass:blur(22px) saturate(1.4)}
[data-theme="aurora"][data-mode="dark"]{
  --bg:#040a14;--panel:rgba(10,20,36,.62);--panel2:rgba(255,255,255,.06);--ink:#e6f2fb;--muted:#9fb6c8;--line:rgba(255,255,255,.09);
  --accent:#5eead4;--accent-ink:#032421;--go:#4ade80;--on-go:#052e14;--danger:#fb7185;--on-danger:#2b0510;
  --rail:#03070e;--rail-ink:#93aabd;--rail-on:#fff;--rail-accent:#5eead4;
  --aurora:radial-gradient(35% 30% at 20% 25%,rgba(45,212,191,.45),transparent 70%),radial-gradient(30% 28% at 75% 20%,rgba(139,92,246,.42),transparent 70%),radial-gradient(40% 30% at 60% 80%,rgba(34,197,94,.3),transparent 70%);
  --art:linear-gradient(180deg,#040a14,#07101f);--surface:transparent;
  --glass:blur(24px) saturate(1.5);--glow:0 0 20px rgba(94,234,212,.35)}

[data-theme="terminal"]{
  --bg:#f1efe2;--panel:#faf8ee;--panel2:#eceadb;--ink:#0d3a17;--muted:#3f6146;--line:#d4d2bf;
  --accent:#0d7a2c;--accent-ink:#fff;--go:#0d7a2c;--on-go:#fff;--danger:#b3261e;--on-danger:#fff;
  --rail:#0d2a12;--rail-ink:#a7cfae;--rail-on:#fff;--rail-accent:#5dff8a;
  --font:ui-monospace,"Cascadia Mono","Cascadia Code",Consolas,"SF Mono",Menlo,monospace;--font-head:var(--font)}
[data-theme="terminal"][data-mode="dark"]{
  --bg:#020802;--panel:#041104;--panel2:#082008;--ink:#8dffa4;--muted:#4fbf68;--line:#124a1c;
  --accent:#39ff6a;--accent-ink:#001a06;--go:#39ff6a;--on-go:#001a06;--danger:#ffb000;--on-danger:#1f1500;
  --rail:#010501;--rail-ink:#4fbf68;--rail-on:#b8ffc6;--rail-accent:#39ff6a;
  --font:ui-monospace,"Cascadia Mono","Cascadia Code",Consolas,"SF Mono",Menlo,monospace;--font-head:var(--font);
  --art:radial-gradient(80% 70% at 50% 40%,rgba(57,255,106,.06),transparent 75%);
  --overlay:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0 1px,transparent 1px 3px);
  --ink-glow:0 0 6px rgba(57,255,106,.35);--glow:0 0 16px rgba(57,255,106,.45)}

[data-theme="gold"]{
  --bg:#f5f0e6;--panel:#fffdf8;--panel2:#f8f3e8;--ink:#1d1a14;--muted:#655b48;--line:#e6dcc7;
  --accent:#8a6a12;--accent-ink:#fff;--go:#2f7d45;--on-go:#fff;--danger:#b3261e;--on-danger:#fff;
  --rail:#16130d;--rail-ink:#cdbf9f;--rail-on:#fff;--rail-accent:#e6c463;
  --font-head:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --glow:0 4px 14px rgba(138,106,18,.28)}
[data-theme="gold"][data-mode="dark"]{
  --bg:#0a0907;--panel:#14120f;--panel2:#1c1915;--ink:#f3ead8;--muted:#b3a68c;--line:#2e281e;
  --accent:#d9b44a;--accent-ink:#1a1405;--go:#7fc48c;--on-go:#0c2412;--danger:#f2766b;--on-danger:#2b0705;
  --rail:#050403;--rail-ink:#a89a7c;--rail-on:#f7e7b6;--rail-accent:#e6c463;
  --font-head:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --art:radial-gradient(60% 40% at 50% 0%,rgba(217,180,74,.10),transparent 70%);
  --glow:0 0 18px rgba(217,180,74,.35)}

[data-theme="sunset"]{
  --bg:#fff1ea;--panel:#fffaf6;--panel2:#fff1e8;--ink:#2b1712;--muted:#6e4f45;--line:#f2d9cc;
  --accent:#c2410c;--accent-ink:#fff;--go:#15803d;--on-go:#fff;--danger:#be123c;--on-danger:#fff;
  --rail:#2b1420;--rail-ink:#e9bfae;--rail-on:#fff;--rail-accent:#ff9a6b;
  --art:linear-gradient(180deg,#fff4ec 0%,#ffe2d3 100%)}
[data-theme="sunset"][data-mode="dark"]{
  --bg:#170c12;--panel:#21131a;--panel2:#2b1922;--ink:#fbe9e2;--muted:#c9a197;--line:#3a2229;
  --accent:#ff8a5c;--accent-ink:#2a0e04;--go:#4ade80;--on-go:#052e14;--danger:#ff6b8a;--on-danger:#2b0510;
  --rail:#10070c;--rail-ink:#c49a92;--rail-on:#fff;--rail-accent:#ffb36b;
  --art:radial-gradient(90% 55% at 50% 110%,rgba(255,122,69,.28),transparent 70%),radial-gradient(70% 45% at 50% 100%,rgba(219,39,119,.22),transparent 75%),linear-gradient(180deg,#170c12,#1f0d18)}

[data-theme="sakura"]{
  --bg:#fdf1f4;--panel:#fff;--panel2:#fdf5f7;--ink:#2e1520;--muted:#6f5160;--line:#f3dbe3;
  --accent:#c2336b;--accent-ink:#fff;--go:#2f7d45;--on-go:#fff;--danger:#b91c1c;--on-danger:#fff;
  --rail:#3b1a28;--rail-ink:#e6bfcf;--rail-on:#fff;--rail-accent:#ffa3c4}
[data-theme="sakura"][data-mode="dark"]{
  --bg:#170d12;--panel:#21141b;--panel2:#2a1a23;--ink:#fbe8ef;--muted:#c49fb0;--line:#3a2430;
  --accent:#ff8fb3;--accent-ink:#2b0716;--go:#6fcf85;--on-go:#0c2412;--danger:#ff7a7a;--on-danger:#2b0505;
  --rail:#0f080c;--rail-ink:#bf9caa;--rail-on:#fff;--rail-accent:#ffa3c4}

/* v0.21 themes, made for the Inbox layout (they work in Classic too). */
[data-theme="sage"]{
  --bg:#f3f4f0;--panel:#fafaf8;--panel2:#f1f3ef;--ink:#141815;--muted:#5d655f;--line:#e2e5df;
  --accent:#11694a;--accent-ink:#fafaf8;--go:#1f8a4c;--on-go:#fff;--danger:#c8322b;--on-danger:#fff;
  --rail:#141815;--rail-ink:#b5c2ba;--rail-on:#fff;--rail-accent:#7fd3a6}
[data-theme="sage"][data-mode="dark"]{
  --bg:#0f1311;--panel:#171c19;--panel2:#1e2521;--ink:#e6ebe8;--muted:#9aa59f;--line:#2a332e;
  --accent:#4cc38a;--accent-ink:#062115;--go:#3dcb7f;--on-go:#04210f;--danger:#f26b62;--on-danger:#2b0705;
  --rail:#0a0d0b;--rail-ink:#a3b0a8;--rail-on:#fff;--rail-accent:#7fd3a6}

[data-theme="slate"]{
  --bg:#f3f3f5;--panel:#fff;--panel2:#f6f6f8;--ink:#18181b;--muted:#5f5f6b;--line:#e4e4e8;
  --accent:#4f46e5;--accent-ink:#fff;--go:#1f8a4c;--on-go:#fff;--danger:#c8322b;--on-danger:#fff;
  --rail:#1b1b22;--rail-ink:#b9b9c6;--rail-on:#fff;--rail-accent:#a5a0ff}
[data-theme="slate"][data-mode="dark"]{
  --bg:#0e0e11;--panel:#17171b;--panel2:#1f1f24;--ink:#ececf0;--muted:#9c9ca8;--line:#2a2a31;
  --accent:#8b84ff;--accent-ink:#140f3d;--go:#3dcb7f;--on-go:#04210f;--danger:#f26b62;--on-danger:#2b0705;
  --rail:#09090b;--rail-ink:#a9a9b6;--rail-on:#fff;--rail-accent:#a5a0ff}

[data-theme="ocean"]{
  --bg:#eff2f6;--panel:#fff;--panel2:#f4f6fa;--ink:#141a24;--muted:#586274;--line:#dfe4ec;
  --accent:#1d4ed8;--accent-ink:#fff;--go:#1f8a4c;--on-go:#fff;--danger:#c8322b;--on-danger:#fff;
  --rail:#121a28;--rail-ink:#b0bccf;--rail-on:#fff;--rail-accent:#7aa7ff}
[data-theme="ocean"][data-mode="dark"]{
  --bg:#0c1118;--panel:#141b25;--panel2:#1b2430;--ink:#e4eaf2;--muted:#93a0b4;--line:#263142;
  --accent:#6ea0ff;--accent-ink:#07142e;--go:#3dcb7f;--on-go:#04210f;--danger:#f26b62;--on-danger:#2b0705;
  --rail:#080c12;--rail-ink:#9fadc2;--rail-on:#fff;--rail-accent:#7aa7ff}

[data-theme="sand"]{
  --bg:#f4f1ec;--panel:#fffdfa;--panel2:#f8f5f0;--ink:#24201b;--muted:#6b6359;--line:#e7e1d8;
  --accent:#b4531d;--accent-ink:#fff;--go:#2f7d45;--on-go:#fff;--danger:#b3261e;--on-danger:#fff;
  --rail:#2a231c;--rail-ink:#cbbfb1;--rail-on:#fff;--rail-accent:#f2a36b}
[data-theme="sand"][data-mode="dark"]{
  --bg:#14110e;--panel:#1d1915;--panel2:#26211c;--ink:#eee8e1;--muted:#a89e92;--line:#342d26;
  --accent:#f08a4b;--accent-ink:#2a1305;--go:#6fcf85;--on-go:#0c2412;--danger:#f2766b;--on-danger:#2b0705;
  --rail:#0e0b09;--rail-ink:#b3a797;--rail-on:#fff;--rail-accent:#f2a36b}
