/* ============================================================
   Design Tokens — single source of truth for color.
   Tier 1: primitives (never consumed by components directly).
   Tier 2: semantic tokens on :root (what components use).
   Tier 3: ONE dark-mode block re-pointing semantics.
   Holiday themes (css/themes/*.css) override ONLY the accent
   family and load AFTER this file.
   ============================================================ */

:root {
    /* ── Tier 1 — Golden Hour primitives ── */
    --gh-cream:       #FFFBF5;
    --gh-cream-mid:   #F5ECD9;
    --gh-cream-dark:  #E8D9C4;
    --gh-navy:        #1B2A3B;
    --gh-navy-mid:    #283D52;
    --gh-amber:       #E8943A;
    --gh-amber-dark:  #D97F26;
    --gh-amber-light: #F7B56B;
    --gh-sky:         #5BA3C9;
    --gh-muted:       #8A7E72;

    /* ── Tier 1 — Marketing brand primitives ── */
    --brand-navy:     #1B4F72;
    --brand-blue:     #2E86C1;
    --brand-amber:    #F39C12;
    --brand-ice:      #D6EAF8;

    /* ── Tier 2 — semantic tokens ── */
    --surface:         var(--gh-cream);
    --surface-raised:  #FFFFFF;
    --surface-sunken:  var(--gh-cream-mid);
    --text:            var(--gh-navy);
    --text-soft:       var(--gh-navy-mid);
    --text-muted:      var(--gh-muted);
    --heading:         var(--gh-navy);
    --accent:          var(--gh-amber);
    --accent-hover:    var(--gh-amber-dark);
    --accent-soft:     rgba(232, 148, 58, 0.14);
    --accent-contrast: #FFFFFF;
    --info:            var(--gh-sky);
    --success:         #2E8B57;
    --danger:          #C0392B;
    --border:          var(--gh-cream-mid);
    --border-strong:   var(--gh-cream-dark);
    --focus-ring:      rgba(232, 148, 58, 0.45);
    --shadow-color:    rgba(27, 42, 59, 0.10);
}

/* ── Tier 3 — dark mode, defined exactly once ── */
[data-theme="dark"] {
    --surface:         #1E2D40;
    --surface-raised:  #253447;
    --surface-sunken:  #17242F;
    --text:            #EDE4D8;
    --text-soft:       #D8CCBC;
    --text-muted:      #7A8FA3;
    --heading:         #F5EFE6;
    --accent:          #F09B42;
    --accent-hover:    #F7B56B;
    --accent-soft:     rgba(240, 155, 66, 0.18);
    --accent-contrast: #1B2A3B;
    --info:            #7DC0E0;
    --success:         #4FBF83;
    --danger:          #E06552;
    --border:          #2E3F55;
    --border-strong:   #3A4E68;
    --focus-ring:      rgba(240, 155, 66, 0.50);
    --shadow-color:    rgba(0, 0, 0, 0.35);
}
