/* ============================================================================
   OSTOJA — ARKUSZ PANELU AUDYTU (lejek + panel administratora)
   ----------------------------------------------------------------------------
   Jeden plik dla wszystkich pięciu ekranów: strona z formularzem, podziękowanie,
   ekran „popraw dane", brama panelu i sam panel. Tokeny są przepisane z
   ~/Downloads/ostoja/styl.css — to jest ten sam system, nie jego kopia „na oko".

   ZASADY, KTÓRYCH TU NIE ŁAMIEMY (te same, co na stronie Ostoi):
   1. Zero zasobów z sieci. Żadnych fontów z Google, żadnego CDN. Krój jest
      systemowy — na Macu San Francisco, na Windowsie Segoe UI. To twarda reguła
      marki: sprzedajemy sprawdzanie cudzych stron pod kątem tego, co ładują
      z zewnątrz, więc sami nie ładujemy stąd niczego.
   2. Atrament #1A1620 zamiast czerni. Każda linia i każdy cień powstaje
      z atramentu na niskiej alfie — w całym pliku nie ma ani jednej przypadkowej
      szarości i ani jednego czarnego cienia.
   3. Baza jest jasna, ciemne bloki są przerywnikiem (hero → treść → ciemne CTA).
   4. Kolor niesie znaczenie: bursztyn = Ryś, fiolet = Puchacz, zieleń = Żubr,
      czerwień = wyłącznie realny błąd. W triadzie wyniku audytu
      („napraw dziś / warto poprawić / już działa") kolor jest sygnałem, nie ozdobą.
   5. Gradienty wygaszamy do koloru z alfą 0, NIGDY do `transparent` — inaczej
      WebKit wstawia po drodze szarość.
   ========================================================================== */


/* ---------------------------------------------------------------------------
   01 · TOKENY — tryb jasny (baza)
   ------------------------------------------------------------------------- */
:root{
  --atrament: 26, 22, 32;                /* #1A1620 — nigdy #000 */

  /* powierzchnie: skala jasna Ostoi, poziomy 3 / 0 / 2 / 4 */
  --bg:        #F5F3F8;
  --karta:     #FFFFFF;
  --karta-2:   #F8F6FB;
  --karta-3:   #F0EDF5;
  --karta-4:   #E5E1EC;

  /* tekst — kontrasty policzone na bieli */
  --ink:   #1A1620;                      /* 17,8:1 */
  --muted: #4C4657;                      /*  9,1:1 */
  --faint: #5F5869;                      /*  6,7:1 */

  /* linie i ramki pól */
  --linia:   rgba(26,22,32,.10);
  --linia-2: rgba(26,22,32,.06);
  --linia-3: rgba(26,22,32,.16);
  --pole:    rgba(26,22,32,.16);

  /* akcent interfejsu: fiolet. W tej marce cała skala szarości jest
     podfioletowana (atrament #1A1620), więc fiolet jest barwą NEUTRALNĄ.
     Sygnałem Puchacza zostaje nasycone #AC90F7 i tylko tam, gdzie mowa o AI. */
  --akcent:      #5836C4;                /* 7,7:1 na bieli */
  --akcent-mieki: rgba(88,54,196,.09);

  /* moduły */
  --rys:#F2AE3E;      --rys-tekst:#7A5000;      --rys-rgb:242,174,62;
  --puchacz:#AC90F7;  --puchacz-tekst:#5836C4;  --puchacz-rgb:172,144,247;
  --zubr:#4FDB8C;     --zubr-tekst:#0B6E3D;     --zubr-rgb:79,219,140;
  --alarm:#FF6B78;    --alarm-tekst:#B3261E;    --alarm-rgb:179,38,30;

  /* promienie — tylko dwa, z drabiny Ostoi. Zakaz 999px. */
  --promien:   14px;
  --promien-m:  9px;

  /* cienie — drabina warstw tego samego atramentu */
  --cien-1: 0 1px 2px -1px rgba(26,22,32,.06),
            0 2px 4px -2px rgba(26,22,32,.05);
  --cien-2: 0 4px 8px -4px rgba(26,22,32,.07),
            0 8px 16px -8px rgba(26,22,32,.06),
            0 16px 32px -16px rgba(26,22,32,.05);
  --cien-3: 0 10px 34px rgba(26,22,32,.09),
            0 2px 6px rgba(26,22,32,.05);

  /* typografia — krój systemowy, zero pobierania */
  --kroj: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
          "Helvetica Neue", Arial, sans-serif;
  --kroj-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
               "Liberation Mono", monospace;

  --rama: 1080px;      /* najszersza rama: panel, tabele */
  --os:   860px;       /* oś treści lejka */
}

