/* ============================================================================
   DineHop: design tokens
   "Bistro at dusk": deep basil greens carry the brand, saffron is the one warm
   accent, coral is reserved for search / location / the destination dot.
   Mirrors lib/ui/elevated/theme/brand.dart so app and site read as one product.
   ========================================================================== */

@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 340 720;
  font-display: swap;
  src: url('/fonts/fraunces-latin-var.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+2122, U+2212;
}
@font-face {
  font-family: 'Fraunces';
  font-style: italic;
  font-weight: 340 720;
  font-display: swap;
  /* Fraunces variable ships italic on the slnt axis; the browser synthesises a
     believable italic from the same file, which is fine for our one accent. */
  src: url('/fonts/fraunces-latin-var.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+2122, U+2212;
}
@font-face {
  font-family: 'Nunito';
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url('/fonts/nunito-latin-var.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+2122, U+2212;
}

:root {
  color-scheme: light;

  /* Brand palette (hex mirrors brand.dart) */
  --ivory:      #FFFCF6;
  --ink:        #201A16;
  --muted-ink:  #625E5B;
  --coral:      #F25E72;
  --coral-deep: #D8394F;
  --olive:      #557A32;
  --olive-deep: #456427;
  --sage:       #9FC482;
  --sage-mist:  #EAF2DE;
  --basil:      #173F33;
  --pine:       #0D2A21;
  --viridian:   #2C7255;
  --forest:     #1B4A38;
  --saffron:    #ECA43F;
  --tomato:     #C8553D;
  --porcelain:  #FAF6EE;
  --cream:      #F4ECDD;
  --hairline:   #EAE6DE;
  --hairline-dark: rgba(255, 252, 246, 0.16);

  /* Hygiene rating green (FHRS pass), warm amber, closed tomato */
  --fhrs-green: #2E7D32;

  /* Type */
  --font-display: 'Fraunces', 'Iowan Old Style', Georgia, 'Times New Roman', serif;
  --font-body: 'Nunito', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;

  /* Fluid type scale */
  --step--1: clamp(0.83rem, 0.80rem + 0.15vw, 0.92rem);
  --step-0:  clamp(1rem, 0.96rem + 0.20vw, 1.12rem);
  --step-1:  clamp(1.18rem, 1.09rem + 0.45vw, 1.45rem);
  --step-2:  clamp(1.45rem, 1.28rem + 0.85vw, 2.05rem);
  --step-3:  clamp(1.85rem, 1.55rem + 1.5vw, 2.9rem);
  --step-4:  clamp(2.35rem, 1.75rem + 3vw, 4.3rem);

  /* Space scale */
  --space-2xs: 0.375rem;
  --space-xs:  0.625rem;
  --space-sm:  1rem;
  --space-md:  1.5rem;
  --space-lg:  2.5rem;
  --space-xl:  4rem;
  --space-2xl: 6rem;

  /* Structure */
  --measure: 1120px;
  --radius-sm: 10px;
  --radius: 16px;
  --radius-lg: 24px;
  --radius-pill: 999px;

  /* Elevation: soft olive-tinted shadows, matching the app cards */
  --shadow-card: 0 4px 10px rgba(85, 122, 50, 0.07);
  --shadow-lift: 0 14px 30px rgba(85, 122, 50, 0.14);
  --shadow-phone: 0 30px 60px -18px rgba(13, 42, 33, 0.45), 0 8px 20px rgba(13, 42, 33, 0.18);

  --hero-gradient: linear-gradient(150deg, var(--viridian) 0%, var(--forest) 62%, var(--pine) 100%);
}
