/* ==========================================================================
   BLKLUX Food Truck — design tokens
   One source of truth for the black / gold system. Consumed by the Elementor
   Kit, Astra overrides, WooCommerce pages, custom widgets, KDS and dashboard.
   ========================================================================== */

:root {
  /* Ground + surfaces (warm-neutral blacks, never blue-tinted) */
  --blklux-onyx: #080808;
  --blklux-charcoal: #131313;
  --blklux-raised: #1b1b1b;
  --blklux-overlay: #222220;

  /* Metallic gold: three stops, used as a gradient — never a flat fill on large areas */
  --blklux-gold: #d4a548;
  --blklux-gold-light: #f3d98a;
  --blklux-gold-deep: #9a6f1e;
  --blklux-gold-ink: #1a1305;             /* text on gold */
  --blklux-gold-gradient: linear-gradient(135deg, var(--blklux-gold-light) 0%, var(--blklux-gold) 48%, var(--blklux-gold-deep) 100%);
  --blklux-gold-gradient-h: linear-gradient(90deg, var(--blklux-gold-deep), var(--blklux-gold-light) 50%, var(--blklux-gold-deep));

  /* Gold hairlines (structural, not decorative) */
  --blklux-line: rgba(212, 165, 72, 0.32);
  --blklux-line-strong: rgba(212, 165, 72, 0.6);
  --blklux-line-soft: rgba(212, 165, 72, 0.16);

  /* Text */
  --blklux-ivory: #f3eee4;
  --blklux-ash: #9c958a;                   /* 6.3:1 on charcoal */
  --blklux-ash-soft: #6f6a62;              /* decorative only */

  /* Semantic */
  --blklux-open: #7fb87a;                  /* sage: open / success */
  --blklux-open-ink: #0d1a0c;
  --blklux-warn: #e0b04a;
  --blklux-ember: #d9654f;                 /* error / urgent */
  --blklux-ember-ink: #1c0906;
  --blklux-info: #b9b1a3;

  /* Elevation = gold rim + deep black drop (no grey shadows) */
  --blklux-rim: 0 0 0 1px var(--blklux-line);
  --blklux-rim-strong: 0 0 0 1px var(--blklux-line-strong);
  --blklux-drop: 0 24px 48px -24px rgba(0, 0, 0, 0.9);
  --blklux-glow: 0 0 0 1px var(--blklux-line-strong), 0 0 32px -6px rgba(212, 165, 72, 0.35);
  --blklux-elev-1: var(--blklux-rim), var(--blklux-drop);
  --blklux-elev-2: var(--blklux-rim-strong), 0 32px 64px -24px rgba(0, 0, 0, 0.95);

  /* Radius scale */
  --blklux-r-sm: 8px;
  --blklux-r-md: 12px;
  --blklux-r-lg: 16px;
  --blklux-r-xl: 24px;
  --blklux-r-pill: 999px;

  /* Spacing (8pt) */
  --blklux-s-1: 4px;
  --blklux-s-2: 8px;
  --blklux-s-3: 12px;
  --blklux-s-4: 16px;
  --blklux-s-5: 24px;
  --blklux-s-6: 32px;
  --blklux-s-7: 48px;
  --blklux-s-8: 64px;
  --blklux-s-9: 96px;

  /* Type */
  --blklux-font-display: "Cormorant Garamond", "Times New Roman", Georgia, serif;
  --blklux-font-body: "Manrope", "Segoe UI", system-ui, -apple-system, sans-serif;
  --blklux-fs-xs: 0.75rem;     /* 12 */
  --blklux-fs-sm: 0.875rem;    /* 14 */
  --blklux-fs-md: 1rem;        /* 16 */
  --blklux-fs-lg: 1.125rem;    /* 18 */
  --blklux-fs-xl: 1.375rem;    /* 22 */
  --blklux-fs-2xl: 1.75rem;    /* 28 */
  --blklux-fs-3xl: 2.25rem;    /* 36 */
  --blklux-fs-4xl: 3rem;       /* 48 */
  --blklux-fs-5xl: 4rem;       /* 64 */
  --blklux-lh-tight: 1.1;
  --blklux-lh-snug: 1.3;
  --blklux-lh-body: 1.6;
  --blklux-track-display: 0.06em;
  --blklux-track-button: 0.12em;
  --blklux-nums: lining-nums tabular-nums;

  /* Layout */
  --blklux-container: 1200px;
  --blklux-container-narrow: 720px;
  --blklux-gutter: 16px;
  --blklux-touch: 44px;
  --blklux-appnav-h: 64px;

  /* Motion (answering a tap; entrances are rare and orchestrated) */
  --blklux-ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --blklux-ease-in: cubic-bezier(0.55, 0, 1, 0.45);
  --blklux-dur-fast: 120ms;
  --blklux-dur: 200ms;
  --blklux-dur-slow: 360ms;

  /* Z scale */
  --blklux-z-raised: 10;
  --blklux-z-sticky: 40;
  --blklux-z-appnav: 90;
  --blklux-z-sheet: 100;
  --blklux-z-modal: 110;
  --blklux-z-toast: 120;

  color-scheme: dark;
}

@media (min-width: 768px) {
  :root {
    --blklux-gutter: 32px;
  }
}

@media (min-width: 1025px) {
  :root {
    --blklux-gutter: 48px;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --blklux-dur-fast: 0ms;
    --blklux-dur: 0ms;
    --blklux-dur-slow: 0ms;
  }
}
