/* ============================================================
   Metro Weddings — Color Tokens
   Base palette (oklch) + semantic aliases.
   Palette rationale: warm ivory paper + near-black ink evoke the
   "editorial" side of the brand; deep maroon nods to the red/maroon
   traditionally central to Bengali wedding ceremony dress and decor
   without tipping into cliché "invitation card" red; brass/gold is
   the luxury accent used sparingly for highlights and dividers.
   ============================================================ */

:root {
  /* ---- Ink (neutrals, warm-tinted near-black) ---- */
  --ink-900: oklch(21% 0.014 50);
  --ink-800: oklch(28% 0.014 50);
  --ink-700: oklch(38% 0.014 50);
  --ink-600: oklch(48% 0.013 50);
  --ink-500: oklch(58% 0.012 50);
  --ink-400: oklch(68% 0.011 55);

  /* ---- Paper (warm neutrals, backgrounds) ---- */
  --paper-0: oklch(99% 0.004 80);
  --paper-50: oklch(97.5% 0.008 75);
  --paper-100: oklch(95% 0.014 70);
  --paper-200: oklch(91% 0.018 65);
  --paper-300: oklch(85% 0.02 60);

  /* ---- Maroon (primary brand accent) ---- */
  --maroon-800: oklch(26% 0.10 22);
  --maroon-700: oklch(32% 0.13 22);
  --maroon-600: oklch(38% 0.15 22);
  --maroon-500: oklch(45% 0.16 23);
  --maroon-100: oklch(93% 0.03 22);

  /* ---- Gold / brass (luxury accent) ---- */
  --gold-700: oklch(58% 0.10 75);
  --gold-600: oklch(68% 0.11 78);
  --gold-500: oklch(76% 0.10 80);
  --gold-100: oklch(94% 0.03 80);

  /* ---- Semantic (state) ---- */
  --green-600: oklch(52% 0.11 150);
  --green-100: oklch(93% 0.045 150);
  --red-600: oklch(52% 0.17 25);
  --red-100: oklch(93% 0.04 25);
  --amber-600: oklch(66% 0.13 75);
  --amber-100: oklch(93% 0.05 80);

  /* ================= Semantic aliases ================= */

  /* Surfaces */
  --surface-page: var(--paper-50);
  --surface-card: var(--paper-0);
  --surface-sunken: var(--paper-100);
  --surface-inverse: var(--ink-900);
  --surface-overlay: oklch(21% 0.014 50 / 55%);

  /* Text */
  --text-primary: var(--ink-900);
  --text-secondary: var(--ink-700);
  --text-muted: var(--ink-500);
  --text-inverse: var(--paper-0);
  --text-on-accent: var(--paper-0);

  /* Borders */
  --border-subtle: var(--paper-200);
  --border-strong: var(--paper-300);
  --border-on-inverse: oklch(99% 0.004 80 / 18%);

  /* Brand accent */
  --accent-primary: var(--maroon-600);
  --accent-primary-hover: var(--maroon-700);
  --accent-primary-active: var(--maroon-800);
  --accent-primary-soft: var(--maroon-100);
  --accent-gold: var(--gold-600);
  --accent-gold-soft: var(--gold-100);

  /* Feedback */
  --success: var(--green-600);
  --success-soft: var(--green-100);
  --danger: var(--red-600);
  --danger-soft: var(--red-100);
  --warning: var(--amber-600);
  --warning-soft: var(--amber-100);

  /* Focus ring */
  --focus-ring: var(--maroon-500);
}
