/*
 * KodUR — most tokenów marki (tokens.css, --kodur-*) do zmiennych motywu
 * BlazorBlueprint v3 (konwencja shadcn/ui: --background, --primary, --sidebar-*, …).
 *
 * BlazorBlueprint.Components/css/themes.css ustawia te same nazwy zmiennych pod
 * selektorami [data-base-color]/[data-primary-color] (+ .dark), z tym samym
 * poziomem specyficzności (0-1-0) co zwykłe `:root`/`.dark` — o kolejności
 * rozstrzyga więc TYLKO kolejność wczytania arkuszy. Ten plik MUSI być podpięty
 * w App.razor PO `_content/BlazorBlueprint.Components/css/themes.css` i PO
 * `brand/tokens.css`, żeby marka KodUR zawsze wygrywała z domyślną paletą
 * biblioteki (zinc/blue) niezależnie od tego, co ThemeService ustawi jako
 * atrybuty data-base-color/data-primary-color na <html>.
 *
 * KodUR nie udostępnia przełącznika palety (BbThemeSwitcher) — tylko jasny/ciemny
 * (BbDarkModeToggle, klasa `.dark` na <html>), zgodnie z BRIEF.md §5 („motyw jasny
 * i ciemny”, bez dowolnego doboru koloru). Statusy operacyjne (KodUrStatusBadge)
 * NIE korzystają z tych zmiennych — czytają wprost --kodur-status-* i --kodur-crit-*
 * z tokens.css (paleta osobna i konfigurowalna w słownikach, BRIEF.md §5, §6).
 *
 * T-1417 — UWAGA na literalne "gwiazdka-ukośnik" w tym komentarzu: dokładnie taka
 * sekwencja znaków w poprzedniej wersji tekstu ("--kodur-status-*" + "/--kodur-crit-*")
 * PRZEDWCZEŚNIE zamykała ten komentarz w oczach parsera CSS. Reszta komentarza stawała
 * się nieprawidłowym CSS, a przeglądarka w ramach odzyskiwania po błędzie gubiła CAŁY
 * poniższy blok `:root { ... }` (potwierdzone: document.styleSheets w żywej przeglądarce
 * pokazywało dla tego arkusza tylko JEDNĄ regułę — `:root.dark, :root[data-theme="tv"]`
 * — druga, ogólna `:root` w ogóle nie trafiała do CSSOM). Skutek: --background, --input,
 * --radius i reszta zmiennych z bloku niżej były NIEZDEFINIOWANE na KAŻDEJ stronie, więc
 * klasy Tailwind takie jak rounded-md/bg-background/border-input (istniejące naprawdę w
 * blazorblueprint.css — to NIE była regresja 302 na plikach statycznych z T-1413) liczyły
 * się na wartości początkowe (border-radius: 0, tło przezroczyste, obramowanie czarne).
 * Najbardziej widoczne na stronach statycznych (np. /logowanie), bo tam BlazorBlueprint
 * nigdy nie dostaje atrybutu data-base-color z theme.js (potrzebuje żywego obwodu Blazor
 * Server) — więc nie było nawet domyślnej palety zinc/blue jako zapasowej.
 */

:root {
  --background: var(--kodur-bg);
  --foreground: var(--kodur-text);

  --card: var(--kodur-bg-elevated);
  --card-foreground: var(--kodur-text);
  --popover: var(--kodur-bg-elevated);
  --popover-foreground: var(--kodur-text);

  --primary: var(--kodur-primary);
  --primary-foreground: var(--kodur-text-on-primary);

  --secondary: var(--kodur-secondary);
  --secondary-foreground: var(--kodur-primary-dark);

  --muted: #EEF4F8;
  --muted-foreground: var(--kodur-text-muted);

  --accent: var(--kodur-accent);
  --accent-foreground: var(--kodur-text-on-accent);

  --destructive: var(--kodur-status-awaria-fill);
  --destructive-foreground: var(--kodur-status-awaria-text);

  --border: var(--kodur-border);
  --input: var(--kodur-border);
  --ring: var(--kodur-primary-light);

  --chart-1: var(--kodur-primary);
  --chart-2: var(--kodur-primary-light);
  --chart-3: var(--kodur-secondary);
  --chart-4: var(--kodur-accent);
  --chart-5: var(--kodur-status-w-realizacji-fill);

  /* Sidebar = szata marki (granat), niezależnie od reszty layoutu — patrz brand.md §5. */
  --sidebar: var(--kodur-primary);
  --sidebar-foreground: #FFFFFF;
  --sidebar-primary: var(--kodur-primary-dark);
  --sidebar-primary-foreground: #FFFFFF;
  --sidebar-accent: var(--kodur-primary-light);
  --sidebar-accent-foreground: #FFFFFF;
  --sidebar-border: var(--kodur-primary-dark);
  --sidebar-ring: var(--kodur-secondary);

  --radius: 0.5rem;
}

:root.dark,
:root[data-theme="tv"] {
  --background: var(--kodur-bg);
  --foreground: var(--kodur-text);

  --card: var(--kodur-bg-elevated);
  --card-foreground: var(--kodur-text);
  --popover: var(--kodur-bg-elevated);
  --popover-foreground: var(--kodur-text);

  /* Przycisk główny w motywie ciemnym: jasny błękit + tekst granatowy (5.71:1 AA, brand.md §3). */
  --primary: var(--kodur-secondary);
  --primary-foreground: var(--kodur-primary-dark);

  --secondary: var(--kodur-bg-elevated);
  --secondary-foreground: var(--kodur-text);

  --muted: var(--kodur-bg-elevated);
  --muted-foreground: var(--kodur-secondary);

  --accent: var(--kodur-accent);
  --accent-foreground: var(--kodur-text-on-accent);

  --destructive: var(--kodur-status-awaria-fill);
  --destructive-foreground: var(--kodur-status-awaria-text);

  --border: var(--kodur-border);
  --input: var(--kodur-border);
  --ring: var(--kodur-secondary);

  --chart-1: var(--kodur-secondary);
  --chart-2: var(--kodur-accent);
  --chart-3: var(--kodur-status-w-realizacji-tv);
  --chart-4: var(--kodur-status-przekroczony-termin-tv);
  --chart-5: var(--kodur-crit-c-tv);

  --sidebar: var(--kodur-bg-elevated);
  --sidebar-foreground: #FFFFFF;
  --sidebar-primary: var(--kodur-secondary);
  --sidebar-primary-foreground: var(--kodur-primary-dark);
  --sidebar-accent: var(--kodur-primary);
  --sidebar-accent-foreground: #FFFFFF;
  --sidebar-border: var(--kodur-border);
  --sidebar-ring: var(--kodur-secondary);
}
