/* Colour themes for the studio and the admin panel. theme.js puts the choice on <html data-theme>;
   every colour in studio.css / admin-theme.css / motion.css comes from these tokens. Generated —
   edit the table in scripts/build_themes.py, not the rules below. */
/* Burnt City */
html[data-theme="clay"],html:not([data-theme]){color-scheme:light;background:#ead9bd}
html[data-theme="clay"] body.studio,html[data-theme="clay"] body.admin,html:not([data-theme]) body.studio,html:not([data-theme]) body.admin{color-scheme:light;--bg:#ead9bd;--bg-rgb:234,217,189;--surface:#f6ecdb;--surface-rgb:246,236,219;--raised:#f1e3cb;--deep:#dcc5a2;--panel:#f1e3cb;--panel-2:#e4d0b0;--pop:#fbf4e8;--text:#3b2416;--text-strong:#2a170c;--soft:#5c3b26;--muted:#86664b;--fg-rgb:59,36,22;--line:rgba(59,36,22,0.12);--line-strong:rgba(59,36,22,0.2);--chip:rgba(59,36,22,0.05);--chip-hover:rgba(59,36,22,0.09);--accent:#9c3f1d;--accent-0:#c9772f;--accent-mid:#b5562a;--accent-2:#5a2e17;--accent-rgb:156,63,29;--accent2-rgb:90,46,23;--glow-rgb:181,86,42;--ink:#fff6ea;--ink-rgb:255,246,234;--accent-ink:#fff6ea;--accent-soft-text:#7a2f12;--eyebrow:#9c3f1d;--option-selected:#ecd3b3;--grad:linear-gradient(120deg,#c9772f 0%,#b5562a 45%,#5a2e17 100%);--grad-soft:linear-gradient(120deg,rgba(201,119,47,0.2),rgba(90,46,23,0.16));--good:#4d6b2a;--good-rgb:77,107,42;--good-bg:rgba(77,107,42,0.14);--rose-text:#a3271f;--rose-soft-text:#7d1d17;--bad:#a3271f;--bad-rgb:184,50,42;--bad-bg:rgba(184,50,42,.13);--violet-text:#5b4a8a;--violet-rgb:91,74,138;--info:#5b4a8a;--info-bg:rgba(91,74,138,.14);--chart-cost:#c9a27a;--chart-revenue:#7a8f6a;background:radial-gradient(900px 500px at 100% -10%,rgba(201,119,47,0.1),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(156,63,29,0.08),transparent 60%),#ead9bd;background-attachment:fixed}
/* Teal Night */
html[data-theme="teal"]{color-scheme:dark;background:#071316}
html[data-theme="teal"] body.studio,html[data-theme="teal"] body.admin{color-scheme:dark;--bg:#071316;--bg-rgb:7,19,22;--surface:#0d1c20;--surface-rgb:13,28,32;--raised:#112428;--deep:#051012;--panel:#112428;--panel-2:#183136;--pop:#10262b;--text:#ecf6f5;--text-strong:#ffffff;--soft:#c2d8d6;--muted:#86a3a1;--fg-rgb:255,255,255;--line:rgba(255,255,255,0.075);--line-strong:rgba(255,255,255,0.14);--chip:rgba(255,255,255,0.045);--chip-hover:rgba(255,255,255,0.085);--accent:#3fe0c5;--accent-0:#8af5dc;--accent-mid:#22c3c6;--accent-2:#7aa8ff;--accent-rgb:63,224,197;--accent2-rgb:122,168,255;--glow-rgb:60,207,196;--ink:#022320;--ink-rgb:2,35,32;--accent-ink:#022320;--accent-soft-text:#b6f4e8;--eyebrow:#86d8ca;--option-selected:#123c3a;--grad:linear-gradient(120deg,#8af5dc 0%,#22c3c6 45%,#7aa8ff 100%);--grad-soft:linear-gradient(120deg,rgba(138,245,220,0.16),rgba(122,168,255,0.14));--good:#7ee2a8;--good-rgb:126,226,168;--good-bg:rgba(126,226,168,0.12);--rose-text:#ff9fb2;--rose-soft-text:#ffc8d3;--bad:#ff9fb2;--bad-rgb:255,90,110;--bad-bg:rgba(255,90,110,.13);--violet-text:#c3c8ff;--violet-rgb:140,150,255;--info:#c3c8ff;--info-bg:rgba(140,150,255,.14);--chart-cost:#7a5a3c;--chart-revenue:#2f5a63;background:radial-gradient(900px 500px at 100% -10%,rgba(63,224,197,0.08),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(122,168,255,0.06),transparent 60%),#071316;background-attachment:fixed}
/* Cloud Dancer */
html[data-theme="cloud"]{color-scheme:light;background:#f2efe9}
html[data-theme="cloud"] body.studio,html[data-theme="cloud"] body.admin{color-scheme:light;--bg:#f2efe9;--bg-rgb:242,239,233;--surface:#fbfaf7;--surface-rgb:251,250,247;--raised:#f5f2ec;--deep:#e6e1d8;--panel:#f5f2ec;--panel-2:#e9e4db;--pop:#ffffff;--text:#1c1a21;--text-strong:#0f0d13;--soft:#3f3a47;--muted:#6b6474;--fg-rgb:24,20,32;--line:rgba(24,20,32,0.12);--line-strong:rgba(24,20,32,0.2);--chip:rgba(24,20,32,0.05);--chip-hover:rgba(24,20,32,0.09);--accent:#0b8a81;--accent-0:#19b3a3;--accent-mid:#0f9c92;--accent-2:#4f63e8;--accent-rgb:11,138,129;--accent2-rgb:79,99,232;--glow-rgb:24,160,150;--ink:#ffffff;--ink-rgb:255,255,255;--accent-ink:#ffffff;--accent-soft-text:#0a6a63;--eyebrow:#0c7a72;--option-selected:#d5eeea;--grad:linear-gradient(120deg,#19b3a3 0%,#0f9c92 45%,#4f63e8 100%);--grad-soft:linear-gradient(120deg,rgba(25,179,163,0.2),rgba(79,99,232,0.16));--good:#11734f;--good-rgb:17,115,79;--good-bg:rgba(17,115,79,0.14);--rose-text:#b8204a;--rose-soft-text:#8f1838;--bad:#b8204a;--bad-rgb:200,40,79;--bad-bg:rgba(200,40,79,.13);--violet-text:#4547c4;--violet-rgb:80,82,210;--info:#4547c4;--info-bg:rgba(80,82,210,.14);--chart-cost:#d7b48f;--chart-revenue:#9fb7d6;background:radial-gradient(900px 500px at 100% -10%,rgba(11,138,129,0.1),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(79,99,232,0.08),transparent 60%),#f2efe9;background-attachment:fixed}
/* Saffron Plum */
html[data-theme="saffron"]{color-scheme:dark;background:#0d0b12}
html[data-theme="saffron"] body.studio,html[data-theme="saffron"] body.admin{color-scheme:dark;--bg:#0d0b12;--bg-rgb:13,11,18;--surface:#15121c;--surface-rgb:21,18,28;--raised:#1b1622;--deep:#120f18;--panel:#1b1622;--panel-2:#2a2433;--pop:#1f1a27;--text:#f6f3f8;--text-strong:#ffffff;--soft:#cfc9d8;--muted:#9c95ab;--fg-rgb:255,255,255;--line:rgba(255,255,255,0.075);--line-strong:rgba(255,255,255,0.14);--chip:rgba(255,255,255,0.045);--chip-hover:rgba(255,255,255,0.085);--accent:#ffb454;--accent-0:#ffc56b;--accent-mid:#ff9a5c;--accent-2:#ff6f91;--accent-rgb:255,180,84;--accent2-rgb:255,111,145;--glow-rgb:255,140,110;--ink:#1d0f0a;--ink-rgb:29,15,10;--accent-ink:#1d0f0a;--accent-soft-text:#ffd9b0;--eyebrow:#c9a98f;--option-selected:#3a2a22;--grad:linear-gradient(120deg,#ffc56b 0%,#ff9a5c 45%,#ff6f91 100%);--grad-soft:linear-gradient(120deg,rgba(255,197,107,0.16),rgba(255,111,145,0.14));--good:#7ee2a8;--good-rgb:126,226,168;--good-bg:rgba(126,226,168,0.12);--rose-text:#ff9fb2;--rose-soft-text:#ffc2cd;--bad:#ff9fb2;--bad-rgb:255,90,110;--bad-bg:rgba(255,90,110,.13);--violet-text:#c3c8ff;--violet-rgb:140,150,255;--info:#c3c8ff;--info-bg:rgba(140,150,255,.14);--chart-cost:#7a5040;--chart-revenue:#4a3f63;background:radial-gradient(900px 500px at 100% -10%,rgba(255,111,145,0.08),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(255,180,84,0.06),transparent 60%),#0d0b12;background-attachment:fixed}
/* Violet Dusk */
html[data-theme="violet"]{color-scheme:dark;background:#0c0a17}
html[data-theme="violet"] body.studio,html[data-theme="violet"] body.admin{color-scheme:dark;--bg:#0c0a17;--bg-rgb:12,10,23;--surface:#141122;--surface-rgb:20,17,34;--raised:#1a1630;--deep:#090814;--panel:#1a1630;--panel-2:#262043;--pop:#1a1530;--text:#f2effb;--text-strong:#ffffff;--soft:#cdc6e6;--muted:#958dae;--fg-rgb:255,255,255;--line:rgba(255,255,255,0.075);--line-strong:rgba(255,255,255,0.14);--chip:rgba(255,255,255,0.045);--chip-hover:rgba(255,255,255,0.085);--accent:#a78bfa;--accent-0:#c4b5fd;--accent-mid:#c084fc;--accent-2:#f472b6;--accent-rgb:167,139,250;--accent2-rgb:244,114,182;--glow-rgb:183,124,245;--ink:#1b0b2a;--ink-rgb:27,11,42;--accent-ink:#1b0b2a;--accent-soft-text:#e3d8ff;--eyebrow:#b7a6e6;--option-selected:#2d2150;--grad:linear-gradient(120deg,#c4b5fd 0%,#c084fc 45%,#f472b6 100%);--grad-soft:linear-gradient(120deg,rgba(196,181,253,0.16),rgba(244,114,182,0.14));--good:#86efac;--good-rgb:134,239,172;--good-bg:rgba(134,239,172,0.12);--rose-text:#fda4c8;--rose-soft-text:#fbcfe8;--bad:#fda4c8;--bad-rgb:251,113,133;--bad-bg:rgba(251,113,133,.13);--violet-text:#c7d2fe;--violet-rgb:129,140,248;--info:#c7d2fe;--info-bg:rgba(129,140,248,.14);--chart-cost:#6b4a7a;--chart-revenue:#3c3f75;background:radial-gradient(900px 500px at 100% -10%,rgba(167,139,250,0.08),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(244,114,182,0.06),transparent 60%),#0c0a17;background-attachment:fixed}
/* Ocean */
html[data-theme="ocean"]{color-scheme:dark;background:#070d18}
html[data-theme="ocean"] body.studio,html[data-theme="ocean"] body.admin{color-scheme:dark;--bg:#070d18;--bg-rgb:7,13,24;--surface:#0d1626;--surface-rgb:13,22,38;--raised:#111d31;--deep:#050a13;--panel:#111d31;--panel-2:#1a2a44;--pop:#122036;--text:#eef4fb;--text-strong:#ffffff;--soft:#c4d3e6;--muted:#8597ad;--fg-rgb:255,255,255;--line:rgba(255,255,255,0.075);--line-strong:rgba(255,255,255,0.14);--chip:rgba(255,255,255,0.045);--chip-hover:rgba(255,255,255,0.085);--accent:#5eb3ff;--accent-0:#7dd3fc;--accent-mid:#60a5fa;--accent-2:#8b7bff;--accent-rgb:94,179,255;--accent2-rgb:139,123,255;--glow-rgb:90,165,255;--ink:#06142b;--ink-rgb:6,20,43;--accent-ink:#06142b;--accent-soft-text:#cfe6ff;--eyebrow:#8fb4d9;--option-selected:#16325a;--grad:linear-gradient(120deg,#7dd3fc 0%,#60a5fa 45%,#8b7bff 100%);--grad-soft:linear-gradient(120deg,rgba(125,211,252,0.16),rgba(139,123,255,0.14));--good:#7ee2a8;--good-rgb:126,226,168;--good-bg:rgba(126,226,168,0.12);--rose-text:#fda4af;--rose-soft-text:#fecdd3;--bad:#fda4af;--bad-rgb:251,113,133;--bad-bg:rgba(251,113,133,.13);--violet-text:#c7d2fe;--violet-rgb:129,140,248;--info:#c7d2fe;--info-bg:rgba(129,140,248,.14);--chart-cost:#5a5a7a;--chart-revenue:#24456b;background:radial-gradient(900px 500px at 100% -10%,rgba(94,179,255,0.08),transparent 60%),radial-gradient(800px 600px at -10% 110%,rgba(139,123,255,0.06),transparent 60%),#070d18;background-attachment:fixed}
html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .nm-job-stage,html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .nm-refcard-media{background:#1c1a21}
html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .job,html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .nm-panel-card,html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .nm-projects,html:is([data-theme="cloud"],[data-theme="clay"]) body.admin .card{box-shadow:0 1px 2px rgba(20,16,30,.06),0 8px 24px rgba(20,16,30,.06)}
html:is([data-theme="cloud"],[data-theme="clay"]) body.studio ::placeholder,html:is([data-theme="cloud"],[data-theme="clay"]) body.admin ::placeholder{color:#8a8393}
html:is([data-theme="cloud"],[data-theme="clay"]) body.studio .nm-top,html:is([data-theme="cloud"],[data-theme="clay"]) body.admin .topbar{background:rgba(var(--surface-rgb),.88)}
html:is([data-theme="cloud"],[data-theme="clay"]) body.admin .sidebar{background:rgba(var(--surface-rgb),.96)}
html:is([data-theme="cloud"],[data-theme="clay"]) body.studio::before,html:is([data-theme="cloud"],[data-theme="clay"]) body.admin::before{opacity:.6}

/* Older base-sheet colours that must follow the theme too. */
body.studio .required,body.admin .required{color:var(--accent-2)}
body.admin label,body.studio label{color:var(--soft)}
body.admin .account-email,body.admin .breadcrumb,body.admin .breadcrumb span{color:var(--muted)}
body.admin .breadcrumb strong{color:var(--text)}
body.admin .service-note{color:var(--muted)}
body.admin .stat .muted,body.admin .muted{color:var(--muted)}

/* ---- Theme picker ---- */
.nm-theme-btn{display:inline-grid;place-items:center;width:36px;height:36px;flex:none;border-radius:12px;border:1px solid var(--line);background:var(--chip);color:var(--soft);cursor:pointer;transition:background .15s,color .15s}
.nm-theme-btn:hover{background:var(--chip-hover);color:var(--text-strong)}
.nm-theme-btn svg{width:18px;height:18px}
.nm-theme-pop{position:fixed;z-index:120;width:260px;padding:8px;border-radius:18px;background:var(--pop);border:1px solid var(--line-strong);box-shadow:0 22px 50px rgba(0,0,0,.45);color:var(--text)}
.nm-theme-pop h3{margin:4px 8px 8px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.nm-theme-opt{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:12px;background:none;color:inherit;font:inherit;font-size:13.5px;font-weight:600;text-align:start;cursor:pointer}
.nm-theme-opt:hover,.nm-theme-opt:focus-visible{background:var(--chip-hover);outline:none}
.nm-theme-opt[aria-checked=true]{background:var(--grad-soft);box-shadow:inset 0 0 0 1px rgba(var(--accent-rgb),.35)}
.nm-theme-sw{flex:none;display:flex;width:44px;height:26px;border-radius:9px;overflow:hidden;border:1px solid rgba(127,127,127,.35)}
.nm-theme-sw i{flex:1}
.nm-theme-opt small{display:block;font-size:11px;font-weight:500;color:var(--muted)}
.nm-theme-opt .nm-theme-check{margin-inline-start:auto;color:var(--accent);visibility:hidden}
.nm-theme-opt[aria-checked=true] .nm-theme-check{visibility:visible}

