/* Lejek i kasa sklepu - wygląd nowej kasy 1:1 z makietą projekty/cpo/budowa/makiety-sekcji/kasa-nowa.html (css/kasa-nowa.css,
   prefiks kn- -> lk-; bez części tylko z makiety: pasek przełączników, objaśnienia, atrapa mapy). Druga część pliku mapuje prawdziwy
   HTML WooCommerce 11 / Salient 18.3 (form-row, payment_box, terms, notices) na te same wzory. Działa tylko na body.lk-kasa.
   Kolory sklepu ze zmiennych Salienta --nectar-*; stałe kolory (błąd, sukces, neutralne, obramowanie 3:1) wg KASA-NOWA-2026-10-16.md „Kolory”. */
body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy {
  /* 1.1.2 (Wiktor 21.10 22:53: „wszystkie kolory z motywu mają być brane”): kolory z motywu sklepu (Salient --nectar-*); szarości, linie, tło
     i kolor „gotowe” liczone z koloru tekstu, tła i akcentu motywu (color-mix). Stały zostaje tylko kolor błędu i ostrzeżenia (znak stanu). */
  --lk-akcent: var(--nectar-accent-color, #1D4ED8); --lk-dod1: var(--nectar-extra-color-1, #1E3A5F); --lk-dod2: var(--nectar-extra-color-2, #F3F4F6);
  --lk-dod3: var(--nectar-extra-color-3, #166534); --lk-tekst: var(--nectar-font-color, var(--lk-tekst-motyw, #172033));
  --lk-karta: var(--nectar-bg-color, #ffffff); --lk-na-akcencie: var(--nectar-font-light-color, #ffffff);
  --lk-slaby: color-mix(in srgb, var(--lk-tekst) 72%, var(--lk-karta)); --lk-linia: color-mix(in srgb, var(--lk-tekst) 13%, var(--lk-karta));
  --lk-linia-mocna: color-mix(in srgb, var(--lk-tekst) 24%, var(--lk-karta)); --lk-obramowanie: color-mix(in srgb, var(--lk-tekst) 55%, var(--lk-karta));
  --lk-obramowanie-hover: color-mix(in srgb, var(--lk-tekst) 40%, var(--lk-karta));
  --lk-tlo: color-mix(in srgb, var(--lk-dod2) 55%, var(--lk-karta)); --lk-tlo-zdjecia: color-mix(in srgb, var(--lk-tekst) 5%, var(--lk-karta));
  --lk-ok: color-mix(in srgb, var(--lk-akcent) 70%, var(--lk-tekst)); --lk-ok-tekst: color-mix(in srgb, var(--lk-akcent) 60%, var(--lk-tekst));
  --lk-ok-tlo: color-mix(in srgb, var(--lk-akcent) 8%, var(--lk-karta));
  --lk-blad: #b42318; --lk-blad-tlo: #fef3f2;
  /* 1.1.3 (Wiktor 22.10 11:38: „niech będzie zielony wszędzie, na wszystkich sklepach, bez wyjątku, a nie z koloru motywu”): jedyny stały kolor
     poza błędem - informacja o dostawie i „Darmowa” przy dostawie. 1.1.6 (Wiktor 23.10 23:23: „#44C649 - kolor z allegro”): ten sam kolor
     we wszystkich miejscach z datą dostawy (kafel formy, podsumowanie, pod przyciskiem, koszyk, Dziękujemy). 1.1.7 (Wiktor 24.10 10:37, raport
     projekty/fabrykator/Backup/2026-10-24_KASA-KOLOR-GUST.md): #357d23 - odcień x-kom, ciemniejszy; kontrast 5,11:1 na białym, 4,72-4,75:1 na tłach
     kasy, 4,54:1 na plakietce „Darmowa” (WCAG AA 4,5:1). Tło plakietki najwyżej ok. 10% tej zieleni, inaczej kontrast spada poniżej 4,5:1. */
  --lk-dostawa: #357d23;
  --lk-akcent-tlo: color-mix(in srgb, var(--lk-akcent) 7%, var(--lk-karta));
  --lk-akcent-ring: color-mix(in srgb, var(--lk-akcent) 28%, transparent);
  --lk-akcent-ciemny: color-mix(in srgb, var(--lk-akcent) 82%, var(--lk-tekst));
  --lk-r: 16px; --lk-r-maly: 12px;
  --lk-cien: 0 1px 2px color-mix(in srgb, var(--lk-tekst) 5%, transparent), 0 1px 3px color-mix(in srgb, var(--lk-tekst) 6%, transparent);
  --lk-cien-duzy: 0 24px 60px -12px color-mix(in srgb, var(--lk-tekst) 28%, transparent);
}
/* Przeglądarka bez color-mix (Safari < 16.2, starsze Androidy): pochodne z motywu byłyby nieważne (pola bez obramowań, tło przezroczyste) -
   zapas = neutralne wartości z 1.1.1; kolory główne (akcent, dodatkowe, tekst, karta) nadal z motywu. */
@supports not (color: color-mix(in srgb, red, blue)) {
  body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy {
    --lk-slaby: #586174; --lk-linia: #dfe3ea; --lk-linia-mocna: #c5ccd8; --lk-obramowanie: #7c8698; --lk-obramowanie-hover: #8f99aa;
    --lk-tlo: #f4f6f9; --lk-tlo-zdjecia: #f1f3f6; --lk-ok: #15803d; --lk-ok-tekst: #166534; --lk-ok-tlo: #ecfdf3;
    --lk-akcent-tlo: #f4f6f9; --lk-akcent-ring: rgb(29 78 216 / 28%); --lk-akcent-ciemny: var(--lk-akcent);
    --lk-cien: 0 1px 2px rgb(16 24 40 / 5%), 0 1px 3px rgb(16 24 40 / 6%); --lk-cien-duzy: 0 24px 60px -12px rgb(16 24 40 / 28%);
  }
}
body.lk-kasa { background: var(--lk-tlo) !important; color: var(--lk-tekst); -webkit-text-size-adjust: 100%; overflow-x: hidden; }
/* 1.1.6: Salient ma w stylach dynamicznych „label span { color: <akcent> }”; Salient 18 znosi to regułą „form label span { color: inherit }”,
   Salient 16 (benilo) nie, więc nazwy form dostawy i daty w kaflach (span w label) były w kolorze akcentu. Tekst w etykietach dziedziczy kolor jak w Salient 18;
   span-y z własnym kolorem modułu (klasy lk-*) mają mocniejsze reguły. */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) label span { color: inherit; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta { color: var(--lk-tekst) !important; } /* 1.1.6: tytuły płatności kolorem tekstu (Wiktor 23:35), jak kafel dostawy */
/* tło strony (--lk-tlo, od 1.1.2 z motywu) także w koszyku i na Dziękujemy; kontenery Salienta przezroczyste, żeby tło było widać za kartami */
body.lk-koszyk, body.lk-dziekujemy { background: var(--lk-tlo) !important; }
:is(body.lk-koszyk, body.lk-dziekujemy) :is(#ajax-content-wrap, .container-wrap, .main-content) { background: transparent !important; }
html:has(body.lk-kasa) { scroll-padding-top: 16px; }
body.lk-kasa .lk-kasa-uklad, body.lk-kasa .lk-naglowek, body.lk-kasa .lk-stopka, body.lk-kasa .lk-telefon-blok, body.lk-kasa .lk-przyklejony, body.lk-kasa .lk-pasek-dostawy,
body.lk-kasa .lk-zaslona, body.lk-kasa form#order_review {
  font-size: 15px; line-height: 1.5; color: var(--lk-tekst); -webkit-font-smoothing: antialiased; letter-spacing: normal; text-transform: none;
}
body.lk-kasa .lk-kasa-uklad *, body.lk-kasa .lk-kasa-uklad *::before, body.lk-kasa .lk-kasa-uklad *::after, body.lk-kasa .lk-naglowek *, body.lk-kasa .lk-przyklejony *,
body.lk-kasa .lk-stopka *, body.lk-kasa .lk-telefon-blok *, body.lk-kasa form#order_review * { box-sizing: border-box; }
body.lk-kasa .lk-kasa-uklad h1, body.lk-kasa .lk-kasa-uklad h2, body.lk-kasa .lk-kasa-uklad h3, body.lk-kasa form#order_review h2 {
  font-family: inherit; color: var(--lk-tekst); text-transform: none; letter-spacing: normal; padding: 0;
}
body.lk-kasa svg.lk-i { width: 20px; height: 20px; flex: none; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; display: inline-block; }
body.lk-kasa .lk-kasa-uklad a, body.lk-kasa .lk-naglowek a, body.lk-kasa form#order_review a { color: var(--lk-akcent); }
/* krój z motywu; wielkość, grubość i kolor ustawiają klasy komponentów (bez „font: inherit”, który nadpisywał 14 px linków na 15 px) */
/* linki w tekście podkreślone jak w makiecie (motyw zdejmuje podkreślenie) */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) :is(.lk-rodo, .lk-prywatnosc, .lk-zgoda, .lk-bledy, .lk-stopka-linki) a { text-decoration: underline !important; }
body.lk-kasa .lk-kasa-uklad button { font-family: inherit; letter-spacing: normal; text-transform: none; }

/* ---------- kasa zamknięta: bez nagłówka, menu i stopki motywu (decyzja Wiktora 16.10) ---------- */
body.lk-kasa #header-outer, body.lk-kasa #header-space, body.lk-kasa #header-secondary-outer, body.lk-kasa #search-outer, body.lk-kasa #slide-out-widget-area,
body.lk-kasa #slide-out-widget-area-bg, body.lk-kasa #footer-outer, body.lk-kasa #to-top, body.lk-kasa #page-header-wrap, body.lk-kasa #page-header-bg,
body.lk-kasa .nectar-global-section.before-footer, body.lk-kasa .nectar-global-section.after-nav, body.lk-kasa #ajax-loading-screen,
body.lk-kasa .woocommerce-breadcrumb, body.lk-kasa .main-content > .row > h1.entry-title,
:is(body.lk-kasa, body.lk-dziekujemy:has(.lk-naglowek)) :is(.nectar-slide-in-cart, .nectar-slide-in-cart-bg, .nectar-woo-cart, #mobile-cart-link) { display: none !important; } /* wysuwany koszyk Salienta („Cart” i szare kółko zamknięcia) - kasa zamknięta; na Dziękujemy z naszym nagłówkiem (Salienta schowany jak w dziekujemy.css) koszyk po zamówieniu jest pusty */
body.lk-kasa #ajax-content-wrap, body.lk-kasa .container-wrap, body.lk-kasa .container-wrap .container, body.lk-kasa .main-content, body.lk-kasa .main-content > .row,
body.lk-kasa .container-wrap .row > .woocommerce, body.lk-kasa .entry-content {
  background: transparent !important; padding: 0 !important; margin: 0 !important; max-width: none !important; width: auto !important; min-height: 0 !important; float: none !important;
}
body.lk-kasa .container-wrap { padding-top: 0 !important; }
body.lk-kasa { padding-top: 0 !important; margin-top: 0 !important; }

/* ---------- pasek nad nagłówkiem (Z11) i nagłówek kasy ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pasek-dostawy { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 36px; padding: 6px 16px; background: var(--lk-dod1); color: var(--lk-na-akcencie) !important; font-size: 13px !important; font-weight: 500; text-align: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pasek-dostawy svg.lk-i { width: 16px; height: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-naglowek { background: var(--lk-karta); border-bottom: 1px solid var(--lk-linia); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-naglowek-in { max-width: 1180px; margin: 0 auto; padding: 12px 16px; display: flex; align-items: center; gap: 12px; min-height: 60px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-logo-link { display: inline-block; line-height: 0; text-decoration: none !important; color: inherit; } /* logo prowadzi na stronę główną */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-logo { display: block; height: 26px; width: auto; max-width: 160px; object-fit: contain; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-logo-tekst { height: auto; font-weight: 700; font-size: 18px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bezpiecznie { margin-left: auto; display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 500; color: var(--lk-slaby); line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bezpiecznie svg.lk-i { width: 16px; height: 16px; color: var(--lk-ok); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tel-ikona { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; color: var(--lk-tekst) !important; border: 1px solid var(--lk-linia); text-decoration: none; flex: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tel-ikona:hover { border-color: var(--lk-linia-mocna); background: var(--lk-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tel-tekst { display: none; font-size: 13px; color: var(--lk-slaby) !important; text-decoration: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tel-tekst b { color: var(--lk-tekst); font-weight: 600; white-space: nowrap; }

/* ---------- układ ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kasa-uklad { max-width: 1180px; margin: 0 auto; padding: 16px 16px 24px; display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-lewa, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-prawa { min-width: 0; display: grid; gap: 16px; align-content: start; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tytul-strony { font-size: 22px !important; line-height: 1.25 !important; font-weight: 600 !important; margin: 4px 0 0 !important; letter-spacing: -.01em !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tytul-strony span { display: block; font-size: 13px; font-weight: 400; color: var(--lk-slaby); letter-spacing: 0; margin-top: 2px; }

/* ---------- karty i sekcje ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-karta { background: var(--lk-karta); border: 1px solid var(--lk-linia); border-radius: var(--lk-r); box-shadow: var(--lk-cien); padding: 16px; min-width: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-sekcja-glowa { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-nr { display: inline-grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: var(--lk-akcent); color: var(--lk-na-akcencie); font-size: 14px; font-weight: 600; flex: none; line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-sekcja-glowa h2, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-koniec-tytul { font-size: 18px !important; line-height: 1.3 !important; margin: 0 !important; font-weight: 600 !important; letter-spacing: -.005em !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-sekcja-glowa small { display: block; font-size: 13px; font-weight: 400; color: var(--lk-slaby); letter-spacing: 0; line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-koniec-tytul { margin: 0 0 12px !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-gora > .lk-sekcja-glowa, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-koniec > .lk-sekcja-glowa { margin-bottom: 12px; }

/* ---------- podsumowanie zamówienia ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-miniatura { position: relative; width: 64px; height: 64px; border-radius: 12px; background: var(--lk-tlo-zdjecia); border: 1px solid var(--lk-linia); display: grid; place-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-miniatura img { width: 56px !important; height: 56px !important; object-fit: contain; mix-blend-mode: multiply; margin: 0 !important; border-radius: 0; box-shadow: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-miniatura .lk-ilosc { position: absolute; top: -7px; right: -7px; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 99px; background: var(--lk-dod1); color: var(--lk-na-akcencie); font-size: 12px; font-weight: 600; display: grid; place-items: center; border: 2px solid var(--lk-karta); line-height: 1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-nazwa { font-weight: 600; font-size: 15px; line-height: 1.3; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-nazwa a { color: inherit !important; text-decoration: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-wariant { font-size: 13px; color: var(--lk-slaby); line-height: 1.35; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-zmien { font-size: 13px; font-weight: 500; text-decoration: none; display: inline-flex; align-items: center; min-height: 44px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-zmien:hover { text-decoration: underline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-cena { font-weight: 600; white-space: nowrap; text-align: right; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-cena del, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-cena s { display: block; font-weight: 400; font-size: 13px; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja-cena ins { text-decoration: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja + .lk-pozycja { margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pozycja.lk-pozycja-nowa { animation: lk-wjazd .45s ease both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersze { margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid var(--lk-linia); display: grid; gap: 6px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz { display: flex; justify-content: space-between; gap: 12px; font-size: 14px; color: var(--lk-slaby); line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz b { color: var(--lk-tekst); font-weight: 500; text-align: right; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz small { font-size: 13px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz .lk-darmowa, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-darmowa { color: var(--lk-ok) !important; font-weight: 600; }
/* 1.1.3: przy dostawie „Darmowa” stałym zielonym, kwota płatnej dostawy zwykłym ciemnym kolorem tekstu (Wiktor 22.10 11:38); rabat zostaje z motywu */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-darmowa.lk-dostawa-darmowa, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz .lk-dostawa-darmowa { color: var(--lk-dostawa) !important; font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz .lk-dostawa-platna { color: var(--lk-tekst) !important; }
/* 1.1.3: informacja o dostawie („Dostawa: <dzień>” + „i”) - kafle, podsumowanie, pod przyciskiem, koszyk; ten sam wygląd wszędzie */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dostawa-info { display: inline; min-width: 0; color: var(--lk-dostawa) !important; font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dostawa-koniec { white-space: nowrap; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy { position: relative; display: inline-grid; place-items: center; vertical-align: middle; width: 20px; height: 20px; margin: -4px 0 -3px 2px; border-radius: 50%; cursor: help; color: inherit; -webkit-tap-highlight-color: transparent; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy svg.lk-i { width: 15px; height: 15px; stroke-width: 2.2; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy::before { content: ""; position: absolute; inset: -12px; } /* obszar dotyku 44 px (1.1.7, WCAG 2.5.5; wygląd bez zmian) */
@media (hover: none) { :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy { cursor: pointer; } } /* iOS Safari doręcza dotknięcie tylko elementom „klikalnym” */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy:focus-visible { outline: 2px solid currentColor; outline-offset: 1px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy-tekst { position: absolute; z-index: 30; bottom: calc(100% + 6px); right: -10px; width: max-content; max-width: 220px; padding: 6px 10px; border-radius: 8px;
  background: var(--lk-tekst); color: var(--lk-karta); font-size: 12.5px; font-weight: 500; line-height: 1.3; text-align: left; white-space: normal; text-transform: none; letter-spacing: 0; box-shadow: var(--lk-cien);
  opacity: 0; visibility: hidden; transform: translateY(2px); transition: opacity .15s ease, transform .15s ease, visibility .15s; pointer-events: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy-tekst::after { content: ""; position: absolute; top: 100%; right: 14px; border: 5px solid transparent; border-top-color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) :is(.lk-info-dostawy:focus-visible, .lk-info-dostawy.lk-otwarta) .lk-info-dostawy-tekst { opacity: 1; visibility: visible; transform: none; }
@media (hover: hover) { :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-info-dostawy:hover .lk-info-dostawy-tekst { opacity: 1; visibility: visible; transform: none; } }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz.lk-razem { margin-top: 6px; padding-top: 10px; border-top: 1px dashed var(--lk-linia); color: var(--lk-tekst); font-size: 16px; font-weight: 600; align-items: baseline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz.lk-razem b { font-size: 22px; font-weight: 700; letter-spacing: -.01em; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz.lk-razem b strong { font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz.lk-razem small { display: block; font-size: 13px; font-weight: 400; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz.lk-razem b small, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiersz .includes_tax { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie { list-style: none !important; margin: 14px 0 0 !important; padding: 0 !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li { display: grid; justify-items: center; text-align: center; gap: 4px; font-size: 13px; line-height: 1.3; color: var(--lk-slaby); background: var(--lk-tlo); border-radius: 12px; padding: 10px 6px; margin: 0 !important; list-style: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li::before { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li svg.lk-i { width: 20px; height: 20px; color: var(--lk-dod3); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li b { color: var(--lk-tekst); font-weight: 600; display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie.lk-zaufanie-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li.lk-zaufanie-baner { grid-column: 1 / -1; display: grid; grid-template-columns: 26px minmax(0, 1fr); justify-items: start; text-align: left; gap: 10px; align-items: center;
  background: var(--lk-tlo); border: 1px solid var(--lk-linia); border-radius: 12px; color: var(--lk-tekst); font-size: 14px; padding: 12px 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li.lk-zaufanie-baner svg.lk-i { width: 26px; height: 26px; color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li.lk-zaufanie-baner b { font-size: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-skrot { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--lk-linia); font-size: 14px; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-skrot .lk-darmowa { color: var(--lk-ok); font-weight: 600; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-skrot-suma { color: var(--lk-tekst); font-size: 20px; font-weight: 700; letter-spacing: -.01em; margin-left: 4px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) table.lk-haki { width: 100%; margin: 0 !important; border: 0 !important; border-collapse: collapse; background: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) table.lk-haki:not(:has(td, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) th)) { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) table.lk-haki th, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) table.lk-haki td { padding: 3px 0 !important; border: 0 !important; background: none !important; font-size: 14px; color: var(--lk-slaby); font-weight: 400; text-align: left; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) table.lk-haki td { text-align: right; color: var(--lk-tekst); }

/* ---------- kafle dostawy (natywne radio WooCommerce w <label>) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dostawa-pakiet { display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-kafle { display: grid; gap: 10px; list-style: none !important; margin: 0 !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-kafle > li { list-style: none !important; margin: 0 !important; padding: 0 !important; position: relative; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-kafle > li::before { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel { position: relative; display: grid !important; grid-template-columns: 22px 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; width: 100%; text-align: left;
  border: 1.5px solid var(--lk-obramowanie); border-radius: 14px; background: var(--lk-karta); padding: 14px !important; cursor: pointer; min-height: 76px; margin: 0 !important;
  transition: border-color .15s, box-shadow .15s, background-color .15s; font-weight: 400 !important; line-height: 1.5 !important; color: var(--lk-tekst) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel::after { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel:hover { border-color: var(--lk-linia-mocna); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel:has(.lk-radio-natywne:focus-visible) { box-shadow: 0 0 0 4px var(--lk-akcent-ring); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel.lk-wyb, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel:has(.lk-radio-natywne:checked) { border-color: var(--lk-akcent); border-width: 2px; padding: 13.5px !important; background: var(--lk-akcent-tlo); box-shadow: 0 0 0 3px color-mix(in srgb, var(--lk-akcent) 10%, transparent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-radio-natywne { position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; pointer-events: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-radio { width: 22px; height: 22px; border-radius: 50%; border: 2px solid var(--lk-obramowanie); background: var(--lk-karta); display: grid; place-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel.lk-wyb > .lk-radio, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel:has(.lk-radio-natywne:checked) > .lk-radio, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc.lk-wyb .lk-radio, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc:has(.lk-radio-natywne:checked) .lk-radio { border-color: var(--lk-akcent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel.lk-wyb > .lk-radio::after, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel:has(.lk-radio-natywne:checked) > .lk-radio::after, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc.lk-wyb .lk-radio::after, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc:has(.lk-radio-natywne:checked) .lk-radio::after {
  content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--lk-akcent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-ikona { width: 44px; height: 44px; border-radius: 12px; display: grid; place-items: center; background: var(--lk-tlo); color: var(--lk-dod1); flex: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-ikona svg.lk-i { width: 24px; height: 24px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-logo { width: 52px; height: 40px; display: grid; place-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-logo img { max-width: 52px !important; max-height: 40px; width: auto; height: auto; border-radius: 6px; margin: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-tekst { min-width: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-tytul { display: block; font-weight: 600; font-size: 16px; line-height: 1.3; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-opis { display: block; font-size: 14px; line-height: 1.35; color: var(--lk-slaby); margin-top: 2px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-opis strong { color: var(--lk-tekst); font-weight: 600; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data { display: inline-flex; align-items: center; gap: 5px; font-size: 13px; font-weight: 700; color: var(--lk-dostawa); margin-top: 4px; } /* 1.1.3: „Dostawa: <dzień>” stałym zielonym, pogrubione */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data span { min-width: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data > svg.lk-i { width: 14px; height: 14px; } /* tylko kalendarz; „i” ma własny rozmiar (1.1.3) */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-cena { align-self: start; font-size: 13px; font-weight: 700; letter-spacing: .02em; color: var(--lk-ok); background: var(--lk-ok-tlo); padding: 3px 8px; border-radius: 99px; white-space: nowrap; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-cena.lk-platna { color: var(--lk-tekst); background: var(--lk-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-cena.lk-dostawa-darmowa { color: var(--lk-dostawa); background: color-mix(in srgb, var(--lk-dostawa) 9%, var(--lk-karta)); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-data-cena { color: var(--lk-dostawa); font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-data-cena.lk-platna { color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafle .paczkomat-logo { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dostawa-brak { margin: 0; font-size: 14px; color: var(--lk-slaby); }

/* ---------- paczkomat: „Wybierz punkt odbioru” (przycisk mapy wtyczki InPost) i karta wybranego punktu ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor { margin-top: 12px; display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 10px 12px; align-items: center; border: 1.5px dashed var(--lk-linia-mocna); border-radius: 14px; padding: 12px 14px; background: var(--lk-karta); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor .lk-kafel-ikona { color: var(--lk-akcent); background: var(--lk-akcent-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor b { display: block; font-size: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor span { font-size: 13px; color: var(--lk-slaby); line-height: 1.35; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor .lk-inpost { grid-column: 1 / -1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor .lk-paczkomat-blad { grid-column: 1 / -1; margin-top: 0; display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor.lk-zle-box { border: 1.5px solid var(--lk-blad); background: var(--lk-blad-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor.lk-zle-box .lk-paczkomat-blad { display: flex; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor.lk-zle-box .lk-paczkomat-blad span { color: var(--lk-blad); font-size: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-inpost > div:not([id]) { margin: 0 !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-inpost #selected-paczkomat { display: none !important; }
body.lk-kasa .lk-paczkomat-wybor .select-paczkomat-button { min-height: 46px; width: 100%; border-radius: 14px !important; border: 1.5px solid var(--lk-linia-mocna) !important; background: var(--lk-karta) !important;
  font-weight: 600 !important; font-size: 15px !important; cursor: pointer; color: var(--lk-tekst) !important; padding: 0 14px !important; margin: 0 !important; line-height: 1.2 !important;
  text-transform: none !important; letter-spacing: normal !important; box-shadow: none !important; opacity: 1 !important; height: auto !important; }
body.lk-kasa .lk-paczkomat-wybor .select-paczkomat-button:hover { border-color: var(--lk-obramowanie-hover) !important; background: var(--lk-tlo) !important; }
body.lk-kasa .lk-paczkomat-wybor .select-paczkomat-button:focus-visible { outline: none; box-shadow: 0 0 0 4px var(--lk-akcent-ring) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybrany { margin-top: 12px; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; border: 1px solid color-mix(in srgb, var(--lk-ok) 35%, var(--lk-linia)); background: var(--lk-ok-tlo); border-radius: 14px; padding: 12px 14px; animation: lk-wjazd .35s ease both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybrany .lk-kafel-logo { width: 44px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybrany .lk-kafel-logo img { max-width: 44px !important; max-height: 34px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybrany-nazwa { font-weight: 600; font-size: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybrany-adres { font-size: 14px; color: var(--lk-slaby); line-height: 1.35; }
body.lk-kasa .lk-wybrany .select-paczkomat-button { background: none !important; border: 0 !important; padding: 0 4px !important; min-height: 44px; color: var(--lk-akcent) !important; font-weight: 500 !important; font-size: 14px !important;
  cursor: pointer; margin: 0 !important; box-shadow: none !important; text-transform: none !important; letter-spacing: normal !important; line-height: 1.2 !important; height: auto !important; width: auto; }
body.lk-kasa .lk-wybrany .select-paczkomat-button:hover { text-decoration: underline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-link-przycisk { background: none !important; border: 0 !important; padding: 0 4px; min-height: 44px; color: var(--lk-akcent) !important; font-weight: 500; font-size: 14px; cursor: pointer; box-shadow: none !important; margin: 0; line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-link-przycisk:hover { text-decoration: underline; }

/* ---------- pola: WooCommerce .form-row w wyglądzie pól makiety ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola { display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola::after, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .col-1::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .col-1::after { display: none !important; }
body.lk-kasa .lk-pola .col-1, body.lk-kasa .lk-pola .col-2 { width: auto !important; float: none !important; padding: 0 !important; margin: 0 !important; max-width: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .col-2 { display: flex; flex-direction: column; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .col-2 .woocommerce-additional-fields { order: 1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .col-2 .woocommerce-shipping-fields { order: 2; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields > h3, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-additional-fields > h3, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #ship-to-different-address { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields__field-wrapper, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-shipping-fields__field-wrapper, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-additional-fields__field-wrapper, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-pola, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-adres {
  display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields__field-wrapper::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields__field-wrapper::after, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-shipping-fields__field-wrapper::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-shipping-fields__field-wrapper::after { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .shipping_address { margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-additional-fields__field-wrapper { margin-top: 14px; }
body.lk-kasa .lk-kasa-uklad .form-row { grid-column: 1 / -1; min-width: 0; margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; position: relative; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-pol { grid-column: span 1; }
body.lk-kasa .lk-kasa-uklad .form-row::before, body.lk-kasa .lk-kasa-uklad .form-row::after { display: none !important; }
body.lk-kasa .lk-kasa-uklad .form-row label { display: flex !important; justify-content: space-between; align-items: baseline; gap: 8px; font-size: 16px !important; font-weight: 500 !important; margin: 0 0 6px !important;
  line-height: 1.5 !important; color: var(--lk-tekst) !important; padding: 0 !important; text-transform: none !important; letter-spacing: normal !important; opacity: 1 !important; position: static !important; }
body.lk-kasa .lk-kasa-uklad .form-row label .required, body.lk-kasa .lk-kasa-uklad .form-row label .optional { display: none !important; }
body.lk-kasa .lk-kasa-uklad .form-row label .lk-opc { font-weight: 400; font-size: 14px; color: var(--lk-slaby); }
body.lk-kasa .lk-kasa-uklad .form-row .woocommerce-input-wrapper { position: relative; display: block; width: 100%; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text, body.lk-kasa .lk-kasa-uklad .form-row textarea {
  width: 100% !important; height: 54px !important; border-radius: var(--lk-r-maly) !important; border: 1.5px solid var(--lk-obramowanie) !important; background: var(--lk-karta) !important;
  padding: 0 44px 0 14px !important; font: inherit; font-size: 17px !important; line-height: 1.3 !important; color: var(--lk-tekst) !important; box-shadow: none !important;
  transition: border-color .15s, box-shadow .15s; -webkit-appearance: none; appearance: none; margin: 0 !important; outline: none; min-height: 0 !important; letter-spacing: normal !important; }
body.lk-kasa .lk-kasa-uklad .form-row textarea { height: 92px !important; padding: 12px 14px !important; resize: vertical; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text::placeholder, body.lk-kasa .lk-kasa-uklad .form-row textarea::placeholder { color: var(--lk-slaby); opacity: 1; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text:hover { border-color: var(--lk-obramowanie-hover) !important; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text:focus, body.lk-kasa .lk-kasa-uklad .form-row textarea:focus { outline: none !important; border-color: var(--lk-akcent) !important; box-shadow: 0 0 0 4px var(--lk-akcent-ring) !important; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-prefiks input.input-text { padding-left: 64px !important; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-prefiks .woocommerce-input-wrapper::before { content: "+48"; position: absolute; left: 1.5px; top: 1.5px; bottom: 1.5px; width: 52px; display: grid; place-items: center; font-size: 15px;
  color: var(--lk-slaby); border-right: 1px solid var(--lk-linia); background: var(--lk-tlo); border-radius: 10.5px 0 0 10.5px; z-index: 1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-znak { position: absolute; right: 14px; top: 27px; transform: translateY(-50%); width: 22px; height: 22px; border-radius: 50%; display: none; place-items: center; pointer-events: none; z-index: 1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-znak svg.lk-i { width: 13px; height: 13px; stroke-width: 3.2; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-znak-ok, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-znak-zle { display: none; place-items: center; }
body.lk-kasa .form-row.lk-ok .lk-znak { display: grid; background: var(--lk-ok); color: var(--lk-na-akcencie); animation: lk-pop .25s ease both; }
body.lk-kasa .form-row.lk-ok .lk-znak-ok, body.lk-kasa .form-row.lk-zle .lk-znak-zle { display: grid; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-ok input.input-text { border-color: color-mix(in srgb, var(--lk-ok) 55%, var(--lk-linia-mocna)) !important; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-zle input.input-text { border-color: var(--lk-blad) !important; background: var(--lk-blad-tlo) !important; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-zle input.input-text:focus { box-shadow: 0 0 0 4px color-mix(in srgb, var(--lk-blad) 18%, transparent) !important; }
body.lk-kasa .form-row.lk-zle .lk-znak { display: grid; background: var(--lk-blad); color: var(--lk-na-akcencie); }
body.lk-kasa .lk-kasa-uklad .form-row.lk-lit input.input-text { border-color: #b54708 !important; background: #fffaeb !important; }
body.lk-kasa .lk-kasa-uklad .form-row.woocommerce-invalid label, body.lk-kasa .lk-kasa-uklad .form-row.woocommerce-validated label { color: var(--lk-tekst) !important; }
body.lk-kasa .lk-kasa-uklad .form-row .description, body.lk-kasa .lk-kasa-uklad .checkout-inline-error-message { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-podpowiedz { display: flex; gap: 6px; align-items: flex-start; font-size: 14px; line-height: 1.4; color: var(--lk-slaby); margin-top: 6px; font-weight: 400; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-podpowiedz svg.lk-i { width: 15px; height: 15px; margin-top: 2px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-podpowiedz b { color: var(--lk-tekst); font-weight: 600; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-podpowiedz.lk-auto { color: var(--lk-dod3); display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .form-row.lk-autopole .lk-podpowiedz.lk-auto { display: flex; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-komunikat { display: none; gap: 6px; align-items: flex-start; font-size: 14px; line-height: 1.4; color: var(--lk-blad); font-weight: 500; margin-top: 6px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-komunikat svg.lk-i { width: 15px; height: 15px; margin-top: 2px; }
body.lk-kasa .form-row.lk-zle .lk-komunikat { display: flex; }
body.lk-kasa .form-row.lk-zle .lk-podpowiedz { display: none; }
body.lk-kasa .form-row.lk-lit .lk-podpowiedz:not(.lk-literowka) { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-literowka { padding: 8px 10px; border: 1px solid var(--lk-linia-mocna); border-radius: var(--lk-r-maly); background: var(--lk-karta); color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-literowka > span { flex: 1; min-width: 0; display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-literowka b { overflow-wrap: anywhere; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-literowka-przyciski { display: flex; flex-wrap: wrap; gap: 0 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-literowka .lk-link-przycisk { min-height: 40px; padding: 0; text-decoration: underline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #billing_country_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #shipping_country_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #billing_state_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #shipping_state_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #billing_address_2_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #shipping_address_2_field, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola #shipping_company_field { display: none !important; }
/* faktura (pola z Pola.php, klasa lk-faktura): kasa.js przenosi je do ramki „Faktura na firmę”; lk-ukryte = pole nieaktywne */
body.lk-kasa .lk-kasa-uklad .form-row.lk-ukryte, body.lk-kasa .lk-kasa-uklad #billing_faktura_field { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields__field-wrapper > .lk-faktura { display: none !important; }
body.lk-kasa .lk-kasa-uklad .form-row label.lk-zgoda { display: grid !important; margin: 16px 0 0 !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.45 !important; padding: 4px 0 !important; }
body.lk-kasa .lk-kasa-uklad .form-row.lk-firma-inny label.lk-zgoda { margin: 14px 0 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-inny:empty { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-linki { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 0 18px; margin-top: 10px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-linki .lk-link-przycisk { padding: 0; display: inline-flex; align-items: center; gap: 4px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-linki svg.lk-i { width: 16px; height: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bez-adresu { display: none; gap: 10px; align-items: flex-start; font-size: 13px; line-height: 1.45; color: var(--lk-slaby); background: var(--lk-tlo); border-radius: 12px; padding: 10px 12px; margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bez-adresu svg.lk-i { color: var(--lk-dod3); width: 18px; height: 18px; margin-top: 1px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-rodo { margin: -6px 0 14px !important; font-size: 14px; color: var(--lk-slaby); line-height: 1.5; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-ramka { border: 1px solid var(--lk-linia); border-radius: 12px; padding: 14px; background: var(--lk-tlo); margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-ramka[hidden] { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-tytul { margin: 0 0 10px !important; font-weight: 600; font-size: 16px; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-pod { margin: 14px 0 0 !important; font-size: 14px; color: var(--lk-slaby); padding: 0 !important; display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-adres { margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-adres:empty, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-pola:empty { display: none; }
/* paczkomat: bez pól adresu (decyzja Wiktora 16.10), telefon komórkowy, bez „Wyślij na inny adres” */
body.lk-forma-paczkomat .lk-pola .woocommerce-billing-fields .lk-pole-adresu, body.lk-forma-paczkomat .lk-pola .woocommerce-shipping-fields,
body.lk-forma-paczkomat .lk-link-inny, body.lk-forma-paczkomat .lk-faktura-inny { display: none !important; }
body.lk-forma-paczkomat .lk-bez-adresu { display: flex; }
body.lk-forma-paczkomat .lk-faktura-pod { display: block; }

/* ---------- kod rabatowy w kasie (włącznik kupon_w_kasie; wygląd jak kupon koszyka z makiety koszyk-nowy) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-link { display: inline-flex !important; align-items: center; gap: 6px; margin-top: 12px !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-link svg.lk-i { width: 16px; height: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-otwarty .lk-kupon-link { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-pole { margin-top: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-pole[hidden] { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-pole > label { display: block; font-size: 15px; font-weight: 500; margin: 0 0 6px; color: var(--lk-tekst); line-height: 1.4; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-rzad { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wejscie { position: relative; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-rzad input { width: 100% !important; height: 54px !important; border-radius: var(--lk-r-maly) !important; border: 1.5px solid var(--lk-obramowanie) !important; background: var(--lk-karta) !important;
  padding: 0 14px !important; font-size: 17px !important; line-height: 1.3 !important; color: var(--lk-tekst) !important; text-transform: uppercase; box-shadow: none !important; margin: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-rzad input:focus { outline: none; border-color: var(--lk-akcent) !important; box-shadow: 0 0 0 4px var(--lk-akcent-ring) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-rzad input[aria-invalid="true"] { border-color: var(--lk-blad) !important; background: var(--lk-blad-tlo) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-rzad .lk-zastosuj { width: auto; min-height: 54px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon.lk-kupon-zly .lk-kupon-blad { display: flex; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kupon-dodane .lk-podpowiedz { color: var(--lk-dod3); }

/* ---------- błędy: lista na górze formularza ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy { border: 1.5px solid var(--lk-blad); background: var(--lk-blad-tlo); border-radius: 14px; padding: 14px 16px; animation: lk-trzes .35s ease both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy-tytul { display: flex; align-items: center; gap: 8px; font-weight: 600; color: var(--lk-blad); margin: 0 0 6px !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy-tytul:focus { outline: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy ul { margin: 0 !important; padding: 0 0 0 26px !important; font-size: 14px; list-style: disc !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy li { margin: 2px 0 !important; color: var(--lk-blad); list-style: disc !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bledy a { color: var(--lk-blad) !important; font-weight: 500; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) #lk-bledy-miejsce:empty { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) #lk-bledy-miejsce:focus { outline: none; }
body.lk-kasa form.checkout > .woocommerce-NoticeGroup, body.lk-kasa .lk-kasa-uklad .woocommerce-NoticeGroup-updateOrderReview { margin: 0 0 16px; }
body.lk-kasa .woocommerce-notices-wrapper:empty { display: none; }
body.lk-kasa .woocommerce-notices-wrapper, body.lk-kasa .woocommerce-NoticeGroup { max-width: 1180px; margin: 16px auto 0; padding: 0 16px; }
body.lk-kasa .woocommerce-error, body.lk-kasa .woocommerce-message, body.lk-kasa .woocommerce-info {
  border: 1.5px solid var(--lk-linia) !important; background: var(--lk-karta) !important; border-radius: 14px !important; padding: 14px 16px !important; margin: 0 0 12px !important; color: var(--lk-tekst) !important;
  font-size: 14px !important; line-height: 1.5 !important; list-style: none !important; box-shadow: none !important; }
body.lk-kasa .woocommerce-error { border-color: var(--lk-blad) !important; background: var(--lk-blad-tlo) !important; color: var(--lk-blad) !important; }
body.lk-kasa .woocommerce-error::before, body.lk-kasa .woocommerce-message::before, body.lk-kasa .woocommerce-info::before { display: none !important; }

/* ---------- płatność ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-platnosci { display: grid; gap: 10px; list-style: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-platnosci > li { list-style: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-platnosci > li::before { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-platnosci > li.lk-inna-metoda { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-inne-otwarte ul.lk-platnosci > li.lk-inna-metoda, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) ul.lk-platnosci > li.lk-inna-metoda:has(.lk-radio-natywne:checked) { display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta { display: grid !important; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 12px; align-items: center; width: 100%; text-align: left; border: 1.5px solid var(--lk-obramowanie);
  border-radius: 14px; padding: 14px !important; background: var(--lk-karta); min-height: 64px; cursor: pointer; margin: 0 !important; font-weight: 400 !important; line-height: 1.5 !important; color: var(--lk-tekst) !important; position: relative; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta::after { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc.lk-wyb .lk-platnosc-etykieta, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc:has(.lk-radio-natywne:checked) .lk-platnosc-etykieta { border: 2px solid var(--lk-akcent); padding: 13.5px !important; background: var(--lk-akcent-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta:has(.lk-radio-natywne:focus-visible) { box-shadow: 0 0 0 4px var(--lk-akcent-ring); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-teksty { min-width: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-tytul { font-weight: 600; font-size: 16px; display: block; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-opis { display: block; font-size: 14px; color: var(--lk-slaby); line-height: 1.35; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-platnosc-etykieta > img { max-height: none !important; margin: 0 !important; float: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) img.lk-logo-plat { height: 26px !important; width: auto !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) img.lk-logo-plat.lk-logo-paynow { height: 16px !important; }
body.lk-kasa .lk-platnosci .payment_box { margin: 8px 0 0 !important; padding: 12px 14px !important; background: var(--lk-tlo) !important; border-radius: 12px !important; font-size: 14px; color: var(--lk-slaby); border: 0 !important; }
body.lk-kasa .lk-platnosci .payment_box::before { display: none !important; }
body.lk-kasa .lk-platnosci .payment_box.lk-tylko-opis { display: none !important; }
/* kod BLIK w kasie (PayNow white label): pole jak pola formularza, większe cyfry; informacja PayNow o przetwarzaniu danych mała i szara */
body.lk-kasa .lk-platnosci .payment_box .lk-blik-wiersz { margin: 0 !important; }
body.lk-kasa .lk-platnosci .lk-blik .woocommerce-input-wrapper { max-width: 240px; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text.lk-blik-pole { font-size: 22px !important; font-weight: 600 !important; letter-spacing: .12em !important; min-width: 0 !important; max-width: 100% !important;
  font-variant-numeric: tabular-nums; }
body.lk-kasa .lk-kasa-uklad .form-row input.input-text.lk-blik-pole::placeholder { color: var(--lk-slaby); font-weight: 400; }
body.lk-kasa .lk-platnosci .lk-blik .paynow-data-processing-info { margin: 10px 0 0 !important; font-size: 12px !important; line-height: 1.45; color: var(--lk-slaby); }
body.lk-kasa .lk-platnosci .lk-blik .paynow-data-processing-info .expand { color: var(--lk-slaby); text-decoration: underline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pobranie { display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 12px; align-items: center; border: 2px solid var(--lk-akcent); background: var(--lk-akcent-tlo); border-radius: 14px; padding: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pobranie .lk-kafel-ikona { background: var(--lk-karta); color: var(--lk-akcent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pobranie b { display: block; font-size: 15px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pobranie span { font-size: 13px; color: var(--lk-slaby); line-height: 1.4; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paynow-info { display: flex; gap: 8px; align-items: flex-start; font-size: 13px; line-height: 1.4; color: var(--lk-slaby); margin: 10px 2px 0 !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paynow-info svg.lk-i { width: 16px; height: 16px; margin-top: 1px; color: var(--lk-dod3); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-blik-zdanie { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) #payment.lk-platnosc-blik .lk-blik-zdanie { display: inline; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiecej { font-size: 13px !important; margin-top: 6px; display: inline-flex !important; align-items: center; gap: 4px; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wiecej svg.lk-i { width: 15px; height: 15px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-inne-otwarte .lk-wiecej { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) img.lk-logo-mini { height: 14px !important; width: auto !important; vertical-align: -2px; margin-left: 2px; display: inline-block; }
body.lk-kasa #payment.lk-platnosc-sekcja { background: none !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; }
body.lk-kasa #payment .blockUI.blockOverlay, body.lk-kasa .lk-podsumowanie .blockUI.blockOverlay { border-radius: 14px; }

/* ---------- koniec: zgoda (natywne pole terms), przycisk #place_order ---------- */
body.lk-kasa .lk-zamow { margin: 0 !important; padding: 0 !important; float: none !important; width: auto !important; }
body.lk-kasa .lk-zamow .woocommerce-terms-and-conditions-wrapper { margin: 0 !important; padding: 0 !important; }
body.lk-kasa .lk-zamow .lk-zgoda-wiersz { margin: 0 !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda { display: grid !important; grid-template-columns: 24px minmax(0, 1fr); gap: 10px; align-items: center; margin: 16px 0 0 !important; font-size: 16px !important; line-height: 1.45 !important; cursor: pointer;
  padding: 4px 0 !important; min-height: 44px; font-weight: 400 !important; color: var(--lk-tekst) !important; position: relative; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda::before, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda::after { display: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda input { position: absolute !important; opacity: 0 !important; width: 1px !important; height: 1px !important; margin: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pole-znak { width: 24px; height: 24px; border-radius: 7px; border: 2px solid var(--lk-obramowanie); background: var(--lk-karta); display: grid; place-items: center; transition: background-color .15s, border-color .15s; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pole-znak svg.lk-i { width: 14px; height: 14px; stroke-width: 3.4; color: var(--lk-na-akcencie); opacity: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda input:checked + .lk-pole-znak { background: var(--lk-akcent); border-color: var(--lk-akcent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda input:checked + .lk-pole-znak svg.lk-i { opacity: 1; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda input:focus-visible + .lk-pole-znak { box-shadow: 0 0 0 4px var(--lk-akcent-ring); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda-wiersz.lk-zle .lk-pole-znak { border-color: var(--lk-blad); background: var(--lk-blad-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda-blad { margin: 4px 0 0 34px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zamow:has(.lk-zgoda-wiersz.lk-zle) .lk-zgoda-blad { display: flex; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-prywatnosc { font-size: 13px; line-height: 1.45; color: var(--lk-slaby); margin: 10px 0 0 !important; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) #place_order.lk-kup { position: relative; margin: 16px 0 0 !important; width: 100% !important; min-height: 58px; border: 0 !important; border-radius: 14px !important; background: var(--lk-akcent) !important;
  color: var(--lk-na-akcencie) !important; font-size: 17px !important; font-weight: 600 !important; cursor: pointer; display: flex !important; align-items: center; justify-content: center; gap: 10px; padding: 0 18px !important;
  box-shadow: 0 6px 16px -6px color-mix(in srgb, var(--lk-akcent) 70%, transparent) !important; transition: background-color .15s, transform .1s; line-height: 1.2 !important; text-transform: none !important;
  letter-spacing: normal !important; height: auto !important; float: none !important; opacity: 1 !important; text-decoration: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup:hover { background: var(--lk-akcent-ciemny) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup:active { transform: translateY(1px); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup:focus-visible { outline: none; box-shadow: 0 0 0 4px var(--lk-akcent-ring) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup svg.lk-i { width: 18px; height: 18px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup .lk-kup-kwota { font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup .lk-kup-kwota .woocommerce-Price-amount { color: inherit; font-weight: inherit; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kup.lk-sklada { background: var(--lk-akcent-ciemny) !important; cursor: progress; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-krecik-maly { width: 18px; height: 18px; border-radius: 50%; border: 3px solid color-mix(in srgb, var(--lk-na-akcencie) 35%, transparent); border-top-color: var(--lk-na-akcencie); animation: lk-obrot .8s linear infinite; flex: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pod-przyciskiem { display: grid; gap: 4px; margin: 10px 0 0 !important; font-size: 14px; line-height: 1.4; color: var(--lk-slaby); text-align: center; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pod-przyciskiem b { color: var(--lk-tekst); font-weight: 500; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pod-data { display: block; } /* 1.1.3: „Dostawa: <dzień>” z „i” pod „Kupuję i płacę” (wyśrodkowane jak reszta zdania), kolor i grubość z .lk-dostawa-info */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pod-1 { display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pod-1 svg.lk-i { width: 16px; height: 16px; color: var(--lk-ok); stroke-width: 3; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-siec { display: flex; gap: 8px; align-items: flex-start; margin-top: 12px; padding: 10px 12px; border-radius: 10px; background: var(--lk-blad-tlo); color: var(--lk-blad); font-size: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-siec[hidden] { display: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-siec svg.lk-i { width: 18px; height: 18px; margin-top: 1px; }
body.lk-kasa form.checkout.processing > .blockUI.blockOverlay { background: transparent !important; }

/* ---------- blok telefonu i mini-stopka (Z12, Z13) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-blok { max-width: 1180px; margin: 0 auto; padding: 0 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 4px 14px; align-items: center; background: var(--lk-karta); border: 1px solid var(--lk-linia); border-radius: var(--lk-r); padding: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta .lk-kafel-ikona { grid-row: span 2; width: 48px; height: 48px; color: var(--lk-akcent); background: var(--lk-akcent-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta b { font-size: 15px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta span { font-size: 13px; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta a { font-weight: 600; text-decoration: none; color: var(--lk-akcent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-gora { padding: 0; max-width: none; margin: 0; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-gora .lk-telefon-karta { max-width: none !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka { max-width: 1180px; margin: 0 auto; padding: 20px 16px 120px; display: grid; gap: 12px; justify-items: center; text-align: center; font-size: 13px; color: var(--lk-slaby); }
body.lk-kasa .lk-stopka { padding-bottom: calc(32px + env(safe-area-inset-bottom)); } /* 1.1.2: bez paska na dole telefonu w kasie (test Wiktora 21.10); zapas 120 px zostaje w koszyku */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka-loga { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; align-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka-loga img { height: 24px; width: auto; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka-loga img[src*="paynow-logo"] { height: 18px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-znaczek { display: inline-grid; place-items: center; height: 26px; min-width: 44px; padding: 0 8px; border-radius: 6px; font-size: 12px; font-weight: 700; letter-spacing: .02em; border: 1px solid var(--lk-linia); background: var(--lk-karta); color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka-linki { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka-linki a { color: var(--lk-slaby) !important; display: inline-flex; align-items: center; min-height: 44px; padding: 0 2px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-nowrap { white-space: nowrap; }

/* ---------- pasek przyklejony (telefon) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990; background: color-mix(in srgb, var(--lk-karta) 96%, transparent); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-top: 1px solid var(--lk-linia);
  padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: center;
  transform: translateY(110%); transition: transform .25s ease; box-shadow: 0 -8px 24px -12px color-mix(in srgb, var(--lk-tekst) 25%, transparent); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony.lk-widoczny { transform: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony-suma { font-size: 13px; color: var(--lk-slaby); line-height: 1.2; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony-suma b { display: block; font-size: 18px; color: var(--lk-tekst); font-weight: 700; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony .lk-kup { margin: 0 !important; min-height: 52px; font-size: 16px !important; width: 100% !important; gap: 8px; padding: 0 12px !important; }

/* ---------- okno nad kasą (oferta - Oferta.php/oferta.js C; te same klasy co w makiecie) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaslona { position: fixed; inset: 0; z-index: 9995; background: color-mix(in srgb, var(--lk-tekst) 55%, transparent); display: flex; align-items: flex-end; justify-content: center; animation: lk-zanik .2s ease both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno { position: relative; width: 100%; max-height: 92vh; overflow: auto; background: var(--lk-karta); border-radius: 22px 22px 0 0; padding: 10px 18px calc(18px + env(safe-area-inset-bottom)); box-shadow: var(--lk-cien-duzy); animation: lk-arkusz .32s cubic-bezier(.2, .8, .2, 1) both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-uchwyt { width: 40px; height: 5px; border-radius: 99px; background: var(--lk-linia-mocna); margin: 0 auto 10px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-zamknij { position: absolute; top: 8px; right: 8px; width: 44px; height: 44px; border-radius: 50%; border: 0; background: transparent; display: grid; place-items: center; cursor: pointer; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-zamknij:hover { background: var(--lk-tlo); color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-naglowek { padding-right: 40px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-nadtytul { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--lk-dod3); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-nadtytul svg.lk-i { width: 15px; height: 15px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno h2 { margin: 4px 0 0; font-size: 20px; line-height: 1.25; font-weight: 600; letter-spacing: -.01em; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno h2:focus { outline: none; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta { margin-top: 14px; display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: center; background: var(--lk-tlo); border-radius: 16px; padding: 12px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-foto { width: 96px; height: 96px; border-radius: 12px; background: var(--lk-karta); display: grid; place-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-foto img { width: 84px; height: 84px; object-fit: contain; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-nazwa { font-weight: 600; font-size: 15px; line-height: 1.3; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-wariant { font-size: 13px; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-ceny { display: flex; align-items: baseline; gap: 8px; margin-top: 4px; flex-wrap: wrap; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-ceny b { font-size: 22px; font-weight: 700; color: var(--lk-tekst); letter-spacing: -.01em; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-ceny s { color: var(--lk-slaby); font-size: 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oszczedzasz { font-size: 13px; font-weight: 600; color: var(--lk-dod3); background: var(--lk-ok-tlo); border-radius: 99px; padding: 2px 8px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-omnibus { font-size: 14px; color: var(--lk-slaby); margin-top: 2px; line-height: 1.35; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-wiersze { margin: 14px 0 0; display: grid; gap: 6px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-wiersze .lk-wiersz.lk-razem { border-top: 1px solid var(--lk-linia); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-przyciski { display: grid; gap: 10px; margin-top: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-przyciski .lk-kup { margin: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-przyciski .lk-kup, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-przyciski .lk-nie { min-height: 58px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-nie { min-height: 54px; width: 100%; border-radius: 14px; border: 1.5px solid var(--lk-linia-mocna); background: var(--lk-karta); font-weight: 600; font-size: 15px; cursor: pointer; color: var(--lk-tekst); padding: 0 14px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-nie:hover { border-color: var(--lk-obramowanie-hover); background: var(--lk-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-nie:focus-visible { outline: none; box-shadow: 0 0 0 4px var(--lk-akcent-ring); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-stopka { margin: 12px 0 0; font-size: 13px; line-height: 1.45; color: var(--lk-slaby); text-align: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dwie-linie { display: inline-grid; justify-items: center; line-height: 1.25; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-dwie-linie small { font-size: 13px; font-weight: 500; opacity: .88; margin-top: 2px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybor { margin-top: 12px; display: grid; gap: 8px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybor-rzad { display: grid; grid-template-columns: 74px repeat(4, minmax(0, 1fr)); gap: 6px; align-items: center; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybor-rzad:first-child { grid-template-columns: 74px repeat(2, minmax(0, 1fr)); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybor-rzad > span { font-size: 14px; font-weight: 500; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-seg { min-height: 44px; border-radius: 10px; border: 1.5px solid var(--lk-obramowanie); background: var(--lk-karta); font-weight: 600; font-size: 15px; cursor: pointer; color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-seg[aria-pressed="true"] { border: 2px solid var(--lk-akcent); background: var(--lk-akcent-tlo); color: var(--lk-tekst); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-wybor-pod { margin: 0; font-size: 13px; color: var(--lk-slaby); }
html.lk-blokada, html.lk-blokada body { overflow: hidden; }

/* ---------- etap 6: „Składamy Twoje zamówienie” (pobranie, do przejścia na Dziękujemy) ---------- */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6 { min-height: 100vh; display: grid; place-items: center; padding: 24px 16px; background: var(--lk-tlo); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran-skladania { position: fixed; inset: 0; z-index: 9998; animation: lk-zanik .2s ease both; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6-karta { width: min(100%, 440px); background: var(--lk-karta); border: 1px solid var(--lk-linia); border-radius: 20px; box-shadow: var(--lk-cien-duzy); padding: 28px 22px; text-align: center; color: var(--lk-tekst); font-size: 15px; line-height: 1.5; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6-karta h2 { margin: 0 !important; font-size: 20px !important; font-weight: 600 !important; line-height: 1.3 !important; color: var(--lk-tekst); text-transform: none; letter-spacing: normal; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6-karta p { margin: 8px 0 0 !important; color: var(--lk-slaby); font-size: 14px; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-krecik { width: 52px; height: 52px; border-radius: 50%; border: 4px solid color-mix(in srgb, var(--lk-akcent) 18%, var(--lk-karta)); border-top-color: var(--lk-akcent); margin: 4px auto 16px; animation: lk-obrot .9s linear infinite; }

/* ---------- etap 6b: „Ponów płatność” (order-pay, formularz form-pay.php WooCommerce) ---------- */
/* karta na środku ekranu jak w makiecie (ekran8: sam nagłówek i karta, bez stopki) */
body.lk-kasa.lk-oplata .container-wrap .row > .woocommerce, body.lk-kasa.lk-oplata .container-wrap .woocommerce { min-height: calc(100vh - 120px) !important; display: grid !important; place-items: center; padding: 24px 16px !important; }
body.lk-oplata form#order_review { width: min(100%, 440px); margin: 0 auto !important; background: var(--lk-karta); border: 1px solid var(--lk-linia); border-radius: 20px; box-shadow: var(--lk-cien-duzy); padding: 28px 22px !important; text-align: center; }
body.lk-oplata form#order_review > table.shop_table { display: none !important; }
body.lk-oplata .lk-oplata-gora .lk-kafel-ikona { margin: 0 auto 10px; width: 52px; height: 52px; color: var(--lk-akcent); background: var(--lk-akcent-tlo); }
body.lk-oplata .lk-oplata-gora h2 { margin: 0 !important; font-size: 20px !important; font-weight: 600 !important; line-height: 1.3 !important; }
body.lk-oplata .lk-oplata-gora p { margin: 8px 0 0 !important; color: var(--lk-slaby); font-size: 14px; padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6-kwota { margin: 18px 0 0; padding: 14px; background: var(--lk-tlo); border-radius: 14px; display: flex; justify-content: space-between; align-items: baseline; font-size: 14px; color: var(--lk-slaby); }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-ekran6-kwota b { font-size: 22px; color: var(--lk-tekst); }
body.lk-oplata #payment { background: none !important; padding: 0 !important; margin: 0 !important; border-radius: 0 !important; text-align: left; }
body.lk-oplata #payment ul.payment_methods { border: 0 !important; padding: 0 !important; margin: 0 !important; list-style: none !important; }
body.lk-oplata #payment ul.payment_methods > li { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.lk-oplata #payment ul.payment_methods > li > input, body.lk-oplata #payment ul.payment_methods > li > label { display: none !important; }
body.lk-oplata #payment ul.payment_methods > li:not(:has(> input:checked)) { display: none !important; }
body.lk-oplata #payment .payment_box { margin: 12px 0 0 !important; background: var(--lk-tlo) !important; border-radius: 12px; font-size: 14px; }
body.lk-oplata #payment .payment_box::before { display: none !important; }
body.lk-oplata #payment .payment_box:not(:has(input, select, iframe)) { display: none !important; }
body.lk-oplata #payment .woocommerce-terms-and-conditions-wrapper { display: none !important; }
body.lk-oplata #payment .form-row { padding: 0 !important; margin: 0 !important; float: none !important; }
body.lk-oplata #place_order { position: relative; margin: 10px 0 0 !important; width: 100% !important; min-height: 58px; border: 0 !important; border-radius: 14px !important; background: var(--lk-akcent) !important;
  color: var(--lk-na-akcencie) !important; font-size: 17px !important; font-weight: 600 !important; cursor: pointer; display: flex !important; align-items: center; justify-content: center; gap: 10px; padding: 0 18px !important;
  box-shadow: 0 6px 16px -6px color-mix(in srgb, var(--lk-akcent) 70%, transparent) !important; line-height: 1.2 !important; text-transform: none !important; letter-spacing: normal !important; float: none !important; white-space: nowrap; }
body.lk-oplata #place_order:hover { background: var(--lk-akcent-ciemny) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pomoc-tel { display: block; text-align: center; line-height: 1.5; margin: 14px 0 0 !important; font-size: 14px; color: var(--lk-slaby); padding: 0 !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pomoc-tel svg.lk-i { display: inline-block; vertical-align: -3px; margin-right: 4px; width: 16px; height: 16px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pomoc-tel a { color: var(--lk-tekst) !important; font-weight: 600; text-decoration: none; }

/* ---------- podświetlenie po „Uzupełnij dane” ---------- */
@keyframes lk-puls { 0% { box-shadow: 0 0 0 0 var(--lk-akcent-ring); } 60% { box-shadow: 0 0 0 8px var(--lk-akcent-ring); } 100% { box-shadow: 0 0 0 4px var(--lk-akcent-ring); } }
body.lk-kasa .lk-kasa-uklad .form-row.lk-podswietl input.input-text { border-color: var(--lk-akcent) !important; animation: lk-puls 1s ease 2; box-shadow: 0 0 0 4px var(--lk-akcent-ring) !important; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zgoda-wiersz.lk-podswietl .lk-pole-znak { border-color: var(--lk-akcent); animation: lk-puls 1s ease 2; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) #lk-paczkomat.lk-podswietl { border-color: var(--lk-akcent); animation: lk-puls 1s ease 2; }

/* ---------- animacje ---------- */
@keyframes lk-wjazd { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes lk-pop { from { transform: translateY(-50%) scale(.4); } to { transform: translateY(-50%) scale(1); } }
@keyframes lk-trzes { 0%, 100% { transform: none; } 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }
@keyframes lk-zanik { from { opacity: 0; } to { opacity: 1; } }
@keyframes lk-arkusz { from { transform: translateY(40px); opacity: .4; } to { transform: none; opacity: 1; } }
@keyframes lk-okno { from { transform: translateY(12px) scale(.98); opacity: 0; } to { transform: none; opacity: 1; } }
@keyframes lk-obrot { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { body.lk-kasa *, body.lk-kasa *::before, body.lk-kasa *::after { animation: none !important; transition: none !important; } }

/* ---------- komputer ---------- */
@media (min-width: 900px) {
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-naglowek-in { padding: 14px 24px; min-height: 72px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-logo { height: 30px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-bezpiecznie { margin-left: 24px; font-size: 14px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tel-tekst { display: inline; margin-left: auto; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kasa-uklad { grid-template-columns: minmax(0, 1fr) 400px; gap: 32px; padding: 28px 24px 40px; align-items: start; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-prawa { position: sticky; top: 20px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tylko-telefon { display: none !important; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-karta { padding: 22px 24px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-billing-fields__field-wrapper, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-pola .woocommerce-shipping-fields__field-wrapper, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-pola, :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-faktura-adres { gap: 16px 14px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-przyklejony { display: none; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaslona { align-items: center; padding: 24px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno { width: 520px; border-radius: 22px; padding: 26px 28px 24px; animation-name: lk-okno; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-okno-uchwyt { display: none; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta { grid-template-columns: 120px minmax(0, 1fr); }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-foto { width: 120px; height: 120px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-oferta-foto img { width: 104px; height: 104px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-blok { padding: 0 24px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-telefon-karta { max-width: calc(100% - 432px); }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka { padding-bottom: 40px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor { grid-template-columns: 44px minmax(0, 1fr) auto; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-paczkomat-wybor .lk-inpost { grid-column: auto; }
  body.lk-kasa .lk-paczkomat-wybor .select-paczkomat-button { width: auto; padding: 0 18px !important; }
}
@media (max-width: 899.98px) {
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-tylko-komputer { display: none !important; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie { margin-top: 12px !important; gap: 6px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li { padding: 8px 4px; font-size: 13px; gap: 2px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li svg.lk-i { width: 18px; height: 18px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel { grid-template-columns: 22px 48px minmax(0, 1fr); gap: 12px; align-items: start; min-height: 0; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel > .lk-radio { margin-top: 10px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-logo { width: 48px; height: 38px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-logo img { max-width: 48px !important; max-height: 38px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel > .lk-kafel-cena { display: none; }
  /* telefon: data z ceną płynie jak zwykły tekst (bez kolumn), ikona wisi przed pierwszą linią, cena nie łamie się */
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data { display: block; font-size: 13.5px; line-height: 1.35; white-space: normal; padding-left: 19px; }
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data > svg.lk-i { display: inline-block; vertical-align: -2px; margin: 0 5px 0 -19px; } /* kalendarz; nie „i” (1.1.3) */
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-kafel-data .lk-tylko-telefon .lk-data-cena { white-space: nowrap; } /* 1.1.3: kwota w całości, obok daty albo w nowej linii (bez „·”) */
  :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-sekcja-glowa h2 { font-size: 17px !important; }
}
@media (max-width: 360px) { :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie { grid-template-columns: 1fr; } :is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-zaufanie li { grid-template-columns: 20px 1fr; justify-items: start; text-align: left; } }

/* stopka w koszyku (makieta koszyk-nowy: bez logów płatności, linki Regulamin, Dostawa i zwroty, Polityka prywatności, Kontakt) */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-stopka.lk-stopka-koszyk { padding-top: 8px; }
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) .lk-omnibus { font-size: 14px; color: var(--lk-slaby); margin-top: 2px; line-height: 1.35; }

/* 1.1.1 grubości jak w makiecie: <b>/<strong> bez własnej grubości = 700 (domyślna przeglądarki w makiecie; motyw daje 600) */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy) :is(.lk-pobranie, .lk-telefon-karta, .lk-paczkomat-wybor, .lk-siec, .lk-literowka, .lk-ekran6-kwota) b { font-weight: 700 !important; }
/* krój motywu bez grubości 500 (np. Open Sans 400/600/700 z Salienta): przeglądarka rysowałaby 500 jako 400 - cieniej niż makieta (Poppins 500).
   kasa.js sprawdza zadeklarowane grubości kroju i ustawia body.lk-bez-500; wtedy teksty z grubością 500 dostają najbliższą cięższą 600.
   Etykieta zgody („Akceptuję regulamin”) ma 400 jak w makiecie, więc jest wyłączona z tej reguły. */
:is(body.lk-kasa, body.lk-koszyk, body.lk-dziekujemy).lk-bez-500 :is(.lk-pasek-dostawy, .lk-bezpiecznie, .lk-pozycja-zmien, .lk-wiersz:not(.lk-razem) > b, .lk-kafel-data,
  .select-paczkomat-button, .lk-link-przycisk, .form-row label:not(.lk-zgoda), .lk-komunikat, .lk-kupon-pole > label, .lk-bledy a, .lk-pod-przyciskiem b, .lk-dwie-linie small,
  .lk-wybor-rzad > span, .lk-okno-nadtytul) { font-weight: 600 !important; }

/* Dziękujemy po BLIK (confirmBlik=1, stan gateway_action): głównym tekstem jest nasz „Otwórz teraz aplikację bankową i zatwierdź płatność”.
   Nagłówek i obrazek PayNow chowamy; ich skrypt (confirm-blik.js, osobny <script> poza tym blokiem) dalej odpytuje status i przeładowuje stronę. */
body.lk-dziekujemy.lk-dz-stan-gateway_action .paynow-confirm-blik { display: none !important; }
/* 1.1.7 (decyzja nadzorcy @fabrykator 24.10 10:47, pomiar WEBMASTERA fenlo 390x844: baner CookieYes 438 px zasłaniał formy dostawy i „Kupuję i płacę”):
   tylko w kasie i tylko do 576 px baner zgód niższy - przyciski w jednym rzędzie (kolejność CookieYes bez zmian), opis 14 px z przewijaniem
   w środku, cały baner najwyżej ok. 40% wysokości ekranu. Treść, przyciski wyboru i działanie zgód bez zmian (CookieYes ustawia je w aplikacji konta). */
@media (max-width: 576px) {
  body.lk-kasa .cky-consent-container .cky-consent-bar { padding: 12px 0; }
  body.lk-kasa .cky-consent-container .cky-notice .cky-title { margin: 0 0 6px; padding-right: 48px; }
  body.lk-kasa .cky-consent-container .cky-notice-des { font-size: 14px; line-height: 20px; max-height: calc(40vh - 150px); overflow-y: auto; }
  body.lk-kasa .cky-consent-container .cky-notice-des * { font-size: 14px; line-height: 20px; }
  body.lk-kasa .cky-consent-container .cky-notice-btn-wrapper { flex-direction: row; flex-wrap: nowrap; align-items: stretch; gap: 6px; }
  body.lk-kasa .cky-consent-container .cky-notice-btn-wrapper .cky-btn { flex: 1 1 0; width: auto; min-width: 0; min-height: 44px; margin: 10px 0 0; padding: 6px 4px; font-size: 13px; line-height: 16px; white-space: normal; }
}
