/* Synced from the Olive Data platform by tools/Sync-Theme.ps1 on 2026-09-24. Edit there, then re-sync. */
/* ==========================================================================
   Olive design tokens
   Shared palette, type, radius and shadow scale for Olive Data, matching
   Olive Tickets (palette, font, Bootstrap variable mapping) and adopting
   Olive Giving's named radius / shadow scale.

   Load this first, before any component stylesheet:
       <link href="~/css/olive-tokens.css" rel="stylesheet" />
   olive-forms.css imports it itself, so public form pages need no change.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  /* ----- Brand palette ------------------------------------------------- */
  --plum-900: #391D66;
  --plum-700: #604EA1;
  --plum-500: #7C68B8;
  --plum-300: #9C89CF;
  --plum-100: #E4DEF1;
  --plum-50:  #F2EEF8;

  --olive-700: #6E7A22;
  --olive-600: #89972A;
  --olive-300: #BFCB6F;
  --lime-300:  #D6E458;
  --lime-100:  #EEF4B8;

  /* ----- Surfaces and neutrals ------------------------------------------ */
  --cream:   #FFF8F1;
  --cream-2: #FBF1E4;
  --paper:   #FFFFFF;
  --ink-900: #1B1230;
  --ink-700: #382A55;
  --ink-500: #6E6685;
  --ink-300: #B4ACC4;
  --line:    #ECE4D7;
  --line-2:  #E4DAC8;

  /* ----- Semantic (status) colours; separate from the brand accent ------- */
  --ok-bg:   #E2EBC4; --ok-fg:   #4F5A12; --ok-line:   #CCD993;
  --warn-bg: #FFF1D9; --warn-fg: #8A5A00; --warn-line: #F6D9A2;
  --bad-bg:  #FDE6EE; --bad-fg:  #8B1C44; --bad-line:  #F4B9CE;
  --info-bg: #E6E1F7; --info-fg: #3F2C8A; --info-line: #CFC6EE;
  --danger:  #C0392B;

  /* ----- Type ------------------------------------------------------------ */
  --font-sans: 'Plus Jakarta Sans', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, "SF Mono", Menlo, Consolas, monospace;

  /* ----- Shape ----------------------------------------------------------- */
  --radius-sm: 8px;
  --radius:    10px;
  --radius-lg: 16px;
  --radius-xl: 22px;

  --shadow-xs: 0 1px 2px rgba(27, 18, 48, .04);
  --shadow-sm: 0 1px 2px rgba(27, 18, 48, .04), 0 12px 32px -24px rgba(57, 29, 102, .35);
  --shadow-md: 0 6px 24px -8px rgba(57, 29, 102, .12), 0 0 0 1px rgba(57, 29, 102, .06);
  --shadow-lg: 0 24px 64px -24px rgba(27, 18, 48, .45);
  --focus-ring: 0 0 0 4px rgba(96, 78, 161, .15);

  /* ----- Layout ---------------------------------------------------------- */
  --sidebar-w: 260px;
  --topbar-h: 64px;

  /* ----- Bootstrap 5.3 variable mapping ---------------------------------- */
  --bs-body-bg: var(--cream);
  --bs-body-color: var(--ink-900);
  --bs-body-font-family: var(--font-sans);
  --bs-border-color: var(--line);
  --bs-link-color: var(--plum-700);
  --bs-link-hover-color: var(--plum-900);
  --bs-primary: var(--plum-900);
  --bs-primary-rgb: 57, 29, 102;
  --bs-secondary-color: var(--ink-500);
  --bs-tertiary-bg: var(--cream-2);
}
