/* =====================================================================
   POPSTRA V2 - THEME COLOURS (Admin > Settings > Template > Popstra V2 Theme Colour)
   Violet is the built-in default (no override needed). Every other colour
   re-defines the same design tokens for light AND dark mode, so the whole
   theme (user area + public pages) follows the chosen colour.
   Selected via <html data-v2-colour="..."> (set by the layouts).
   ===================================================================== */

/* ---------- Ocean Blue ---------- */
html[data-v2-colour="ocean"] body.popstra-v2 {
  --v2-dk-a: 15,28,50; --v2-dk-b: 7,15,28; --v2-lite: #93c5fd; --v2-deep: #1d4ed8;
  --v2-bd-b: 34,211,238; --v2-bd-c: 96,165,250; --v2-bd-d: 34,211,238;
  --v2-lbd-b: 34,211,238; --v2-lbd-c: 96,165,250; --v2-lbd-d: 34,211,238;
  --v2-rgb: 37,99,235; --v2-rgb-2: 8,145,178; --v2-g1: #2563eb; --v2-g2: #0891b2;
  --v2-bg: #eef6fd;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(37,99,235,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #f2f9ff; --v2-surface-3: #e1eefb;
  --v2-border: #d4e5f6; --v2-text: #0f2a47; --v2-muted: #587592;
  --v2-primary: #2563eb; --v2-primary-2: #0891b2;
  --v2-grad: linear-gradient(90deg, #2563eb 0%, #0891b2 100%);
  --v2-grad-head: linear-gradient(90deg, #2563eb 0%, #0891b2 100%);
  --v2-glow: 0 8px 24px rgba(37,99,235,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f2f9ff;
  --v2-chip: #dbeafe; --v2-chip-text: #1d4ed8;
}
html[data-v2-colour="ocean"] body.popstra-v2.theme-dark, html[data-v2-colour="ocean"] body.popstra-v2.dark {
  --v2-dk-a: 15,28,50; --v2-dk-b: 7,15,28; --v2-lite: #93c5fd; --v2-deep: #1d4ed8;
  --v2-bd-b: 34,211,238; --v2-bd-c: 96,165,250; --v2-bd-d: 34,211,238;
  --v2-rgb: 96,165,250; --v2-rgb-2: 34,211,238; --v2-g1: #2563eb; --v2-g2: #0e7490;
  --v2-bg: #050b16;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(96,165,250,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(34,211,238,.08), transparent 60%);
  --v2-surface: #0a1424; --v2-surface-2: #0f1c32; --v2-surface-3: #16253f;
  --v2-border: rgba(96,165,250,.22); --v2-text: #e6f1ff; --v2-muted: #8fa7c4;
  --v2-primary: #60a5fa; --v2-primary-2: #22d3ee;
  --v2-grad: linear-gradient(90deg, #2563eb 0%, #0e7490 100%);
  --v2-grad-head: linear-gradient(90deg, #1d4ed8 0%, #0e7490 100%);
  --v2-glow: 0 8px 28px rgba(96,165,250,.28);
  --v2-sidebar: #070f1c; --v2-topbar: rgba(5,11,22,.92); --v2-input: #0a1322; --v2-row-alt: #0d192b;
  --v2-chip: rgba(96,165,250,.18); --v2-chip-text: #93c5fd;
}
html[data-v2-colour="ocean"][data-v2-scheme="light"] { background: #eef6fd; }
html[data-v2-colour="ocean"][data-v2-scheme="dark"] { background: #050b16; }
html[data-v2-colour="ocean"][data-pp2-scheme="light"] { background: #eef6fd; }
html[data-v2-colour="ocean"][data-pp2-scheme="dark"] { background: #050b16; }
html[data-v2-colour="ocean"] body.pp2 {
  --pp-dk-a: 15,28,50; --pp-dk-b: 7,15,28; --pp-lite: #93c5fd; --pp-deep: #1d4ed8;
  --pp-bd-b: 34,211,238; --pp-bd-c: 96,165,250; --pp-bd-d: 34,211,238;
  --pp-lbd-b: 34,211,238; --pp-lbd-c: 96,165,250; --pp-lbd-d: 34,211,238;
  --pp-rgb: 37,99,235; --pp-rgb-2: 8,145,178; --pp-g1: #2563eb; --pp-g2: #0891b2;
  --pp-bg: #eef6fd;
  --pp-surface: #ffffff; --pp-surface-2: #f2f9ff; --pp-surface-3: #e1eefb;
  --pp-border: #d4e5f6; --pp-text: #0f2a47; --pp-muted: #587592;
  --pp-primary: #2563eb; --pp-primary-2: #0891b2;
  --pp-grad: linear-gradient(90deg, #2563eb 0%, #0891b2 100%);
  --pp-grad-head: linear-gradient(90deg, #2563eb 0%, #0891b2 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(37,99,235,.10), rgba(8,145,178,.06));
  --pp-glow: 0 4px 12px rgba(37,99,235,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #dbeafe; --pp-chip-text: #1d4ed8;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(37,99,235,.10), transparent 60%);
}
html[data-v2-colour="ocean"] body.pp2.theme-dark, html[data-v2-colour="ocean"] body.pp2.dark {
  --pp-dk-a: 15,28,50; --pp-dk-b: 7,15,28; --pp-lite: #93c5fd; --pp-deep: #1d4ed8;
  --pp-bd-b: 34,211,238; --pp-bd-c: 96,165,250; --pp-bd-d: 34,211,238;
  --pp-rgb: 96,165,250; --pp-rgb-2: 34,211,238; --pp-g1: #2563eb; --pp-g2: #0e7490;
  --pp-bg: #050b16;
  --pp-surface: #0a1424; --pp-surface-2: #0f1c32; --pp-surface-3: #16253f;
  --pp-border: rgba(96,165,250,.24); --pp-text: #e6f1ff; --pp-muted: #8fa7c4;
  --pp-primary: #60a5fa; --pp-primary-2: #22d3ee;
  --pp-grad: linear-gradient(90deg, #2563eb 0%, #0e7490 100%);
  --pp-grad-head: linear-gradient(90deg, #1d4ed8 0%, #0e7490 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(96,165,250,.16), rgba(34,211,238,.08));
  --pp-glow: 0 4px 14px rgba(96,165,250,.30);
  --pp-topbar: #070f1c; --pp-input: #0a1322;
  --pp-chip: rgba(96,165,250,.18); --pp-chip-text: #93c5fd;
  --pp-code: #070f1c;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(96,165,250,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(34,211,238,.08), transparent 60%);
}

/* ---------- Emerald ---------- */
html[data-v2-colour="emerald"] body.popstra-v2 {
  --v2-dk-a: 14,34,25; --v2-dk-b: 6,18,13; --v2-lite: #6ee7b7; --v2-deep: #065f46;
  --v2-bd-b: 45,212,191; --v2-bd-c: 52,211,153; --v2-bd-d: 45,212,191;
  --v2-lbd-b: 45,212,191; --v2-lbd-c: 52,211,153; --v2-lbd-d: 45,212,191;
  --v2-rgb: 4,120,87; --v2-rgb-2: 15,118,110; --v2-g1: #047857; --v2-g2: #0f766e;
  --v2-bg: #edf8f3;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(4,120,87,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #f2fbf7; --v2-surface-3: #dcf1e7;
  --v2-border: #cfe8dc; --v2-text: #0c2a22; --v2-muted: #547a6c;
  --v2-primary: #047857; --v2-primary-2: #0f766e;
  --v2-grad: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --v2-grad-head: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --v2-glow: 0 8px 24px rgba(4,120,87,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f2fbf7;
  --v2-chip: #d1fae5; --v2-chip-text: #047857;
}
html[data-v2-colour="emerald"] body.popstra-v2.theme-dark, html[data-v2-colour="emerald"] body.popstra-v2.dark {
  --v2-dk-a: 14,34,25; --v2-dk-b: 6,18,13; --v2-lite: #6ee7b7; --v2-deep: #065f46;
  --v2-bd-b: 45,212,191; --v2-bd-c: 52,211,153; --v2-bd-d: 45,212,191;
  --v2-rgb: 52,211,153; --v2-rgb-2: 45,212,191; --v2-g1: #059669; --v2-g2: #0f766e;
  --v2-bg: #04100c;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(52,211,153,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(45,212,191,.08), transparent 60%);
  --v2-surface: #091a14; --v2-surface-2: #0e2219; --v2-surface-3: #152f24;
  --v2-border: rgba(52,211,153,.22); --v2-text: #e4f8ef; --v2-muted: #8bb5a3;
  --v2-primary: #34d399; --v2-primary-2: #2dd4bf;
  --v2-grad: linear-gradient(90deg, #059669 0%, #0f766e 100%);
  --v2-grad-head: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --v2-glow: 0 8px 28px rgba(52,211,153,.28);
  --v2-sidebar: #06120d; --v2-topbar: rgba(4,16,12,.92); --v2-input: #071510; --v2-row-alt: #0a1b14;
  --v2-chip: rgba(52,211,153,.18); --v2-chip-text: #6ee7b7;
}
html[data-v2-colour="emerald"][data-v2-scheme="light"] { background: #edf8f3; }
html[data-v2-colour="emerald"][data-v2-scheme="dark"] { background: #04100c; }
html[data-v2-colour="emerald"][data-pp2-scheme="light"] { background: #edf8f3; }
html[data-v2-colour="emerald"][data-pp2-scheme="dark"] { background: #04100c; }
html[data-v2-colour="emerald"] body.pp2 {
  --pp-dk-a: 14,34,25; --pp-dk-b: 6,18,13; --pp-lite: #6ee7b7; --pp-deep: #065f46;
  --pp-bd-b: 45,212,191; --pp-bd-c: 52,211,153; --pp-bd-d: 45,212,191;
  --pp-lbd-b: 45,212,191; --pp-lbd-c: 52,211,153; --pp-lbd-d: 45,212,191;
  --pp-rgb: 4,120,87; --pp-rgb-2: 15,118,110; --pp-g1: #047857; --pp-g2: #0f766e;
  --pp-bg: #edf8f3;
  --pp-surface: #ffffff; --pp-surface-2: #f2fbf7; --pp-surface-3: #dcf1e7;
  --pp-border: #cfe8dc; --pp-text: #0c2a22; --pp-muted: #547a6c;
  --pp-primary: #047857; --pp-primary-2: #0f766e;
  --pp-grad: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --pp-grad-head: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(4,120,87,.10), rgba(15,118,110,.06));
  --pp-glow: 0 4px 12px rgba(4,120,87,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d1fae5; --pp-chip-text: #047857;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(4,120,87,.10), transparent 60%);
}
html[data-v2-colour="emerald"] body.pp2.theme-dark, html[data-v2-colour="emerald"] body.pp2.dark {
  --pp-dk-a: 14,34,25; --pp-dk-b: 6,18,13; --pp-lite: #6ee7b7; --pp-deep: #065f46;
  --pp-bd-b: 45,212,191; --pp-bd-c: 52,211,153; --pp-bd-d: 45,212,191;
  --pp-rgb: 52,211,153; --pp-rgb-2: 45,212,191; --pp-g1: #059669; --pp-g2: #0f766e;
  --pp-bg: #04100c;
  --pp-surface: #091a14; --pp-surface-2: #0e2219; --pp-surface-3: #152f24;
  --pp-border: rgba(52,211,153,.24); --pp-text: #e4f8ef; --pp-muted: #8bb5a3;
  --pp-primary: #34d399; --pp-primary-2: #2dd4bf;
  --pp-grad: linear-gradient(90deg, #059669 0%, #0f766e 100%);
  --pp-grad-head: linear-gradient(90deg, #047857 0%, #0f766e 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(52,211,153,.16), rgba(45,212,191,.08));
  --pp-glow: 0 4px 14px rgba(52,211,153,.30);
  --pp-topbar: #06120d; --pp-input: #071510;
  --pp-chip: rgba(52,211,153,.18); --pp-chip-text: #6ee7b7;
  --pp-code: #06120d;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(52,211,153,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(45,212,191,.08), transparent 60%);
}

/* ---------- Rose Pink ---------- */
html[data-v2-colour="rose"] body.popstra-v2 {
  --v2-dk-a: 38,16,26; --v2-dk-b: 16,5,10; --v2-lite: #fda4af; --v2-deep: #9d174d;
  --v2-bd-b: 225,29,72; --v2-bd-c: 251,113,133; --v2-bd-d: 225,29,72;
  --v2-lbd-b: 225,29,72; --v2-lbd-c: 251,113,133; --v2-lbd-d: 225,29,72;
  --v2-rgb: 219,39,119; --v2-rgb-2: 225,29,72; --v2-g1: #db2777; --v2-g2: #e11d48;
  --v2-bg: #fcf0f6;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(219,39,119,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #fef5f9; --v2-surface-3: #f8e1ec;
  --v2-border: #f1d3e2; --v2-text: #3a0f24; --v2-muted: #8a5a73;
  --v2-primary: #db2777; --v2-primary-2: #e11d48;
  --v2-grad: linear-gradient(90deg, #db2777 0%, #e11d48 100%);
  --v2-grad-head: linear-gradient(90deg, #db2777 0%, #e11d48 100%);
  --v2-glow: 0 8px 24px rgba(219,39,119,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fef5f9;
  --v2-chip: #fce7f3; --v2-chip-text: #be185d;
}
html[data-v2-colour="rose"] body.popstra-v2.theme-dark, html[data-v2-colour="rose"] body.popstra-v2.dark {
  --v2-dk-a: 38,16,26; --v2-dk-b: 16,5,10; --v2-lite: #fda4af; --v2-deep: #9d174d;
  --v2-bd-b: 225,29,72; --v2-bd-c: 251,113,133; --v2-bd-d: 225,29,72;
  --v2-rgb: 251,113,133; --v2-rgb-2: 225,29,72; --v2-g1: #be185d; --v2-g2: #e11d48;
  --v2-bg: #14060b;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(251,113,133,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(225,29,72,.08), transparent 60%);
  --v2-surface: #1b0a11; --v2-surface-2: #26101a; --v2-surface-3: #331624;
  --v2-border: rgba(251,113,133,.22); --v2-text: #ffe8ef; --v2-muted: #c298a9;
  --v2-primary: #fb7185; --v2-primary-2: #fda4af;
  --v2-grad: linear-gradient(90deg, #be185d 0%, #e11d48 100%);
  --v2-grad-head: linear-gradient(90deg, #9d174d 0%, #e11d48 100%);
  --v2-glow: 0 8px 28px rgba(251,113,133,.28);
  --v2-sidebar: #10050a; --v2-topbar: rgba(20,6,11,.92); --v2-input: #170810; --v2-row-alt: #1d0c14;
  --v2-chip: rgba(251,113,133,.18); --v2-chip-text: #fda4af;
}
html[data-v2-colour="rose"][data-v2-scheme="light"] { background: #fcf0f6; }
html[data-v2-colour="rose"][data-v2-scheme="dark"] { background: #14060b; }
html[data-v2-colour="rose"][data-pp2-scheme="light"] { background: #fcf0f6; }
html[data-v2-colour="rose"][data-pp2-scheme="dark"] { background: #14060b; }
html[data-v2-colour="rose"] body.pp2 {
  --pp-dk-a: 38,16,26; --pp-dk-b: 16,5,10; --pp-lite: #fda4af; --pp-deep: #9d174d;
  --pp-bd-b: 225,29,72; --pp-bd-c: 251,113,133; --pp-bd-d: 225,29,72;
  --pp-lbd-b: 225,29,72; --pp-lbd-c: 251,113,133; --pp-lbd-d: 225,29,72;
  --pp-rgb: 219,39,119; --pp-rgb-2: 225,29,72; --pp-g1: #db2777; --pp-g2: #e11d48;
  --pp-bg: #fcf0f6;
  --pp-surface: #ffffff; --pp-surface-2: #fef5f9; --pp-surface-3: #f8e1ec;
  --pp-border: #f1d3e2; --pp-text: #3a0f24; --pp-muted: #8a5a73;
  --pp-primary: #db2777; --pp-primary-2: #e11d48;
  --pp-grad: linear-gradient(90deg, #db2777 0%, #e11d48 100%);
  --pp-grad-head: linear-gradient(90deg, #db2777 0%, #e11d48 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(219,39,119,.10), rgba(225,29,72,.06));
  --pp-glow: 0 4px 12px rgba(219,39,119,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #fce7f3; --pp-chip-text: #be185d;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(219,39,119,.10), transparent 60%);
}
html[data-v2-colour="rose"] body.pp2.theme-dark, html[data-v2-colour="rose"] body.pp2.dark {
  --pp-dk-a: 38,16,26; --pp-dk-b: 16,5,10; --pp-lite: #fda4af; --pp-deep: #9d174d;
  --pp-bd-b: 225,29,72; --pp-bd-c: 251,113,133; --pp-bd-d: 225,29,72;
  --pp-rgb: 251,113,133; --pp-rgb-2: 225,29,72; --pp-g1: #be185d; --pp-g2: #e11d48;
  --pp-bg: #14060b;
  --pp-surface: #1b0a11; --pp-surface-2: #26101a; --pp-surface-3: #331624;
  --pp-border: rgba(251,113,133,.24); --pp-text: #ffe8ef; --pp-muted: #c298a9;
  --pp-primary: #fb7185; --pp-primary-2: #fda4af;
  --pp-grad: linear-gradient(90deg, #be185d 0%, #e11d48 100%);
  --pp-grad-head: linear-gradient(90deg, #9d174d 0%, #e11d48 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(251,113,133,.16), rgba(225,29,72,.08));
  --pp-glow: 0 4px 14px rgba(251,113,133,.30);
  --pp-topbar: #10050a; --pp-input: #170810;
  --pp-chip: rgba(251,113,133,.18); --pp-chip-text: #fda4af;
  --pp-code: #10050a;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(251,113,133,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(225,29,72,.08), transparent 60%);
}

/* ---------- Sunset Orange ---------- */
html[data-v2-colour="sunset"] body.popstra-v2 {
  --v2-dk-a: 38,22,11; --v2-dk-b: 15,7,2; --v2-lite: #fdba74; --v2-deep: #9a3412;
  --v2-bd-b: 220,38,38; --v2-bd-c: 251,146,60; --v2-bd-d: 220,38,38;
  --v2-lbd-b: 220,38,38; --v2-lbd-c: 251,146,60; --v2-lbd-d: 220,38,38;
  --v2-rgb: 194,65,12; --v2-rgb-2: 220,38,38; --v2-g1: #c2410c; --v2-g2: #dc2626;
  --v2-bg: #fdf1ea;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(194,65,12,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #fff6f1; --v2-surface-3: #fbe3d7;
  --v2-border: #f4d5c5; --v2-text: #3a1608; --v2-muted: #8a6050;
  --v2-primary: #c2410c; --v2-primary-2: #dc2626;
  --v2-grad: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --v2-grad-head: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --v2-glow: 0 8px 24px rgba(194,65,12,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fff6f1;
  --v2-chip: #ffedd5; --v2-chip-text: #9a3412;
}
html[data-v2-colour="sunset"] body.popstra-v2.theme-dark, html[data-v2-colour="sunset"] body.popstra-v2.dark {
  --v2-dk-a: 38,22,11; --v2-dk-b: 15,7,2; --v2-lite: #fdba74; --v2-deep: #9a3412;
  --v2-bd-b: 220,38,38; --v2-bd-c: 251,146,60; --v2-bd-d: 220,38,38;
  --v2-rgb: 251,146,60; --v2-rgb-2: 220,38,38; --v2-g1: #ea580c; --v2-g2: #dc2626;
  --v2-bg: #130903;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(251,146,60,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(220,38,38,.08), transparent 60%);
  --v2-surface: #1b0f07; --v2-surface-2: #26160b; --v2-surface-3: #331f12;
  --v2-border: rgba(251,146,60,.22); --v2-text: #fff0e3; --v2-muted: #c4a28b;
  --v2-primary: #fb923c; --v2-primary-2: #fdba74;
  --v2-grad: linear-gradient(90deg, #ea580c 0%, #dc2626 100%);
  --v2-grad-head: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --v2-glow: 0 8px 28px rgba(251,146,60,.28);
  --v2-sidebar: #0f0702; --v2-topbar: rgba(19,9,3,.92); --v2-input: #170d06; --v2-row-alt: #1d110a;
  --v2-chip: rgba(251,146,60,.18); --v2-chip-text: #fdba74;
}
html[data-v2-colour="sunset"][data-v2-scheme="light"] { background: #fdf1ea; }
html[data-v2-colour="sunset"][data-v2-scheme="dark"] { background: #130903; }
html[data-v2-colour="sunset"][data-pp2-scheme="light"] { background: #fdf1ea; }
html[data-v2-colour="sunset"][data-pp2-scheme="dark"] { background: #130903; }
html[data-v2-colour="sunset"] body.pp2 {
  --pp-dk-a: 38,22,11; --pp-dk-b: 15,7,2; --pp-lite: #fdba74; --pp-deep: #9a3412;
  --pp-bd-b: 220,38,38; --pp-bd-c: 251,146,60; --pp-bd-d: 220,38,38;
  --pp-lbd-b: 220,38,38; --pp-lbd-c: 251,146,60; --pp-lbd-d: 220,38,38;
  --pp-rgb: 194,65,12; --pp-rgb-2: 220,38,38; --pp-g1: #c2410c; --pp-g2: #dc2626;
  --pp-bg: #fdf1ea;
  --pp-surface: #ffffff; --pp-surface-2: #fff6f1; --pp-surface-3: #fbe3d7;
  --pp-border: #f4d5c5; --pp-text: #3a1608; --pp-muted: #8a6050;
  --pp-primary: #c2410c; --pp-primary-2: #dc2626;
  --pp-grad: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --pp-grad-head: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(194,65,12,.10), rgba(220,38,38,.06));
  --pp-glow: 0 4px 12px rgba(194,65,12,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #ffedd5; --pp-chip-text: #9a3412;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(194,65,12,.10), transparent 60%);
}
html[data-v2-colour="sunset"] body.pp2.theme-dark, html[data-v2-colour="sunset"] body.pp2.dark {
  --pp-dk-a: 38,22,11; --pp-dk-b: 15,7,2; --pp-lite: #fdba74; --pp-deep: #9a3412;
  --pp-bd-b: 220,38,38; --pp-bd-c: 251,146,60; --pp-bd-d: 220,38,38;
  --pp-rgb: 251,146,60; --pp-rgb-2: 220,38,38; --pp-g1: #ea580c; --pp-g2: #dc2626;
  --pp-bg: #130903;
  --pp-surface: #1b0f07; --pp-surface-2: #26160b; --pp-surface-3: #331f12;
  --pp-border: rgba(251,146,60,.24); --pp-text: #fff0e3; --pp-muted: #c4a28b;
  --pp-primary: #fb923c; --pp-primary-2: #fdba74;
  --pp-grad: linear-gradient(90deg, #ea580c 0%, #dc2626 100%);
  --pp-grad-head: linear-gradient(90deg, #c2410c 0%, #dc2626 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(251,146,60,.16), rgba(220,38,38,.08));
  --pp-glow: 0 4px 14px rgba(251,146,60,.30);
  --pp-topbar: #0f0702; --pp-input: #170d06;
  --pp-chip: rgba(251,146,60,.18); --pp-chip-text: #fdba74;
  --pp-code: #0f0702;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(251,146,60,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(220,38,38,.08), transparent 60%);
}

/* ---------- Teal Aqua ---------- */
html[data-v2-colour="teal"] body.popstra-v2 {
  --v2-dk-a: 12,36,37; --v2-dk-b: 4,16,16; --v2-lite: #5eead4; --v2-deep: #115e59;
  --v2-bd-b: 2,132,199; --v2-bd-c: 45,212,191; --v2-bd-d: 2,132,199;
  --v2-lbd-b: 2,132,199; --v2-lbd-c: 45,212,191; --v2-lbd-d: 2,132,199;
  --v2-rgb: 15,118,110; --v2-rgb-2: 3,105,161; --v2-g1: #0f766e; --v2-g2: #0369a1;
  --v2-bg: #ecf8f8;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(15,118,110,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #f1fbfb; --v2-surface-3: #daf0f1;
  --v2-border: #cde7e8; --v2-text: #0b2a2c; --v2-muted: #517a7c;
  --v2-primary: #0f766e; --v2-primary-2: #0369a1;
  --v2-grad: linear-gradient(90deg, #0f766e 0%, #0369a1 100%);
  --v2-grad-head: linear-gradient(90deg, #0f766e 0%, #0369a1 100%);
  --v2-glow: 0 8px 24px rgba(15,118,110,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f1fbfb;
  --v2-chip: #ccfbf1; --v2-chip-text: #0f766e;
}
html[data-v2-colour="teal"] body.popstra-v2.theme-dark, html[data-v2-colour="teal"] body.popstra-v2.dark {
  --v2-dk-a: 12,36,37; --v2-dk-b: 4,16,16; --v2-lite: #5eead4; --v2-deep: #115e59;
  --v2-bd-b: 2,132,199; --v2-bd-c: 45,212,191; --v2-bd-d: 2,132,199;
  --v2-rgb: 45,212,191; --v2-rgb-2: 2,132,199; --v2-g1: #0d9488; --v2-g2: #0284c7;
  --v2-bg: #031211;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(45,212,191,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(2,132,199,.08), transparent 60%);
  --v2-surface: #07191a; --v2-surface-2: #0c2425; --v2-surface-3: #123133;
  --v2-border: rgba(45,212,191,.22); --v2-text: #e0faf7; --v2-muted: #86b5b2;
  --v2-primary: #2dd4bf; --v2-primary-2: #38bdf8;
  --v2-grad: linear-gradient(90deg, #0d9488 0%, #0284c7 100%);
  --v2-grad-head: linear-gradient(90deg, #0f766e 0%, #0284c7 100%);
  --v2-glow: 0 8px 28px rgba(45,212,191,.28);
  --v2-sidebar: #041010; --v2-topbar: rgba(3,18,17,.92); --v2-input: #051616; --v2-row-alt: #091d1e;
  --v2-chip: rgba(45,212,191,.18); --v2-chip-text: #5eead4;
}
html[data-v2-colour="teal"][data-v2-scheme="light"] { background: #ecf8f8; }
html[data-v2-colour="teal"][data-v2-scheme="dark"] { background: #031211; }
html[data-v2-colour="teal"][data-pp2-scheme="light"] { background: #ecf8f8; }
html[data-v2-colour="teal"][data-pp2-scheme="dark"] { background: #031211; }
html[data-v2-colour="teal"] body.pp2 {
  --pp-dk-a: 12,36,37; --pp-dk-b: 4,16,16; --pp-lite: #5eead4; --pp-deep: #115e59;
  --pp-bd-b: 2,132,199; --pp-bd-c: 45,212,191; --pp-bd-d: 2,132,199;
  --pp-lbd-b: 2,132,199; --pp-lbd-c: 45,212,191; --pp-lbd-d: 2,132,199;
  --pp-rgb: 15,118,110; --pp-rgb-2: 3,105,161; --pp-g1: #0f766e; --pp-g2: #0369a1;
  --pp-bg: #ecf8f8;
  --pp-surface: #ffffff; --pp-surface-2: #f1fbfb; --pp-surface-3: #daf0f1;
  --pp-border: #cde7e8; --pp-text: #0b2a2c; --pp-muted: #517a7c;
  --pp-primary: #0f766e; --pp-primary-2: #0369a1;
  --pp-grad: linear-gradient(90deg, #0f766e 0%, #0369a1 100%);
  --pp-grad-head: linear-gradient(90deg, #0f766e 0%, #0369a1 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(15,118,110,.10), rgba(3,105,161,.06));
  --pp-glow: 0 4px 12px rgba(15,118,110,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #ccfbf1; --pp-chip-text: #0f766e;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(15,118,110,.10), transparent 60%);
}
html[data-v2-colour="teal"] body.pp2.theme-dark, html[data-v2-colour="teal"] body.pp2.dark {
  --pp-dk-a: 12,36,37; --pp-dk-b: 4,16,16; --pp-lite: #5eead4; --pp-deep: #115e59;
  --pp-bd-b: 2,132,199; --pp-bd-c: 45,212,191; --pp-bd-d: 2,132,199;
  --pp-rgb: 45,212,191; --pp-rgb-2: 2,132,199; --pp-g1: #0d9488; --pp-g2: #0284c7;
  --pp-bg: #031211;
  --pp-surface: #07191a; --pp-surface-2: #0c2425; --pp-surface-3: #123133;
  --pp-border: rgba(45,212,191,.24); --pp-text: #e0faf7; --pp-muted: #86b5b2;
  --pp-primary: #2dd4bf; --pp-primary-2: #38bdf8;
  --pp-grad: linear-gradient(90deg, #0d9488 0%, #0284c7 100%);
  --pp-grad-head: linear-gradient(90deg, #0f766e 0%, #0284c7 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(45,212,191,.16), rgba(2,132,199,.08));
  --pp-glow: 0 4px 14px rgba(45,212,191,.30);
  --pp-topbar: #041010; --pp-input: #051616;
  --pp-chip: rgba(45,212,191,.18); --pp-chip-text: #5eead4;
  --pp-code: #041010;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(45,212,191,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(2,132,199,.08), transparent 60%);
}

/* ---------- Crimson Red ---------- */
html[data-v2-colour="crimson"] body.popstra-v2 {
  --v2-dk-a: 38,17,17; --v2-dk-b: 15,4,4; --v2-lite: #fca5a5; --v2-deep: #991b1b;
  --v2-bd-b: 153,27,27; --v2-bd-c: 248,113,113; --v2-bd-d: 153,27,27;
  --v2-lbd-b: 153,27,27; --v2-lbd-c: 248,113,113; --v2-lbd-d: 153,27,27;
  --v2-rgb: 220,38,38; --v2-rgb-2: 185,28,28; --v2-g1: #dc2626; --v2-g2: #b91c1c;
  --v2-bg: #faf0f0;
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(220,38,38,.12), transparent 60%);
  --v2-surface: #ffffff; --v2-surface-2: #fdf5f5; --v2-surface-3: #f3e2e2;
  --v2-border: #ecd5d5; --v2-text: #2f1010; --v2-muted: #805e5e;
  --v2-primary: #dc2626; --v2-primary-2: #b91c1c;
  --v2-grad: linear-gradient(90deg, #dc2626 0%, #b91c1c 100%);
  --v2-grad-head: linear-gradient(90deg, #dc2626 0%, #b91c1c 100%);
  --v2-glow: 0 8px 24px rgba(220,38,38,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fdf5f5;
  --v2-chip: #fee2e2; --v2-chip-text: #b91c1c;
}
html[data-v2-colour="crimson"] body.popstra-v2.theme-dark, html[data-v2-colour="crimson"] body.popstra-v2.dark {
  --v2-dk-a: 38,17,17; --v2-dk-b: 15,4,4; --v2-lite: #fca5a5; --v2-deep: #991b1b;
  --v2-bd-b: 153,27,27; --v2-bd-c: 248,113,113; --v2-bd-d: 153,27,27;
  --v2-rgb: 248,113,113; --v2-rgb-2: 153,27,27; --v2-g1: #dc2626; --v2-g2: #991b1b;
  --v2-bg: #130505;
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(248,113,113,.14), transparent 60%),
                radial-gradient(700px 400px at -5% 40%, rgba(153,27,27,.08), transparent 60%);
  --v2-surface: #1b0a0a; --v2-surface-2: #261111; --v2-surface-3: #331818;
  --v2-border: rgba(248,113,113,.22); --v2-text: #ffeaea; --v2-muted: #c49a9a;
  --v2-primary: #f87171; --v2-primary-2: #fca5a5;
  --v2-grad: linear-gradient(90deg, #dc2626 0%, #991b1b 100%);
  --v2-grad-head: linear-gradient(90deg, #b91c1c 0%, #991b1b 100%);
  --v2-glow: 0 8px 28px rgba(248,113,113,.28);
  --v2-sidebar: #0f0404; --v2-topbar: rgba(19,5,5,.92); --v2-input: #170808; --v2-row-alt: #1d0c0c;
  --v2-chip: rgba(248,113,113,.18); --v2-chip-text: #fca5a5;
}
html[data-v2-colour="crimson"][data-v2-scheme="light"] { background: #faf0f0; }
html[data-v2-colour="crimson"][data-v2-scheme="dark"] { background: #130505; }
html[data-v2-colour="crimson"][data-pp2-scheme="light"] { background: #faf0f0; }
html[data-v2-colour="crimson"][data-pp2-scheme="dark"] { background: #130505; }
html[data-v2-colour="crimson"] body.pp2 {
  --pp-dk-a: 38,17,17; --pp-dk-b: 15,4,4; --pp-lite: #fca5a5; --pp-deep: #991b1b;
  --pp-bd-b: 153,27,27; --pp-bd-c: 248,113,113; --pp-bd-d: 153,27,27;
  --pp-lbd-b: 153,27,27; --pp-lbd-c: 248,113,113; --pp-lbd-d: 153,27,27;
  --pp-rgb: 220,38,38; --pp-rgb-2: 185,28,28; --pp-g1: #dc2626; --pp-g2: #b91c1c;
  --pp-bg: #faf0f0;
  --pp-surface: #ffffff; --pp-surface-2: #fdf5f5; --pp-surface-3: #f3e2e2;
  --pp-border: #ecd5d5; --pp-text: #2f1010; --pp-muted: #805e5e;
  --pp-primary: #dc2626; --pp-primary-2: #b91c1c;
  --pp-grad: linear-gradient(90deg, #dc2626 0%, #b91c1c 100%);
  --pp-grad-head: linear-gradient(90deg, #dc2626 0%, #b91c1c 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(220,38,38,.10), rgba(185,28,28,.06));
  --pp-glow: 0 4px 12px rgba(220,38,38,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #fee2e2; --pp-chip-text: #b91c1c;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(220,38,38,.10), transparent 60%);
}
html[data-v2-colour="crimson"] body.pp2.theme-dark, html[data-v2-colour="crimson"] body.pp2.dark {
  --pp-dk-a: 38,17,17; --pp-dk-b: 15,4,4; --pp-lite: #fca5a5; --pp-deep: #991b1b;
  --pp-bd-b: 153,27,27; --pp-bd-c: 248,113,113; --pp-bd-d: 153,27,27;
  --pp-rgb: 248,113,113; --pp-rgb-2: 153,27,27; --pp-g1: #dc2626; --pp-g2: #991b1b;
  --pp-bg: #130505;
  --pp-surface: #1b0a0a; --pp-surface-2: #261111; --pp-surface-3: #331818;
  --pp-border: rgba(248,113,113,.24); --pp-text: #ffeaea; --pp-muted: #c49a9a;
  --pp-primary: #f87171; --pp-primary-2: #fca5a5;
  --pp-grad: linear-gradient(90deg, #dc2626 0%, #991b1b 100%);
  --pp-grad-head: linear-gradient(90deg, #b91c1c 0%, #991b1b 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(248,113,113,.16), rgba(153,27,27,.08));
  --pp-glow: 0 4px 14px rgba(248,113,113,.30);
  --pp-topbar: #0f0404; --pp-input: #170808;
  --pp-chip: rgba(248,113,113,.18); --pp-chip-text: #fca5a5;
  --pp-code: #0f0404;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(248,113,113,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(153,27,27,.08), transparent 60%);
}


/* =====================================================================
   EXTRA COLOURS (ported from the Simplify V2 palette, new names, no duplicates of the
   colours above). Same token set as the colours above: light + dark, user area + public pages.
   ===================================================================== */
/* ---------- Azure Sky ---------- */
html[data-v2-colour="azure"] body.popstra-v2 {
  --v2-dk-a: 20,37,52; --v2-dk-b: 7,16,24; --v2-lite: #8ec4f1; --v2-deep: #115288;
  --v2-bd-b: 96,172,241; --v2-bd-c: 101,175,236; --v2-bd-d: 96,172,241;
  --v2-lbd-b: 96,172,241; --v2-lbd-c: 101,175,236; --v2-lbd-d: 96,172,241;
  --v2-rgb: 25,121,200; --v2-rgb-2: 15,95,168; --v2-g1: #1979c8; --v2-g2: #0f5fa8;
  --v2-bg: #ebf4fc;
  --v2-surface: #ffffff; --v2-surface-2: #f4f9fe; --v2-surface-3: #deecf7;
  --v2-border: #d5e4f1; --v2-text: #112e45; --v2-muted: #5a758c;
  --v2-primary: #1979c8; --v2-primary-2: #0f5fa8;
  --v2-grad: linear-gradient(90deg, #1979c8 0%, #0f5fa8 100%);
  --v2-grad-head: linear-gradient(90deg, #1979c8 0%, #0f5fa8 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(25,121,200,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(25,121,200,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4f9fe;
  --v2-chip: #d9ecfc; --v2-chip-text: #125891;
}
html[data-v2-colour="azure"] body.popstra-v2.theme-dark, html[data-v2-colour="azure"] body.popstra-v2.dark {
  --v2-dk-a: 20,37,52; --v2-dk-b: 7,16,24; --v2-lite: #8ec4f1; --v2-deep: #115288;
  --v2-bd-b: 96,172,241; --v2-bd-c: 101,175,236; --v2-bd-d: 96,172,241;
  --v2-rgb: 101,175,236; --v2-rgb-2: 96,172,241; --v2-g1: #1873be; --v2-g2: #0e5a9f;
  --v2-bg: #060f16;
  --v2-surface: #0c171f; --v2-surface-2: #12202b; --v2-surface-3: #182a39;
  --v2-border: rgba(101,175,236,.22); --v2-text: #e9f3fb; --v2-muted: #93a5b4;
  --v2-primary: #65afec; --v2-primary-2: #60acf1;
  --v2-grad: linear-gradient(90deg, #1873be 0%, #0e5a9f 100%);
  --v2-grad-head: linear-gradient(90deg, #135d9a 0%, #0d4f8c 100%);
  --v2-glow: 0 8px 28px rgba(101,175,236,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(101,175,236,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(96,172,241,.08), transparent 60%);
  --v2-sidebar: #09131b; --v2-topbar: rgba(7,16,24,.92); --v2-input: #0b141c; --v2-row-alt: #0f1b24;
  --v2-chip: rgba(101,175,236,.18); --v2-chip-text: #92c6f1;
}
html[data-v2-colour="azure"][data-v2-scheme="light"] { background: #ebf4fc; }
html[data-v2-colour="azure"][data-v2-scheme="dark"] { background: #060f16; }
html[data-v2-colour="azure"][data-pp2-scheme="light"] { background: #ebf4fc; }
html[data-v2-colour="azure"][data-pp2-scheme="dark"] { background: #060f16; }
html[data-v2-colour="azure"] body.pp2 {
  --pp-dk-a: 20,37,52; --pp-dk-b: 7,16,24; --pp-lite: #8ec4f1; --pp-deep: #115288;
  --pp-bd-b: 96,172,241; --pp-bd-c: 101,175,236; --pp-bd-d: 96,172,241;
  --pp-lbd-b: 96,172,241; --pp-lbd-c: 101,175,236; --pp-lbd-d: 96,172,241;
  --pp-rgb: 25,121,200; --pp-rgb-2: 15,95,168; --pp-g1: #1979c8; --pp-g2: #0f5fa8;
  --pp-bg: #ebf4fc;
  --pp-surface: #ffffff; --pp-surface-2: #f4f9fe; --pp-surface-3: #deecf7;
  --pp-border: #d5e4f1; --pp-text: #112e45; --pp-muted: #5a758c;
  --pp-primary: #1979c8; --pp-primary-2: #0f5fa8;
  --pp-grad: linear-gradient(90deg, #1979c8 0%, #0f5fa8 100%);
  --pp-grad-head: linear-gradient(90deg, #1979c8 0%, #0f5fa8 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(25,121,200,.10), rgba(15,95,168,.06));
  --pp-glow: 0 4px 12px rgba(25,121,200,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9ecfc; --pp-chip-text: #125891;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(25,121,200,.10), transparent 60%);
}
html[data-v2-colour="azure"] body.pp2.theme-dark, html[data-v2-colour="azure"] body.pp2.dark {
  --pp-dk-a: 20,37,52; --pp-dk-b: 7,16,24; --pp-lite: #8ec4f1; --pp-deep: #115288;
  --pp-bd-b: 96,172,241; --pp-bd-c: 101,175,236; --pp-bd-d: 96,172,241;
  --pp-rgb: 101,175,236; --pp-rgb-2: 96,172,241; --pp-g1: #1873be; --pp-g2: #0e5a9f;
  --pp-bg: #060f16;
  --pp-surface: #0c171f; --pp-surface-2: #12202b; --pp-surface-3: #182a39;
  --pp-border: rgba(101,175,236,.24); --pp-text: #e9f3fb; --pp-muted: #93a5b4;
  --pp-primary: #65afec; --pp-primary-2: #60acf1;
  --pp-grad: linear-gradient(90deg, #1873be 0%, #0e5a9f 100%);
  --pp-grad-head: linear-gradient(90deg, #135d9a 0%, #0d4f8c 100%);
  --pp-glow: 0 4px 14px rgba(101,175,236,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(101,175,236,.16), rgba(96,172,241,.08));
  --pp-topbar: #09131b; --pp-input: #0b141c;
  --pp-chip: rgba(101,175,236,.18); --pp-chip-text: #92c6f1;
  --pp-code: #09131b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(101,175,236,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(96,172,241,.08), transparent 60%);
}

/* ---------- Salmon Blush ---------- */
html[data-v2-colour="coral"] body.popstra-v2 {
  --v2-dk-a: 52,21,20; --v2-dk-b: 24,8,7; --v2-lite: #f4908b; --v2-deep: #8b140e;
  --v2-bd-b: 255,116,82; --v2-bd-c: 239,104,97; --v2-bd-d: 255,116,82;
  --v2-lbd-b: 255,116,82; --v2-lbd-c: 239,104,97; --v2-lbd-d: 255,116,82;
  --v2-rgb: 238,90,82; --v2-rgb-2: 255,127,95; --v2-g1: #ee5a52; --v2-g2: #ff7f5f;
  --v2-bg: #fceceb;
  --v2-surface: #ffffff; --v2-surface-2: #fef4f4; --v2-surface-3: #f7e0de;
  --v2-border: #f1d6d5; --v2-text: #451411; --v2-muted: #8c5c5a;
  --v2-primary: #ee5a52; --v2-primary-2: #ff7f5f;
  --v2-grad: linear-gradient(90deg, #ee5a52 0%, #ff7f5f 100%);
  --v2-grad-head: linear-gradient(90deg, #ee5a52 0%, #ff7f5f 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(238,90,82,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(238,90,82,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fef4f4;
  --v2-chip: #fcdbd9; --v2-chip-text: #95150f;
}
html[data-v2-colour="coral"] body.popstra-v2.theme-dark, html[data-v2-colour="coral"] body.popstra-v2.dark {
  --v2-dk-a: 52,21,20; --v2-dk-b: 24,8,7; --v2-lite: #f4908b; --v2-deep: #8b140e;
  --v2-bd-b: 255,116,82; --v2-bd-c: 239,104,97; --v2-bd-d: 255,116,82;
  --v2-rgb: 239,104,97; --v2-rgb-2: 255,116,82; --v2-g1: #c31c13; --v2-g2: #ad2300;
  --v2-bg: #160706;
  --v2-surface: #1f0d0c; --v2-surface-2: #2b1312; --v2-surface-3: #391a18;
  --v2-border: rgba(239,104,97,.22); --v2-text: #fbeae9; --v2-muted: #b49493;
  --v2-primary: #ef6861; --v2-primary-2: #ff7452;
  --v2-grad: linear-gradient(90deg, #c31c13 0%, #ad2300 100%);
  --v2-grad-head: linear-gradient(90deg, #9e1710 0%, #991f00 100%);
  --v2-glow: 0 8px 28px rgba(239,104,97,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(239,104,97,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(255,116,82,.08), transparent 60%);
  --v2-sidebar: #1b0a09; --v2-topbar: rgba(24,8,7,.92); --v2-input: #1c0b0b; --v2-row-alt: #24100f;
  --v2-chip: rgba(239,104,97,.18); --v2-chip-text: #f49590;
}
html[data-v2-colour="coral"][data-v2-scheme="light"] { background: #fceceb; }
html[data-v2-colour="coral"][data-v2-scheme="dark"] { background: #160706; }
html[data-v2-colour="coral"][data-pp2-scheme="light"] { background: #fceceb; }
html[data-v2-colour="coral"][data-pp2-scheme="dark"] { background: #160706; }
html[data-v2-colour="coral"] body.pp2 {
  --pp-dk-a: 52,21,20; --pp-dk-b: 24,8,7; --pp-lite: #f4908b; --pp-deep: #8b140e;
  --pp-bd-b: 255,116,82; --pp-bd-c: 239,104,97; --pp-bd-d: 255,116,82;
  --pp-lbd-b: 255,116,82; --pp-lbd-c: 239,104,97; --pp-lbd-d: 255,116,82;
  --pp-rgb: 238,90,82; --pp-rgb-2: 255,127,95; --pp-g1: #ee5a52; --pp-g2: #ff7f5f;
  --pp-bg: #fceceb;
  --pp-surface: #ffffff; --pp-surface-2: #fef4f4; --pp-surface-3: #f7e0de;
  --pp-border: #f1d6d5; --pp-text: #451411; --pp-muted: #8c5c5a;
  --pp-primary: #ee5a52; --pp-primary-2: #ff7f5f;
  --pp-grad: linear-gradient(90deg, #ee5a52 0%, #ff7f5f 100%);
  --pp-grad-head: linear-gradient(90deg, #ee5a52 0%, #ff7f5f 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(238,90,82,.10), rgba(255,127,95,.06));
  --pp-glow: 0 4px 12px rgba(238,90,82,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #fcdbd9; --pp-chip-text: #95150f;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(238,90,82,.10), transparent 60%);
}
html[data-v2-colour="coral"] body.pp2.theme-dark, html[data-v2-colour="coral"] body.pp2.dark {
  --pp-dk-a: 52,21,20; --pp-dk-b: 24,8,7; --pp-lite: #f4908b; --pp-deep: #8b140e;
  --pp-bd-b: 255,116,82; --pp-bd-c: 239,104,97; --pp-bd-d: 255,116,82;
  --pp-rgb: 239,104,97; --pp-rgb-2: 255,116,82; --pp-g1: #c31c13; --pp-g2: #ad2300;
  --pp-bg: #160706;
  --pp-surface: #1f0d0c; --pp-surface-2: #2b1312; --pp-surface-3: #391a18;
  --pp-border: rgba(239,104,97,.24); --pp-text: #fbeae9; --pp-muted: #b49493;
  --pp-primary: #ef6861; --pp-primary-2: #ff7452;
  --pp-grad: linear-gradient(90deg, #c31c13 0%, #ad2300 100%);
  --pp-grad-head: linear-gradient(90deg, #9e1710 0%, #991f00 100%);
  --pp-glow: 0 4px 14px rgba(239,104,97,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(239,104,97,.16), rgba(255,116,82,.08));
  --pp-topbar: #1b0a09; --pp-input: #1c0b0b;
  --pp-chip: rgba(239,104,97,.18); --pp-chip-text: #f49590;
  --pp-code: #1b0a09;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(239,104,97,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(255,116,82,.08), transparent 60%);
}

/* ---------- Aqua Splash ---------- */
html[data-v2-colour="aqua"] body.popstra-v2 {
  --v2-dk-a: 20,49,52; --v2-dk-b: 7,22,24; --v2-lite: #89ebf5; --v2-deep: #0c818d;
  --v2-bd-b: 107,220,229; --v2-bd-c: 95,228,242; --v2-bd-d: 107,220,229;
  --v2-lbd-b: 107,220,229; --v2-lbd-c: 95,228,242; --v2-lbd-d: 107,220,229;
  --v2-rgb: 14,152,166; --v2-rgb-2: 34,184,196; --v2-g1: #0e98a6; --v2-g2: #22b8c4;
  --v2-bg: #ebfafc;
  --v2-surface: #ffffff; --v2-surface-2: #f4fdfe; --v2-surface-3: #def5f7;
  --v2-border: #d5eef1; --v2-text: #114145; --v2-muted: #5a878c;
  --v2-primary: #0e98a6; --v2-primary-2: #22b8c4;
  --v2-grad: linear-gradient(90deg, #0e98a6 0%, #22b8c4 100%);
  --v2-grad-head: linear-gradient(90deg, #0e98a6 0%, #22b8c4 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(14,152,166,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(14,152,166,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4fdfe;
  --v2-chip: #d9f9fc; --v2-chip-text: #0d8a97;
}
html[data-v2-colour="aqua"] body.popstra-v2.theme-dark, html[data-v2-colour="aqua"] body.popstra-v2.dark {
  --v2-dk-a: 20,49,52; --v2-dk-b: 7,22,24; --v2-lite: #89ebf5; --v2-deep: #0c818d;
  --v2-bd-b: 107,220,229; --v2-bd-c: 95,228,242; --v2-bd-d: 107,220,229;
  --v2-rgb: 95,228,242; --v2-rgb-2: 107,220,229; --v2-g1: #11b5c6; --v2-g2: #1a8b94;
  --v2-bg: #061416;
  --v2-surface: #0c1e1f; --v2-surface-2: #12292b; --v2-surface-3: #183639;
  --v2-border: rgba(95,228,242,.22); --v2-text: #e9fafb; --v2-muted: #93b1b4;
  --v2-primary: #5fe4f2; --v2-primary-2: #6bdce5;
  --v2-grad: linear-gradient(90deg, #11b5c6 0%, #1a8b94 100%);
  --v2-grad-head: linear-gradient(90deg, #0d92a0 0%, #177a82 100%);
  --v2-glow: 0 8px 28px rgba(95,228,242,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(95,228,242,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(107,220,229,.08), transparent 60%);
  --v2-sidebar: #09191b; --v2-topbar: rgba(7,22,24,.92); --v2-input: #0b1a1c; --v2-row-alt: #0f2224;
  --v2-chip: rgba(95,228,242,.18); --v2-chip-text: #8eecf5;
}
html[data-v2-colour="aqua"][data-v2-scheme="light"] { background: #ebfafc; }
html[data-v2-colour="aqua"][data-v2-scheme="dark"] { background: #061416; }
html[data-v2-colour="aqua"][data-pp2-scheme="light"] { background: #ebfafc; }
html[data-v2-colour="aqua"][data-pp2-scheme="dark"] { background: #061416; }
html[data-v2-colour="aqua"] body.pp2 {
  --pp-dk-a: 20,49,52; --pp-dk-b: 7,22,24; --pp-lite: #89ebf5; --pp-deep: #0c818d;
  --pp-bd-b: 107,220,229; --pp-bd-c: 95,228,242; --pp-bd-d: 107,220,229;
  --pp-lbd-b: 107,220,229; --pp-lbd-c: 95,228,242; --pp-lbd-d: 107,220,229;
  --pp-rgb: 14,152,166; --pp-rgb-2: 34,184,196; --pp-g1: #0e98a6; --pp-g2: #22b8c4;
  --pp-bg: #ebfafc;
  --pp-surface: #ffffff; --pp-surface-2: #f4fdfe; --pp-surface-3: #def5f7;
  --pp-border: #d5eef1; --pp-text: #114145; --pp-muted: #5a878c;
  --pp-primary: #0e98a6; --pp-primary-2: #22b8c4;
  --pp-grad: linear-gradient(90deg, #0e98a6 0%, #22b8c4 100%);
  --pp-grad-head: linear-gradient(90deg, #0e98a6 0%, #22b8c4 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(14,152,166,.10), rgba(34,184,196,.06));
  --pp-glow: 0 4px 12px rgba(14,152,166,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9f9fc; --pp-chip-text: #0d8a97;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(14,152,166,.10), transparent 60%);
}
html[data-v2-colour="aqua"] body.pp2.theme-dark, html[data-v2-colour="aqua"] body.pp2.dark {
  --pp-dk-a: 20,49,52; --pp-dk-b: 7,22,24; --pp-lite: #89ebf5; --pp-deep: #0c818d;
  --pp-bd-b: 107,220,229; --pp-bd-c: 95,228,242; --pp-bd-d: 107,220,229;
  --pp-rgb: 95,228,242; --pp-rgb-2: 107,220,229; --pp-g1: #11b5c6; --pp-g2: #1a8b94;
  --pp-bg: #061416;
  --pp-surface: #0c1e1f; --pp-surface-2: #12292b; --pp-surface-3: #183639;
  --pp-border: rgba(95,228,242,.24); --pp-text: #e9fafb; --pp-muted: #93b1b4;
  --pp-primary: #5fe4f2; --pp-primary-2: #6bdce5;
  --pp-grad: linear-gradient(90deg, #11b5c6 0%, #1a8b94 100%);
  --pp-grad-head: linear-gradient(90deg, #0d92a0 0%, #177a82 100%);
  --pp-glow: 0 4px 14px rgba(95,228,242,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(95,228,242,.16), rgba(107,220,229,.08));
  --pp-topbar: #09191b; --pp-input: #0b1a1c;
  --pp-chip: rgba(95,228,242,.18); --pp-chip-text: #8eecf5;
  --pp-code: #09191b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(95,228,242,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(107,220,229,.08), transparent 60%);
}

/* ---------- Midnight Ember ---------- */
html[data-v2-colour="ember"] body.popstra-v2 {
  --v2-dk-a: 39,34,33; --v2-dk-b: 17,15,14; --v2-lite: #f6a889; --v2-deep: #8e300b;
  --v2-bd-b: 255,143,82; --v2-bd-c: 243,136,94; --v2-bd-d: 255,143,82;
  --v2-lbd-b: 255,143,82; --v2-lbd-c: 243,136,94; --v2-lbd-d: 255,143,82;
  --v2-rgb: 240,112,61; --v2-rgb-2: 255,154,98; --v2-g1: #f0703d; --v2-g2: #ff9a62;
  --v2-bg: #f4f3f3;
  --v2-surface: #ffffff; --v2-surface-2: #f9f8f8; --v2-surface-3: #eceae9;
  --v2-border: #e5e2e1; --v2-text: #2f2a28; --v2-muted: #7c6f6a;
  --v2-primary: #f0703d; --v2-primary-2: #ff9a62;
  --v2-grad: linear-gradient(90deg, #f0703d 0%, #ff9a62 100%);
  --v2-grad-head: linear-gradient(90deg, #f0703d 0%, #ff9a62 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(240,112,61,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(240,112,61,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f9f8f8;
  --v2-chip: #eceae9; --v2-chip-text: #97340c;
}
html[data-v2-colour="ember"] body.popstra-v2.theme-dark, html[data-v2-colour="ember"] body.popstra-v2.dark {
  --v2-dk-a: 39,34,33; --v2-dk-b: 17,15,14; --v2-lite: #f6a889; --v2-deep: #8e300b;
  --v2-bd-b: 255,143,82; --v2-bd-c: 243,136,94; --v2-bd-d: 255,143,82;
  --v2-rgb: 243,136,94; --v2-rgb-2: 255,143,82; --v2-g1: #c7440f; --v2-g2: #ad3e00;
  --v2-bg: #0f0e0d;
  --v2-surface: #171514; --v2-surface-2: #211e1c; --v2-surface-3: #2c2726;
  --v2-border: rgba(243,136,94,.22); --v2-text: #f3f2f1; --v2-muted: #aba09c;
  --v2-primary: #f3885e; --v2-primary-2: #ff8f52;
  --v2-grad: linear-gradient(90deg, #c7440f 0%, #ad3e00 100%);
  --v2-grad-head: linear-gradient(90deg, #a1370c 0%, #993700 100%);
  --v2-glow: 0 8px 28px rgba(243,136,94,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(243,136,94,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(255,143,82,.08), transparent 60%);
  --v2-sidebar: #131110; --v2-topbar: rgba(17,15,14,.92); --v2-input: #151212; --v2-row-alt: #1c1917;
  --v2-chip: rgba(243,136,94,.18); --v2-chip-text: #f6ab8d;
}
html[data-v2-colour="ember"][data-v2-scheme="light"] { background: #f4f3f3; }
html[data-v2-colour="ember"][data-v2-scheme="dark"] { background: #0f0e0d; }
html[data-v2-colour="ember"][data-pp2-scheme="light"] { background: #f4f3f3; }
html[data-v2-colour="ember"][data-pp2-scheme="dark"] { background: #0f0e0d; }
html[data-v2-colour="ember"] body.pp2 {
  --pp-dk-a: 39,34,33; --pp-dk-b: 17,15,14; --pp-lite: #f6a889; --pp-deep: #8e300b;
  --pp-bd-b: 255,143,82; --pp-bd-c: 243,136,94; --pp-bd-d: 255,143,82;
  --pp-lbd-b: 255,143,82; --pp-lbd-c: 243,136,94; --pp-lbd-d: 255,143,82;
  --pp-rgb: 240,112,61; --pp-rgb-2: 255,154,98; --pp-g1: #f0703d; --pp-g2: #ff9a62;
  --pp-bg: #f4f3f3;
  --pp-surface: #ffffff; --pp-surface-2: #f9f8f8; --pp-surface-3: #eceae9;
  --pp-border: #e5e2e1; --pp-text: #2f2a28; --pp-muted: #7c6f6a;
  --pp-primary: #f0703d; --pp-primary-2: #ff9a62;
  --pp-grad: linear-gradient(90deg, #f0703d 0%, #ff9a62 100%);
  --pp-grad-head: linear-gradient(90deg, #f0703d 0%, #ff9a62 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(240,112,61,.10), rgba(255,154,98,.06));
  --pp-glow: 0 4px 12px rgba(240,112,61,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #eceae9; --pp-chip-text: #97340c;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(240,112,61,.10), transparent 60%);
}
html[data-v2-colour="ember"] body.pp2.theme-dark, html[data-v2-colour="ember"] body.pp2.dark {
  --pp-dk-a: 39,34,33; --pp-dk-b: 17,15,14; --pp-lite: #f6a889; --pp-deep: #8e300b;
  --pp-bd-b: 255,143,82; --pp-bd-c: 243,136,94; --pp-bd-d: 255,143,82;
  --pp-rgb: 243,136,94; --pp-rgb-2: 255,143,82; --pp-g1: #c7440f; --pp-g2: #ad3e00;
  --pp-bg: #0f0e0d;
  --pp-surface: #171514; --pp-surface-2: #211e1c; --pp-surface-3: #2c2726;
  --pp-border: rgba(243,136,94,.24); --pp-text: #f3f2f1; --pp-muted: #aba09c;
  --pp-primary: #f3885e; --pp-primary-2: #ff8f52;
  --pp-grad: linear-gradient(90deg, #c7440f 0%, #ad3e00 100%);
  --pp-grad-head: linear-gradient(90deg, #a1370c 0%, #993700 100%);
  --pp-glow: 0 4px 14px rgba(243,136,94,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(243,136,94,.16), rgba(255,143,82,.08));
  --pp-topbar: #131110; --pp-input: #151212;
  --pp-chip: rgba(243,136,94,.18); --pp-chip-text: #f6ab8d;
  --pp-code: #131110;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(243,136,94,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(255,143,82,.08), transparent 60%);
}

/* ---------- Forest Sage ---------- */
html[data-v2-colour="forest"] body.popstra-v2 {
  --v2-dk-a: 20,52,46; --v2-dk-b: 7,24,21; --v2-lite: #a3dbd2; --v2-deep: #2b6e63;
  --v2-bd-b: 138,198,178; --v2-bd-c: 130,207,194; --v2-bd-d: 138,198,178;
  --v2-lbd-b: 138,198,178; --v2-lbd-c: 130,207,194; --v2-lbd-d: 138,198,178;
  --v2-rgb: 48,124,111; --v2-rgb-2: 75,154,127; --v2-g1: #307c6f; --v2-g2: #4b9a7f;
  --v2-bg: #ebfcf9;
  --v2-surface: #ffffff; --v2-surface-2: #f4fefc; --v2-surface-3: #def7f3;
  --v2-border: #d5f1ec; --v2-text: #11453c; --v2-muted: #5a8c83;
  --v2-primary: #307c6f; --v2-primary-2: #4b9a7f;
  --v2-grad: linear-gradient(90deg, #307c6f 0%, #4b9a7f 100%);
  --v2-grad-head: linear-gradient(90deg, #307c6f 0%, #4b9a7f 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(48,124,111,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(48,124,111,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4fefc;
  --v2-chip: #d9fcf6; --v2-chip-text: #2e7669;
}
html[data-v2-colour="forest"] body.popstra-v2.theme-dark, html[data-v2-colour="forest"] body.popstra-v2.dark {
  --v2-dk-a: 20,52,46; --v2-dk-b: 7,24,21; --v2-lite: #a3dbd2; --v2-deep: #2b6e63;
  --v2-bd-b: 138,198,178; --v2-bd-c: 130,207,194; --v2-bd-d: 138,198,178;
  --v2-rgb: 130,207,194; --v2-rgb-2: 138,198,178; --v2-g1: #3c9a8a; --v2-g2: #397560;
  --v2-bg: #061613;
  --v2-surface: #0c1f1c; --v2-surface-2: #122b27; --v2-surface-3: #183934;
  --v2-border: rgba(130,207,194,.22); --v2-text: #e9fbf8; --v2-muted: #93b4ae;
  --v2-primary: #82cfc2; --v2-primary-2: #8ac6b2;
  --v2-grad: linear-gradient(90deg, #3c9a8a 0%, #397560 100%);
  --v2-grad-head: linear-gradient(90deg, #307d70 0%, #326755 100%);
  --v2-glow: 0 8px 28px rgba(130,207,194,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(130,207,194,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(138,198,178,.08), transparent 60%);
  --v2-sidebar: #091b18; --v2-topbar: rgba(7,24,21,.92); --v2-input: #0b1c19; --v2-row-alt: #0f2421;
  --v2-chip: rgba(130,207,194,.18); --v2-chip-text: #a7ddd4;
}
html[data-v2-colour="forest"][data-v2-scheme="light"] { background: #ebfcf9; }
html[data-v2-colour="forest"][data-v2-scheme="dark"] { background: #061613; }
html[data-v2-colour="forest"][data-pp2-scheme="light"] { background: #ebfcf9; }
html[data-v2-colour="forest"][data-pp2-scheme="dark"] { background: #061613; }
html[data-v2-colour="forest"] body.pp2 {
  --pp-dk-a: 20,52,46; --pp-dk-b: 7,24,21; --pp-lite: #a3dbd2; --pp-deep: #2b6e63;
  --pp-bd-b: 138,198,178; --pp-bd-c: 130,207,194; --pp-bd-d: 138,198,178;
  --pp-lbd-b: 138,198,178; --pp-lbd-c: 130,207,194; --pp-lbd-d: 138,198,178;
  --pp-rgb: 48,124,111; --pp-rgb-2: 75,154,127; --pp-g1: #307c6f; --pp-g2: #4b9a7f;
  --pp-bg: #ebfcf9;
  --pp-surface: #ffffff; --pp-surface-2: #f4fefc; --pp-surface-3: #def7f3;
  --pp-border: #d5f1ec; --pp-text: #11453c; --pp-muted: #5a8c83;
  --pp-primary: #307c6f; --pp-primary-2: #4b9a7f;
  --pp-grad: linear-gradient(90deg, #307c6f 0%, #4b9a7f 100%);
  --pp-grad-head: linear-gradient(90deg, #307c6f 0%, #4b9a7f 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(48,124,111,.10), rgba(75,154,127,.06));
  --pp-glow: 0 4px 12px rgba(48,124,111,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9fcf6; --pp-chip-text: #2e7669;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(48,124,111,.10), transparent 60%);
}
html[data-v2-colour="forest"] body.pp2.theme-dark, html[data-v2-colour="forest"] body.pp2.dark {
  --pp-dk-a: 20,52,46; --pp-dk-b: 7,24,21; --pp-lite: #a3dbd2; --pp-deep: #2b6e63;
  --pp-bd-b: 138,198,178; --pp-bd-c: 130,207,194; --pp-bd-d: 138,198,178;
  --pp-rgb: 130,207,194; --pp-rgb-2: 138,198,178; --pp-g1: #3c9a8a; --pp-g2: #397560;
  --pp-bg: #061613;
  --pp-surface: #0c1f1c; --pp-surface-2: #122b27; --pp-surface-3: #183934;
  --pp-border: rgba(130,207,194,.24); --pp-text: #e9fbf8; --pp-muted: #93b4ae;
  --pp-primary: #82cfc2; --pp-primary-2: #8ac6b2;
  --pp-grad: linear-gradient(90deg, #3c9a8a 0%, #397560 100%);
  --pp-grad-head: linear-gradient(90deg, #307d70 0%, #326755 100%);
  --pp-glow: 0 4px 14px rgba(130,207,194,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(130,207,194,.16), rgba(138,198,178,.08));
  --pp-topbar: #091b18; --pp-input: #0b1c19;
  --pp-chip: rgba(130,207,194,.18); --pp-chip-text: #a7ddd4;
  --pp-code: #091b18;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(130,207,194,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(138,198,178,.08), transparent 60%);
}

/* ---------- Slate Steel ---------- */
html[data-v2-colour="slate"] body.popstra-v2 {
  --v2-dk-a: 20,37,52; --v2-dk-b: 7,16,24; --v2-lite: #b1c0cd; --v2-deep: #3c4e5d;
  --v2-bd-b: 153,169,184; --v2-bd-c: 149,170,188; --v2-bd-d: 153,169,184;
  --v2-lbd-b: 153,169,184; --v2-lbd-c: 149,170,188; --v2-lbd-d: 153,169,184;
  --v2-rgb: 65,85,102; --v2-rgb-2: 91,112,131; --v2-g1: #415566; --v2-g2: #5b7083;
  --v2-bg: #ebf4fc;
  --v2-surface: #ffffff; --v2-surface-2: #f4f9fe; --v2-surface-3: #deecf7;
  --v2-border: #d5e4f1; --v2-text: #112d45; --v2-muted: #5a758c;
  --v2-primary: #415566; --v2-primary-2: #5b7083;
  --v2-grad: linear-gradient(90deg, #415566 0%, #5b7083 100%);
  --v2-grad-head: linear-gradient(90deg, #415566 0%, #5b7083 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(65,85,102,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(65,85,102,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4f9fe;
  --v2-chip: #d9ecfc; --v2-chip-text: #405364;
}
html[data-v2-colour="slate"] body.popstra-v2.theme-dark, html[data-v2-colour="slate"] body.popstra-v2.dark {
  --v2-dk-a: 20,37,52; --v2-dk-b: 7,16,24; --v2-lite: #b1c0cd; --v2-deep: #3c4e5d;
  --v2-bd-b: 153,169,184; --v2-bd-c: 149,170,188; --v2-bd-d: 153,169,184;
  --v2-rgb: 149,170,188; --v2-rgb-2: 153,169,184; --v2-g1: #536d83; --v2-g2: #475766;
  --v2-bg: #060f16;
  --v2-surface: #0c161f; --v2-surface-2: #12202b; --v2-surface-3: #182a39;
  --v2-border: rgba(149,170,188,.22); --v2-text: #e9f3fb; --v2-muted: #93a5b4;
  --v2-primary: #95aabc; --v2-primary-2: #99a9b8;
  --v2-grad: linear-gradient(90deg, #536d83 0%, #475766 100%);
  --v2-grad-head: linear-gradient(90deg, #43586a 0%, #3f4d5a 100%);
  --v2-glow: 0 8px 28px rgba(149,170,188,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(149,170,188,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(153,169,184,.08), transparent 60%);
  --v2-sidebar: #09131b; --v2-topbar: rgba(7,16,24,.92); --v2-input: #0b141c; --v2-row-alt: #0f1a24;
  --v2-chip: rgba(149,170,188,.18); --v2-chip-text: #b4c3cf;
}
html[data-v2-colour="slate"][data-v2-scheme="light"] { background: #ebf4fc; }
html[data-v2-colour="slate"][data-v2-scheme="dark"] { background: #060f16; }
html[data-v2-colour="slate"][data-pp2-scheme="light"] { background: #ebf4fc; }
html[data-v2-colour="slate"][data-pp2-scheme="dark"] { background: #060f16; }
html[data-v2-colour="slate"] body.pp2 {
  --pp-dk-a: 20,37,52; --pp-dk-b: 7,16,24; --pp-lite: #b1c0cd; --pp-deep: #3c4e5d;
  --pp-bd-b: 153,169,184; --pp-bd-c: 149,170,188; --pp-bd-d: 153,169,184;
  --pp-lbd-b: 153,169,184; --pp-lbd-c: 149,170,188; --pp-lbd-d: 153,169,184;
  --pp-rgb: 65,85,102; --pp-rgb-2: 91,112,131; --pp-g1: #415566; --pp-g2: #5b7083;
  --pp-bg: #ebf4fc;
  --pp-surface: #ffffff; --pp-surface-2: #f4f9fe; --pp-surface-3: #deecf7;
  --pp-border: #d5e4f1; --pp-text: #112d45; --pp-muted: #5a758c;
  --pp-primary: #415566; --pp-primary-2: #5b7083;
  --pp-grad: linear-gradient(90deg, #415566 0%, #5b7083 100%);
  --pp-grad-head: linear-gradient(90deg, #415566 0%, #5b7083 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(65,85,102,.10), rgba(91,112,131,.06));
  --pp-glow: 0 4px 12px rgba(65,85,102,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9ecfc; --pp-chip-text: #405364;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(65,85,102,.10), transparent 60%);
}
html[data-v2-colour="slate"] body.pp2.theme-dark, html[data-v2-colour="slate"] body.pp2.dark {
  --pp-dk-a: 20,37,52; --pp-dk-b: 7,16,24; --pp-lite: #b1c0cd; --pp-deep: #3c4e5d;
  --pp-bd-b: 153,169,184; --pp-bd-c: 149,170,188; --pp-bd-d: 153,169,184;
  --pp-rgb: 149,170,188; --pp-rgb-2: 153,169,184; --pp-g1: #536d83; --pp-g2: #475766;
  --pp-bg: #060f16;
  --pp-surface: #0c161f; --pp-surface-2: #12202b; --pp-surface-3: #182a39;
  --pp-border: rgba(149,170,188,.24); --pp-text: #e9f3fb; --pp-muted: #93a5b4;
  --pp-primary: #95aabc; --pp-primary-2: #99a9b8;
  --pp-grad: linear-gradient(90deg, #536d83 0%, #475766 100%);
  --pp-grad-head: linear-gradient(90deg, #43586a 0%, #3f4d5a 100%);
  --pp-glow: 0 4px 14px rgba(149,170,188,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(149,170,188,.16), rgba(153,169,184,.08));
  --pp-topbar: #09131b; --pp-input: #0b141c;
  --pp-chip: rgba(149,170,188,.18); --pp-chip-text: #b4c3cf;
  --pp-code: #09131b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(149,170,188,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(153,169,184,.08), transparent 60%);
}

/* ---------- Periwinkle ---------- */
html[data-v2-colour="periwinkle"] body.popstra-v2 {
  --v2-dk-a: 20,30,52; --v2-dk-b: 7,12,24; --v2-lite: #a2b4dd; --v2-deep: #294070;
  --v2-bd-b: 122,147,215; --v2-bd-c: 128,154,208; --v2-bd-d: 122,147,215;
  --v2-lbd-b: 122,147,215; --v2-lbd-c: 128,154,208; --v2-lbd-d: 122,147,215;
  --v2-rgb: 95,127,196; --v2-rgb-2: 138,160,220; --v2-g1: #5f7fc4; --v2-g2: #8aa0dc;
  --v2-bg: #ebf1fc;
  --v2-surface: #ffffff; --v2-surface-2: #f4f7fe; --v2-surface-3: #dee6f7;
  --v2-border: #d5def1; --v2-text: #112245; --v2-muted: #5a6a8c;
  --v2-primary: #5f7fc4; --v2-primary-2: #8aa0dc;
  --v2-grad: linear-gradient(90deg, #5f7fc4 0%, #8aa0dc 100%);
  --v2-grad-head: linear-gradient(90deg, #5f7fc4 0%, #8aa0dc 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(95,127,196,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(95,127,196,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4f7fe;
  --v2-chip: #d9e4fc; --v2-chip-text: #2c4477;
}
html[data-v2-colour="periwinkle"] body.popstra-v2.theme-dark, html[data-v2-colour="periwinkle"] body.popstra-v2.dark {
  --v2-dk-a: 20,30,52; --v2-dk-b: 7,12,24; --v2-lite: #a2b4dd; --v2-deep: #294070;
  --v2-bd-b: 122,147,215; --v2-bd-c: 128,154,208; --v2-bd-d: 122,147,215;
  --v2-rgb: 128,154,208; --v2-rgb-2: 122,147,215; --v2-g1: #3a599c; --v2-g2: #284185;
  --v2-bg: #060b16;
  --v2-surface: #0c121f; --v2-surface-2: #121a2b; --v2-surface-3: #182339;
  --v2-border: rgba(128,154,208,.22); --v2-text: #e9effb; --v2-muted: #939db4;
  --v2-primary: #809ad0; --v2-primary-2: #7a93d7;
  --v2-grad: linear-gradient(90deg, #3a599c 0%, #284185 100%);
  --v2-grad-head: linear-gradient(90deg, #2f487f 0%, #233976 100%);
  --v2-glow: 0 8px 28px rgba(128,154,208,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(128,154,208,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(122,147,215,.08), transparent 60%);
  --v2-sidebar: #090f1b; --v2-topbar: rgba(7,12,24,.92); --v2-input: #0b101c; --v2-row-alt: #0f1624;
  --v2-chip: rgba(128,154,208,.18); --v2-chip-text: #a6b7de;
}
html[data-v2-colour="periwinkle"][data-v2-scheme="light"] { background: #ebf1fc; }
html[data-v2-colour="periwinkle"][data-v2-scheme="dark"] { background: #060b16; }
html[data-v2-colour="periwinkle"][data-pp2-scheme="light"] { background: #ebf1fc; }
html[data-v2-colour="periwinkle"][data-pp2-scheme="dark"] { background: #060b16; }
html[data-v2-colour="periwinkle"] body.pp2 {
  --pp-dk-a: 20,30,52; --pp-dk-b: 7,12,24; --pp-lite: #a2b4dd; --pp-deep: #294070;
  --pp-bd-b: 122,147,215; --pp-bd-c: 128,154,208; --pp-bd-d: 122,147,215;
  --pp-lbd-b: 122,147,215; --pp-lbd-c: 128,154,208; --pp-lbd-d: 122,147,215;
  --pp-rgb: 95,127,196; --pp-rgb-2: 138,160,220; --pp-g1: #5f7fc4; --pp-g2: #8aa0dc;
  --pp-bg: #ebf1fc;
  --pp-surface: #ffffff; --pp-surface-2: #f4f7fe; --pp-surface-3: #dee6f7;
  --pp-border: #d5def1; --pp-text: #112245; --pp-muted: #5a6a8c;
  --pp-primary: #5f7fc4; --pp-primary-2: #8aa0dc;
  --pp-grad: linear-gradient(90deg, #5f7fc4 0%, #8aa0dc 100%);
  --pp-grad-head: linear-gradient(90deg, #5f7fc4 0%, #8aa0dc 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(95,127,196,.10), rgba(138,160,220,.06));
  --pp-glow: 0 4px 12px rgba(95,127,196,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9e4fc; --pp-chip-text: #2c4477;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(95,127,196,.10), transparent 60%);
}
html[data-v2-colour="periwinkle"] body.pp2.theme-dark, html[data-v2-colour="periwinkle"] body.pp2.dark {
  --pp-dk-a: 20,30,52; --pp-dk-b: 7,12,24; --pp-lite: #a2b4dd; --pp-deep: #294070;
  --pp-bd-b: 122,147,215; --pp-bd-c: 128,154,208; --pp-bd-d: 122,147,215;
  --pp-rgb: 128,154,208; --pp-rgb-2: 122,147,215; --pp-g1: #3a599c; --pp-g2: #284185;
  --pp-bg: #060b16;
  --pp-surface: #0c121f; --pp-surface-2: #121a2b; --pp-surface-3: #182339;
  --pp-border: rgba(128,154,208,.24); --pp-text: #e9effb; --pp-muted: #939db4;
  --pp-primary: #809ad0; --pp-primary-2: #7a93d7;
  --pp-grad: linear-gradient(90deg, #3a599c 0%, #284185 100%);
  --pp-grad-head: linear-gradient(90deg, #2f487f 0%, #233976 100%);
  --pp-glow: 0 4px 14px rgba(128,154,208,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(128,154,208,.16), rgba(122,147,215,.08));
  --pp-topbar: #090f1b; --pp-input: #0b101c;
  --pp-chip: rgba(128,154,208,.18); --pp-chip-text: #a6b7de;
  --pp-code: #090f1b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(128,154,208,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(122,147,215,.08), transparent 60%);
}

/* ---------- Lime Zest ---------- */
html[data-v2-colour="lime"] body.popstra-v2 {
  --v2-dk-a: 20,52,21; --v2-dk-b: 7,24,8; --v2-lite: #a4dba6; --v2-deep: #2b6e2e;
  --v2-bd-b: 157,215,122; --v2-bd-c: 131,206,134; --v2-bd-d: 157,215,122;
  --v2-lbd-b: 157,215,122; --v2-lbd-c: 131,206,134; --v2-lbd-d: 157,215,122;
  --v2-rgb: 63,159,67; --v2-rgb-2: 108,191,58; --v2-g1: #3f9f43; --v2-g2: #6cbf3a;
  --v2-bg: #ebfcec;
  --v2-surface: #ffffff; --v2-surface-2: #f4fef4; --v2-surface-3: #def7df;
  --v2-border: #d5f1d6; --v2-text: #114514; --v2-muted: #5a8c5c;
  --v2-primary: #3f9f43; --v2-primary-2: #6cbf3a;
  --v2-grad: linear-gradient(90deg, #3f9f43 0%, #6cbf3a 100%);
  --v2-grad-head: linear-gradient(90deg, #3f9f43 0%, #6cbf3a 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(63,159,67,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(63,159,67,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4fef4;
  --v2-chip: #d9fcdb; --v2-chip-text: #2e7531;
}
html[data-v2-colour="lime"] body.popstra-v2.theme-dark, html[data-v2-colour="lime"] body.popstra-v2.dark {
  --v2-dk-a: 20,52,21; --v2-dk-b: 7,24,8; --v2-lite: #a4dba6; --v2-deep: #2b6e2e;
  --v2-bd-b: 157,215,122; --v2-bd-c: 131,206,134; --v2-bd-d: 157,215,122;
  --v2-rgb: 131,206,134; --v2-rgb-2: 157,215,122; --v2-g1: #3d9941; --v2-g2: #4b8528;
  --v2-bg: #061607;
  --v2-surface: #0c1f0d; --v2-surface-2: #122b13; --v2-surface-3: #18391a;
  --v2-border: rgba(131,206,134,.22); --v2-text: #e9fbea; --v2-muted: #93b494;
  --v2-primary: #83ce86; --v2-primary-2: #9dd77a;
  --v2-grad: linear-gradient(90deg, #3d9941 0%, #4b8528 100%);
  --v2-grad-head: linear-gradient(90deg, #317c34 0%, #427524 100%);
  --v2-glow: 0 8px 28px rgba(131,206,134,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(131,206,134,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(157,215,122,.08), transparent 60%);
  --v2-sidebar: #091b0a; --v2-topbar: rgba(7,24,8,.92); --v2-input: #0b1c0b; --v2-row-alt: #0f2410;
  --v2-chip: rgba(131,206,134,.18); --v2-chip-text: #a7dcaa;
}
html[data-v2-colour="lime"][data-v2-scheme="light"] { background: #ebfcec; }
html[data-v2-colour="lime"][data-v2-scheme="dark"] { background: #061607; }
html[data-v2-colour="lime"][data-pp2-scheme="light"] { background: #ebfcec; }
html[data-v2-colour="lime"][data-pp2-scheme="dark"] { background: #061607; }
html[data-v2-colour="lime"] body.pp2 {
  --pp-dk-a: 20,52,21; --pp-dk-b: 7,24,8; --pp-lite: #a4dba6; --pp-deep: #2b6e2e;
  --pp-bd-b: 157,215,122; --pp-bd-c: 131,206,134; --pp-bd-d: 157,215,122;
  --pp-lbd-b: 157,215,122; --pp-lbd-c: 131,206,134; --pp-lbd-d: 157,215,122;
  --pp-rgb: 63,159,67; --pp-rgb-2: 108,191,58; --pp-g1: #3f9f43; --pp-g2: #6cbf3a;
  --pp-bg: #ebfcec;
  --pp-surface: #ffffff; --pp-surface-2: #f4fef4; --pp-surface-3: #def7df;
  --pp-border: #d5f1d6; --pp-text: #114514; --pp-muted: #5a8c5c;
  --pp-primary: #3f9f43; --pp-primary-2: #6cbf3a;
  --pp-grad: linear-gradient(90deg, #3f9f43 0%, #6cbf3a 100%);
  --pp-grad-head: linear-gradient(90deg, #3f9f43 0%, #6cbf3a 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(63,159,67,.10), rgba(108,191,58,.06));
  --pp-glow: 0 4px 12px rgba(63,159,67,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9fcdb; --pp-chip-text: #2e7531;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(63,159,67,.10), transparent 60%);
}
html[data-v2-colour="lime"] body.pp2.theme-dark, html[data-v2-colour="lime"] body.pp2.dark {
  --pp-dk-a: 20,52,21; --pp-dk-b: 7,24,8; --pp-lite: #a4dba6; --pp-deep: #2b6e2e;
  --pp-bd-b: 157,215,122; --pp-bd-c: 131,206,134; --pp-bd-d: 157,215,122;
  --pp-rgb: 131,206,134; --pp-rgb-2: 157,215,122; --pp-g1: #3d9941; --pp-g2: #4b8528;
  --pp-bg: #061607;
  --pp-surface: #0c1f0d; --pp-surface-2: #122b13; --pp-surface-3: #18391a;
  --pp-border: rgba(131,206,134,.24); --pp-text: #e9fbea; --pp-muted: #93b494;
  --pp-primary: #83ce86; --pp-primary-2: #9dd77a;
  --pp-grad: linear-gradient(90deg, #3d9941 0%, #4b8528 100%);
  --pp-grad-head: linear-gradient(90deg, #317c34 0%, #427524 100%);
  --pp-glow: 0 4px 14px rgba(131,206,134,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(131,206,134,.16), rgba(157,215,122,.08));
  --pp-topbar: #091b0a; --pp-input: #0b1c0b;
  --pp-chip: rgba(131,206,134,.18); --pp-chip-text: #a7dcaa;
  --pp-code: #091b0a;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(131,206,134,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(157,215,122,.08), transparent 60%);
}

/* ---------- Tangerine ---------- */
html[data-v2-colour="tangerine"] body.popstra-v2 {
  --v2-dk-a: 52,32,20; --v2-dk-b: 24,13,7; --v2-lite: #f9b286; --v2-deep: #923d07;
  --v2-bd-b: 248,189,88; --v2-bd-c: 247,151,90; --v2-bd-d: 248,189,88;
  --v2-lbd-b: 248,189,88; --v2-lbd-c: 247,151,90; --v2-lbd-d: 248,189,88;
  --v2-rgb: 243,107,21; --v2-rgb-2: 245,158,11; --v2-g1: #f36b15; --v2-g2: #f59e0b;
  --v2-bg: #fcf2eb;
  --v2-surface: #ffffff; --v2-surface-2: #fef7f4; --v2-surface-3: #f7e8de;
  --v2-border: #f1e0d5; --v2-text: #452511; --v2-muted: #8c6d5a;
  --v2-primary: #f36b15; --v2-primary-2: #f59e0b;
  --v2-grad: linear-gradient(90deg, #f36b15 0%, #f59e0b 100%);
  --v2-grad-head: linear-gradient(90deg, #f36b15 0%, #f59e0b 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(243,107,21,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(243,107,21,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fef7f4;
  --v2-chip: #fce7d9; --v2-chip-text: #9b4108;
}
html[data-v2-colour="tangerine"] body.popstra-v2.theme-dark, html[data-v2-colour="tangerine"] body.popstra-v2.dark {
  --v2-dk-a: 52,32,20; --v2-dk-b: 24,13,7; --v2-lite: #f9b286; --v2-deep: #923d07;
  --v2-bd-b: 248,189,88; --v2-bd-c: 247,151,90; --v2-bd-d: 248,189,88;
  --v2-rgb: 247,151,90; --v2-rgb-2: 248,189,88; --v2-g1: #cc550a; --v2-g2: #a76b07;
  --v2-bg: #160c06;
  --v2-surface: #1f130c; --v2-surface-2: #2b1c12; --v2-surface-3: #392518;
  --v2-border: rgba(247,151,90,.22); --v2-text: #fbf0e9; --v2-muted: #b49f93;
  --v2-primary: #f7975a; --v2-primary-2: #f8bd58;
  --v2-grad: linear-gradient(90deg, #cc550a 0%, #a76b07 100%);
  --v2-grad-head: linear-gradient(90deg, #a54508 0%, #935f06 100%);
  --v2-glow: 0 8px 28px rgba(247,151,90,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(247,151,90,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(248,189,88,.08), transparent 60%);
  --v2-sidebar: #1b1009; --v2-topbar: rgba(24,13,7,.92); --v2-input: #1c110b; --v2-row-alt: #24170f;
  --v2-chip: rgba(247,151,90,.18); --v2-chip-text: #f9b58b;
}
html[data-v2-colour="tangerine"][data-v2-scheme="light"] { background: #fcf2eb; }
html[data-v2-colour="tangerine"][data-v2-scheme="dark"] { background: #160c06; }
html[data-v2-colour="tangerine"][data-pp2-scheme="light"] { background: #fcf2eb; }
html[data-v2-colour="tangerine"][data-pp2-scheme="dark"] { background: #160c06; }
html[data-v2-colour="tangerine"] body.pp2 {
  --pp-dk-a: 52,32,20; --pp-dk-b: 24,13,7; --pp-lite: #f9b286; --pp-deep: #923d07;
  --pp-bd-b: 248,189,88; --pp-bd-c: 247,151,90; --pp-bd-d: 248,189,88;
  --pp-lbd-b: 248,189,88; --pp-lbd-c: 247,151,90; --pp-lbd-d: 248,189,88;
  --pp-rgb: 243,107,21; --pp-rgb-2: 245,158,11; --pp-g1: #f36b15; --pp-g2: #f59e0b;
  --pp-bg: #fcf2eb;
  --pp-surface: #ffffff; --pp-surface-2: #fef7f4; --pp-surface-3: #f7e8de;
  --pp-border: #f1e0d5; --pp-text: #452511; --pp-muted: #8c6d5a;
  --pp-primary: #f36b15; --pp-primary-2: #f59e0b;
  --pp-grad: linear-gradient(90deg, #f36b15 0%, #f59e0b 100%);
  --pp-grad-head: linear-gradient(90deg, #f36b15 0%, #f59e0b 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(243,107,21,.10), rgba(245,158,11,.06));
  --pp-glow: 0 4px 12px rgba(243,107,21,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #fce7d9; --pp-chip-text: #9b4108;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(243,107,21,.10), transparent 60%);
}
html[data-v2-colour="tangerine"] body.pp2.theme-dark, html[data-v2-colour="tangerine"] body.pp2.dark {
  --pp-dk-a: 52,32,20; --pp-dk-b: 24,13,7; --pp-lite: #f9b286; --pp-deep: #923d07;
  --pp-bd-b: 248,189,88; --pp-bd-c: 247,151,90; --pp-bd-d: 248,189,88;
  --pp-rgb: 247,151,90; --pp-rgb-2: 248,189,88; --pp-g1: #cc550a; --pp-g2: #a76b07;
  --pp-bg: #160c06;
  --pp-surface: #1f130c; --pp-surface-2: #2b1c12; --pp-surface-3: #392518;
  --pp-border: rgba(247,151,90,.24); --pp-text: #fbf0e9; --pp-muted: #b49f93;
  --pp-primary: #f7975a; --pp-primary-2: #f8bd58;
  --pp-grad: linear-gradient(90deg, #cc550a 0%, #a76b07 100%);
  --pp-grad-head: linear-gradient(90deg, #a54508 0%, #935f06 100%);
  --pp-glow: 0 4px 14px rgba(247,151,90,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(247,151,90,.16), rgba(248,189,88,.08));
  --pp-topbar: #1b1009; --pp-input: #1c110b;
  --pp-chip: rgba(247,151,90,.18); --pp-chip-text: #f9b58b;
  --pp-code: #1b1009;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(247,151,90,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(248,189,88,.08), transparent 60%);
}

/* ---------- Ruby ---------- */
html[data-v2-colour="ruby"] body.popstra-v2 {
  --v2-dk-a: 52,20,23; --v2-dk-b: 24,7,9; --v2-lite: #eb949e; --v2-deep: #801925;
  --v2-bd-b: 231,105,129; --v2-bd-c: 227,109,123; --v2-bd-d: 231,105,129;
  --v2-lbd-b: 231,105,129; --v2-lbd-c: 227,109,123; --v2-lbd-d: 231,105,129;
  --v2-rgb: 216,51,70; --v2-rgb-2: 184,29,58; --v2-g1: #d83346; --v2-g2: #b81d3a;
  --v2-bg: #fcebed;
  --v2-surface: #ffffff; --v2-surface-2: #fef4f5; --v2-surface-3: #f7dee1;
  --v2-border: #f1d5d8; --v2-text: #451117; --v2-muted: #8c5a5f;
  --v2-primary: #d83346; --v2-primary-2: #b81d3a;
  --v2-grad: linear-gradient(90deg, #d83346 0%, #b81d3a 100%);
  --v2-grad-head: linear-gradient(90deg, #d83346 0%, #b81d3a 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(216,51,70,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(216,51,70,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #fef4f5;
  --v2-chip: #fcd9dd; --v2-chip-text: #891a27;
}
html[data-v2-colour="ruby"] body.popstra-v2.theme-dark, html[data-v2-colour="ruby"] body.popstra-v2.dark {
  --v2-dk-a: 52,20,23; --v2-dk-b: 24,7,9; --v2-lite: #eb949e; --v2-deep: #801925;
  --v2-bd-b: 231,105,129; --v2-bd-c: 227,109,123; --v2-bd-d: 231,105,129;
  --v2-rgb: 227,109,123; --v2-rgb-2: 231,105,129; --v2-g1: #b42233; --v2-g2: #96182f;
  --v2-bg: #160608;
  --v2-surface: #1f0c0e; --v2-surface-2: #2b1215; --v2-surface-3: #39181c;
  --v2-border: rgba(227,109,123,.22); --v2-text: #fbe9eb; --v2-muted: #b49396;
  --v2-primary: #e36d7b; --v2-primary-2: #e76981;
  --v2-grad: linear-gradient(90deg, #b42233 0%, #96182f 100%);
  --v2-grad-head: linear-gradient(90deg, #921c29 0%, #84152a 100%);
  --v2-glow: 0 8px 28px rgba(227,109,123,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(227,109,123,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(231,105,129,.08), transparent 60%);
  --v2-sidebar: #1b090b; --v2-topbar: rgba(24,7,9,.92); --v2-input: #1c0b0d; --v2-row-alt: #240f11;
  --v2-chip: rgba(227,109,123,.18); --v2-chip-text: #eb98a2;
}
html[data-v2-colour="ruby"][data-v2-scheme="light"] { background: #fcebed; }
html[data-v2-colour="ruby"][data-v2-scheme="dark"] { background: #160608; }
html[data-v2-colour="ruby"][data-pp2-scheme="light"] { background: #fcebed; }
html[data-v2-colour="ruby"][data-pp2-scheme="dark"] { background: #160608; }
html[data-v2-colour="ruby"] body.pp2 {
  --pp-dk-a: 52,20,23; --pp-dk-b: 24,7,9; --pp-lite: #eb949e; --pp-deep: #801925;
  --pp-bd-b: 231,105,129; --pp-bd-c: 227,109,123; --pp-bd-d: 231,105,129;
  --pp-lbd-b: 231,105,129; --pp-lbd-c: 227,109,123; --pp-lbd-d: 231,105,129;
  --pp-rgb: 216,51,70; --pp-rgb-2: 184,29,58; --pp-g1: #d83346; --pp-g2: #b81d3a;
  --pp-bg: #fcebed;
  --pp-surface: #ffffff; --pp-surface-2: #fef4f5; --pp-surface-3: #f7dee1;
  --pp-border: #f1d5d8; --pp-text: #451117; --pp-muted: #8c5a5f;
  --pp-primary: #d83346; --pp-primary-2: #b81d3a;
  --pp-grad: linear-gradient(90deg, #d83346 0%, #b81d3a 100%);
  --pp-grad-head: linear-gradient(90deg, #d83346 0%, #b81d3a 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(216,51,70,.10), rgba(184,29,58,.06));
  --pp-glow: 0 4px 12px rgba(216,51,70,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #fcd9dd; --pp-chip-text: #891a27;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(216,51,70,.10), transparent 60%);
}
html[data-v2-colour="ruby"] body.pp2.theme-dark, html[data-v2-colour="ruby"] body.pp2.dark {
  --pp-dk-a: 52,20,23; --pp-dk-b: 24,7,9; --pp-lite: #eb949e; --pp-deep: #801925;
  --pp-bd-b: 231,105,129; --pp-bd-c: 227,109,123; --pp-bd-d: 231,105,129;
  --pp-rgb: 227,109,123; --pp-rgb-2: 231,105,129; --pp-g1: #b42233; --pp-g2: #96182f;
  --pp-bg: #160608;
  --pp-surface: #1f0c0e; --pp-surface-2: #2b1215; --pp-surface-3: #39181c;
  --pp-border: rgba(227,109,123,.24); --pp-text: #fbe9eb; --pp-muted: #b49396;
  --pp-primary: #e36d7b; --pp-primary-2: #e76981;
  --pp-grad: linear-gradient(90deg, #b42233 0%, #96182f 100%);
  --pp-grad-head: linear-gradient(90deg, #921c29 0%, #84152a 100%);
  --pp-glow: 0 4px 14px rgba(227,109,123,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(227,109,123,.16), rgba(231,105,129,.08));
  --pp-topbar: #1b090b; --pp-input: #1c0b0d;
  --pp-chip: rgba(227,109,123,.18); --pp-chip-text: #eb98a2;
  --pp-code: #1b090b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(227,109,123,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(231,105,129,.08), transparent 60%);
}

/* ---------- Indigo Night ---------- */
html[data-v2-colour="indigo"] body.popstra-v2 {
  --v2-dk-a: 20,21,52; --v2-dk-b: 7,8,24; --v2-lite: #9ea1e1; --v2-deep: #242875;
  --v2-bd-b: 126,131,210; --v2-bd-c: 122,127,214; --v2-bd-d: 126,131,210;
  --v2-lbd-b: 126,131,210; --v2-lbd-c: 122,127,214; --v2-lbd-d: 126,131,210;
  --v2-rgb: 80,86,201; --v2-rgb-2: 63,70,181; --v2-g1: #5056c9; --v2-g2: #3f46b5;
  --v2-bg: #ebecfc;
  --v2-surface: #ffffff; --v2-surface-2: #f4f4fe; --v2-surface-3: #dee0f7;
  --v2-border: #d5d6f1; --v2-text: #111445; --v2-muted: #5a5c8c;
  --v2-primary: #5056c9; --v2-primary-2: #3f46b5;
  --v2-grad: linear-gradient(90deg, #5056c9 0%, #3f46b5 100%);
  --v2-grad-head: linear-gradient(90deg, #5056c9 0%, #3f46b5 100%);
  --v2-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(80,86,201,.12), transparent 60%);
  --v2-glow: 0 8px 24px rgba(80,86,201,.20);
  --v2-sidebar: #ffffff; --v2-topbar: rgba(255,255,255,.92); --v2-input: #ffffff; --v2-row-alt: #f4f4fe;
  --v2-chip: #d9dbfc; --v2-chip-text: #262b7d;
}
html[data-v2-colour="indigo"] body.popstra-v2.theme-dark, html[data-v2-colour="indigo"] body.popstra-v2.dark {
  --v2-dk-a: 20,21,52; --v2-dk-b: 7,8,24; --v2-lite: #9ea1e1; --v2-deep: #242875;
  --v2-bd-b: 126,131,210; --v2-bd-c: 122,127,214; --v2-bd-d: 126,131,210;
  --v2-rgb: 122,127,214; --v2-rgb-2: 126,131,210; --v2-g1: #3338a4; --v2-g2: #2d3281;
  --v2-bg: #060716;
  --v2-surface: #0c0d1f; --v2-surface-2: #12132b; --v2-surface-3: #181a39;
  --v2-border: rgba(122,127,214,.22); --v2-text: #e9eafb; --v2-muted: #9394b4;
  --v2-primary: #7a7fd6; --v2-primary-2: #7e83d2;
  --v2-grad: linear-gradient(90deg, #3338a4 0%, #2d3281 100%);
  --v2-grad-head: linear-gradient(90deg, #292d85 0%, #282c71 100%);
  --v2-glow: 0 8px 28px rgba(122,127,214,.28);
  --v2-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(122,127,214,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(126,131,210,.08), transparent 60%);
  --v2-sidebar: #090a1b; --v2-topbar: rgba(7,8,24,.92); --v2-input: #0b0b1c; --v2-row-alt: #0f1024;
  --v2-chip: rgba(122,127,214,.18); --v2-chip-text: #a1a5e2;
}
html[data-v2-colour="indigo"][data-v2-scheme="light"] { background: #ebecfc; }
html[data-v2-colour="indigo"][data-v2-scheme="dark"] { background: #060716; }
html[data-v2-colour="indigo"][data-pp2-scheme="light"] { background: #ebecfc; }
html[data-v2-colour="indigo"][data-pp2-scheme="dark"] { background: #060716; }
html[data-v2-colour="indigo"] body.pp2 {
  --pp-dk-a: 20,21,52; --pp-dk-b: 7,8,24; --pp-lite: #9ea1e1; --pp-deep: #242875;
  --pp-bd-b: 126,131,210; --pp-bd-c: 122,127,214; --pp-bd-d: 126,131,210;
  --pp-lbd-b: 126,131,210; --pp-lbd-c: 122,127,214; --pp-lbd-d: 126,131,210;
  --pp-rgb: 80,86,201; --pp-rgb-2: 63,70,181; --pp-g1: #5056c9; --pp-g2: #3f46b5;
  --pp-bg: #ebecfc;
  --pp-surface: #ffffff; --pp-surface-2: #f4f4fe; --pp-surface-3: #dee0f7;
  --pp-border: #d5d6f1; --pp-text: #111445; --pp-muted: #5a5c8c;
  --pp-primary: #5056c9; --pp-primary-2: #3f46b5;
  --pp-grad: linear-gradient(90deg, #5056c9 0%, #3f46b5 100%);
  --pp-grad-head: linear-gradient(90deg, #5056c9 0%, #3f46b5 100%);
  --pp-grad-soft: linear-gradient(135deg, rgba(80,86,201,.10), rgba(63,70,181,.06));
  --pp-glow: 0 4px 12px rgba(80,86,201,.24);
  --pp-topbar: #ffffff; --pp-input: #ffffff;
  --pp-chip: #d9dbfc; --pp-chip-text: #262b7d;
  --pp-bg-grad: radial-gradient(1200px 500px at 70% -10%, rgba(80,86,201,.10), transparent 60%);
}
html[data-v2-colour="indigo"] body.pp2.theme-dark, html[data-v2-colour="indigo"] body.pp2.dark {
  --pp-dk-a: 20,21,52; --pp-dk-b: 7,8,24; --pp-lite: #9ea1e1; --pp-deep: #242875;
  --pp-bd-b: 126,131,210; --pp-bd-c: 122,127,214; --pp-bd-d: 126,131,210;
  --pp-rgb: 122,127,214; --pp-rgb-2: 126,131,210; --pp-g1: #3338a4; --pp-g2: #2d3281;
  --pp-bg: #060716;
  --pp-surface: #0c0d1f; --pp-surface-2: #12132b; --pp-surface-3: #181a39;
  --pp-border: rgba(122,127,214,.24); --pp-text: #e9eafb; --pp-muted: #9394b4;
  --pp-primary: #7a7fd6; --pp-primary-2: #7e83d2;
  --pp-grad: linear-gradient(90deg, #3338a4 0%, #2d3281 100%);
  --pp-grad-head: linear-gradient(90deg, #292d85 0%, #282c71 100%);
  --pp-glow: 0 4px 14px rgba(122,127,214,.30);
  --pp-grad-soft: linear-gradient(135deg, rgba(122,127,214,.16), rgba(126,131,210,.08));
  --pp-topbar: #090a1b; --pp-input: #0b0b1c;
  --pp-chip: rgba(122,127,214,.18); --pp-chip-text: #a1a5e2;
  --pp-code: #090a1b;
  --pp-bg-grad: radial-gradient(900px 480px at 85% -10%, rgba(122,127,214,.14), transparent 60%), radial-gradient(700px 400px at -5% 40%, rgba(126,131,210,.08), transparent 60%);
}

