/* ──────────────────────────────────────────────────────────────────────────────
   ping-land.css — TYLKO to, czego nie ma w arkuszach landingow webup.pl
   Serwer: /var/www/clients/client1/web31/web/public/css/ping-land.css
   Kopia w repo: ping-server/ping.ngo/ping-land.css

   Strona glowna ping.ngo stoi na DWOCH kopiach wdrozonych arkuszy portalu:
     /css/landing.css   = landings/_shared/landing.css  (hero, sekcje, kafle, cennik,
                          kroki, FAQ, pasek CTA, makieta maila `mock-mail` z pierscieniem
                          oceny `mr-*`, stos `pk-stack`, sciana logotypow `logo-wall`,
                          siatka liczb `sp-liczby`)
     /css/sc-style.css  = landings/cookie/style.css     (pasek `sc-top`, lista jezykow)
   Ten plik doklada wylacznie rzeczy, ktorych tam nie ma, bo sa wylacznie tutaj:
   przycisk „Sign in with Google", plakietka weryfikacji aplikacji i cztery bloki raportu.

   ⚠️ NIE DOPISUJ TU regul, ktore powinny byc we wspolnym arkuszu — jesli czegos brakuje
   na landingach webup.pl, poprawka idzie TAM, a tutaj tylko odswieza sie kopie
   (polecenie z README: `curl … > css/landing.css`).

   ⚠️ `main.css` (Pico 2024) NA TEJ STRONIE NIE JEST LADOWANY. Pozostale ekrany serwisu
   (podpinanie konta, regulamin, polityka, cookies) dalej na nim stoja razem z nakladka
   `webup.css` — tamtych dwoch plikow ta strona nie dotyka i odwrotnie.
   ────────────────────────────────────────────────────────────────────────────── */

/* ── GORA STRONY ──────────────────────────────────────────────────────────────
   Pasek jest `position:absolute` (ze `sc-style.css`), wiec plywa NAD ekranem
   powitalnym i nie zajmuje wysokosci. Tresc hero zaczynala sie przez to 43 px wyzej
   niz na smartcookie.io i cala gora wygladala na scisnieta (Oskar 17.10.2026:
   „caly header daj nizej, tak jak na smartcookie"). Zmierzone na obu stronach:
   smartcookie ma nadtytul na 136 px od gory, ping.ngo mial na 93 px — stad te 44 px.
   `.hero` liczy padding jako `calc(X + 73px)`, bo kompensuje `margin-top:-73px`,
   ktorym wspolny arkusz wsuwa ekran powitalny pod pasek nawigacji. */
@media (min-width: 761px) { .hero { padding-top: calc(88px + 73px); } }

/* ── PRZYCISK „POLACZ Z GOOGLE" ────────────────────────────────────────────────
   Wyglad wprost z wytycznych marki Google dla przycisku logowania, wariant jasny:
   wypelnienie #FFFFFF, obrys 1 px #747775, tekst #1F1F1F 14/20, znak 20 px, bez cienia.
   ⚠️ Znak Google wolno pokazac WYLACZNIE na przycisku logowania. Nie dorabiaj wlasnej
   wersji znaku, nie zmieniaj jego kolorow ani proporcji; `img/googleg.png` to oryginal
   z gstatic. Odstepstwa od wytycznych sa dwa i oba swiadome: pismo (Inter zamiast Google
   Sans Medium, ktorego nie hostujemy) oraz tekst — patrz komentarz przy `hero.cta`
   w `index.php`. Ten przycisk jest GLOWNYM wezwaniem na stronie, wiec w ekranie powitalnym
   i w pasku CTA dostaje wieksza wysokosc; kolorow nie ruszamy, bo ich ruszac nie wolno. */
