:root {
  color-scheme: light;

  --color-paper-0: #ffffff;
  --color-paper-50: #fff9f3;
  --color-paper-100: #f7eee5;
  --color-cocoa-950: #241a18;
  --color-cocoa-800: #493936;
  --color-cocoa-600: #715f5a;
  --color-cocoa-300: #cdbdb4;
  --color-cocoa-150: #e8dcd4;
  --color-berry-800: #7b203e;
  --color-berry-700: #93294c;
  --color-berry-100: #f8dde6;
  --color-brass-600: #7a4e12;
  --color-brass-300: #d9af68;
  --color-sage-700: #2f6951;
  --color-sage-100: #dcf2e7;
  --color-amber-800: #744a07;
  --color-amber-100: #fff0cb;
  --color-red-800: #8a2631;
  --color-red-100: #fbe1e4;
  --color-blue-700: #245ea8;
  --color-rose-50: #fff1f5;
  --color-rose-700: #a11855;
  --color-rose-900: #4f1833;
  --color-botanical-50: #f2efe4;
  --color-botanical-600: #566f50;
  --color-botanical-900: #263a2c;
  --color-night-950: #0c0920;
  --color-night-800: #1b1243;
  --color-cyan-300: #75f3e5;
  --color-pink-400: #ff55b7;

  --color-canvas: var(--color-paper-50);
  --color-surface: var(--color-paper-0);
  --color-surface-subtle: var(--color-paper-100);
  --color-surface-inverse: var(--color-cocoa-950);
  --color-text: var(--color-cocoa-950);
  --color-text-muted: var(--color-cocoa-600);
  --color-text-inverse: var(--color-paper-0);
  --color-border: var(--color-cocoa-300);
  --color-border-subtle: var(--color-cocoa-150);
  --color-accent: var(--color-berry-700);
  --color-accent-strong: var(--color-berry-800);
  --color-accent-soft: var(--color-berry-100);
  --color-focus: var(--color-blue-700);
  --color-success: var(--color-sage-700);
  --color-success-surface: var(--color-sage-100);
  --color-warning: var(--color-amber-800);
  --color-warning-surface: var(--color-amber-100);
  --color-error: var(--color-red-800);
  --color-error-surface: var(--color-red-100);
  --color-disabled-surface: var(--color-cocoa-150);
  --color-disabled-text: var(--color-cocoa-600);
  --color-scrim: rgb(36 26 24 / 72%);

  --font-display:
    Fraunces, "Noto Serif", "Noto Naskh Arabic", Georgia, "Times New Roman",
    serif;
  --font-body:
    Inter, "Noto Sans Arabic", system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif;

  --text-xs: 0.8125rem;
  --text-sm: 0.875rem;
  --text-body: clamp(1rem, 0.96rem + 0.2vw, 1.125rem);
  --text-heading: clamp(1.65rem, 1.3rem + 1.8vw, 3rem);
  --text-display: clamp(2.35rem, 1.55rem + 4vw, 5rem);

  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;

  --radius-sm: 0.5rem;
  --radius-md: 0.875rem;
  --radius-lg: 1.25rem;
  --radius-xl: 2rem;
  --radius-pill: 999px;

  --shadow-1: 0 1px 2px rgb(36 26 24 / 8%);
  --shadow-2: 0 12px 32px rgb(36 26 24 / 12%);
  --shadow-3: 0 24px 64px rgb(36 26 24 / 18%);

  --motion-instant: 100ms;
  --motion-fast: 160ms;
  --motion-standard: 240ms;
  --motion-emphasis: 480ms;
  --motion-reveal: 780ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-emphasis: cubic-bezier(0.16, 1, 0.3, 1);

  --container-marketing: 75rem;
  --container-reading: 45rem;
  --container-app: 80rem;
}

[data-theme="birthday_modern"] {
  --reveal-stage: var(--color-cocoa-950);
  --reveal-stage-text: var(--color-paper-0);
  --reveal-gift: var(--color-berry-700);
  --reveal-ribbon: var(--color-brass-300);
  --reveal-message: var(--color-paper-50);
  --reveal-message-text: var(--color-cocoa-950);
}

[data-theme="valentine_playful"] {
  --proposal-stage: #fff1f5;
  --proposal-text: #4f1833;
  --proposal-muted: #77425b;
  --proposal-accent: #a11855;
  --proposal-glow: rgb(255 128 163 / 24%);
  --proposal-trust-surface: rgb(255 247 249 / 92%);
  --proposal-trust-text: #4f1833;
  --proposal-trust-border: rgb(161 24 85 / 22%);
  --proposal-button: #a11855;
  --proposal-button-text: #fff;
  --proposal-button-border: #7e1040;
  --proposal-button-radius: var(--radius-pill);
  --proposal-button-shadow: 0 0.8rem 2rem rgb(161 24 85 / 22%);
  --proposal-secondary: #fff7f9;
  --proposal-secondary-text: #6e2447;
  --proposal-secondary-border: #c87a9c;
  --proposal-detail-surface: rgb(255 255 255 / 68%);
  --proposal-detail-border: rgb(126 16 64 / 24%);
  --proposal-link: #7e1040;
  --proposal-completion-radius: 50%;
}

[data-theme="bridal_botanical"] {
  --proposal-stage: #f2efe4;
  --proposal-text: #263a2c;
  --proposal-muted: #526457;
  --proposal-accent: #566f50;
  --proposal-glow: rgb(129 150 113 / 22%);
  --proposal-trust-surface: rgb(255 253 247 / 92%);
  --proposal-trust-text: #263a2c;
  --proposal-trust-border: rgb(86 111 80 / 25%);
  --proposal-button: #526c4d;
  --proposal-button-text: #fffdf7;
  --proposal-button-border: #3f573b;
  --proposal-button-radius: 0.65rem;
  --proposal-button-shadow: 0 0.8rem 2rem rgb(38 58 44 / 18%);
  --proposal-secondary: #fffdf7;
  --proposal-secondary-text: #344a39;
  --proposal-secondary-border: #8d9f87;
  --proposal-detail-surface: rgb(255 253 247 / 74%);
  --proposal-detail-border: rgb(86 111 80 / 30%);
  --proposal-link: #38523d;
  --proposal-completion-radius: 0.6rem;
}

[data-theme="prom_night"] {
  --proposal-stage: #0c0920;
  --proposal-text: #fff;
  --proposal-muted: #d6d0f8;
  --proposal-accent: #75f3e5;
  --proposal-glow: rgb(255 85 183 / 24%);
  --proposal-trust-surface: rgb(12 9 32 / 92%);
  --proposal-trust-text: #fff;
  --proposal-trust-border: rgb(117 243 229 / 28%);
  --proposal-button: #ff55b7;
  --proposal-button-text: #170923;
  --proposal-button-border: #ff91d1;
  --proposal-button-radius: 0.5rem;
  --proposal-button-shadow: 0 0 2rem rgb(255 85 183 / 35%);
  --proposal-secondary: #1b1243;
  --proposal-secondary-text: #fff;
  --proposal-secondary-border: #75f3e5;
  --proposal-detail-surface: rgb(117 243 229 / 8%);
  --proposal-detail-border: rgb(117 243 229 / 38%);
  --proposal-link: #75f3e5;
  --proposal-completion-radius: 0.6rem;
}
