/* ==========================================================================
   Kit tokens — semantic + scalable radius/spacing (Tailwind-inspired)
   Appearance via: data-theme | data-radius | data-density
   ========================================================================== */

:root {
  /* Brand scale */
  --brand-50: #eff6ff;
  --brand-100: #dbeafe;
  --brand-300: #93c5fd;
  --brand-500: #3b82f6;
  --brand-600: #2563eb;
  --brand-700: #1d4ed8;
  --brand-rgb: 37, 99, 235;

  /* Surfaces */
  --bg: #ffffff;
  --surface: #ffffff;
  --surface-2: #f8fafc;
  --surface-3: #f1f5f9;
  --line: #e2e8f0;
  --line-strong: #cbd5e1;

  /* Ink */
  --ink: #0f172a;
  --ink-2: #334155;
  --ink-3: #475569;
  --muted: #64748b;

  /* Inverse / dark bands */
  --inverse: #0f172a;
  --inverse-2: #1e293b;
  --on-inverse: #ffffff;
  --on-inverse-muted: #cbd5e1;

  /* Atmosphere */
  --ambient-1: #3b82f614;
  --ambient-2: #1d4ed80f;
  --atmo-glow: #3b82f629;
  --atmo-glow-soft: #2563eb1f;

  /* Radius base — presets override --radius (see scales.css) */
  --radius: 0.75rem;
  --radius-xs: max(0px, calc(var(--radius) * 0.15));
  --radius-sm: max(0px, calc(var(--radius) * 0.45));
  --radius-md: max(0px, calc(var(--radius) * 0.65));
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) * 1.35);
  --radius-2xl: calc(var(--radius) * 1.75);
  --radius-3xl: calc(var(--radius) * 2.15);
  --radius-pill: 999px;

  /* Spacing unit — density presets scale this (see scales.css) */
  --space-unit: 0.25rem; /* = 4px, like Tailwind */
  --space-1: calc(var(--space-unit) * 1);
  --space-2: calc(var(--space-unit) * 2);
  --space-3: calc(var(--space-unit) * 3);
  --space-4: calc(var(--space-unit) * 4);
  --space-5: calc(var(--space-unit) * 5);
  --space-6: calc(var(--space-unit) * 6);
  --space-8: calc(var(--space-unit) * 8);
  --space-10: calc(var(--space-unit) * 10);
  --space-12: calc(var(--space-unit) * 12);
  --space-16: calc(var(--space-unit) * 16);
  --space-20: calc(var(--space-unit) * 20);
  --space-24: calc(var(--space-unit) * 24);

  --density: 1;
  --section-py: calc(6rem * var(--density));
  --section-py-sm: calc(4rem * var(--density));
  --card-pad: calc(1.5rem * var(--density));
  --card-pad-lg: calc(1.75rem * var(--density));
  --container-pad: 1rem;

  /* Control size (buttons / inputs) — see scales.css data-control */
  --control-fs: 1rem;
  --control-py: 0.9rem;
  --control-px: 1.5rem;
  --control-input-py: 1rem;
  --control-input-px: 1rem;
  --control-gap: 0.75rem;
  --control-sm-fs: 0.875rem;

  /* Type */
  --font-sans: "Onest", "Manrope", system-ui, sans-serif;
  --font-display: "Onest", "Manrope", system-ui, sans-serif;
  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;

  /* Shadows */
  --shadow-sm: 0 4px 12px -6px rgba(15, 23, 42, 0.12);
  --shadow-md: 0 12px 24px -12px rgba(15, 23, 42, 0.18);
  --shadow-lg: 0 20px 35px -15px rgba(15, 23, 42, 0.22);
  --shadow-brand: 0 10px 25px -8px rgba(var(--brand-rgb), 0.4);

  /* Text on brand-filled buttons (override on light-brand dark themes) */
  --on-brand: #ffffff;
  /* Button hover fill — defaults to brand-700; dark themes with light 700 override */
  --brand-hover: var(--brand-700);

  /* Bootstrap bridge */
  --bs-primary: var(--brand-600);
  --bs-primary-rgb: var(--brand-rgb);
  --bs-body-font-family: var(--font-sans);
  --bs-body-color: var(--ink-3);
  --bs-body-bg: var(--bg);
  --bs-link-color: var(--brand-600);
  --bs-link-hover-color: var(--brand-700);
  --bs-border-color: var(--line);
  --bs-border-radius: var(--radius-md);
}
