/* ==========================================================================
   GREEN JOURNAL — 16 HALLMARK THEMES & TYPOGRAPHIC AESTHETICS
   ========================================================================== */

/* ── 0. DEFAULT FALLBACK / BASE THEME (LUMEN) ── */
:root,
html,
body,
[data-theme="lumen"] {
    --bg-main: #141418;
    --bg-sidebar: #0f0f12;
    --bg-card: rgba(30, 30, 36, 0.92);
    --bg-card-hover: rgba(38, 38, 46, 0.98);
    --bg-deep: #0a0a0d;
    --bg-deeper: #070709;
    
    --text-primary: #f3f4f6;
    --text-secondary: #a1a1aa;
    --text-muted: #71717a;
    
    --primary: #eab308;
    --primary-hover: #ca8a04;
    --primary-glow: rgba(234, 179, 8, 0.3);
    
    --accent-blue: #38bdf8;
    --accent-green: #22c55e;
    --accent-rose: #f43f5e;
    --accent-amber: #eab308;
    --accent-sky: #0ea5e9;
    --accent-purple: #a855f7;
    
    --border-color: rgba(255, 255, 255, 0.09);
    --border-hover: rgba(234, 179, 8, 0.45);
    --input-bg: rgba(20, 20, 24, 0.85);
    
    --font-display: 'Instrument Serif', Georgia, serif;
    --font-main: 'Inter', system-ui, -apple-system, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 1. ALMANAC (Classic Press, Warm Paper, Light) ── */
[data-theme="almanac"] {
    --bg-main: #f4f1ea;
    --bg-sidebar: #e9e4d7;
    --bg-card: #ffffff;
    --bg-card-hover: #fbf9f5;
    --bg-deep: #dfd8c8;
    --bg-deeper: #d4ccb8;
    
    --text-primary: #1c1917;
    --text-secondary: #57534e;
    --text-muted: #8c857b;
    
    --primary: #d97706;
    --primary-hover: #b45309;
    --primary-glow: rgba(217, 119, 6, 0.25);
    
    --accent-blue: #2563eb;
    --accent-green: #16a34a;
    --accent-rose: #dc2626;
    --accent-amber: #d97706;
    --accent-sky: #0284c7;
    --accent-purple: #9333ea;
    
    --border-color: rgba(0, 0, 0, 0.12);
    --border-hover: rgba(217, 119, 6, 0.5);
    --input-bg: #ffffff;
    
    --font-display: 'Newsreader', 'Cormorant Garamond', Georgia, serif;
    --font-main: 'Literata', 'PT Serif', serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: light;
}

/* ── 2. AURORA (Polar Night, Cosmic Violet & Emerald) ── */
[data-theme="aurora"] {
    --bg-main: #0b0f19;
    --bg-sidebar: #080b13;
    --bg-card: rgba(19, 27, 46, 0.9);
    --bg-card-hover: rgba(26, 37, 63, 0.98);
    --bg-deep: #05070d;
    --bg-deeper: #030408;
    
    --text-primary: #f8fafc;
    --text-secondary: #94a3b8;
    --text-muted: #64748b;
    
    --primary: #a855f7;
    --primary-hover: #9333ea;
    --primary-glow: rgba(168, 85, 247, 0.35);
    
    --accent-blue: #38bdf8;
    --accent-green: #34d399;
    --accent-rose: #fb7185;
    --accent-amber: #fbbf24;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(168, 85, 247, 0.18);
    --border-hover: rgba(168, 85, 247, 0.55);
    --input-bg: rgba(13, 19, 33, 0.85);
    
    --font-display: 'Syne', 'Plus Jakarta Sans', sans-serif;
    --font-main: 'Plus Jakarta Sans', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 3. BRUTAL (Neo-Brutalist Pitch Black & Sky Blue) ── */
[data-theme="brutal"] {
    --bg-main: #0a0a0c;
    --bg-sidebar: #050507;
    --bg-card: rgba(20, 20, 24, 0.95);
    --bg-card-hover: rgba(28, 28, 34, 1);
    --bg-deep: #000000;
    --bg-deeper: #000000;
    
    --text-primary: #ffffff;
    --text-secondary: #a3a3a3;
    --text-muted: #737373;
    
    --primary: #38bdf8;
    --primary-hover: #0ea5e9;
    --primary-glow: rgba(56, 189, 248, 0.4);
    
    --accent-blue: #38bdf8;
    --accent-green: #4ade80;
    --accent-rose: #f87171;
    --accent-amber: #facc15;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(56, 189, 248, 0.22);
    --border-hover: rgba(56, 189, 248, 0.6);
    --input-bg: rgba(15, 15, 18, 0.9);
    
    --font-display: 'Bricolage Grotesque', 'Space Grotesk', sans-serif;
    --font-main: 'Space Grotesk', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 4. CARNIVAL (Festival Crimson & Deep Wine) ── */
[data-theme="carnival"] {
    --bg-main: #140a0e;
    --bg-sidebar: #0d0609;
    --bg-card: rgba(34, 16, 23, 0.92);
    --bg-card-hover: rgba(45, 24, 32, 0.98);
    --bg-deep: #080305;
    --bg-deeper: #050203;
    
    --text-primary: #fff1f2;
    --text-secondary: #fda4af;
    --text-muted: #9f1239;
    
    --primary: #f43f5e;
    --primary-hover: #e11d48;
    --primary-glow: rgba(244, 63, 94, 0.35);
    
    --accent-blue: #38bdf8;
    --accent-green: #34d399;
    --accent-rose: #f43f5e;
    --accent-amber: #fbbf24;
    --accent-sky: #0ea5e9;
    --accent-purple: #e879f9;
    
    --border-color: rgba(244, 63, 94, 0.2);
    --border-hover: rgba(244, 63, 94, 0.55);
    --input-bg: rgba(22, 10, 15, 0.85);
    
    --font-display: 'Playfair Display', Georgia, serif;
    --font-main: 'Manrope', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 5. COBALT (Electric Deep Cobalt Blue) ── */
[data-theme="cobalt"] {
    --bg-main: #070d1e;
    --bg-sidebar: #040813;
    --bg-card: rgba(14, 24, 54, 0.92);
    --bg-card-hover: rgba(20, 34, 74, 0.98);
    --bg-deep: #03060d;
    --bg-deeper: #020308;
    
    --text-primary: #f0f6ff;
    --text-secondary: #93c5fd;
    --text-muted: #60a5fa;
    
    --primary: #3b82f6;
    --primary-hover: #2563eb;
    --primary-glow: rgba(59, 130, 246, 0.35);
    
    --accent-blue: #60a5fa;
    --accent-green: #34d399;
    --accent-rose: #f87171;
    --accent-amber: #fbbf24;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(59, 130, 246, 0.22);
    --border-hover: rgba(59, 130, 246, 0.6);
    --input-bg: rgba(10, 18, 42, 0.85);
    
    --font-display: 'Archivo', 'Space Grotesk', sans-serif;
    --font-main: 'Inter', system-ui, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 6. CORAL (Marine Slate & Sunburst Coral) ── */
[data-theme="coral"] {
    --bg-main: #09131a;
    --bg-sidebar: #050b10;
    --bg-card: rgba(17, 34, 46, 0.92);
    --bg-card-hover: rgba(23, 46, 62, 0.98);
    --bg-deep: #04080c;
    --bg-deeper: #020406;
    
    --text-primary: #f0fdfa;
    --text-secondary: #99f6e4;
    --text-muted: #5eead4;
    
    --primary: #f97316;
    --primary-hover: #ea580c;
    --primary-glow: rgba(249, 115, 22, 0.35);
    
    --accent-blue: #38bdf8;
    --accent-green: #2dd4bf;
    --accent-rose: #fb7185;
    --accent-amber: #f97316;
    --accent-sky: #0ea5e9;
    --accent-purple: #c084fc;
    
    --border-color: rgba(249, 115, 22, 0.2);
    --border-hover: rgba(249, 115, 22, 0.55);
    --input-bg: rgba(11, 23, 32, 0.85);
    
    --font-display: 'Space Grotesk', sans-serif;
    --font-main: 'Plus Jakarta Sans', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 7. EDITORIAL (Ivory & Royal Ultramarine, Light) ── */
[data-theme="editorial"] {
    --bg-main: #f8f6f0;
    --bg-sidebar: #ede9de;
    --bg-card: #ffffff;
    --bg-card-hover: #fcfbf8;
    --bg-deep: #e2ddd0;
    --bg-deeper: #d7d1c1;
    
    --text-primary: #0f172a;
    --text-secondary: #475569;
    --text-muted: #64748b;
    
    --primary: #4f46e5;
    --primary-hover: #4338ca;
    --primary-glow: rgba(79, 70, 229, 0.25);
    
    --accent-blue: #2563eb;
    --accent-green: #16a34a;
    --accent-rose: #dc2626;
    --accent-amber: #d97706;
    --accent-sky: #0284c7;
    --accent-purple: #7c3aed;
    
    --border-color: rgba(0, 0, 0, 0.1);
    --border-hover: rgba(79, 70, 229, 0.5);
    --input-bg: #ffffff;
    
    --font-display: 'Cormorant Garamond', 'Playfair Display', serif;
    --font-main: 'Newsreader', Georgia, serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: light;
}

/* ── 8. GARDEN (Forest Botanical & Evergreen) ── */
[data-theme="garden"] {
    --bg-main: #071510;
    --bg-sidebar: #040e0a;
    --bg-card: rgba(15, 36, 28, 0.92);
    --bg-card-hover: rgba(20, 48, 37, 0.98);
    --bg-deep: #030a07;
    --bg-deeper: #020604;
    
    --text-primary: #f0fdf4;
    --text-secondary: #86efac;
    --text-muted: #4ade80;
    
    --primary: #22c55e;
    --primary-hover: #16a34a;
    --primary-glow: rgba(34, 197, 94, 0.35);
    
    --accent-blue: #38bdf8;
    --accent-green: #22c55e;
    --accent-rose: #f87171;
    --accent-amber: #facc15;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(34, 197, 94, 0.2);
    --border-hover: rgba(34, 197, 94, 0.55);
    --input-bg: rgba(10, 25, 19, 0.85);
    
    --font-display: 'Libre Caslon Text', Georgia, serif;
    --font-main: 'Plus Jakarta Sans', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 9. HUM (Espresso Stone & Terracotta) ── */
[data-theme="hum"] {
    --bg-main: #141211;
    --bg-sidebar: #0d0c0b;
    --bg-card: rgba(33, 30, 28, 0.92);
    --bg-card-hover: rgba(43, 39, 36, 0.98);
    --bg-deep: #080707;
    --bg-deeper: #040404;
    
    --text-primary: #fafaf9;
    --text-secondary: #a8a29e;
    --text-muted: #78716c;
    
    --primary: #ea580c;
    --primary-hover: #c2410c;
    --primary-glow: rgba(234, 88, 12, 0.35);
    
    --accent-blue: #38bdf8;
    --accent-green: #34d399;
    --accent-rose: #fb7185;
    --accent-amber: #f59e0b;
    --accent-sky: #0ea5e9;
    --accent-purple: #c084fc;
    
    --border-color: rgba(234, 88, 12, 0.2);
    --border-hover: rgba(234, 88, 12, 0.55);
    --input-bg: rgba(22, 20, 18, 0.85);
    
    --font-display: 'Literata', 'PT Serif', serif;
    --font-main: 'Inter', system-ui, sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 10. MIDNIGHT (Cyber Indigo & Silver Glow) ── */
[data-theme="midnight"] {
    --bg-main: #080914;
    --bg-sidebar: #05050d;
    --bg-card: rgba(16, 19, 40, 0.92);
    --bg-card-hover: rgba(23, 27, 56, 0.98);
    --bg-deep: #030308;
    --bg-deeper: #020205;
    
    --text-primary: #e0e7ff;
    --text-secondary: #a5b4fc;
    --text-muted: #818cf8;
    
    --primary: #818cf8;
    --primary-hover: #6366f1;
    --primary-glow: rgba(129, 140, 248, 0.35);
    
    --accent-blue: #60a5fa;
    --accent-green: #34d399;
    --accent-rose: #f87171;
    --accent-amber: #fbbf24;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(129, 140, 248, 0.22);
    --border-hover: rgba(129, 140, 248, 0.6);
    --input-bg: rgba(11, 13, 28, 0.85);
    
    --font-display: 'Syne', 'Plus Jakarta Sans', sans-serif;
    --font-main: 'Plus Jakarta Sans', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 11. NEWSPRINT (Financial Masthead Red, Light) ── */
[data-theme="newsprint"] {
    --bg-main: #f5f2eb;
    --bg-sidebar: #e7e2d6;
    --bg-card: #ffffff;
    --bg-card-hover: #fcfbf9;
    --bg-deep: #dad3c3;
    --bg-deeper: #cec5b2;
    
    --text-primary: #111827;
    --text-secondary: #4b5563;
    --text-muted: #6b7280;
    
    --primary: #dc2626;
    --primary-hover: #b91c1c;
    --primary-glow: rgba(220, 38, 38, 0.25);
    
    --accent-blue: #2563eb;
    --accent-green: #16a34a;
    --accent-rose: #dc2626;
    --accent-amber: #d97706;
    --accent-sky: #0284c7;
    --accent-purple: #9333ea;
    
    --border-color: rgba(0, 0, 0, 0.12);
    --border-hover: rgba(220, 38, 38, 0.5);
    --input-bg: #ffffff;
    
    --font-display: 'PT Serif', 'Newsreader', Georgia, serif;
    --font-main: 'Newsreader', Georgia, serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: light;
}

/* ── 12. SPECIMEN (Proof-Sheet Clean Gray & Laser Red, Light) ── */
[data-theme="specimen"] {
    --bg-main: #f4f4f6;
    --bg-sidebar: #e5e5eb;
    --bg-card: #ffffff;
    --bg-card-hover: #fafafc;
    --bg-deep: #d8d8e0;
    --bg-deeper: #ccccd6;
    
    --text-primary: #09090b;
    --text-secondary: #52525b;
    --text-muted: #71717a;
    
    --primary: #ef4444;
    --primary-hover: #dc2626;
    --primary-glow: rgba(239, 68, 68, 0.25);
    
    --accent-blue: #3b82f6;
    --accent-green: #22c55e;
    --accent-rose: #ef4444;
    --accent-amber: #f59e0b;
    --accent-sky: #0ea5e9;
    --accent-purple: #a855f7;
    
    --border-color: rgba(0, 0, 0, 0.1);
    --border-hover: rgba(239, 68, 68, 0.5);
    --input-bg: #ffffff;
    
    --font-display: 'Bricolage Grotesque', sans-serif;
    --font-main: 'JetBrains Mono', 'Inter', monospace;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: light;
}

/* ── 13. SPORT (Stadium Charcoal & Blazing Orange) ── */
[data-theme="sport"] {
    --bg-main: #111114;
    --bg-sidebar: #09090b;
    --bg-card: rgba(27, 27, 34, 0.95);
    --bg-card-hover: rgba(36, 36, 46, 1);
    --bg-deep: #050506;
    --bg-deeper: #000000;
    
    --text-primary: #f9fafb;
    --text-secondary: #9ca3af;
    --text-muted: #6b7280;
    
    --primary: #ff6b00;
    --primary-hover: #e05e00;
    --primary-glow: rgba(255, 107, 0, 0.4);
    
    --accent-blue: #38bdf8;
    --accent-green: #22c55e;
    --accent-rose: #f43f5e;
    --accent-amber: #ff6b00;
    --accent-sky: #0ea5e9;
    --accent-purple: #c084fc;
    
    --border-color: rgba(255, 107, 0, 0.25);
    --border-hover: rgba(255, 107, 0, 0.6);
    --input-bg: rgba(18, 18, 22, 0.9);
    
    --font-display: 'Oswald', 'Archivo', sans-serif;
    --font-main: 'Manrope', 'Inter', sans-serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── 14. STUDIO (Gallery Linen & Warm Umber, Light) ── */
[data-theme="studio"] {
    --bg-main: #f7f5f0;
    --bg-sidebar: #eae5d9;
    --bg-card: #ffffff;
    --bg-card-hover: #fdfcf9;
    --bg-deep: #ddd6c5;
    --bg-deeper: #cfc6b0;
    
    --text-primary: #292524;
    --text-secondary: #57534e;
    --text-muted: #78716c;
    
    --primary: #78350f;
    --primary-hover: #92400e;
    --primary-glow: rgba(120, 53, 15, 0.25);
    
    --accent-blue: #2563eb;
    --accent-green: #16a34a;
    --accent-rose: #dc2626;
    --accent-amber: #d97706;
    --accent-sky: #0284c7;
    --accent-purple: #9333ea;
    
    --border-color: rgba(0, 0, 0, 0.12);
    --border-hover: rgba(120, 53, 15, 0.5);
    --input-bg: #ffffff;
    
    --font-display: 'Playfair Display', Georgia, serif;
    --font-main: 'Literata', Georgia, serif;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: light;
}

/* ── 15. TERMINAL (CRT Phosphor Matrix Green) ── */
[data-theme="terminal"] {
    --bg-main: #050907;
    --bg-sidebar: #020504;
    --bg-card: rgba(11, 20, 16, 0.95);
    --bg-card-hover: rgba(16, 30, 24, 1);
    --bg-deep: #010302;
    --bg-deeper: #000000;
    
    --text-primary: #86efac;
    --text-secondary: #4ade80;
    --text-muted: #22c55e;
    
    --primary: #22c55e;
    --primary-hover: #16a34a;
    --primary-glow: rgba(34, 197, 94, 0.4);
    
    --accent-blue: #67e8f9;
    --accent-green: #22c55e;
    --accent-rose: #f87171;
    --accent-amber: #facc15;
    --accent-sky: #38bdf8;
    --accent-purple: #c084fc;
    
    --border-color: rgba(34, 197, 94, 0.28);
    --border-hover: rgba(34, 197, 94, 0.65);
    --input-bg: rgba(8, 15, 12, 0.9);
    
    --font-display: 'JetBrains Mono', monospace;
    --font-main: 'JetBrains Mono', monospace;
    --font-mono: 'JetBrains Mono', monospace;
    
    color-scheme: dark;
}

/* ── THEME CARDS & TRANSITION EFFECTS ── */
.theme-card {
    background: var(--bg-card);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg, 14px);
    padding: 1.25rem;
    cursor: pointer;
    transition: transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.2s ease, box-shadow 0.2s ease;
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.theme-card:hover {
    transform: translateY(-2px);
    border-color: var(--primary);
    box-shadow: 0 8px 24px var(--primary-glow);
}

.theme-card.active {
    border-color: var(--primary);
    box-shadow: 0 0 0 2px var(--primary), 0 8px 24px var(--primary-glow);
}

.theme-card.popping {
    animation: themeCardPop 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes themeCardPop {
    0% { transform: scale(1); }
    50% { transform: scale(1.06); }
    100% { transform: scale(1); }
}

.theme-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.theme-card-title {
    font-weight: 700;
    font-size: 1rem;
    color: var(--text-primary);
}

.theme-card-swatches {
    display: flex;
    gap: 8px;
    align-items: center;
}

.theme-swatch {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
}

[data-theme="almanac"] .theme-swatch,
[data-theme="editorial"] .theme-swatch,
[data-theme="newsprint"] .theme-swatch,
[data-theme="specimen"] .theme-swatch,
[data-theme="studio"] .theme-swatch {
    border-color: rgba(0, 0, 0, 0.15);
}
