/* Everest Biolabs — design tokens (raw CSS custom properties).
   Ported verbatim from the design handoff so every pattern that references
   var(--green-900), var(--action), var(--text-strong), etc. renders exactly
   as designed. theme.json mirrors the subset that the block editor UI exposes. */

:root {
  /* ---- Brand palette (raw) ---- */
  --eb-dark-green:   #073522;
  --eb-deep-green:   #00925b;
  --eb-bright-green: #a4edb1;
  --eb-light-green:  #e7fdea;
  --eb-orange:       #ff9f25;

  /* ---- Green ramp ---- */
  --green-950: #042417;
  --green-900: #073522;
  --green-800: #0a4a30;
  --green-700: #0c6342;
  --green-600: #00925b;
  --green-500: #1eae74;
  --green-400: #5fcb95;
  --green-300: #a4edb1;
  --green-200: #c8f4cf;
  --green-100: #e7fdea;
  --green-50:  #f3fef4;

  /* ---- Orange ramp ---- */
  --orange-600: #d97e12;
  --orange-500: #ff9f25;
  --orange-300: #ffc879;
  --orange-100: #fff0db;

  /* ---- Neutrals ---- */
  --neutral-0:   #ffffff;
  --neutral-25:  #fafbfa;
  --neutral-50:  #f4f6f5;
  --neutral-100: #e9eceb;
  --neutral-200: #d8dedb;
  --neutral-300: #bcc5c1;
  --neutral-400: #95a09b;
  --neutral-500: #6e7975;
  --neutral-600: #515b57;
  --neutral-700: #3b4441;
  --neutral-800: #262d2a;
  --neutral-900: #161b19;

  /* ---- Semantic: surfaces ---- */
  --surface-page:     var(--neutral-25);
  --surface-card:     var(--neutral-0);
  --surface-sunken:   var(--neutral-50);
  --surface-tint:     var(--green-100);
  --surface-inverse:  var(--green-900);
  --surface-brand:    var(--green-900);

  /* ---- Semantic: text ---- */
  --text-strong:        var(--green-900);
  --text-body:          var(--neutral-700);
  --text-muted:         var(--neutral-500);
  --text-on-dark:       #f3fef4;
  --text-on-dark-muted: #9cc3b1;
  --text-accent:        var(--green-600);
  --text-on-brand:      #ffffff;

  /* ---- Semantic: interactive ---- */
  --action:         var(--green-600);
  --action-hover:   var(--green-700);
  --action-active:  var(--green-800);
  --action-text:    #ffffff;
  --accent:         var(--green-300);
  --accent-strong:  var(--green-500);
  --spark:          var(--orange-500);
  --spark-hover:    var(--orange-600);

  /* ---- Semantic: borders & lines ---- */
  --border-subtle:  var(--neutral-200);
  --border-default: var(--neutral-300);
  --border-strong:  var(--neutral-400);
  --border-brand:   var(--green-600);
  --focus-ring:     #1eae74;

  /* ---- Status ---- */
  --success:     #00925b;
  --success-bg:  #e7fdea;
  --warning:     #d97e12;
  --warning-bg:  #fff0db;
  --danger:      #c2391f;
  --danger-bg:   #fbe7e2;
  --info:        #0c6342;
  --info-bg:     #e7fdea;

  /* ---- Typography ---- */
  --font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-display: var(--font-sans);
  --font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-extrabold: 800;

  /* ---- Spacing / radii ---- */
  --space-1: 0.25rem;  --space-2: 0.5rem;  --space-3: 0.75rem; --space-4: 1rem;
  --space-5: 1.5rem;   --space-6: 2rem;    --space-7: 2.5rem;  --space-8: 3rem;
  --space-9: 4rem;     --space-10: 6rem;   --space-12: 8rem;
  --radius-xs: 4px; --radius-sm: 6px; --radius-md: 10px; --radius-lg: 16px;
  --radius-xl: 24px; --radius-pill: 999px; --radius-circle: 50%;
  --maxw: 1260px;

  /* ---- Elevation & motion ---- */
  --shadow-xs: 0 1px 2px rgba(7, 53, 34, 0.06);
  --shadow-sm: 0 1px 3px rgba(7, 53, 34, 0.08), 0 1px 2px rgba(7, 53, 34, 0.04);
  --shadow-md: 0 4px 12px rgba(7, 53, 34, 0.08), 0 2px 4px rgba(7, 53, 34, 0.05);
  --shadow-lg: 0 12px 28px rgba(7, 53, 34, 0.12), 0 4px 8px rgba(7, 53, 34, 0.06);
  --shadow-xl: 0 24px 56px rgba(7, 53, 34, 0.16), 0 8px 16px rgba(7, 53, 34, 0.08);
  --ring-focus: 0 0 0 3px rgba(30, 174, 116, 0.35);
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 120ms;
  --duration-base: 200ms;
}
