/* Yogelo promo codes: design tokens.
   No logo or brand colours were found (yogelo.com.au didn't load, 2026-10-14; ask the owner), so this is a gelato-counter palette:
   raspberry sorbet as the one main colour, pistachio for "sales brought in", plain white like a display freezer. Swap in the real brand when we have it.
   Fonts: Bricolage Grotesque for the wordmark, money and headings (soft, slightly quirky ink traps: friendly like a scoop shop, still exact for numbers);
   Atkinson Hyperlegible Next for body (staff read it fast at the counter); Atkinson Hyperlegible Mono only for codes (0/O and 1/I stay distinct).
   Light mode only: showcase demos are light (house rule). */
:root {
  --berry-900: #6E1532;
  --berry-700: #A3204A;   /* main: buttons, links, focus, the customer ticket. 6.6:1 on white */
  --berry-600: #B8305B;
  --berry-100: #F7DCE5;
  --berry-50:  #FCF1F4;
  --pista-700: #4E7424;   /* text on pistachio tints, 5.6:1 on white */
  --pista-500: #7AA33F;   /* sales bars */
  --pista-100: #E6F0D6;
  --ink:       #1F1A1C;
  --ink-2:     #4D4649;   /* secondary text, 8.5:1 on white */
  --ink-3:     #6F676A;   /* tertiary, 5.2:1 on white */
  --paper:     #FFFFFF;
  --paper-2:   #F6F4F5;   /* app background, wells */
  --rule:      #E6E1E3;
  --rule-2:    #D0C9CC;
  --cost:      #C9C0C4;   /* money spent (bar) */
  --error:     #A3361F;
  --error-50:  #FBEEEA;

  /* semantic */
  --bg: var(--paper-2);
  --surface: var(--paper);
  --text: var(--ink);
  --text-2: var(--ink-2);
  --text-3: var(--ink-3);
  --accent: var(--berry-700);
  --accent-hover: var(--berry-900);
  --accent-tint: var(--berry-50);
  --accent-ring: var(--berry-100);
  --focus: var(--berry-600);
  --sales: var(--pista-500);

  /* type */
  --font-display: "Bricolage Grotesque", "Arial Rounded MT Bold", system-ui, sans-serif;
  --font-body: "Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-code: "Atkinson Hyperlegible Mono", ui-monospace, Menlo, monospace;
  --wdth-display: 88;
  --fs-xs: 0.875rem;  /* 14 */
  --fs-sm: 0.9375rem; /* 15 */
  --fs-base: 1.0625rem; /* 17 */
  --fs-md: 1.25rem;   /* 20 */
  --fs-lg: 1.5rem;    /* 24 */
  --fs-xl: 2rem;      /* 32 */
  --fs-2xl: 2.625rem; /* 42 */
  --fs-3xl: 3.5rem;   /* 56 */
  --lh-tight: 1.05;
  --lh-snug: 1.25;
  --lh-body: 1.5;

  /* space (4px base) */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px; --s-9: 96px;
  --gutter: 16px;
  --max: 720px;

  /* radii: soft like a scoop, but a small scale */
  --r-1: 6px;   /* inputs, chips */
  --r-2: 10px;  /* buttons, panels */
  --r-3: 18px;  /* the customer ticket and printed flyers */
  --r-full: 999px;

  --shadow-1: 0 1px 2px rgba(40, 20, 28, 0.08);
  --tap: 48px;
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --t-fast: 140ms;
}
@media (min-width: 900px) { :root { --gutter: 32px; } }
