/* ============================================================================
   v3.4.9 — Site themes (20 curated light themes + explicit light reset)
   ----------------------------------------------------------------------------
   Every block is CSS variables only — no images, fonts or scripts — so a
   theme swap costs a few KB and zero layout work. Applied via
   html[data-theme="<slug>"] (written to assets/data/theme-config.js by the
   admin panel → Appearance & Themes).
   ============================================================================ */

/* explicit light reset (admin pick "light") */
html[data-theme="light"]{--bg:#f6f7fb;--surface:#ffffff;--surface2:#f1f5f9;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--primary:#4f46e5;--primary-600:#4338ca;--primary-50:#eef2ff;--accent:#0ea5e9;--shadow:0 1px 2px rgba(15,23,42,.04),0 4px 16px rgba(15,23,42,.06);--shadow-lg:0 10px 40px rgba(15,23,42,.12);--radius:14px}

/* 1 · Vercel Geist Daylight — monochrome-precise, black accent */
html[data-theme="vercel-geist-daylight"]{--bg:#ffffff;--surface:#ffffff;--surface2:#fafafa;--text:#171717;--muted:#666666;--border:#ebebeb;--primary:#000000;--primary-600:#171717;--primary-50:#f5f5f5;--accent:#0070f3;--shadow:0 1px 2px rgba(0,0,0,.03),0 2px 8px rgba(0,0,0,.04);--shadow-lg:0 8px 30px rgba(0,0,0,.08);--radius:8px}

/* 2 · Shadcn Slate Light — neutral slate, ink primary */
html[data-theme="shadcn-slate-light"]{--bg:#ffffff;--surface:#ffffff;--surface2:#f8fafc;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--primary:#18181b;--primary-600:#27272a;--primary-50:#f4f4f5;--accent:#2563eb;--shadow:0 1px 2px rgba(0,0,0,.05);--shadow-lg:0 8px 24px rgba(0,0,0,.08);--radius:8px}

/* 3 · Apple Bento Alabaster — soft warm canvas, big radii */
html[data-theme="apple-bento-alabaster"]{--bg:#f5f5f7;--surface:#ffffff;--surface2:#fbfbfd;--text:#1d1d1f;--muted:#6e6e73;--border:#d2d2d7;--primary:#0071e3;--primary-600:#0077ed;--primary-50:#e8f2fd;--accent:#ff9f0a;--shadow:0 2px 8px rgba(0,0,0,.04),0 12px 32px rgba(0,0,0,.06);--shadow-lg:0 20px 50px rgba(0,0,0,.1);--radius:18px}

/* 4 · Stripe Crisp Porcelain — navy ink, indigo CTA */
html[data-theme="stripe-crisp-porcelain"]{--bg:#f6f9fc;--surface:#ffffff;--surface2:#f0f5fa;--text:#0a2540;--muted:#546c85;--border:#e3e8ee;--primary:#635bff;--primary-600:#5851ec;--primary-50:#f1f0ff;--accent:#00d391;--shadow:0 1px 2px rgba(50,50,93,.05),0 4px 12px rgba(50,50,93,.05);--shadow-lg:0 10px 30px rgba(50,50,93,.1);--radius:6px}

/* 5 · Linear Pure Snow — pure white, muted indigo */
html[data-theme="linear-pure-snow"]{--bg:#ffffff;--surface:#ffffff;--surface2:#f7f8f8;--text:#1f2328;--muted:#6f7680;--border:#e2e2e2;--primary:#5e6ad2;--primary-600:#4e59c7;--primary-50:#eef0fb;--accent:#f2994a;--shadow:0 1px 2px rgba(9,9,9,.03),0 2px 12px rgba(9,9,9,.04);--shadow-lg:0 8px 28px rgba(9,9,9,.09);--radius:6px}

/* 6 · Swiss Typography Grid — helvetica, red signal, hard edges */
html[data-theme="swiss-typography-grid"]{--bg:#ffffff;--surface:#ffffff;--surface2:#f4f4f4;--text:#111111;--muted:#555555;--border:#d4d4d4;--primary:#e30613;--primary-600:#c10511;--primary-50:#fdecee;--accent:#111111;--shadow:none;--shadow-lg:0 1px 0 rgba(0,0,0,.15);--radius:0;--font:"Helvetica Neue",Helvetica,Arial,sans-serif}

/* 7 · Notion Warm Ivory — warm neutrals, brown ink */
html[data-theme="notion-warm-ivory"]{--bg:#f8f7f4;--surface:#fffefb;--surface2:#f1f0ec;--text:#37352f;--muted:#787670;--border:#e9e8e4;--primary:#2383e2;--primary-600:#1b6fbf;--primary-50:#eaf3fc;--accent:#d9730d;--shadow:0 1px 2px rgba(55,53,47,.04);--shadow-lg:0 8px 24px rgba(55,53,47,.08);--radius:4px}

/* 8 · Nordic Ice & Cobalt — icy canvas, deep cobalt */
html[data-theme="nordic-ice-cobalt"]{--bg:#f4f8fb;--surface:#ffffff;--surface2:#edf3f8;--text:#0f2540;--muted:#5c748e;--border:#dbe7f0;--primary:#0047ab;--primary-600:#003c8f;--primary-50:#e7f0fb;--accent:#4cc9f0;--shadow:0 1px 2px rgba(15,37,64,.04),0 6px 18px rgba(15,37,64,.05);--shadow-lg:0 12px 36px rgba(15,37,64,.1);--radius:10px}

/* 9 · Paper & Ink Editorial — paper stock, serif voice, rust accent */
html[data-theme="paper-ink-editorial"]{--bg:#faf8f4;--surface:#fffdf8;--surface2:#f3efe7;--text:#1a1a17;--muted:#6b675e;--border:#e5e0d5;--primary:#7c2d12;--primary-600:#68270f;--primary-50:#f7ede8;--accent:#a16207;--shadow:0 1px 2px rgba(26,26,23,.04);--shadow-lg:0 10px 30px rgba(26,26,23,.09);--radius:2px;--font:Georgia,"Times New Roman",serif}

/* 10 · Tailwind Zinc Minimal — zinc scale, near-black CTA */
html[data-theme="tailwind-zinc-minimal"]{--bg:#fafafa;--surface:#ffffff;--surface2:#f4f4f5;--text:#18181b;--muted:#71717a;--border:#e4e4e7;--primary:#18181b;--primary-600:#27272a;--primary-50:#f4f4f5;--accent:#2563eb;--shadow:0 1px 2px rgba(0,0,0,.04);--shadow-lg:0 8px 24px rgba(0,0,0,.07);--radius:8px}

/* 11 · Framer Clean Canvas — cool white, Framer blue */
html[data-theme="framer-clean-canvas"]{--bg:#fafafa;--surface:#ffffff;--surface2:#f4f4f5;--text:#1e1e1e;--muted:#6b6b6b;--border:#ebebeb;--primary:#0055ff;--primary-600:#0047cc;--primary-50:#e8efff;--accent:#ff4d00;--shadow:0 1px 2px rgba(0,0,0,.04),0 4px 16px rgba(0,0,0,.05);--shadow-lg:0 12px 36px rgba(0,0,0,.1);--radius:10px}

/* 12 · Featherweight Quartz UI — quartz sheen, soft violet */
html[data-theme="featherweight-quartz-ui"]{--bg:#f5f5f7;--surface:#ffffff;--surface2:#f7f7f9;--text:#1d1d1f;--muted:#6e6e73;--border:#e8e8ec;--primary:#5e5ce6;--primary-600:#4d4bd4;--primary-50:#f0f0fc;--accent:#bf5af2;--shadow:0 1px 3px rgba(29,29,31,.04),0 8px 24px rgba(29,29,31,.06);--shadow-lg:0 16px 44px rgba(29,29,31,.1);--radius:12px}

/* 13 · Pure Alabaster & Charcoal — stone canvas, charcoal ink */
html[data-theme="pure-alabaster-charcoal"]{--bg:#f2f1ef;--surface:#ffffff;--surface2:#edecea;--text:#232528;--muted:#63666b;--border:#dedcd8;--primary:#33363a;--primary-600:#26282c;--primary-50:#f0efed;--accent:#8a5a2b;--shadow:0 1px 2px rgba(35,37,40,.05);--shadow-lg:0 10px 30px rgba(35,37,40,.1);--radius:6px}

/* 14 · Airtable Crisp Daylight — grid-paper calm, teal CTA */
html[data-theme="airtable-crisp-daylight"]{--bg:#fbfbfb;--surface:#ffffff;--surface2:#f5f6f7;--text:#343a46;--muted:#707a88;--border:#e3e6ea;--primary:#1992c3;--primary-600:#127ba5;--primary-50:#e9f6fb;--accent:#9575ff;--shadow:0 1px 2px rgba(52,58,70,.05);--shadow-lg:0 8px 24px rgba(52,58,70,.09);--radius:4px}

/* 15 · Monochrome Pearl Grid — pearl neutrals, strict monochrome */
html[data-theme="monochrome-pearl-grid"]{--bg:#f7f7f8;--surface:#ffffff;--surface2:#f0f0f2;--text:#17181c;--muted:#5c5e66;--border:#dfe0e3;--primary:#111827;--primary-600:#1f2937;--primary-50:#f3f4f6;--accent:#4b5563;--shadow:0 1px 2px rgba(23,24,28,.04);--shadow-lg:0 8px 26px rgba(23,24,28,.08);--radius:4px}

/* 16 · GitHub Primer Light — Primer scale, Primer blue */
html[data-theme="github-primer-light"]{--bg:#f6f8fa;--surface:#ffffff;--surface2:#f6f8fa;--text:#1f2328;--muted:#656d76;--border:#d0d7de;--primary:#0969da;--primary-600:#0860c4;--primary-50:#ddf4ff;--accent:#8250df;--shadow:0 1px 0 rgba(31,35,40,.04);--shadow-lg:0 8px 24px rgba(66,74,83,.12);--radius:6px}

/* 17 · Silk & Obsidian Minimal — warm silk, obsidian ink */
html[data-theme="silk-obsidian-minimal"]{--bg:#f4f3f1;--surface:#ffffff;--surface2:#efeeec;--text:#14120f;--muted:#6d6860;--border:#e2e0dc;--primary:#1a1614;--primary-600:#2a2420;--primary-50:#f2f0ee;--accent:#9a6b4f;--shadow:0 1px 2px rgba(20,18,15,.04);--shadow-lg:0 10px 32px rgba(20,18,15,.09);--radius:8px}

/* 18 · Zero-Gravity White — pure white, weightless shadow, violet lift */
html[data-theme="zero-gravity-white"]{--bg:#ffffff;--surface:#ffffff;--surface2:#fafafa;--text:#0b0b0b;--muted:#666666;--border:#ececec;--primary:#5b21b6;--primary-600:#4c1d95;--primary-50:#f5f3ff;--accent:#db2777;--shadow:0 2px 12px rgba(0,0,0,.03);--shadow-lg:0 16px 48px rgba(0,0,0,.07);--radius:12px}

/* 19 · Crystal Frost Lite — frost canvas, cyan depth */
html[data-theme="crystal-frost-lite"]{--bg:#f2f7fb;--surface:#ffffff;--surface2:#eaf2f8;--text:#0c2a3d;--muted:#54758c;--border:#d9e8f2;--primary:#0e7490;--primary-600:#0b607a;--primary-50:#e6f6fa;--accent:#22d3ee;--shadow:0 1px 2px rgba(12,42,61,.04),0 6px 20px rgba(12,42,61,.05);--shadow-lg:0 12px 36px rgba(12,42,61,.1);--radius:10px}

/* 20 · Cashmere & Slate UI — cashmere warmth, slate structure */
html[data-theme="cashmere-slate-ui"]{--bg:#f5f4f2;--surface:#ffffff;--surface2:#efedea;--text:#24303e;--muted:#6b7683;--border:#e5e3df;--primary:#475569;--primary-600:#3d4a5c;--primary-50:#eef1f4;--accent:#c2884e;--shadow:0 1px 2px rgba(36,48,62,.05);--shadow-lg:0 10px 32px rgba(36,48,62,.1);--radius:14px}