/* ---------------------------------------------------------------------------
   02 · TOKENY — tryb ciemny
   Nie odwracamy kolorów filtrem. Każdy poziom jest wzięty ze skali ciemnej
   Ostoi (#0B0910 … #2E2838), więc ciemny wygląda jak decyzja, a nie jak awaria.
   ------------------------------------------------------------------------- */
@media (prefers-color-scheme:dark){
  :root{
    --bg:      #0B0910;
    --karta:   #14111B;
    --karta-2: #191520;
    --karta-3: #1E1926;
    --karta-4: #2E2838;

    --ink:   #F2F0F6;
    --muted: #B9B3C6;
    --faint: #A79FB7;

    --linia:   rgba(255,255,255,.12);
    --linia-2: rgba(255,255,255,.07);
    --linia-3: rgba(255,255,255,.20);
    --pole:    rgba(255,255,255,.20);

    --akcent:       #A78BFF;
    --akcent-mieki: rgba(167,139,255,.14);

    --rys-tekst:     #F2AE3E;
    --puchacz-tekst: #C7B2FF;
    --zubr-tekst:    #4FDB8C;
    --alarm-tekst:   #FF9A93;

    --cien-1: 0 1px 2px rgba(0,0,0,.4);
    --cien-2: 0 12px 28px rgba(0,0,0,.45);
    --cien-3: 0 12px 40px rgba(0,0,0,.5);
  }
}

/* ---------------------------------------------------------------------------
   03 · RESET I PODSTAWY
   ------------------------------------------------------------------------- */
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--kroj);
  font-size:17px;
  line-height:1.6;
  letter-spacing:-.005em;
  -webkit-font-smoothing:antialiased;
}
img,svg{ max-width:100%; display:block; }
a{ color:inherit; }
button,input,select,textarea{ font:inherit; color:inherit; }
hr{ border:0; height:1px; background:var(--linia); margin:1.6rem 0; }
:focus-visible{ outline:2px solid var(--akcent); outline-offset:2px; }

.rama{ max-width:var(--rama); margin:0 auto; padding:0 clamp(1.25rem,.6rem + 2.4vw,2.5rem); }
.os  { max-width:var(--os);   margin:0 auto; padding:0 clamp(1.25rem,.6rem + 2.4vw,2.5rem); }

/* pominięcie nawigacji dla czytających klawiaturą */
.przeskocz{
  position:absolute; left:-9999px; top:0; z-index:20;
  background:var(--karta); color:var(--ink); padding:10px 16px;
  border-radius:var(--promien-m); box-shadow:var(--cien-2);
}
.przeskocz:focus{ left:12px; top:12px; }

/* ---------------------------------------------------------------------------
   04 · ZNAK MARKI (sygnet + nazwa)
   Sygnet to litera O z Montserrat 700 — ta sama, która stoi w nazwie.
   ------------------------------------------------------------------------- */
