/* ============================================================
   Branding sekcji sprzedazowej pod kaczki.stargard.pl (decyzja A3).

   Plik WLASNY, ladowany PO css/style.css. css/style.css NIE JEST
   edytowany, bo to zwendorowany Bootstrap 4.3.1 + szablon sklejone
   w 8333 linie (naglowek "Bootstrap v4.3.1" w liniach 1-6),
   a #e83e8c to bootstrapowe --pink uzywane w calym frameworku.

   UWAGA NA KOMENTARZE. Nie wolno tu zacytowac sekwencji zamykajacej
   komentarz CSS — komentarze CSS sie NIE zagniezdzaja. Cytat naglowka
   Bootstrapa razem z jego znacznikiem konca zamykal ten komentarz juz
   w linii 6; reszta naglowka stawala sie smieciem, a odzysk parsera
   pochlanial nastepna regule az do jej klamry. Efekt: regula
   .contact-wrap NIE ISTNIALA w arkuszu (zmierzone: 7 regul zamiast 8,
   backgroundImage sekcji nadal "linear-gradient(135deg, #044393, #3b9fdb)"),
   czyli sekcja zostawala jasnoniebieska mimo poprawnego pliku.

   Zmienne --kacz-* pochodza z :root w css/seats_style.css. Oba pliki
   sa ladowane wszedzie tam, gdzie ladowany jest ten — takze w
   admin/index.php — wiec var() zawsze sie rozwiazuje.

   ZASADA DWOCH TRYBOW. Strona ma DWA tla: ciemna sekcje sprzedazowa
   (.contact-wrap, gradient granatowy) i jasne tlo strony/modali
   (body #fafafa, .modal-content #fff). Ten sam kolor odnosnika nie
   moze obslugiwac obu: zolty #ffd600 daje 8.01:1 na granacie, ale
   1.41:1 na bieli. Dlatego odnosniki sa rozdzielone kontekstem.
   ============================================================ */

/* ------------------------------------------------------------------
   TLO SEKCJI SPRZEDAZOWEJ
   Bylo: linear-gradient(135deg, #044393 0%, #3b9fdb 100%) — style.css:8218,
   z fallbackiem #7f279c. Jasny koniec #3b9fdb dawal bialemu tekstowi
   2.93:1, czyli PONIZEJ progu AA — to nie jest tylko zmiana estetyczna.
   Nowy gradient to dokladnie ten ze strony glownej (.prize-card.main:
   linear-gradient(135deg, #1a3a6a, #0f2548)), z --navy-mid #112040
   jako ciemnym koncem.

   background-color i background-image sa deklarowane OSOBNO, nie
   skrotem: skrot `background: linear-gradient(...)` zeruje
   background-color do transparent, przez co getComputedStyle oddaje
   "rgba(0, 0, 0, 0)" i kazdy pomiar kontrastu jest fikcja.
   ------------------------------------------------------------------ */
.contact-wrap {
  background-color: var(--kacz-granat);
  background-image: linear-gradient(135deg, var(--kacz-granat) 0%, var(--kacz-granat-gleboki) 100%);
  filter: none;                  /* kasuje progid:DXImageTransform ze starego szablonu */
}

/* ------------------------------------------------------------------
   ODNOSNIKI — TRYB JASNY (domyslny: body #fafafa, modale #fff)
   Bylo: #f5a506 — style.css:8142 — 2.05:1 na bieli, czyli zdecydowanie
   ponizej AA. Blekit rzeki #1a6b9a daje 5.80:1 na bieli i 5.57:1 na #fafafa.
   ------------------------------------------------------------------ */
a {
  color: var(--kacz-blekit-ciemny);
}
a:hover, a:focus {
  color: var(--kacz-granat);     /* 11.31:1 na bieli */
}

/* ------------------------------------------------------------------
   ODNOSNIKI — TRYB CIEMNY (sekcja sprzedazowa na granacie)
   ------------------------------------------------------------------ */
.contact-wrap a {
  color: var(--kacz-zolty);      /* 8.01:1 na #1a3a6a, 11.42:1 na #112040 */
}
.contact-wrap a:hover,
.contact-wrap a:focus {
  color: var(--kacz-pomaranczowy);   /* 4.79:1 na #1a3a6a */
}

/* ------------------------------------------------------------------
   PRZYCISK GLOWNY ("Zarezerwuj i zaplac")
   Bylo: #28a745 z bialym tekstem (3.13:1 — ponizej AA) i hoverem #8efa00.
   Jest: dziob kaczki #ff8a00 z granatowym tekstem (6.81:1), hover na
   korpus kaczki #ffd600 (11.42:1). !important, bo oryginal tez go ma
   (style.css:8292-8298).
   Kontrast NIETEKSTOWY przycisku wobec tla sekcji: 4.79:1 (prog 1.4.11 = 3:1).
   ------------------------------------------------------------------ */
.btn.btn-primary {
  background: var(--kacz-pomaranczowy) !important;
  border-color: var(--kacz-pomaranczowy) !important;
  color: var(--kacz-granat-gleboki) !important;
}
.btn.btn-primary:hover,
.btn.btn-primary:focus {
  background: var(--kacz-zolty) !important;
  border-color: var(--kacz-zolty) !important;
  color: var(--kacz-granat-gleboki) !important;
}

