/* Tokeny designu — transfer sekcji 4 z 00_KONTEKST_PROJEKTU.md (19-ui-tokeny:
   zasada przeniesienia — wyłącznie CSS custom properties, zero stylów inline). */

@font-face {
  font-family: "Source Sans 3";
  src: url("../fonts/SourceSans3-Regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "Source Sans 3";
  src: url("../fonts/SourceSans3-Semibold.woff2") format("woff2");
  font-weight: 600;
  font-display: swap;
}

@font-face {
  font-family: "Source Sans 3";
  src: url("../fonts/SourceSans3-Bold.woff2") format("woff2");
  font-weight: 700;
  font-display: swap;
}

@font-face {
  font-family: "IBM Plex Mono";
  src: url("../fonts/IBMPlexMono-Regular.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: "IBM Plex Mono";
  src: url("../fonts/IBMPlexMono-Medium.woff2") format("woff2");
  font-weight: 500;
  font-display: swap;
}

:root {
  /* marka i tła */
  --granat-marki: #14213d;
  --czerwien-marki: #bb0e1f;
  --tlo-strony: #f2f1ee;
  --tlo-karty: #ffffff;
  --tlo-pomocnicze: #f7f8fa;
  --tlo-naglowka: #eef1f6;
  --tlo-pustego: #faf9f6;

  /* akcja i tekst */
  --akcja: #0b3b8c;
  --akcja-hover: #062455;
  --tekst: #23211d;
  --tekst-pomocniczy: #4a463f;
  --tekst-etykiety: #6b665e;
  --ramka-pola: #4a5568;
  /* Q65 ROZSTRZYGNIĘTE 2026-09-03 pomiarem, nie uznaniem: #d8d5cf dawało na bieli
     1,46:1, czyli poniżej 3:1 z 1.4.11. Wartość zmieniona na najbliższy odcień z tej samej
     rodziny (te same odstępy kanałów: G = R−3, B = R−9), który kryterium spełnia wobec OBU
     tł: 3,58:1 na karcie (#ffffff) i 3,17:1 na tle strony (#f2f1ee). Pierwsze podejście
     (#908d87) liczyłem wyłącznie na bieli — dawało 3,31:1 na karcie i 2,93:1 na stronie,
     czyli oblewało kryterium tam, gdzie ta sama ramka leży na tle strony. Złapał to strażnik
     dopisany razem z wartością; stąd DWIE pary na liście, nie jedna.
     Token niesie obramowania SIATKI MIESIĄCA i separatory wierszy tabel, a nie tylko ozdobę
     kart, więc zwolnienie „to dekoracja" nie obejmowało wszystkich trzynastu użyć.
     Pilnuje tego para w KontrastTokenowTests — nie zdejmuj jej razem ze zmianą wartości. */
  --ramka-karty: #8a8781;
  --linia-tabeli: #e6e3dd;

  /* pole zablokowane */
  --zablokowane-tlo: #f2f1ee;
  --zablokowane-ramka: #cfcbc4;
  --zablokowane-tekst: #4a463f;

  /* stany: trójki ramka / tło / tekst — kolor nigdy sam, zawsze z podpisem słownym */
  --sukces-ramka: #1b5e40;
  --sukces-tlo: #f0f7f3;
  --sukces-tekst: #17513a;
  --ostrzezenie-ramka: #b45309;
  --ostrzezenie-tlo: #fdf7ef;
  --ostrzezenie-tekst: #8a3f07;
  --blad-ramka: #bb0e1f;
  --blad-tlo: #fff6f6;
  --blad-tekst: #a20c1a;
  --neutralny-ramka: #0b3b8c;
  --neutralny-tlo: #eef1f6;
  --neutralny-tekst: #0b3b8c;
  --nieaktywny-ramka: #6b665e;
  --nieaktywny-tlo: #f2f1ee;
  --nieaktywny-tekst: #4a463f;
  /* Świadome odstępstwo od paczki (miała #a9b3c6, czyli 2,11:1 na bieli): ramka jest
     jedynym śladem paska przy pustym postępie, więc obowiązuje 1.4.11 (3:1). Wartość
     z istniejącej palety (ramka pól), nie wymyślona — patrz OPEN-QUESTIONS,
     „Świadome odstępstwa"; pilnuje strażnik kontrastu w Architecture.Tests. */
  --postep-ramka: #4a5568;
  --postep-tlo: #eef1f6;

  /* geometria */
  --promien: 2px;
  --fokus: #b45309;

  /* typografia */
  --czcionka: "Source Sans 3", system-ui, sans-serif;
  --czcionka-mono: "IBM Plex Mono", ui-monospace, monospace;
}
