/* TENANT: Pferdezuchtverband Rheinland-Pfalz-Saar e.V.  (pferdezucht-rps.de)
   Confirmed brand colours: primary #275126 (deep forest green) and secondary
   #8A9B5B (sage). The site palette fills out the family: light celadon
   #C9D09C, darker olives #4A4D37 / #6F7455, and a gold #F2C200 warm pop.
   Green #275126 -> --primary. The sage secondary drives --accent (its brand
   highlight role) and also tints the --secondary surface. Sage and gold are
   too light for white text, so per the Stal Tops rule they keep their true
   values with dark foregrounds. Green-led brand, so --success shifts toward
   emerald; gold accent-alt, so --warning shifts toward orange. Font is
   Poppins (the site's dominant face; OpenSans is secondary). */

:root {
  /* BRAND ADAPTATION GUIDE
     1. Analyse the target tenant website, logo and existing brand palette first.
     2. Map the strongest brand color to --primary.
     3. Map the main call-to-action / highlight color to --accent.
     4. Keep backgrounds light unless the tenant website is clearly dark.
     5. Use --accent-soft and --accent-strong as lighter/darker versions of --accent.
     6. Keep status colors functional unless the tenant brand clearly overrides them.
     7. Always check contrast for foreground variables against their matching background variables.
  */

  /* TYPOGRAPHY
     Body is used for regular UI text.
     Display is used for headings, auction titles, hero titles and prominent prices.
  */
  --font-body: 'Poppins', system-ui, sans-serif; /* site body font */
  --font-display: 'Poppins', system-ui, sans-serif; /* site heading font */

  /* ELEVATION
     Card shadow is used for auction cards, lot cards, panels and elevated content blocks.
  */
  --shadow-card: 0 4px 12px oklch(0% 0 0 / 0.08);

  /* BASE COLORS
     Background is the base surface behind content.
     Foreground is the default content-layer color (text, icons and similar elements) on top of background surfaces.
  */
  --background: oklch(99% 0.004 130); /* near-white, faint green tint */
  --foreground: oklch(24% 0.008 140); /* #151515 family, green-neutral near-black */

  /* SURFACES
     Card is used for lots, auction cards, bidding panels and content sections.
  */
  --card: oklch(100% 0 0);
  --card-foreground: oklch(24% 0.008 140);

  /* POPOVER SURFACES
     Popover is used for dropdowns, menus, overlays and modal-like floating surfaces.
  */
  --popover: oklch(100% 0 0);
  --popover-foreground: oklch(24% 0.008 140);

  /* BRAND COLORS
     Primary is used for hero overlay tint, default badges, outline buttons and selected pagination states.
     It should represent the strongest/base brand tone, but most call-to-action buttons use --accent.
     Primary foreground must stay readable on top of primary.
  */
  --primary: oklch(39.3% 0.084 143); /* #275126 deep forest green (topbar/primary surfaces, white text 9.2:1) */
  --primary-foreground: oklch(100% 0 0);

  /* SECONDARY SURFACES
     Secondary is used for subtle backgrounds, inactive controls and low-emphasis panels
     (for example: soft section backgrounds or neutral chips).
     Use secondary when you need more emphasis than muted, but less emphasis than primary/accent surfaces.
     Secondary foreground is the readable text/icon color on secondary.
  */
  --secondary: oklch(94.5% 0.022 120); /* light tint of the sage secondary #8A9B5B */
  --secondary-foreground: oklch(30% 0.04 140);

  /* MUTED UI
     Muted is used for subdued backgrounds and separators.
     Muted foreground is used for helper text, metadata, dates, labels and less important copy.
  */
  --muted: oklch(96.5% 0.014 120);
  --muted-foreground: oklch(48% 0.02 122);

  /* ACCENT COLORS
     Accent is the main call-to-action/highlight color for buttons, links, active states and auction emphasis.
     Accent foreground must stay readable on accent buttons and badges.
     Accent soft is a lighter accent for hover states, subtle highlights and gentle backgrounds.
     Accent strong is a darker accent for pressed states, emphasis and high-contrast details.
  */
  --accent: oklch(66.1% 0.090 121); /* #8A9B5B sage (secondary brand colour) — dark text (Stal Tops rule) */
  --accent-foreground: oklch(25% 0.04 140); /* dark green on sage (5.2:1) */
  --accent-soft: oklch(83.9% 0.070 114); /* #C9D09C celadon — hover/soft highlight, dark text */
  --accent-strong: oklch(41.1% 0.035 114); /* #4A4D37 dark olive — pressed/high-contrast, white text (8.7:1) */

  /* ALTERNATIVE ACCENT
     Accent alt is a secondary brand tone, often used for luxury, contrast or special emphasis.
     Accent alt foreground must stay readable on accent-alt backgrounds.
  */
  --accent-alt: oklch(83.3% 0.170 91); /* #F2C200 gold (warm pop) — dark text (Stal Tops rule) */
  --accent-alt-foreground: oklch(25% 0.03 90); /* dark on gold (10.8:1) */

  /* FUNCTIONAL FEEDBACK COLORS
     Destructive is used for danger, errors, removal actions and urgent/live warning surfaces.
     Success is used for positive states such as active/accepted/highest bidder feedback.
     Info is used for informative states such as upcoming auctions.
     Warning is used for cautionary states that need attention but are not errors.
  */
  --destructive: oklch(55% 0.205 27); /* scarlet (white 5.4:1) */
  --destructive-foreground: oklch(100% 0 0);
  --success: oklch(52% 0.13 163); /* emerald — shifted off the brand greens, kept brighter than primary (white 5:1) */
  --success-foreground: oklch(100% 0 0);
  --info: oklch(54% 0.09 218); /* teal-blue (white 4.9:1) */
  --info-foreground: oklch(100% 0 0);
  --warning: oklch(72% 0.15 58); /* orange — shifted off the gold accent-alt to stay distinct (dark text 7:1) */
  --warning-foreground: oklch(20% 0 0);

  /* FORM AND FOCUS COLORS
     Border is used for cards, section dividers and outlined controls.
     Input is used for form fields and input borders.
     Ring is used for keyboard focus rings and should usually match --accent.
  */
  --border: oklch(89% 0.008 120);
  --input: oklch(89% 0.008 120);
  --ring: var(--accent);

  /* AUCTION STATUS COLORS
     Live should feel urgent and attention-grabbing.
     Active should feel positive/safe.
     Upcoming should feel informative.
     These usually remain functional colors, even when brand colors change.
  */
  --status-live: var(--destructive);
  --status-active: var(--success);
  --status-upcoming: var(--info);

  /* SHAPE
     Radius controls the default roundness of cards, buttons, inputs and badges.
  */
  --radius: 0.5rem;
}
