/* ============================================================
   BASE TOKENS (theme-agnostic)
   ------------------------------------------------------------
   Semantic aliases, legacy aliases, state colors, shadows, type
   and spacing scale. These are shared across ALL themes and are
   resolved against the active theme's primitives (themes.css) at
   use-time via var().

   Components must consume the SEMANTIC tokens here (--fg-*, --bg-*,
   --border-*, state colors, shadows, --bb-r) rather than raw brand
   primitives, so that switching theme cascades automatically.

   Load order: themes.css -> tokens-base.css -> company-ui.css
   ============================================================ */

:root {
  /* Semantic foreground / background / border aliases */
  --fg-1: var(--bb-black);
  --fg-2: var(--bb-ink-80);
  --fg-3: var(--bb-ink-60);
  --fg-inverse: #ffffff;
  --fg-accent: var(--bb-blue);
  --bg-1: #ffffff;
  --bg-2: var(--bb-paper);
  --bg-3: var(--bb-lightblue-25);
  --bg-dark: var(--bb-blue);
  --bg-darker: var(--bb-black);
  --border-1: var(--bb-ink-10);
  --border-2: var(--bb-ink-20);
  --border-strong: var(--bb-ink-60);

  /* Legacy surfaces / text (keep for backwards compat) */
  --bb-bg: #f5f5f7;
  --bb-line: #e5e7eb;
  --bb-text: var(--bb-black);
  --bb-text-2: #374151;
  --bb-text-3: #6b7280;
  --bb-muted: #64748b;
  --bb-surface: #ffffff;
  --bb-surface-2: #f8fafc;
  --bb-bg-2: #f8fafc;
  --bb-bg-subtle: #f8fafc;
  --bb-border: var(--bb-line);
  --bb-text-1: var(--bb-text);
  --bb-hint: #475569;
  --bb-input-readonly-bg: #f8fafc;

  /* Semantic states */
  --bb-danger-bg: #fef2f2;
  --bb-danger-text: #dc2626;
  --bb-danger-border: #fecaca;
  --bb-success-bg: #f0fdf4;
  --bb-success-text: #16a34a;
  --bb-success-border: #bbf7d0;
  --bb-green: #16a34a;
  --bb-danger: #dc2626;

  /* Schedule timeline lane palette (indexed by asset discovery order) */
  --bb-lane-0: var(--bb-success-text);
  --bb-lane-1: var(--bb-accent);
  --bb-lane-2: #8b5cf6;
  --bb-lane-3: #d97706;
  --bb-lane-4: #0891b2;
  --bb-lane-5: #be185d;

  --bb-warn-bg: #fef3c7;
  --bb-warn-text: #92400e;
  --bb-warn-border: #fcd34d;

  /* Shadows — cool BB-Blue tint (never warm black) */
  --bb-shadow-sm: 0 1px 2px rgba(24,66,110,.06), 0 1px 1px rgba(9,10,9,.04);
  --bb-shadow-md: 0 4px 12px rgba(24,66,110,.10), 0 2px 4px rgba(9,10,9,.04);
  --bb-shadow-lg: 0 12px 32px rgba(24,66,110,.14), 0 4px 10px rgba(9,10,9,.06);
  --bb-shadow-inset: inset 0 0 0 1px rgba(24,66,110,.10);

  /* Typography weights */
  --bb-weight-light: 300;
  --bb-weight-regular: 400;
  --bb-weight-medium: 500;
  --bb-weight-bold: 700;

  /* Letter-spacing scale */
  --bb-track-tight-1: -0.01em;
  --bb-track-tight-2: -0.005em;
  --bb-track-loose-1: 0.02em;
  --bb-track-loose-2: 0.04em;
  --bb-track-caps: 0.08em;

  --bb-r: 16px;
}