/* ------------------------------------------------------------------
   BLOK O CELU STATUTOWYM (Task 14 pkt 3)
   Bylo: <p class="text-orange"><strong> — czyli zolty (#ffd600) + waga 700
   + wyrownanie do srodka naraz, na ~490 px wysokosci przy 390 px szerokosci
   (17 linii po ~33 znaki). Trzy wzmocnienia jednoczesnie meczą wzrok, a
   wyrownanie do srodka daje przy 17 liniach postrzepiona LEWA krawedz —
   czyli kazda kolejna linia zaczyna sie w innym miejscu i oko traci punkt
   powrotu. (W tresci zadania blok opisano jako wyjustowany; zmierzone
   text-align to `center`, dziedziczone z .text-center rodzica. Objaw i
   lekarstwo sa te same.)

   Zostaje jedno wzmocnienie: nic. Tekst ciagly ma byc tekstem ciaglym.
   #ffffff daje 11.31:1 na #1a3a6a i 16.10:1 na #112040, czyli prog 4.5:1
   jest spelniony wobec OBU koncow gradientu sekcji. Zolty zostaje na
   akcenty (odnosniki, kwoty, obrys wybranego numeru).

   max-width w jednostce `ch` ogranicza dlugosc linii na szerokim ekranie
   (na 1440 px blok mial 1079 px, czyli ~150 znakow w linii — dwa razy
   wiecej niz zalecane 45-75). Na 390 px `ch` nie dziala, bo szerokosc
   okna jest mniejsza niz limit, wiec uklad mobilny sie nie zmienia.
   ------------------------------------------------------------------ */
.contact-wrap .cel-statutowy {
  margin: 0 auto;
  max-width: 68ch;
  color: #ffffff;
  font-weight: 400;
  text-align: left;
  line-height: 1.7;
}

/* ------------------------------------------------------------------
   ETYKIETY POL FORMULARZA (Task 14 pkt 2)
   Cztery pola (imie, nazwisko, e-mail, telefon) mialy WYLACZNIE
   placeholder. Placeholder znika w chwili wpisania tresci, wiec przy
   sprawdzaniu formularza przed wyslaniem nie da sie stwierdzic, ktore
   pole jest ktore — a czytnik ekranu nie ma czego ogloszic (placeholder
   nie jest nazwa dostepna wg WCAG 3.3.2 i 4.1.2).

   Etykieta jest NAD polem, nie plywajaca: plywajaca wymaga stalego
   miejsca na etykiete wewnatrz pola, czyli podniesienia wysokosci
   kontrolki — a to na 390 px kosztuje wiecej niz 13.6-pikselowa linijka
   tekstu. Zmierzony przyrost wysokosci formularza na 390 px: 4 x 22 px.

   #ffffff daje 11.31:1 na jasnym koncu gradientu (#1a3a6a) i 16.10:1 na
   ciemnym (#112040). 0.85rem = 13.6 px, czyli tekst ZWYKLY (prog 4.5:1).
   ------------------------------------------------------------------ */
.contact-wrap .contactForm .field_label {
  display: block;
  margin-bottom: 2px;
  color: #ffffff;
  font-size: 0.85rem;
  font-weight: 700;
  line-height: 1.3;
}

/* ------------------------------------------------------------------
   PRZYCISK NIEAKTYWNY PRZY ZEROWYM WYBORZE (Task 14 pkt 2)
   Stan `disabled` nadaje js/seats_script.js, NIE atrybut w HTML-u.
   To jest swiadome zabezpieczenie: gdyby seats_script.js sie nie
   zaladowal, przycisk zostaje aktywny (czyli zachowanie sprzed zmiany),
   a nie martwy na zawsze. Okno #no_selected_seats_alert ZOSTAJE jako
   druga linia obrony — stan przycisku da sie obejsc narzedziami
   deweloperskimi, a walidacja po stronie klienta nigdy nie jest bramka.

   #b9c2cf z tekstem #112040 daje 8.84:1 (tekst) i 6.16:1 wobec tla
   sekcji (element nietekstowy) — czyli progi sa spelnione, mimo ze
   komponent nieaktywny jest z nich wyjety (WCAG 1.4.3, wyjatek
   "Incidental / inactive user interface component").
   Specyficznosc (0,4,0) bije `.btn.btn-primary:hover` (0,3,0) —
   inaczej najechanie myszka rozswietlaloby martwy przycisk na zolto.
   ------------------------------------------------------------------ */
.contact-wrap .btn.btn-primary:disabled,
.contact-wrap .btn.btn-primary[disabled] {
  background: #b9c2cf !important;
  border-color: #b9c2cf !important;
  color: var(--kacz-granat-gleboki) !important;
  cursor: not-allowed;
  opacity: 1;
}

.contact-wrap .submit_hint {
  margin: 8px 0 0;
  color: #ffffff;              /* 11.31:1 / 16.10:1 */
  font-size: 0.85rem;
  line-height: 1.4;
}

/* ------------------------------------------------------------------
   .bg-primary — bylo #d62196 (style.css:8163). Dzis NIE JEST uzywane
   w zadnym szablonie tej aplikacji; nadpisanie jest zabezpieczeniem na
   wypadek uzycia klasy Bootstrapa w przyszlej tresci, zeby nie wjechal
   rozowy szablonowy akcent.
   ------------------------------------------------------------------ */
.bg-primary {
  background: var(--kacz-granat) !important;
}
