/* Généré automatiquement par scripts/build-themes.mjs depuis themes/*.json. Ne pas modifier à la main. */

/* ---------- Éditorial ---------- */
:root[data-theme="editorial"] { color-scheme: light; --bg: #FAF7F0; --paper: #FFFDF9; --forest: #7C2D12; --forest-deep: #5C1F0A; --sage: #F1E8DC; --sage-dark: #9A6B54; --terracotta: #B45309; --peach: #F7E6D8; --ink: #1C1917; --muted: #57534E; --faint: #78716C; --border: #D6CEC2; --danger: #991B1B; --shadow: none; --radius-card: 8px; --radius-control: 6px; --radius-pill: 6px; --font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-display: Georgia, 'Times New Roman', serif; }
@media (prefers-color-scheme: dark) { :root[data-theme="editorial"] { color-scheme: dark; --bg: #141210; --paper: #1E1B18; --forest: #E08E6D; --forest-deep: #F0A88A; --sage: #2C241E; --sage-dark: #B37A5E; --terracotta: #D97706; --peach: #332219; --ink: #F5F0E8; --muted: #B8B0A4; --faint: #8C8478; --border: #36302A; --danger: #F87171; --shadow: none; --dk-1b221d: #1E1B18; --dk-262b24: #1E1B18; --dk-1f2c23: #1E1B18; --dk-1f2722: color-mix(in srgb, #1E1B18 55%, #2C241E); --dk-2a302c: color-mix(in srgb, #1E1B18 55%, #2C241E); --dk-26302a: color-mix(in srgb, #1E1B18 55%, #2C241E); --dk-26332a: #2C241E; --dk-2a3229: #2C241E; --dk-2c3a30: #2C241E; --dk-2a332c: #2C241E; --dk-24372b: #2C241E; --dk-26362b: #2C241E; --dk-2e3a31: #36302A; --dk-3a453d: #36302A; --dk-3a4038: #36302A; --dk-33443a: #36302A; --dk-46534a: color-mix(in srgb, #36302A 50%, #B8B0A4); --dk-5d6b60: color-mix(in srgb, #36302A 50%, #B8B0A4); --dk-2f4a3a: #7C2D12; --dk-b8d4be: color-mix(in srgb, #E08E6D 70%, #F5F0E8); --dk-a9c2af: color-mix(in srgb, #E08E6D 70%, #F5F0E8); --dk-cfe3d4: color-mix(in srgb, #E08E6D 70%, #F5F0E8); --dk-8fbf9c: color-mix(in srgb, #E08E6D 70%, #F5F0E8); --dk-d9ded6: color-mix(in srgb, #E08E6D 70%, #F5F0E8); --dk-3a2a22: #332219; --dk-3a2b24: #332219; --dk-33261f: #332219; --dk-2c221c: #332219; --dk-2a211c: #332219; --dk-3b2d25: #332219; --dk-3e2e26: #332219; --dk-3b2522: #332219; --dk-e7b9a3: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-f1d7cb: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-ebcbb9: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-ebc9b7: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-e9a98f: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-e8d5ca: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-e2c1b3: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-c9ae9f: color-mix(in srgb, #D97706 55%, #F5F0E8); --dk-102016: #141210; } }

/* ---------- Bento ---------- */
:root[data-theme="bento"] { color-scheme: light; --bg: #EEF2F7; --paper: #FFFFFF; --forest: #1D4ED8; --forest-deep: #1E40AF; --sage: #DBEAFE; --sage-dark: #3B82F6; --terracotta: #EA580C; --peach: #FFEDD5; --ink: #0F172A; --muted: #475569; --faint: #64748B; --border: #CBD5E1; --danger: #DC2626; --shadow: 0 4px 18px rgba(15, 23, 42, .06); --radius-card: 24px; --radius-control: 16px; --radius-pill: 99px; --font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-display: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }
@media (prefers-color-scheme: dark) { :root[data-theme="bento"] { color-scheme: dark; --bg: #0F172A; --paper: #1E293B; --forest: #60A5FA; --forest-deep: #93C5FD; --sage: #1E3A5F; --sage-dark: #3B82F6; --terracotta: #FB923C; --peach: #431407; --ink: #F8FAFC; --muted: #94A3B8; --faint: #64748B; --border: #334155; --danger: #F87171; --shadow: 0 8px 24px rgba(0, 0, 0, .3); --dk-1b221d: #1E293B; --dk-262b24: #1E293B; --dk-1f2c23: #1E293B; --dk-1f2722: color-mix(in srgb, #1E293B 55%, #1E3A5F); --dk-2a302c: color-mix(in srgb, #1E293B 55%, #1E3A5F); --dk-26302a: color-mix(in srgb, #1E293B 55%, #1E3A5F); --dk-26332a: #1E3A5F; --dk-2a3229: #1E3A5F; --dk-2c3a30: #1E3A5F; --dk-2a332c: #1E3A5F; --dk-24372b: #1E3A5F; --dk-26362b: #1E3A5F; --dk-2e3a31: #334155; --dk-3a453d: #334155; --dk-3a4038: #334155; --dk-33443a: #334155; --dk-46534a: color-mix(in srgb, #334155 50%, #94A3B8); --dk-5d6b60: color-mix(in srgb, #334155 50%, #94A3B8); --dk-2f4a3a: #1D4ED8; --dk-b8d4be: color-mix(in srgb, #60A5FA 70%, #F8FAFC); --dk-a9c2af: color-mix(in srgb, #60A5FA 70%, #F8FAFC); --dk-cfe3d4: color-mix(in srgb, #60A5FA 70%, #F8FAFC); --dk-8fbf9c: color-mix(in srgb, #60A5FA 70%, #F8FAFC); --dk-d9ded6: color-mix(in srgb, #60A5FA 70%, #F8FAFC); --dk-3a2a22: #431407; --dk-3a2b24: #431407; --dk-33261f: #431407; --dk-2c221c: #431407; --dk-2a211c: #431407; --dk-3b2d25: #431407; --dk-3e2e26: #431407; --dk-3b2522: #431407; --dk-e7b9a3: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-f1d7cb: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-ebcbb9: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-ebc9b7: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-e9a98f: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-e8d5ca: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-e2c1b3: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-c9ae9f: color-mix(in srgb, #FB923C 55%, #F8FAFC); --dk-102016: #0F172A; } }

/* ---------- Nuit Électrique ---------- */
:root[data-theme="neon"] { color-scheme: dark; --bg: #0B0F17; --paper: #131A26; --forest: #34D399; --forest-deep: #10B981; --sage: #142926; --sage-dark: #2DD4BF; --terracotta: #38BDF8; --peach: #162436; --ink: #ECFDF5; --muted: #9CA3AF; --faint: #6B7280; --border: #1F2937; --danger: #F87171; --shadow: 0 10px 30px rgba(0, 0, 0, .45); --radius-card: 20px; --radius-control: 14px; --radius-pill: 99px; --font-body: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-display: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; }
@media (prefers-color-scheme: dark) { :root[data-theme="neon"] { color-scheme: dark; --bg: #0B0F17; --paper: #131A26; --forest: #34D399; --forest-deep: #10B981; --sage: #142926; --sage-dark: #2DD4BF; --terracotta: #38BDF8; --peach: #162436; --ink: #ECFDF5; --muted: #9CA3AF; --faint: #6B7280; --border: #1F2937; --danger: #F87171; --shadow: 0 10px 30px rgba(0, 0, 0, .45); --dk-1b221d: #131A26; --dk-262b24: #131A26; --dk-1f2c23: #131A26; --dk-1f2722: color-mix(in srgb, #131A26 55%, #142926); --dk-2a302c: color-mix(in srgb, #131A26 55%, #142926); --dk-26302a: color-mix(in srgb, #131A26 55%, #142926); --dk-26332a: #142926; --dk-2a3229: #142926; --dk-2c3a30: #142926; --dk-2a332c: #142926; --dk-24372b: #142926; --dk-26362b: #142926; --dk-2e3a31: #1F2937; --dk-3a453d: #1F2937; --dk-3a4038: #1F2937; --dk-33443a: #1F2937; --dk-46534a: color-mix(in srgb, #1F2937 50%, #9CA3AF); --dk-5d6b60: color-mix(in srgb, #1F2937 50%, #9CA3AF); --dk-2f4a3a: #047857; --dk-b8d4be: color-mix(in srgb, #34D399 70%, #ECFDF5); --dk-a9c2af: color-mix(in srgb, #34D399 70%, #ECFDF5); --dk-cfe3d4: color-mix(in srgb, #34D399 70%, #ECFDF5); --dk-8fbf9c: color-mix(in srgb, #34D399 70%, #ECFDF5); --dk-d9ded6: color-mix(in srgb, #34D399 70%, #ECFDF5); --dk-3a2a22: #162436; --dk-3a2b24: #162436; --dk-33261f: #162436; --dk-2c221c: #162436; --dk-2a211c: #162436; --dk-3b2d25: #162436; --dk-3e2e26: #162436; --dk-3b2522: #162436; --dk-e7b9a3: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-f1d7cb: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-ebcbb9: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-ebc9b7: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-e9a98f: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-e8d5ca: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-e2c1b3: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-c9ae9f: color-mix(in srgb, #38BDF8 55%, #ECFDF5); --dk-102016: #0B0F17; } }

/* Variantes de composants par thème */
:root[data-theme="editorial"] h1, :root[data-theme="editorial"] h2, :root[data-theme="editorial"] .page-title { font-family: var(--font-display); font-weight: 700; letter-spacing: -.02em; }
:root[data-theme="editorial"] .panel, :root[data-theme="editorial"] .goal-card, :root[data-theme="editorial"] .recipe { border: 1px solid var(--border); box-shadow: none; }
:root[data-theme="editorial"] .hero-card, :root[data-theme="editorial"] .budget-panel { background: var(--paper); border: 1px solid var(--border); }
:root[data-theme="editorial"] .nav-shell { padding: 0; background: var(--paper); border-top: 1px solid var(--border); }
:root[data-theme="editorial"] .nav { max-width: 520px; border-radius: 0; box-shadow: none; border: 0; padding-bottom: max(6px, env(safe-area-inset-bottom)); }
:root[data-theme="editorial"] .fab { border-radius: var(--radius-control); }

:root[data-theme="bento"] .panel, :root[data-theme="bento"] .goal-card, :root[data-theme="bento"] .recipe { border: 1px solid var(--border); }
:root[data-theme="bento"] .nav { border: 1px solid var(--border); }

:root[data-theme="neon"] .button:not(.secondary):not(.lime):not(.ghost):not(.text-button):not(.chip):not(.danger) { color: #06281E; }
:root[data-theme="neon"] .button.secondary, :root[data-theme="neon"] .button.lime, :root[data-theme="neon"] .button.ghost, :root[data-theme="neon"] .button.text-button, :root[data-theme="neon"] .icon-button, :root[data-theme="neon"] .button.chip { color: var(--forest); }
:root[data-theme="neon"] .button.chip.active { background: #10B981; color: #06281E; }
:root[data-theme="neon"] .panel, :root[data-theme="neon"] .goal-card, :root[data-theme="neon"] .recipe, :root[data-theme="neon"] .nav { border: 1px solid var(--border); }
:root[data-theme="neon"] .hero-card, :root[data-theme="neon"] .budget-panel, :root[data-theme="neon"] .wins-card { background: linear-gradient(135deg, #13222A, #161F30); border: 1px solid #223548; }
:root[data-theme="neon"] .fab { background: #10B981; color: #06281E; }
:root[data-theme="neon"] .day-chip.selected, :root[data-theme="neon"] .bottom-cta { background: #10B981; color: #06281E; }
:root[data-theme="neon"] .sky-morning, :root[data-theme="neon"] .sky-day, :root[data-theme="neon"] .sky-dusk, :root[data-theme="neon"] .sky-night { --sky-top: #0E1726; --sky-mid: #162235; --hill-far: #1B2D38; --hill-near: #131A26; --sky-ink: #ECFDF5; --sky-soft: #9CA3AF; --sun: #38BDF8; }
:root[data-theme="neon"] .fridge-door { background: #0F1622; box-shadow: inset 0 0 0 1px #1F2937; }
:root[data-theme="neon"] .pinned, :root[data-theme="neon"] .magnet { background: var(--paper); border: 1px solid var(--border); box-shadow: none; }
:root[data-theme="neon"] .pad { background: #161E2B; border: 1px solid var(--border); box-shadow: none; }
:root[data-theme="neon"] .pad-lines { color: var(--ink); background: repeating-linear-gradient(180deg, transparent 0 29px, #243044 29px 30px); }
:root[data-theme="neon"] .note { background: #142926; --note-ink: #A7F3D0; box-shadow: none; }
:root[data-theme="neon"] .note.partner { background: #162436; --note-ink: #BAE6FD; box-shadow: none; }
:root[data-theme="neon"] .note-text, :root[data-theme="neon"] .note:not(.partner) .note-text { color: var(--ink); }
