/* =====================================================================
   Sprawdź działkę – WSPÓLNE TOKENY STYLU (serwis WWW + przeglądarka raportu)
   Źródło prawdy: viewer (view_d25/assets/css/viewer.css, :root) – wartości
   przepisane 1:1, uzupełnione o tokeny potrzebne serwisowi (semantyczne
   kolory ocen, gradient hero, typografia nagłówków).
   Zasada: oba produkty ładują ten plik PRZED własnym arkuszem i używają
   wyłącznie zmiennych z tego pliku. Zmiana koloru = zmiana w jednym miejscu.
   ===================================================================== */

/* --- Czcionka: SN Pro (SIL OFL), latin + latin-ext, wagi 400/600/700/800.
       Pliki w ./fonts/ (te same, które ma viewer w vendor/fonts/). --- */
@font-face{font-family:"SN Pro";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/sn-pro-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/sn-pro-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/sn-pro-latin-ext-600-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/sn-pro-latin-600-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/sn-pro-latin-ext-700-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:700;font-display:swap;src:url("fonts/sn-pro-latin-700-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/sn-pro-latin-ext-800-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"SN Pro";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/sn-pro-latin-800-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  color-scheme:light;

  /* === 1. Kolory bazowe (z viewera, bez zmian) === */
  --bg:#f5f7f4;                       /* tło strony / panelu */
  --surface:rgba(255,255,255,.92);    /* karty, pasek górny, panele */
  --surface-solid:#ffffff;            /* tam, gdzie przezroczystość przeszkadza (np. nad zdjęciem) */
  --ink:#19201c;                      /* tekst podstawowy */
  --muted:#65716a;                    /* tekst drugorzędny, etykiety */
  --line:#dde3da;                     /* obramowania, separatory */
  --accent:#2f6f5e;                   /* zieleń marki: przyciski, linki, akcenty */
  --accent-ink:#1d4a3e;               /* ciemna zieleń: hover, nagłówki na zieleni */
  --accent-soft:#e3efe9;              /* jasna zieleń: tła sekcji, wyróżnienia */
  --accent-light:#4d9a82;             /* jasny koniec gradientu logo / hero */
  --warn:#9a5c00;

  /* === 2. Kolory semantyczne (odznaki ocen – z .badge-tone-* viewera) === */
  --ok-bg:#e7f5ec;   --ok-fg:#23613b;   --ok-line:#b9ddc6;    /* zielony: w porządku */
  --info-bg:#fff7cc; --info-fg:#8a6500; --info-line:#f2d66b;  /* żółty jasny: informacja */
  --warn-bg:#fff4dc; --warn-fg:#8a5a00; --warn-line:#ead09a;  /* żółty: do sprawdzenia */
  --bad-bg:#fdeaea;  --bad-fg:#9a3333;  --bad-line:#efbcbc;   /* czerwony: ryzyko */
  --neutral-bg:#eef1ef; --neutral-fg:#4f5b55; --neutral-line:#d7ddd9;
  /* pełne (wypełnione) warianty statusów – jak .srv-label w viewerze */
  --ok-solid:#2e7d32; --warn-solid:#b77900; --bad-solid:#c0392b; --empty-solid:#7a858f;

  /* === 3. Gradienty === */
  --grad-brand:linear-gradient(135deg,var(--accent),var(--accent-light));           /* znak logo */
  --grad-hero:linear-gradient(120deg,var(--accent-ink) 0%,var(--accent) 60%,var(--accent-light) 100%); /* hero serwisu */

  /* === 4. Kształt === */
  --radius:14px;        /* panele, duże karty */
  --radius-sm:10px;     /* przyciski, małe karty, pola */
  --radius-pill:999px;  /* odznaki */
  --shadow:0 8px 28px rgba(20,32,26,.10);
  --shadow-sm:0 2px 10px rgba(20,32,26,.06);

  /* === 5. Typografia === */
  --font:"SN Pro",Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --fs-body:16px;
  --fs-small:13px;          /* meta, podpisy */
  --fs-label:10.8px;        /* etykiety kart (uppercase, letter-spacing .04em) */
  --fs-h1:clamp(30px,4vw,44px);
  --fs-h2:clamp(24px,3vw,32px);
  --fs-h3:18px;
  --lh-body:1.55;
  --fw-regular:400; --fw-semibold:600; --fw-bold:700; --fw-black:800;

  /* === 6. Odstępy i układ === */
  --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px; --space-6:32px; --space-7:48px; --space-8:64px;
  --content-max:1180px;     /* szerokość serwisu */
  --topbar-h:66px;          /* wspólny pasek górny (viewer ma własny, wyższy pasek modułu pod nim) */
  --focus:0 0 0 3px rgba(47,111,94,.35);
}