.gsi-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 42px; padding: 10px 22px; border-radius: 999px;
  background: #fff; color: #1F1F1F; border: 1px solid #747775;
  font-size: .95rem; font-weight: 500; line-height: 20px; letter-spacing: .01em;
  text-decoration: none; white-space: nowrap; transition: background-color .15s;
}
.gsi-btn:hover  { background: #F7F8F8; color: #1F1F1F; }
.gsi-btn:active { background: #EFF0F0; }
/* Proporcji znaku nie wolno zmieniac — stad staly rozmiar i zakaz kurczenia. */
.gsi-btn img { width: 20px; height: 20px; flex: 0 0 20px; display: block; }
/* W ekranie powitalnym przycisk jest GLOWNYM wezwaniem strony, wiec dostaje wieksza wysokosc.
   Kolorow nie ruszamy, bo ich ruszac nie wolno. ⚠️ Pasek CTA na dole NIE MA juz przycisku
   Google — od 17.10.2026 prowadzi do zamowienia Assistanta (zwykly `btn-primary`), wiec reguly
   dla `.cta-strip .gsi-btn` zostaly stad zdjete zamiast wisiec martwe. */
.hero-ctas .gsi-btn {
  min-height: 52px; padding: 14px 28px; font-size: 1rem;
  box-shadow: 0 2px 10px rgba(15,23,42,.08);
}

/* Znak „Aplikacja zweryfikowana przez Google" — ZAWSZE POD PRZYCISKIEM, w jednej linijce,
   dokladnie tak szeroki jak przycisk, napis wysrodkowany.
   DROGA DO TEGO (trzy zgloszenia Oskara, zeby nikt tego nie cofnal):
     · byl pigulka z ramka — przy przycisku Google wygladal jak drugi przycisk;
     · byl przypisem lamanym na dwie linie (`max-width:215px`) — „daj w jednej linijce";
     · staneli OBOK siebie — i tu zaczely sie klopoty, bo miescili sie w kolumnie ekranu
       powitalnego (542 px) z zapasem CZTERECH pikseli: 307 + 12 + 219 = 538. Kazda drobnostka
       po stronie przegladarki — inne renderowanie Intera, powiekszenie strony, wiekszy domyslny
       rozmiar pisma — zjada te cztery piksele, plakietka spada pod przycisk i jest od niego
       wyraznie krotsza. U mnie w pomiarach miescila sie zawsze, u Oskara nigdy: „nie jest tej
       samej dlugosci", „dalej nie jest wysrodkowana", „dalej mi sie nie pokazuje".
   Dlatego NIE MA juz zadnego ukladu „obok" ani progu w pikselach: kolumna flex o szerokosci
   `max-content` jest dokladnie tak szeroka jak najszerszy element (czyli jak przycisk),
   a plakietka rozciaga sie do niej i srodkuje napis. Wyglada tak samo przy kazdej szerokosci
   okna i przy kazdym powiekszeniu. ⚠️ Nie wracaj tu z `flex-direction:row` ani z `max-width`
   na plakietce — to sa dokladnie te dwie rzeczy, ktore trzeba bylo trzy razy poprawiac. */
.pg-verified {
  display: inline-flex; align-items: center; justify-content: center; gap: 7px; white-space: nowrap;
  padding: 0; background: none; border: 0; box-shadow: none;
  font-size: .72rem; font-weight: 500; line-height: 1.3; color: var(--fg-secondary);
}
.pg-verified svg { flex: 0 0 auto; width: 15px; height: 15px; color: var(--green); }
.hero-ctas.pg-connect {
  flex-direction: column; align-items: stretch; gap: 12px;
  width: max-content; max-width: 100%;
}

/* ── CZTERY BLOKI RAPORTU W MAKIECIE MAILA ────────────────────────────────────
   Dyktando Oskara 17.10.2026: ocena konta (pierscien), zgodnosc z zasadami, propozycje,
   tresci, konwersje. Pierscien i jego opis bierzemy ze wspolnego arkusza (`mr-score`),
   a ponizej idzie gotowy stos `pk-stack` — tu zdejmujemy z niego wlasna ramke i cien,
   bo stoi juz wewnatrz koperty `mock-mail`. */
/* ⚠️ ZERO obramowan. Pierwsza wersja miala tu `border-top`, a tuz nad nim konczyl sie
   pierscien oceny, ktory ma wlasny `border-bottom` (`.mr-score` we wspolnym arkuszu) —
   dwie kreski dwa piksele od siebie czytaly sie jak ramka nad „Zgodnoscia z zasadami".
   Rozdziela je sam pierscien. */
.mock-mail .pk-stack.pg-raport {
  background: transparent; border: 0; box-shadow: none; padding: 0;
}
/* `border-radius` MUSI tu zejsc do zera. Wspolny arkusz daje wierszowi `border-bottom`
   i `border-radius:10px` naraz — kreska zakrzywia sie wtedy na obu koncach i cale trzy
   wiersze czytaja sie jak ramki dookola kazdego z nich (Oskar: „usun to obramowanie
   kazdego wiersza, dziwnie wyglada"). Zostaje prosta linijka rozdzielajaca. */
.pg-raport .pk-row { padding: 11px 0; align-items: center; border-radius: 0; }
.pg-raport .pk-row:last-of-type { border-bottom: 0; }
.pg-raport .pk-row b { font-size: .88rem; }
.pg-raport .pk-row span:not(.pk-ok) { font-size: .78rem; }
/* Blok „Nowe propozycje" to lista rzeczy do zatwierdzenia, wiec ma punkty. */
.pg-bul { list-style: none; margin: 3px 0 0; padding: 0; }
.pg-bul li {
  position: relative; padding: 2px 0 2px 13px;
  font-size: .78rem; line-height: 1.45; color: var(--fg-secondary);
}
.pg-bul li::before {
  content: ""; position: absolute; left: 2px; top: 10px;
  width: 4px; height: 4px; border-radius: 50%; background: var(--accent);
}
.pg-raport .pk-row i { font-size: .82rem; font-weight: 800; padding: 4px 11px; }
/* Kolor pigulki niesie werdykt: czerwony = zasady do naprawy, pomaranczowy = propozycje
   do zatwierdzenia, zielony = pieniadze, ktore juz wplynely. */
.pg-raport .pg-r1 i { background: #FEE2E2; color: var(--red); }
.pg-raport .pg-r2 i,
.pg-raport .pg-r3 i { background: var(--accent-soft); color: var(--accent-fg); }
.pg-raport .pg-r4 i { background: var(--green-soft); color: var(--green); }

/* ── OKRES PROBNY NA KARCIE CENNIKA ──────────────────────────────────────────── */
.pg-trial {
  display: inline-flex; align-items: center; padding: 4px 11px; border-radius: 999px;
  background: var(--green-soft); border: 1px solid color-mix(in srgb, var(--green) 28%, transparent);
  font-size: .76rem; font-weight: 800; letter-spacing: .01em; color: var(--green);
}
/* Karta Free ma w miejscu CTA oficjalny przycisk Google — musi byc rowno z przyciskami
   sasiadek, czyli przyklejony do dolu karty i na pelna szerokosc. */
.price-card .gsi-btn { margin-top: auto; width: 100%; }
.price-card .price-feats + .gsi-btn { margin-top: 18px; }
/* Kwota przy kursie Ad Grants. Mniejsza od nazwy i NIEŁAMLIWA, zeby „1 599 zl" nigdy nie
   zostalo rozciete miedzy wiersze. Zmierzone 18.10.2026 na zywej stronie: nazwa pogrubiona
   156 px, kwota 111 px, a szerokosc tekstu w karcie to 273 px przy 1120 px okna i tylko
   228 px w pasmie, w ktorym trzy karty jeszcze mieszcza sie obok siebie (~1000–1100 px).
   Mniejsza kwota (103 px) trzyma jeden wiersz od 1120 px w gore; nizej karta jest po prostu
   za waska i nie da sie tego scisnac bez nieczytelnego stopnia pisma — wtedy zdanie lamie
   sie PRZED kwota, czyli w jedynym miejscu, w ktorym to wyglada celowo. */
.price-feats .price-wart { font-size: .82em; white-space: nowrap; }

/* ── PRZYCISKI, KTORE OTWIERAJA KOSZYK ────────────────────────────────────────
   Od 18.10.2026 zamowienie nie wyprowadza juz na `/ping/zamow` — przycisk w pasku i w pasku
   CTA otwiera okno zamowienia TUTAJ, wiec z `<a>` zrobil sie `<button>`. Arkusz landingow zna
   te klasy wylacznie jako odnosniki, wiec `<button>` dostaje od przegladarki wlasny kroj
   pisma, obwodke i kursor — stad ten reset. Klasy `.price-cta` tym przyciskom NIE DAJEMY:
   niesie `width:100%` i rozlalaby przycisk w pasku na cala szerokosc. */
/* ⚠️ TYLKO `font-family`, NIGDY skrot `font: inherit`. Skrot zeruje przy okazji rozmiar
   i GRUBOSC pisma, a te ustawiaja klasy z arkusza landingow — po `font: inherit` napis
   w pasku CTA przestawal byc pogrubiony (zmierzone na podgladzie). Przegladarka nie
   dziedziczy w `<button>` samej RODZINY, i tylko to tu uzupelniamy. */
button.nav-cta, button.btn-primary, button.price-cta {
  font-family: inherit; border: none; cursor: pointer; -webkit-appearance: none;
}
/* Pasek CTA ustawia dzieci w kolumnie i sciaga je do srodka — `<button>` nie dziedziczy
   tego po `<a>`, wiec bez tego przycisk rozciagalby sie na szerokosc paska. */
.cta-strip > button.btn-primary { align-self: center; }

/* ── WYBOR JEZYKA W PASKU — REGULY STOJA W `landing.css` ──────────────────────
   Od 18.10.2026 caly przelacznik (pigulka w pasku, wiersz menu w burgerze, lista
   jezykow) opisuje WSPOLNY `landing.css`, bo taki sam pasek ma dzis serwis glowny:
   Oskar kazal „scentralizowac tez na stronie glownej wybor jezyka" i „ujednolicic,
   zaraz bedzie rozjazd". Kopia, ktora stala tutaj, byla dokladnie tym rozjazdem
   czekajacym na pierwsza zmiane po jednej stronie. Szukasz regul — `landing.css`,
   blok „WYBOR JEZYKA W PASKU" i jego czesc w `@media (max-width:430px)`. */

/* ── CO DOKLADNIE MONITORUJEMY: DWIE KOLUMNY ──────────────────────────────────
   Po lewej regulamin (czego Google wymaga), po prawej skutecznosc (co podnosi wynik).
   Kolumny rozroznia sam akcent naglowka i kropki przy pozycjach — zadnych dwoch
   roznych ramek, bo to jest jedna tabela czytana w dwie strony. */
.pg-dwie {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
  gap: 18px; margin-top: 34px; text-align: left;
}
.pg-kol {
  padding: 26px 26px 22px; border-radius: var(--r-xl);
  background: var(--surface); border: 1px solid var(--border); box-shadow: var(--shadow-sm);
}
.pg-kol h3 {
  display: flex; align-items: center; gap: 10px; margin: 0 0 6px;
  font-size: 1.02rem; font-weight: 700; color: var(--navy); letter-spacing: -.01em;
}
/* Lewa kolumna: ZIELONA kropka. Prawa: zamiast kropki stoi ZNAK ASYSTENTA, a caly naglowek
   idzie w kolorze marki (Oskar 18.10.2026) — bo wszystko, co w niej jest, robi Assistant,
   i to ma byc widac bez czytania.
   ⚠️ Kropka przy zasadach byla pomaranczowa i musiala sie zmienic razem z tamtym naglowkiem:
   od chwili, gdy pomaranczowy znaczy „to robi Assistant", pomaranczowa kropka przy regulach
   Google mowila nieprawde. Zielony = stan zgodny, i tak samo czyta sie w audycie. */
.pg-kol-zasady h3::before { content: ""; flex: 0 0 auto; width: 10px; height: 10px;
  border-radius: 50%; background: var(--green); }
.pg-kol-wynik h3 { color: var(--accent-fg); gap: 8px; }
.pg-kol-wynik h3 .pg-ico-asst { vertical-align: 0; }
/* Zdanie pod naglowkiem kolumny bylo tego samego rozmiaru i koloru co opisy pozycji nizej,
   wiec czytalo sie jak pierwsza pozycja listy (Oskar 18.10.2026: „te podnaglowki daj troche
   w innym stylu, bo sie zlewa"). Teraz to pasek, ktory odcina sie od listy.
   Zostal JEDEN — w kolumnie skutecznosci; kolumna zasad stracila swoj 18.10.2026 razem ze
   zdaniem o blokadzie konta. Pasek jest pomaranczowy, nie zielony: od chwili, gdy naglowek
   kolumny dostal iskre Assistanta, pomaranczowy jest na tej stronie kolorem Assistanta
   (linijki „co z tym robi" po lewej, znak w karcie cennika, ten pasek). Zielony pasek pod
   pomaranczowym naglowkiem czytal sie jak druga, osobna rzecz. */
.pg-kol-p {
  margin-top: 10px; padding: 9px 12px; border-radius: 10px;
  font-size: .8rem; line-height: 1.45; font-weight: 600;
  background: var(--accent-soft); color: var(--accent-fg);
}
.pg-kol ul { list-style: none; margin: 16px 0 0; padding: 0; }
.pg-kol li {
  padding: 12px 0 11px; border-top: 1px solid var(--border-soft);
  font-size: .83rem; line-height: 1.5; color: var(--fg-secondary);
}
.pg-kol li b { display: block; margin-bottom: 3px; font-size: .92rem; color: var(--navy); }
/* Co w danym punkcie robi SAM Assistant — osobna, pomaranczowa linijka pod opisem.
   Przed napisem stoi znak asystenta (iskra, `pg_asst()`), a nie kreska jak wczesniej:
   ten sam rysunek pada w czterech miejscach na stronie, wiec czytelnik widzi, ze to jedna
   i ta sama rzecz, a nie cztery osobne obietnice.
   `display:flex` (a nie `inline-flex`): `<em>` stoi w HTML-u TUZ ZA opisem punktu, wiec jako
   element liniowy doklejal sie do konca zdania — „…10–35 na grupe reklam ✦ Assistant wstrzymuje
   je sam" czytalo sie jak dalszy ciag zdania. Jako element blokowy zaczyna wlasna linijke. */
.pg-asst {
  display: flex; width: fit-content; align-items: center; gap: 5px; margin-top: 6px;
  font-style: normal; font-size: .76rem; font-weight: 700; color: var(--accent-fg);
}
/* ── ZNAK ASYSTENTA ───────────────────────────────────────────────────────────
   Iskra z `pg_asst()`. Jeden rysunek na wszystkie miejsca, w ktorych pada nazwa „Assistant":
   kafel „Co robi PING", karta cennika i linijki „co z tym robi Assistant" w kolumnie zasad.
   Kolor bierze z `currentColor`, wiec tu nie ma zadnej reguly koloru — znak przyjmuje barwe
   swojego napisu.
   `vertical-align` zamiast `flex`, bo znak stoi WEWNATRZ zdania i musi siedziec
   na linii pisma, a nie w osobnej kolumnie.
   ⚠️ Stopka kolumny skutecznosci (`pg-kol-stopka`) zeszla 18.10.2026 — informacja „to robi
   Assistant" stoi teraz NA GORZE kolumny, w pasku `pg-kol-p`. */
.pg-ico-asst { flex: 0 0 auto; vertical-align: -2px; }
.sp-l1 .pg-ico-asst, .price-name .pg-ico-asst { margin-right: 6px; }
/* Karta cennika: nazwa planu jest duza i granatowa, wiec tu — jedyny raz — znak dostaje
   wlasny kolor marki. Obok niego stoi pomaranczowa plakietka „najczesciej wybierany"
   i pomaranczowy przycisk, wiec granatowa iskra gubilaby sie w napisie. */
.price-name .pg-ico-asst { vertical-align: -2px; color: var(--accent); }

/* ── DOPISKI PRZY KROKACH 1/2/3 ───────────────────────────────────────────────
   Kroki maja rozna dlugosc (pierwszy trzy linijki, pozostale dwie), wiec dopisek doklejony
   po akapicie startowal w kazdym kaflu na innej wysokosci i trzy kreski rozjezdzaly sie
   o kilkanascie pikseli. Kafel jest kolumna flex, a dopisek dostaje `margin-top:auto` —
   wszystkie trzy siadaja rowno przy dolnej krawedzi, niezaleznie od dlugosci kroku. */
.steps .step { display: flex; flex-direction: column; }
.steps .step .step-partner { margin-top: auto; }

/* ── DROBIAZGI ───────────────────────────────────────────────────────────────── */
.hero-ctas.pg-srodek { justify-content: center; margin-top: 30px; }
/* Stopka kafla „Co robi PING" — ta sama klasa co „Jesteśmy partnerem Goodstack" pod
   krokiem 1 na `/google-ad-grants`, wiec wyglad bierze sie ze wspolnego arkusza.
   Tutaj tylko pierwsza linijka ma byc wyrozniona kolorem marki. */
.benefit-card .step-partner .sp-l1 { font-weight: 700; color: var(--accent-fg); }

@media (max-width: 760px) {
  /* Na telefonie przycisk na pelna szerokosc kolumny, a razem z nim cala kolumna CTA —
     inaczej `width:max-content` trzymaloby ja na szerokosci napisu w przycisku.
     ⚠️ Klasa to `gsi-btn`, nie `btn-primary` — przycisk ze znakiem Google zastapil tamten
     17.10.2026, a stara regula przez trzy wersje nie dotyczyla niczego.
     Plakietka zostaje w jednej linijce takze tu: przy .72rem napis zajmuje ~203 px i miesci
     sie nawet na ekranie 360 px (po marginesach zostaje 312 px). */
  .hero-ctas.pg-connect { width: 100%; }
  .hero-ctas.pg-connect .gsi-btn { width: 100%; }
}
