:root {
  --theme-font-sans: "Inter Variable", "Inter", "Segoe UI", sans-serif;
  --theme-font-display: "Inter Variable", "Inter", "Segoe UI", sans-serif;

  --theme-brand-primary: #d96d2f;
  --theme-brand-primary-strong: #ef7c39;
  --theme-brand-secondary: #76875d;
  --theme-brand-soft: #f6c7ab;

  --theme-bg-top: #171613;
  --theme-bg-mid: #11100f;
  --theme-bg-bottom: #0b0a09;
  --theme-surface-dark: rgba(18, 17, 16, 0.96);
  --theme-surface-dark-strong: rgba(28, 27, 25, 0.92);
  --theme-surface-light: #fbf7ef;
  --theme-surface-soft: #efe4d2;
  --theme-surface-overlay: rgba(255, 255, 255, 0.05);

  --theme-text-primary: #fbf7ef;
  --theme-text-secondary: #d6d3d1;
  --theme-text-muted: #a8a29e;
  --theme-text-dark: #161513;
  --theme-text-dark-muted: #57534e;

  --theme-border-light: rgba(255, 255, 255, 0.1);
  --theme-border-soft: rgba(255, 255, 255, 0.15);
  --theme-border-brand: rgba(217, 109, 47, 0.3);
  --theme-border-light-panel: rgba(255, 255, 255, 0.4);

  --theme-shadow-dark: 0 24px 60px rgba(0, 0, 0, 0.25);
  --theme-shadow-light: 0 30px 80px rgba(0, 0, 0, 0.28);
  --theme-shadow-soft: 0 12px 30px rgba(0, 0, 0, 0.16);

  --theme-radius-sm: 0.75rem;
  --theme-radius-md: 1rem;
  --theme-radius-lg: 1.5rem;
  --theme-radius-xl: 2rem;
  --theme-radius-2xl: 2.5rem;
  --theme-radius-pill: 9999px;

  --theme-space-section-y: 4rem;
  --theme-space-section-y-lg: 6rem;
  --theme-space-card: 1.75rem;
  --theme-space-card-tight: 1.25rem;
  --theme-space-container-x: 1.5rem;

  --theme-container-max: 80rem;
  --theme-transition-fast: 160ms ease;
  --theme-transition-base: 220ms ease;

  --theme-hero-glow: radial-gradient(circle at top, rgba(239, 228, 210, 0.2), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(217, 109, 47, 0.22), transparent 34%),
    radial-gradient(circle at top right, rgba(118, 135, 93, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="clay"] {
  --theme-brand-primary: #d96d2f;
  --theme-brand-primary-strong: #ef7c39;
  --theme-brand-secondary: #76875d;
  --theme-brand-soft: #f6c7ab;
  --theme-bg-top: #171613;
  --theme-bg-mid: #11100f;
  --theme-bg-bottom: #0b0a09;
  --theme-surface-light: #fbf7ef;
  --theme-surface-soft: #efe4d2;
  --theme-text-primary: #fbf7ef;
  --theme-text-secondary: #d6d3d1;
  --theme-text-muted: #a8a29e;
  --theme-text-dark: #161513;
  --theme-text-dark-muted: #57534e;
  --theme-border-brand: rgba(217, 109, 47, 0.3);
  --theme-hero-glow: radial-gradient(circle at top, rgba(239, 228, 210, 0.2), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(217, 109, 47, 0.22), transparent 34%),
    radial-gradient(circle at top right, rgba(118, 135, 93, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="ocean"] {
  --theme-brand-primary: #38bdf8;
  --theme-brand-primary-strong: #7dd3fc;
  --theme-brand-secondary: #0f766e;
  --theme-brand-soft: #bae6fd;
  --theme-bg-top: #07131b;
  --theme-bg-mid: #0a1722;
  --theme-bg-bottom: #041018;
  --theme-surface-light: #f4fbff;
  --theme-surface-soft: #d7f1fb;
  --theme-text-primary: #ecfeff;
  --theme-text-secondary: #cbeaf3;
  --theme-text-muted: #8db4c0;
  --theme-text-dark: #0b1620;
  --theme-text-dark-muted: #4a6572;
  --theme-border-brand: rgba(56, 189, 248, 0.3);
  --theme-hero-glow: radial-gradient(circle at top, rgba(125, 211, 252, 0.18), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(56, 189, 248, 0.18), transparent 34%),
    radial-gradient(circle at top right, rgba(15, 118, 110, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="forest"] {
  --theme-brand-primary: #84cc16;
  --theme-brand-primary-strong: #a3e635;
  --theme-brand-secondary: #15803d;
  --theme-brand-soft: #d9f99d;
  --theme-bg-top: #0b120b;
  --theme-bg-mid: #10180f;
  --theme-bg-bottom: #071008;
  --theme-surface-light: #f6fcea;
  --theme-surface-soft: #e5f3cd;
  --theme-text-primary: #f7fee7;
  --theme-text-secondary: #d9efc4;
  --theme-text-muted: #a2b995;
  --theme-text-dark: #16210f;
  --theme-text-dark-muted: #55654b;
  --theme-border-brand: rgba(132, 204, 22, 0.3);
  --theme-hero-glow: radial-gradient(circle at top, rgba(217, 249, 157, 0.16), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(132, 204, 22, 0.16), transparent 34%),
    radial-gradient(circle at top right, rgba(21, 128, 61, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="sunset"] {
  --theme-brand-primary: #f97316;
  --theme-brand-primary-strong: #fb923c;
  --theme-brand-secondary: #db2777;
  --theme-brand-soft: #fdba74;
  --theme-bg-top: #1b0d0b;
  --theme-bg-mid: #160c12;
  --theme-bg-bottom: #11070b;
  --theme-surface-light: #fff7ed;
  --theme-surface-soft: #ffe4cc;
  --theme-text-primary: #fff7ed;
  --theme-text-secondary: #ffd9bf;
  --theme-text-muted: #d4a790;
  --theme-text-dark: #25140d;
  --theme-text-dark-muted: #7b5a4a;
  --theme-border-brand: rgba(249, 115, 22, 0.32);
  --theme-hero-glow: radial-gradient(circle at top, rgba(253, 186, 116, 0.18), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(249, 115, 22, 0.2), transparent 34%),
    radial-gradient(circle at top right, rgba(219, 39, 119, 0.14), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="midnight"] {
  --theme-brand-primary: #8b5cf6;
  --theme-brand-primary-strong: #a78bfa;
  --theme-brand-secondary: #2563eb;
  --theme-brand-soft: #c4b5fd;
  --theme-bg-top: #0d1020;
  --theme-bg-mid: #0b1024;
  --theme-bg-bottom: #070b18;
  --theme-surface-light: #f5f3ff;
  --theme-surface-soft: #e8e1ff;
  --theme-text-primary: #f5f3ff;
  --theme-text-secondary: #ddd6fe;
  --theme-text-muted: #a8a0c6;
  --theme-text-dark: #17152a;
  --theme-text-dark-muted: #59557a;
  --theme-border-brand: rgba(139, 92, 246, 0.3);
  --theme-hero-glow: radial-gradient(circle at top, rgba(196, 181, 253, 0.18), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(139, 92, 246, 0.18), transparent 34%),
    radial-gradient(circle at top right, rgba(37, 99, 235, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="court"] {
  --theme-brand-primary: #facc15;
  --theme-brand-primary-strong: #fde047;
  --theme-brand-secondary: #16a34a;
  --theme-brand-soft: #fef08a;
  --theme-bg-top: #13160c;
  --theme-bg-mid: #10140d;
  --theme-bg-bottom: #0a0e08;
  --theme-surface-light: #fefce8;
  --theme-surface-soft: #f8f1b9;
  --theme-text-primary: #fefce8;
  --theme-text-secondary: #ede7b8;
  --theme-text-muted: #b9b27c;
  --theme-text-dark: #20210f;
  --theme-text-dark-muted: #6c6a42;
  --theme-border-brand: rgba(250, 204, 21, 0.35);
  --theme-hero-glow: radial-gradient(circle at top, rgba(254, 240, 138, 0.16), transparent 45%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(250, 204, 21, 0.16), transparent 34%),
    radial-gradient(circle at top right, rgba(22, 163, 74, 0.16), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="paper"] {
  --theme-brand-primary: #b45309;
  --theme-brand-primary-strong: #d97706;
  --theme-brand-secondary: #475569;
  --theme-brand-soft: #fed7aa;
  --theme-bg-top: #fffdf8;
  --theme-bg-mid: #faf7ef;
  --theme-bg-bottom: #f3eee3;
  --theme-surface-dark: rgba(255, 251, 243, 0.96);
  --theme-surface-dark-strong: rgba(250, 244, 233, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #f5ebdc;
  --theme-surface-overlay: rgba(17, 24, 39, 0.04);
  --theme-text-primary: #1f2937;
  --theme-text-secondary: #4b5563;
  --theme-text-muted: #6b7280;
  --theme-text-dark: #1f2937;
  --theme-text-dark-muted: #6b7280;
  --theme-border-light: rgba(15, 23, 42, 0.1);
  --theme-border-soft: rgba(15, 23, 42, 0.14);
  --theme-border-brand: rgba(180, 83, 9, 0.22);
  --theme-border-light-panel: rgba(15, 23, 42, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(254, 215, 170, 0.45), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(217, 119, 6, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(71, 85, 105, 0.08), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="sky"] {
  --theme-brand-primary: #0284c7;
  --theme-brand-primary-strong: #0ea5e9;
  --theme-brand-secondary: #14b8a6;
  --theme-brand-soft: #bae6fd;
  --theme-bg-top: #f8fdff;
  --theme-bg-mid: #eef9fc;
  --theme-bg-bottom: #e2f2f7;
  --theme-surface-dark: rgba(246, 252, 255, 0.96);
  --theme-surface-dark-strong: rgba(237, 248, 252, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #d8f1fa;
  --theme-surface-overlay: rgba(2, 132, 199, 0.05);
  --theme-text-primary: #0f172a;
  --theme-text-secondary: #334155;
  --theme-text-muted: #64748b;
  --theme-text-dark: #0f172a;
  --theme-text-dark-muted: #64748b;
  --theme-border-light: rgba(15, 23, 42, 0.08);
  --theme-border-soft: rgba(15, 23, 42, 0.12);
  --theme-border-brand: rgba(2, 132, 199, 0.22);
  --theme-border-light-panel: rgba(15, 23, 42, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(186, 230, 253, 0.5), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(14, 165, 233, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(20, 184, 166, 0.09), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="sage"] {
  --theme-brand-primary: #4d7c0f;
  --theme-brand-primary-strong: #65a30d;
  --theme-brand-secondary: #0f766e;
  --theme-brand-soft: #d9f99d;
  --theme-bg-top: #fbfdf8;
  --theme-bg-mid: #f3f8ec;
  --theme-bg-bottom: #e8f0df;
  --theme-surface-dark: rgba(248, 252, 243, 0.96);
  --theme-surface-dark-strong: rgba(239, 247, 231, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #e2efce;
  --theme-surface-overlay: rgba(77, 124, 15, 0.05);
  --theme-text-primary: #1f2937;
  --theme-text-secondary: #3f4d3f;
  --theme-text-muted: #6b7280;
  --theme-text-dark: #1f2937;
  --theme-text-dark-muted: #66715f;
  --theme-border-light: rgba(31, 41, 55, 0.08);
  --theme-border-soft: rgba(31, 41, 55, 0.12);
  --theme-border-brand: rgba(77, 124, 15, 0.2);
  --theme-border-light-panel: rgba(31, 41, 55, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(217, 249, 157, 0.42), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(101, 163, 13, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(15, 118, 110, 0.08), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="blush"] {
  --theme-brand-primary: #db2777;
  --theme-brand-primary-strong: #ec4899;
  --theme-brand-secondary: #f97316;
  --theme-brand-soft: #fbcfe8;
  --theme-bg-top: #fffafb;
  --theme-bg-mid: #fff2f6;
  --theme-bg-bottom: #fde7ee;
  --theme-surface-dark: rgba(255, 248, 250, 0.96);
  --theme-surface-dark-strong: rgba(254, 240, 245, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #fde0ea;
  --theme-surface-overlay: rgba(219, 39, 119, 0.05);
  --theme-text-primary: #2d1322;
  --theme-text-secondary: #5b3349;
  --theme-text-muted: #8b6b7e;
  --theme-text-dark: #2d1322;
  --theme-text-dark-muted: #7a5a6a;
  --theme-border-light: rgba(45, 19, 34, 0.08);
  --theme-border-soft: rgba(45, 19, 34, 0.12);
  --theme-border-brand: rgba(219, 39, 119, 0.2);
  --theme-border-light-panel: rgba(45, 19, 34, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(251, 207, 232, 0.42), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(236, 72, 153, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(249, 115, 22, 0.08), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="lavender-light"] {
  --theme-brand-primary: #7c3aed;
  --theme-brand-primary-strong: #8b5cf6;
  --theme-brand-secondary: #2563eb;
  --theme-brand-soft: #ddd6fe;
  --theme-bg-top: #fbfaff;
  --theme-bg-mid: #f4f1ff;
  --theme-bg-bottom: #ebe7fb;
  --theme-surface-dark: rgba(250, 248, 255, 0.96);
  --theme-surface-dark-strong: rgba(242, 238, 255, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #ebe3ff;
  --theme-surface-overlay: rgba(124, 58, 237, 0.05);
  --theme-text-primary: #221b3a;
  --theme-text-secondary: #4b4670;
  --theme-text-muted: #7b7798;
  --theme-text-dark: #221b3a;
  --theme-text-dark-muted: #6d6987;
  --theme-border-light: rgba(34, 27, 58, 0.08);
  --theme-border-soft: rgba(34, 27, 58, 0.12);
  --theme-border-brand: rgba(124, 58, 237, 0.2);
  --theme-border-light-panel: rgba(34, 27, 58, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(221, 214, 254, 0.44), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(139, 92, 246, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(37, 99, 235, 0.08), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}

[data-theme="citrus"] {
  --theme-brand-primary: #ca8a04;
  --theme-brand-primary-strong: #eab308;
  --theme-brand-secondary: #16a34a;
  --theme-brand-soft: #fef08a;
  --theme-bg-top: #fffef7;
  --theme-bg-mid: #fbf8e8;
  --theme-bg-bottom: #f1edd5;
  --theme-surface-dark: rgba(255, 254, 246, 0.96);
  --theme-surface-dark-strong: rgba(250, 247, 230, 0.96);
  --theme-surface-light: #ffffff;
  --theme-surface-soft: #f6efba;
  --theme-surface-overlay: rgba(202, 138, 4, 0.05);
  --theme-text-primary: #2a2411;
  --theme-text-secondary: #5e5834;
  --theme-text-muted: #8a8459;
  --theme-text-dark: #2a2411;
  --theme-text-dark-muted: #736d45;
  --theme-border-light: rgba(42, 36, 17, 0.08);
  --theme-border-soft: rgba(42, 36, 17, 0.12);
  --theme-border-brand: rgba(202, 138, 4, 0.22);
  --theme-border-light-panel: rgba(42, 36, 17, 0.08);
  --theme-hero-glow: radial-gradient(circle at top, rgba(254, 240, 138, 0.4), transparent 50%);
  --theme-page-bg:
    radial-gradient(circle at top left, rgba(234, 179, 8, 0.12), transparent 34%),
    radial-gradient(circle at top right, rgba(22, 163, 74, 0.08), transparent 30%),
    linear-gradient(180deg, var(--theme-bg-top) 0%, var(--theme-bg-mid) 50%, var(--theme-bg-bottom) 100%);
}