.marka{ display:flex; align-items:center; gap:.62rem; text-decoration:none; color:inherit; }
.marka__znak{
  width:32px; height:32px; border-radius:10px; flex:none;
  background:linear-gradient(219deg,#3A3048 7.7%,#17131E 94.35%);
  display:grid; place-items:center; color:#FCFBFD;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}
.marka__znak svg{ width:22px; height:22px; display:block; }
.marka__nazwa{ font-size:1.16rem; font-weight:640; letter-spacing:-.022em; }
.marka__ogon{ font-size:.86rem; font-weight:500; color:var(--faint); letter-spacing:-.01em; }

/* ---------------------------------------------------------------------------
   05 · NAGŁÓWEK STRONY
   ------------------------------------------------------------------------- */
.gorny{
  background:var(--karta);
  border-bottom:1px solid var(--linia);
  padding:14px 0;
}
.gorny .rama{ display:flex; justify-content:space-between; align-items:center; gap:16px; }
.gorny__kontakt{ font-size:.86rem; color:var(--muted); text-decoration:none; white-space:nowrap; }
.gorny__kontakt:hover{ color:var(--ink); }

/* ---------------------------------------------------------------------------
   06 · TYPOGRAFIA
   ------------------------------------------------------------------------- */
h1,h2,h3{ letter-spacing:-.028em; font-weight:660; margin:0; line-height:1.14; }
h1{ font-size:clamp(2.05rem,1.2rem + 3.1vw,3.1rem); }
h2{ font-size:clamp(1.5rem,1.1rem + 1.5vw,2rem); letter-spacing:-.024em; }
h3{ font-size:1.02rem; letter-spacing:-.018em; font-weight:640; }
.nad{
  font-size:.75rem; font-weight:640; letter-spacing:.09em; text-transform:uppercase;
  color:var(--faint); margin:0 0 14px;
}
.lead{ font-size:1.14rem; color:var(--muted); max-width:38em; margin:16px auto 0; line-height:1.55; }
.drobne{ font-size:.82rem; color:var(--faint); line-height:1.5; }
.mut{ color:var(--muted); }

/* ---------------------------------------------------------------------------
   07 · SEKCJA HERO + FORMULARZ WEJŚCIA
   ------------------------------------------------------------------------- */
.hero{ padding:clamp(3rem,1.6rem + 4.4vw,4.75rem) 0 clamp(2rem,1.2rem + 2.6vw,3rem); text-align:center; }

.formularz{
  background:var(--karta);
  border:1px solid var(--linia);
  border-radius:var(--promien);
  box-shadow:var(--cien-3);
  padding:22px;
  max-width:600px;
  margin:30px auto 0;
  text-align:left;
}
.pola{ display:flex; gap:10px; }
.pola input{ flex:1; min-width:0; }

input[type=text],input[type=email],input[type=tel],input[type=password],
select,textarea,input[type=file]{
  width:100%;
  padding:12px 14px;
  font-size:15px;
  font-family:inherit;
  background:var(--karta-2);
  color:var(--ink);
  border:1px solid var(--pole);
  border-radius:var(--promien-m);
}
input::placeholder,textarea::placeholder{ color:var(--faint); opacity:1; }
input:focus,select:focus,textarea:focus{
  outline:2px solid var(--akcent); outline-offset:1px; border-color:transparent;
}
textarea{ min-height:86px; resize:vertical; line-height:1.5; }
label.etykieta{
  display:block; font-size:12px; font-weight:640; letter-spacing:.04em;
  text-transform:uppercase; color:var(--faint); margin-bottom:7px;
}

/* Przyciski: atrament w gradiencie, jak w bramie panelu.
   UWAGA NA SELEKTOR. Stało tu kiedyś `.przycisk, button.przycisk` — i to psuło
   odmiany: `button.przycisk` jest specyficzniejszy od `.przycisk--cichy`, więc
   KAŻDY <button> wychodził atramentowy, choćby miał klasę odmiany. Efekt był
   widoczny gołym okiem („Zapisz status" i „Zapisz notatkę" czarne zamiast
   cichych), ale tylko na jednym ekranie panelu. Sam `.przycisk` obejmuje
   i <a>, i <button>, więc dopisek był niepotrzebny od początku. */
.przycisk{
  display:inline-block; text-align:center; text-decoration:none;
  padding:12px 22px; font-size:15px; font-weight:620; font-family:inherit;
  letter-spacing:-.005em; cursor:pointer; white-space:nowrap;
  border:0; border-radius:var(--promien-m); color:#FCFBFD;
  background:linear-gradient(96deg,#1A1620 58%,rgba(26,22,32,.84) 96%);
  box-shadow:0 1px 2px rgba(26,22,32,.14);
}
.przycisk--pelny{ width:100%; }
.przycisk--cichy{
  background:var(--karta-3); color:var(--ink);
  box-shadow:inset 0 0 0 1px var(--linia);
}
.przycisk--zubr{ background:#0B6E3D; box-shadow:0 1px 2px rgba(11,110,61,.2); }
.przycisk:hover{ filter:brightness(1.08); }
.przycisk:active{ transform:translateY(1px); }
.przycisk[disabled]{ opacity:.45; cursor:not-allowed; filter:none; }
@media (prefers-color-scheme:dark){
  .przycisk{ background:#F2F0F6; color:#14111B; }
  .przycisk--cichy{ background:var(--karta-3); color:var(--ink); }
  .przycisk--zubr{ background:#4FDB8C; color:#0F2A1D; }
}

.pod{ font-size:.84rem; color:var(--faint); margin:12px 0 0; }
.wiecej{ display:none; margin-top:14px; border-top:1px solid var(--linia-2); padding-top:14px; }
.wiecej.on{ display:block; }
.wiecej input{ margin-bottom:9px; }
.zgoda{ display:flex; gap:9px; align-items:flex-start; font-size:.8rem; color:var(--faint); margin-top:4px; }
.zgoda input{ width:17px; height:17px; flex:0 0 17px; margin-top:3px; accent-color:var(--akcent); }
.hp{ position:absolute; left:-9999px; }

/* ---------------------------------------------------------------------------
   08 · TRIADA WYNIKU — kolor jest sygnałem
   ------------------------------------------------------------------------- */
.triada{ display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:38px 0 10px; }
.kafel{
  background:var(--karta); border:1px solid var(--linia);
  border-radius:var(--promien); padding:16px; text-align:center;
  box-shadow:var(--cien-1);
}
.kafel__nazwa{ font-size:.7rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.kafel__liczba{ font-size:2rem; font-weight:660; line-height:1.25; letter-spacing:-.03em; }
.kafel__opis{ font-size:.79rem; color:var(--faint); }
.kafel--pilne{ background:rgba(179,38,30,.06); border-color:rgba(179,38,30,.22); }
.kafel--pilne .kafel__nazwa{ color:var(--alarm-tekst); }
.kafel--warto{ background:rgba(242,174,62,.09); border-color:rgba(242,174,62,.26); }
.kafel--warto .kafel__nazwa{ color:var(--rys-tekst); }
.kafel--dziala{ background:rgba(79,219,140,.09); border-color:rgba(79,219,140,.24); }
.kafel--dziala .kafel__nazwa{ color:var(--zubr-tekst); }

/* ---------------------------------------------------------------------------
   09 · KARTY, KROKI, FAQ
   ------------------------------------------------------------------------- */
.blok{ margin:clamp(2.75rem,1.8rem + 3vw,4rem) 0 0; }
.blok__wstep{ color:var(--muted); margin:10px 0 22px; font-size:1rem; }

.siatka{ display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.karta{
  background:var(--karta); border:1px solid var(--linia);
  border-radius:var(--promien); padding:18px 20px; box-shadow:var(--cien-1);
}
.karta h3{ margin:0 0 6px; }
.karta p{ margin:0; font-size:.93rem; color:var(--muted); }
.karta + .karta{ margin-top:0; }

.krok{
  display:flex; gap:15px; align-items:flex-start;
  background:var(--karta); border:1px solid var(--linia);
  border-radius:var(--promien); padding:17px 20px; margin-bottom:11px;
  box-shadow:var(--cien-1);
}
.krok__nr{
  flex:0 0 30px; height:30px; border-radius:var(--promien-m);
  background:var(--akcent-mieki); color:var(--akcent);
  font-weight:700; font-size:.86rem;
  display:flex; align-items:center; justify-content:center;
}
.krok h3{ margin:0 0 3px; }
.krok p{ margin:0; font-size:.93rem; color:var(--muted); }

.faq{
  background:var(--karta); border:1px solid var(--linia);
  border-radius:var(--promien); padding:2px 20px; box-shadow:var(--cien-1);
}
.faq details{ border-bottom:1px solid var(--linia-2); padding:14px 0; }
.faq details:last-child{ border-bottom:0; }
.faq summary{ cursor:pointer; font-weight:620; font-size:.98rem; letter-spacing:-.014em; }
.faq summary::marker{ color:var(--faint); }
.faq p{ margin:9px 0 0; font-size:.93rem; color:var(--muted); }

/* ---------------------------------------------------------------------------
   10 · CIEMNY PRZERYWNIK (dolne CTA) — z poświatami trzech modułów
   ------------------------------------------------------------------------- */
.ciemny{
  position:relative; overflow:hidden;
  background:#100D16; color:#F2F0F6;
  border-radius:var(--promien);
  padding:clamp(2rem,1.4rem + 2.2vw,3rem) clamp(1.25rem,.9rem + 1.6vw,2.25rem);
  margin:clamp(2.75rem,1.8rem + 3vw,4rem) 0 0;
  text-align:center;
}
.ciemny::before{
  content:""; position:absolute; inset:-40% -20% auto -20%; height:150%;
  background:
    radial-gradient(38% 46% at 18% 22%, rgba(242,174,62,.22), rgba(242,174,62,0) 70%),
    radial-gradient(42% 48% at 82% 32%, rgba(172,144,247,.26), rgba(172,144,247,0) 72%),
    radial-gradient(46% 52% at 46% 88%, rgba(79,219,140,.18), rgba(79,219,140,0) 70%);
  pointer-events:none;
}
.ciemny > *{ position:relative; z-index:1; }
.ciemny p{ color:#B9B3C6; }
.ciemny .przycisk{ background:#F2F0F6; color:#14111B; }

/* ---------------------------------------------------------------------------
   11 · STOPKA
   ------------------------------------------------------------------------- */
.dolny{
  border-top:1px solid var(--linia);
  margin-top:clamp(2.75rem,1.8rem + 3vw,4rem);
  padding:24px 0 44px;
  font-size:.86rem; color:var(--faint);
}
.dolny a{ color:var(--muted); }

/* ---------------------------------------------------------------------------
   12 · BRAMA — ekran logowania do panelu (dwie kolumny)
   ------------------------------------------------------------------------- */
.brama-tlo{ min-height:100vh; display:grid; place-items:center; padding:24px; }
.brama{
  width:min(880px,100%); background:var(--karta);
  border:1px solid var(--linia); border-radius:var(--promien);
  box-shadow:var(--cien-3); overflow:hidden;
  display:grid; grid-template-columns:1fr 1fr;
}
.brama__wejscie{ padding:38px 36px 34px; }
.brama__wejscie .marka{ margin-bottom:26px; }
.brama__wejscie h1{ font-size:1.32rem; font-weight:640; letter-spacing:-.022em; margin:0 0 6px; }
.brama__wstep{ color:var(--muted); font-size:.8rem; line-height:1.5; margin:0 0 22px; }
.brama__stopka{ margin-top:24px; font-size:.72rem; color:var(--faint); line-height:1.5; }
.brama__marka{
  position:relative; overflow:hidden; padding:38px 34px;
  background:#100D16; color:#F2F0F6;
  display:flex; flex-direction:column; justify-content:center; gap:18px;
}
.brama__marka::before{
  content:""; position:absolute; inset:-40% -20% auto -20%; height:130%;
  background:
    radial-gradient(38% 46% at 18% 22%, rgba(242,174,62,.22), rgba(242,174,62,0) 70%),
    radial-gradient(42% 48% at 82% 32%, rgba(172,144,247,.26), rgba(172,144,247,0) 72%),
    radial-gradient(46% 52% at 46% 88%, rgba(79,219,140,.18), rgba(79,219,140,0) 70%);
  pointer-events:none;
}
.brama__marka > *{ position:relative; z-index:1; }
.zdanie{ font-size:1.02rem; line-height:1.5; font-weight:560; letter-spacing:-.015em; margin:0; }
.etapy{ list-style:none; margin:0; padding:0; display:grid; gap:10px; }
.etapy li{ display:flex; align-items:baseline; gap:10px; font-size:.8rem; color:#B9B3C6; }
.kropka{ width:8px; height:8px; border-radius:50%; flex:none; transform:translateY(-1px); }
.etapy b{ color:#F2F0F6; font-weight:620; }
.brama__marka .drobne{ color:#A79FB7; margin:0; }

/* ---------------------------------------------------------------------------
   13 · KOMUNIKATY
   ------------------------------------------------------------------------- */
.info,.blad{
  padding:11px 14px; border-radius:var(--promien-m);
  margin:14px 0; font-size:.92rem; line-height:1.5;
}
.info{ background:rgba(79,219,140,.10); border:1px solid rgba(79,219,140,.26); color:var(--zubr-tekst); }
.blad{ background:rgba(179,38,30,.08); border:1px solid rgba(179,38,30,.22); color:var(--alarm-tekst); }
.info b,.blad b{ font-weight:640; }

/* ---------------------------------------------------------------------------
   14 · PANEL — lista zgłoszeń i szczegóły
   ------------------------------------------------------------------------- */
.filtry{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px; }
.filtry a{
  font-size:.82rem; text-decoration:none; color:var(--muted);
  background:var(--karta); border:1px solid var(--linia);
  border-radius:var(--promien-m); padding:7px 14px;
}
.filtry a:hover{ color:var(--ink); border-color:var(--linia-3); }
.filtry a.on{ background:var(--akcent); color:#FCFBFD; border-color:transparent; }
@media (prefers-color-scheme:dark){ .filtry a.on{ color:#14111B; } }

.tabela{
  width:100%; border-collapse:collapse; background:var(--karta);
  border:1px solid var(--linia); border-radius:var(--promien); overflow:hidden;
  box-shadow:var(--cien-1);
}
.tabela th{
  text-align:left; font-size:.68rem; text-transform:uppercase; letter-spacing:.07em;
  font-weight:640; color:var(--faint); padding:12px 14px; border-bottom:1px solid var(--linia);
  background:var(--karta-2);
}
.tabela td{ padding:13px 14px; border-bottom:1px solid var(--linia-2); font-size:.9rem; vertical-align:top; }
.tabela tr:last-child td{ border-bottom:0; }
.tabela tr:hover td{ background:var(--karta-2); }
.tabela a.adres{ color:var(--akcent); text-decoration:none; font-weight:620; }
.tabela a.adres:hover{ text-decoration:underline; }

/* plakietka statusu — promień z drabiny, nie 999px */
.plakietka{
  display:inline-block; font-size:.68rem; font-weight:700; letter-spacing:.02em;
  padding:4px 9px; border-radius:6px; white-space:nowrap; border:1px solid;
}
.plakietka--nowe{ background:rgba(179,38,30,.08); border-color:rgba(179,38,30,.22); color:var(--alarm-tekst); }
.plakietka--w_robocie{ background:rgba(242,174,62,.11); border-color:rgba(242,174,62,.28); color:var(--rys-tekst); }
.plakietka--wyslane{ background:rgba(79,219,140,.10); border-color:rgba(79,219,140,.26); color:var(--zubr-tekst); }
.plakietka--odrzucone{ background:var(--karta-3); border-color:var(--linia); color:var(--faint); }

.pusto{
  background:var(--karta); border:1px dashed var(--linia-3);
  border-radius:var(--promien); padding:40px; text-align:center; color:var(--faint);
}

.dane{ width:100%; border-collapse:collapse; font-size:.93rem; }
.dane td{ padding:7px 0; vertical-align:top; }
.dane td:first-child{ color:var(--faint); width:130px; }

.etap{
  font-size:.68rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
  color:var(--akcent); margin-bottom:7px;
}
.rzad{ display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-top:12px; }

/* konsola z gotową komendą */
.komenda{
  background:#100D16; color:#C7B2FF;
  font:13px/1.6 var(--kroj-mono);
  padding:14px 15px; border-radius:var(--promien-m);
  word-break:break-all; position:relative; padding-right:96px;
}
.komenda__kop{
  position:absolute; top:9px; right:9px;
  background:rgba(255,255,255,.10); color:#F2F0F6; border:1px solid rgba(255,255,255,.16);
  border-radius:6px; padding:5px 11px; font-size:12px; font-family:var(--kroj); cursor:pointer;
}
.komenda__kop:hover{ background:rgba(255,255,255,.18); }

.wroc{ font-size:.88rem; color:var(--muted); text-decoration:none; display:inline-block; margin:18px 0 0; }
.wroc:hover{ color:var(--ink); }

/* ---------------------------------------------------------------------------
   15 · SKRZYNKA POTWIERDZENIA (dziękujemy / popraw dane)
   ------------------------------------------------------------------------- */
.skrzynka{
  max-width:560px; margin:70px auto; background:var(--karta);
  border:1px solid var(--linia); border-radius:var(--promien);
  box-shadow:var(--cien-3); padding:36px 32px; text-align:center;
}
.skrzynka h1{ font-size:1.5rem; margin:0 0 12px; }
.skrzynka p{ color:var(--muted); margin:0 0 14px; font-size:.98rem; }
.znacznik{
  width:52px; height:52px; border-radius:var(--promien-m);
  background:rgba(79,219,140,.12); color:var(--zubr-tekst);
  font-size:26px; line-height:52px; margin:0 auto 16px;
}
.lista-bledow{ text-align:left; color:var(--alarm-tekst); margin:0 0 14px; padding-left:20px; font-size:.95rem; }
.lista-bledow li{ margin-bottom:6px; }

/* ---------------------------------------------------------------------------
   16 · TELEFON
   ------------------------------------------------------------------------- */
@media (max-width:760px){
  .triada,.siatka{ grid-template-columns:1fr; }
  .pola{ flex-direction:column; }
  .przycisk{ width:100%; }
  .brama{ grid-template-columns:1fr; }
  .brama__marka{ order:-1; padding:22px 24px; gap:12px; }
  .brama__wejscie{ padding:28px 24px 26px; }
  .etapy{ display:none; }
  .kol-szeroka{ display:none; }
}

/* ---------------------------------------------------------------------------
   17 · RUCH OGRANICZONY I DRUK
   ------------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  *{ animation:none !important; transition:none !important; }
}
@media print{
  .gorny,.dolny,.ciemny,.przycisk,.filtry{ display:none; }
  body{ background:#fff; color:#000; }
}
