/* OwnDivision — Semantic aliases & theme-aware text tokens.
   Accents used AS TEXT flip per theme; saturated FILL labels stay constant. */
:root {
  --od-navy-primary: var(--od-navy-400);
  --od-teal-primary: var(--od-teal-500);

  /* Theme-flipping accent / syntax TEXT (dark values; light overrides below) */
  --od-accent-text:     var(--od-teal-500);
  --od-accent-blue:     var(--od-navy-100);
  --od-syntax-sel:      var(--od-teal-400);
  --od-syntax-key:      var(--od-teal-300);
  --od-syntax-attr:     var(--od-teal-200);
  --od-syntax-str:      var(--od-success);
  --od-syntax-num:      var(--od-warning);
  --od-badge-teal-text: var(--od-teal-300);

  /* Constant on-fill text (NOT theme-flipped) — dark indigo AA on every saturated fill */
  --od-on-accent:  #111358; /* on teal-500/400 */
  --od-on-success: #111358;
  --od-on-warning: #111358;

  /* Shadows — only permitted for nav-scroll + toast, never for elevation */
  --toast-shadow:      0 8px 32px rgba(0, 0, 0, 0.50);
  --nav-shadow-scroll: 0 4px 16px rgba(0, 0, 0, 0.30);
}

[data-theme="light"] {
  --od-accent-text:     var(--od-teal-700);
  --od-accent-blue:     var(--od-navy-500);
  --od-syntax-sel:      var(--od-teal-700);
  --od-syntax-key:      var(--od-navy-600);
  --od-syntax-attr:     var(--od-teal-700);
  --od-syntax-str:      var(--od-teal-800);
  --od-syntax-num:      var(--od-navy-500);
  --od-badge-teal-text: var(--od-teal-700);

  --toast-shadow:      0 8px 32px rgba(0, 0, 0, 0.12);
  --nav-shadow-scroll: 0 4px 16px rgba(0, 0, 0, 0.08);
}
