/* ==========================================================================
   Skup coins v2 (resources/views/offer-item/v2). Paczka sbc-skup-v2.
   Wszystko pod .skup2 albo z prefiksem skup2-. Tokeny jak packet-v2 / boosting-v2 / sbc-v2.
   Platforma: .skup2[data-plat="X"] pokazuje .skup2-tylko[data-dla="X"] (reguły generuje _start.blade.php).
   Telefon: < 768 px. Fonty Barlow i Barlow Condensed ładuje layouts/shop/htmlheader.
   ========================================================================== */
.skup2 {
  --s2-ciemny: #111a24;
  --s2-ciemny2: #0b121b;
  --s2-hero: #070d13;
  --s2-zloty: #f5a623;
  --s2-zloty-tekst: #9a5b00;
  --s2-zielony: #17783f;
  --s2-zielony-jasny: #3ddc84;
  --s2-czerwony: #b3261e;
  --s2-szary: #5b6472;
  --s2-tekst: #111a24;
  --s2-ramka: #dfe3e9;
  --s2-cond: 'Barlow Condensed', 'Arial Narrow', Arial, sans-serif;
  max-width: 1110px; margin: 0 auto; padding: 6px 0 28px;
  display: flex; flex-direction: column; gap: 26px;
  font-family: Barlow, 'Helvetica Neue', Arial, sans-serif; color: var(--s2-tekst); text-align: left;
  font-size: 15px; line-height: 1.5;
}
.skup2 *, .skup2 *::before, .skup2 *::after { box-sizing: border-box; }
.skup2 a { color: var(--s2-zloty-tekst); text-decoration: none; }
.skup2 a:hover { color: #6e4100; }
.skup2 button { font-family: inherit; cursor: pointer; }
.skup2 h1, .skup2 h2, .skup2 h3 { text-transform: none; letter-spacing: 0; text-align: left; }
.skup2 p { margin: 0; }
.skup2 ol, .skup2 ul { margin: 0; padding: 0; }
.skup2 fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }
.skup2 legend { padding: 0; border: 0; margin: 0; width: auto; font-size: 14px; font-weight: 800; color: var(--s2-tekst); }
.skup2 label { margin: 0; font-weight: inherit; max-width: none; }
.skup2 [hidden] { display: none !important; }
.skup2 button:focus-visible, .skup2 a:focus-visible, .skup2 summary:focus-visible, .skup2 input:focus-visible, .skup2 select:focus-visible, .skup2 textarea:focus-visible {
  outline: 3px solid var(--s2-zloty); outline-offset: 2px;
}
/* pola w ramkach: fokus pokazuje ramka (:focus-within), bez drugiej obwódki na samym polu */
.skup2 .skup2-wpis input:focus-visible, .skup2 .skup2-wejscie input:focus-visible, .skup2 .skup2-wejscie select:focus-visible,
.skup2 .skup2-ilosc-wpis input:focus-visible, .skup2 .skup2-kody-pole textarea:focus-visible { outline: none; }
.skup2-tylko { display: none; --d: block; }
.skup2-kalk-kurs .skup2-tylko { --d: inline; }
.skup2-min { --d: inline-block; }
.skup2-na-zywo { --d: inline-flex; }
.skup2-czas-plat { --d: flex; flex-direction: column; gap: 18px; }
.skup2 .skup2-m { display: none; }
.skup2-zloty { color: var(--s2-zloty); }
.skup2-h2 { margin: 0; font-family: var(--s2-cond); font-size: 32px; font-weight: 800; line-height: 1.05; color: var(--s2-tekst); }
.skup2-pod { color: var(--s2-szary); font-size: 15px; }
.skup2-maly { font-size: 12px; font-weight: 800; letter-spacing: 1px; color: #8f9bab; }
.skup2-blok:empty { display: none; }
.skup2-blok details > summary { list-style: none; cursor: pointer; }
.skup2-blok details > summary::-webkit-details-marker, .skup2 details > summary::-webkit-details-marker { display: none; }
.skup2 details > summary { list-style: none; cursor: pointer; }

/* przyciski */
.skup2-przycisk { display: inline-flex; align-items: center; justify-content: center; gap: 10px; height: 54px; padding: 0 24px; border-radius: 14px; border: 0; background: var(--s2-zloty); color: var(--s2-tekst) !important; font-size: 17px; font-weight: 800; text-decoration: none; transition: background .15s ease, transform .15s ease; }
.skup2-przycisk:hover { background: #ffb93d; transform: translateY(-1px); color: var(--s2-tekst); }
.skup2-przycisk--pelny { width: 100%; }
.skup2-przycisk--ciemny { background: var(--s2-ciemny); color: #fff !important; height: 48px; font-size: 15px; }
.skup2-przycisk--ciemny:hover { background: #1f2a38; }
.skup2-przycisk--obrys { background: #fff; border: 2px solid var(--s2-ciemny); height: 48px; font-size: 15px; }
.skup2-przycisk--obrys:hover { background: #f6f7f9; }

/* ---------- Hero i kalkulator ---------- */
.skup2-hero { position: relative; overflow: hidden; background: var(--s2-hero); border-radius: 24px; padding: 34px; display: grid; grid-template-columns: minmax(0, 1fr) 460px; gap: 34px; align-items: center; color: #fff; }
.skup2-hero-tlo { position: absolute; inset: 0; pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, #000 0%, #000 8%, transparent 19%, transparent 85%, #000 95%);
  mask-image: linear-gradient(180deg, #000 0%, #000 8%, transparent 19%, transparent 85%, #000 95%); }
.skup2-hero-monety { position: absolute; top: -6%; height: 112%; left: -210px; aspect-ratio: 1074 / 803; animation: skup2Drift 16s ease-in-out infinite alternate;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, #000 40%, transparent 62%); mask-image: linear-gradient(90deg, #000 0%, #000 40%, transparent 62%); }
.skup2-hero-monety img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scaleX(-1); }
.skup2-hero-blask { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(38% 70% at 79% 52%, rgba(245,166,35,.13), rgba(245,166,35,0) 70%), radial-gradient(30% 40% at 52% 100%, rgba(36,180,96,.12), rgba(36,180,96,0) 80%); }
.skup2-hero-tekst { position: relative; display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.skup2-napis { display: inline-flex; align-items: center; gap: 10px; color: #f5c66b; font-size: 13px; font-weight: 800; letter-spacing: 1.6px; }
.skup2-kreska { width: 22px; height: 2px; background: var(--s2-zloty); border-radius: 2px; flex: none; }
.skup2-h1 { margin: 0; text-shadow: 0 2px 18px rgba(0,0,0,.65); font-family: var(--s2-cond); font-size: 58px; font-weight: 800; line-height: .97; color: #fff; }
.skup2-lead { color: #c3cbd6; font-size: 17px; line-height: 1.5; max-width: 500px; }
.skup2-stawki { display: flex; gap: 10px; flex-wrap: wrap; }
.skup2-stawka { display: inline-flex; align-items: center; gap: 10px; background: rgba(26,34,48,.85); border-radius: 12px; padding: 10px 14px; border: 1px solid #2c3748; color: #fff; }
.skup2-stawka:hover { border-color: #5b6472; }
.skup2-stawka-nazwa { color: #c3cbd6; font-weight: 700; font-size: 14px; }
.skup2-stawka-kwota { font-family: var(--s2-cond); font-size: 24px; font-weight: 800; color: #fff; white-space: nowrap; }
.skup2-stawka-delta { display: inline-flex; align-items: center; gap: 3px; background: var(--s2-zielony); color: #fff; border-radius: 6px; padding: 2px 7px; font-size: 13px; font-weight: 800; white-space: nowrap; }
.skup2-fakty { max-width: 540px; margin-top: 2px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02)); border: 1px solid rgba(255,255,255,.10); border-radius: 14px; overflow: hidden; }
.skup2-fakt { display: flex; flex-direction: column; gap: 3px; padding: 14px 16px; min-width: 0; }
.skup2-fakt + .skup2-fakt { border-left: 1px solid rgba(255,255,255,.09); }
.skup2-fakt strong { display: inline-flex; align-items: center; gap: 4px; font-family: var(--s2-cond); font-size: 28px; font-weight: 800; line-height: 1; color: #fff; white-space: nowrap; }
.skup2-fakt--opinie strong { color: var(--s2-zloty); }
.skup2-fakt span { color: #9aa6b5; font-size: 12px; font-weight: 600; line-height: 1.3; }

.skup2-kalk { position: relative; background: rgba(17,26,36,.96); border: 1px solid rgba(245,166,35,.35); border-radius: 22px; overflow: hidden; box-shadow: 0 30px 80px rgba(0,0,0,.65), 0 0 60px rgba(245,166,35,.12); }
.skup2-zakladki { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-bottom: 1px solid #2c3748; }
.skup2-zakladka { display: flex; align-items: center; justify-content: center; gap: 10px; height: 66px; border: 0; background: transparent; color: #8f9bab; transition: background .15s ease, color .15s ease; }
.skup2-zakladka > span { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.1; }
.skup2-zakladka strong { font-weight: 800; font-size: 16px; }
.skup2-zakladka span span { font-size: 12px; font-weight: 700; opacity: .85; white-space: nowrap; }
.skup2-zakladka[aria-selected="true"] { background: rgba(245,166,35,.1); color: #fff; box-shadow: inset 0 -3px 0 var(--s2-zloty); }
.skup2-zakladka:hover { color: #fff; }
.skup2-ramka { position: relative; overflow: hidden; background: var(--s2-zielony); padding: 14px 18px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; align-items: center; color: #fff; }
.skup2-ramka::after { content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%; background: linear-gradient(100deg, transparent, rgba(255,255,255,.22), transparent); animation: skup2Blysk 3.8s ease-in-out infinite; }
.skup2-ramka-tekst { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.skup2-ramka-od { font-size: 12px; font-weight: 800; letter-spacing: 1.4px; }
.skup2-ramka-tekst strong { font-family: var(--s2-cond); font-size: 27px; font-weight: 800; line-height: 1; }
.skup2-ramka-tekst > span:last-child { font-size: 13px; font-weight: 600; opacity: .92; }
.skup2-schodki { display: flex; align-items: flex-end; gap: 5px; height: 64px; }
.skup2-schodek { display: flex; flex-direction: column; align-items: center; gap: 3px; }
.skup2-schodek span { font-size: 10px; font-weight: 800; color: rgba(255,255,255,.75); text-decoration: line-through; white-space: nowrap; }
.skup2-schodek i { display: block; width: 22px; border-radius: 4px 4px 0 0; background: rgba(255,255,255,.35); transform-origin: bottom; animation: skup2Rosnij .9s cubic-bezier(.2,.8,.2,1) both; }
.skup2-schodek--teraz span { color: #ffd36b; text-decoration: none; }
.skup2-schodek--teraz i { background: var(--s2-zloty); }
.skup2-ramka-wlasna { background: var(--s2-zloty); color: var(--s2-tekst); padding: 14px 18px; display: flex; align-items: center; gap: 12px; font-weight: 800; font-size: 16px; }
.skup2-ramka-wlasna svg { flex: none; }
.skup2-kalk-srodek { padding: 20px; display: flex; flex-direction: column; gap: 14px; margin: 0; }
.skup2-kalk-stawka { display: flex; justify-content: space-between; align-items: flex-end; gap: 10px; }
.skup2-kalk-stawka > span:first-child { display: flex; flex-direction: column; }
.skup2-kalk-kurs { display: flex; align-items: baseline; gap: 6px; }
.skup2-kalk-kurs strong { font-family: var(--s2-cond); font-size: 46px; font-weight: 800; line-height: 1; color: #fff; white-space: nowrap; }
.skup2-kalk-kurs > span { font-weight: 700; color: #b9c2cf; }
.skup2-min { background: #1a2230; border: 1px solid #2c3748; border-radius: 8px; padding: 6px 10px; font-size: 13px; font-weight: 700; color: #c3cbd6; white-space: nowrap; }
.skup2-pole-ilosc { display: flex; flex-direction: column; gap: 6px; }
.skup2-etykieta { display: flex; flex-direction: column; gap: 2px; }
.skup2-etykieta strong { font-size: 14px; font-weight: 800; color: #fff; }
.skup2-etykieta span { font-size: 12px; font-weight: 600; color: #8f9bab; }
.skup2-wpis { display: flex; align-items: center; background: var(--s2-ciemny2); border: 2px solid #3a4558; border-radius: 12px; height: 58px; padding: 0 16px; transition: border-color .15s ease, box-shadow .15s ease; }
.skup2-wpis:focus-within { border-color: var(--s2-zloty); box-shadow: 0 0 0 3px rgba(245,166,35,.25); }
.skup2-wpis input { border: 0; outline: 0; width: 100%; min-width: 0; font-family: var(--s2-cond); font-size: 30px; font-weight: 800; color: #fff; background: transparent; padding: 0; height: auto; box-shadow: none; }
.skup2-wpis input::placeholder { color: #5b6472; }
.skup2-wpis > span { font-family: var(--s2-cond); font-size: 24px; font-weight: 800; color: #8f9bab; }
.skup2-wpis.skup2-zle { border-color: #ff8a80; }
.skup2-szybkie { display: flex; gap: 8px; flex-wrap: wrap; }
.skup2-chip { height: 40px; padding: 0 14px; border-radius: 999px; border: 1px solid rgba(245,166,35,.5); background: rgba(245,166,35,.1); font-weight: 800; font-size: 14px; color: var(--s2-zloty); transition: background .15s ease; }
.skup2-chip:hover { background: rgba(245,166,35,.22); }
.skup2-chip--szary { border-color: #3a4558; background: transparent; color: #b9c2cf; font-weight: 700; }
.skup2-blad { font-size: 13px; font-weight: 800; color: #ff8a80; }
.skup2-wynik { background: var(--s2-ciemny2); border: 1px solid #22303f; border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; }
.skup2-wynik-gora { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.skup2-wynik-gora span { color: #b9c2cf; font-size: 15px; font-weight: 700; }
.skup2-wynik-gora strong { font-family: var(--s2-cond); font-size: 40px; font-weight: 800; color: var(--s2-zielony-jasny); line-height: 1; white-space: nowrap; }
.skup2-zysk { align-self: flex-end; font-size: 13px; font-weight: 700; color: var(--s2-zielony-jasny); text-align: right; }
.skup2-dalej { height: 58px; border-radius: 14px; border: 0; background: var(--s2-zloty); font-size: 19px; font-weight: 800; color: var(--s2-tekst); display: inline-flex; align-items: center; justify-content: center; gap: 10px; transition: transform .15s ease, background .15s ease; }
.skup2-dalej:hover { background: #ffb93d; transform: translateY(-1px); }
.skup2-linki { display: flex; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.skup2-linki button { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; font-weight: 700; color: #c3cbd6; background: transparent; border: 0; padding: 0; }
.skup2-linki button:hover { color: #fff; }
.skup2-dopisek { font-size: 12px; color: #8f9bab; text-align: center; }

/* ---------- Od wyceny do wypłaty ---------- */
.skup2-jak { position: relative; background: linear-gradient(180deg, #fff6e3 0%, #fff 62%); border: 1px solid #ecdcb8; border-radius: 22px; padding: 30px 30px 28px; display: flex; flex-direction: column; gap: 22px; overflow: hidden; }
.skup2-jak-gora { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.skup2-jak-gora > div { display: flex; flex-direction: column; gap: 4px; }
.skup2-jak-gora .skup2-h2 { font-size: 36px; }
.skup2-plakietka-zielona { display: inline-flex; align-items: center; gap: 8px; background: #eefaf1; border: 1px solid #b2dfbe; color: var(--s2-zielony); border-radius: 999px; padding: 6px 12px; font-size: 13px; font-weight: 800; }
.skup2-jak-kroki { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.skup2-jak-tor { position: absolute; left: 70px; right: 70px; top: 70px; height: 0; border-top: 2px dashed rgba(201,138,18,.55); }
.skup2-jak-moneta { position: absolute; top: -13px; width: 26px; height: 26px; border-radius: 50%; background: #c98a12; border: 3px solid #ffd36b; animation: skup2Moneta 7s ease-in-out infinite; }
.skup2-jak-krok { position: relative; display: flex; flex-direction: column; gap: 12px; }
.skup2-jak-ilu { position: relative; background: var(--s2-ciemny); border: 1px solid #24303f; border-radius: 18px; height: 140px; box-shadow: 0 14px 30px rgba(17,26,36,.18); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.skup2-jak-ilu svg { max-width: 100%; height: auto; }
.skup2-jak-nr { position: absolute; top: 10px; left: 12px; width: 32px; height: 32px; border-radius: 50%; background: var(--s2-zloty); color: var(--s2-tekst); display: inline-flex; align-items: center; justify-content: center; font-family: var(--s2-cond); font-size: 19px; font-weight: 800; z-index: 1; }
.skup2-jak-nr--my { background: var(--s2-zielony); color: #fff; }
.skup2-unos { animation: skup2Unos 4.5s ease-in-out infinite; }
.skup2-kto { align-self: flex-start; background: #fff3d6; color: var(--s2-zloty-tekst); border-radius: 6px; padding: 2px 8px; font-size: 11px; font-weight: 800; letter-spacing: 1px; }
.skup2-kto--my { background: #eefaf1; color: var(--s2-zielony); }
.skup2-jak-krok h3 { margin: 0; font-family: var(--s2-cond); font-size: 22px; font-weight: 800; color: var(--s2-tekst); line-height: 1.1; }
.skup2-jak-krok p { font-size: 14px; color: #3a4558; line-height: 1.5; }

/* ---------- Przygotuj konto + Twoje konto ---------- */
.skup2-dwie { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: stretch; }
.skup2-dwie > .skup2-blok { display: flex; }
.skup2-dwie > .skup2-blok > section { flex: 1 1 auto; }
.skup2-konto { background: var(--s2-ciemny); border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 12px; color: #fff; }
.skup2-konto-gora { display: flex; justify-content: space-between; align-items: center; }
.skup2-konto .skup2-h2 { font-size: 26px; color: #fff; }
.skup2-licznik { background: var(--s2-zielony); color: #fff; border-radius: 999px; padding: 3px 10px; font-size: 13px; font-weight: 800; }
.skup2-konto .skup2-pod { color: #b9c2cf; font-size: 14px; }
.skup2-konto-wiersz { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; gap: 12px; align-items: center; background: #1a2230; border-radius: 12px; padding: 12px 14px; }
.skup2-konto-wiersz > span:nth-child(2) { display: flex; flex-direction: column; }
.skup2-konto-wiersz strong { color: #fff; font-weight: 800; font-size: 15px; }
.skup2-konto-wiersz > span:nth-child(2) span { color: #9aa6b5; font-size: 13px; }
.skup2-konto-wiersz em { font-style: normal; color: var(--s2-zloty); font-weight: 800; font-size: 13px; }
.skup2-ok, .skup2-nie { width: 26px; height: 26px; border-radius: 50%; background: var(--s2-zielony); display: inline-flex; align-items: center; justify-content: center; flex: none; }
.skup2-nie { background: #d64541; }
.skup2-zasady summary { display: inline-flex; align-items: center; gap: 6px; padding: 6px 0; font-size: 15px; font-weight: 800; color: var(--s2-zloty); }
.skup2-zasady summary::after { content: ''; width: 8px; height: 8px; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; transform: rotate(45deg) translateY(-2px); margin-left: 4px; }
.skup2-zasady[open] summary::after { transform: rotate(-135deg) translateY(-2px); }
.skup2-zasady p { color: #d7dde6; font-size: 14px; line-height: 1.5; margin-top: 8px; }
.skup2-zasady strong { color: #fff; }
.skup2-bezp { position: relative; overflow: hidden; background: linear-gradient(160deg, #e9f8ef 0%, #fff 58%); border: 1px solid #cfe9d8; border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 16px; }
.skup2-bezp-gora { display: flex; align-items: center; gap: 14px; }
.skup2-bezp-gora .skup2-h2 { font-size: 26px; }
.skup2-tarcza { width: 56px; height: 56px; border-radius: 16px; background: var(--s2-zielony); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; box-shadow: 0 10px 22px rgba(23,120,63,.3); }
.skup2-bezp-kolumny { flex-grow: 1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.skup2-bezp-tak, .skup2-bezp-nie { background: #fff; border: 1px solid #cfe9d8; border-radius: 14px; padding: 14px; display: flex; flex-direction: column; gap: 10px; }
.skup2-bezp-nie { border-color: #f1d4d2; }
.skup2-bezp-naglowek { font-size: 12px; font-weight: 800; letter-spacing: 1px; color: var(--s2-zielony); }
.skup2-bezp-nie .skup2-bezp-naglowek { color: var(--s2-czerwony); }
.skup2-bezp-poz { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; align-items: start; font-size: 14px; font-weight: 700; line-height: 1.35; }
.skup2-bezp-nie .skup2-bezp-poz { color: #3a4558; }
.skup2-bezp-poz .skup2-ok, .skup2-bezp-poz .skup2-nie { width: 20px; height: 20px; margin-top: 1px; }
.skup2-bezp-poz .skup2-ok svg { width: 12px; height: 12px; }
.skup2-bezp-stopka { display: flex; align-items: center; gap: 10px; background: rgba(23,120,63,.08); border-radius: 12px; padding: 10px 12px; font-size: 13px; font-weight: 600; color: #1f4d33; }
.skup2-bezp-stopka svg { flex: none; }

/* ---------- Ile to potrwa ---------- */
.skup2-czas { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 18px; padding: 24px; display: flex; flex-direction: column; gap: 18px; }
.skup2-czas-gora { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; flex-wrap: wrap; }
.skup2-czas-gora > div:first-child { display: flex; flex-direction: column; gap: 6px; align-items: flex-start; }
.skup2-czas-gora .skup2-h2 { font-size: 28px; }
.skup2-na-zywo { align-items: center; gap: 6px; background: #eefaf1; color: var(--s2-zielony); border-radius: 999px; padding: 4px 10px; font-size: 13px; font-weight: 800; }
.skup2-pulsik { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--s2-zielony); margin-right: 6px; animation: skup2Puls 1.8s ease-in-out infinite; }
.skup2-czas-suma { display: flex; flex-direction: column; align-items: flex-end; background: var(--s2-ciemny); border-radius: 14px; padding: 12px 16px; color: #fff; }
.skup2-czas-suma strong { font-family: var(--s2-cond); font-size: 40px; font-weight: 800; line-height: 1; color: var(--s2-zielony-jasny); white-space: nowrap; }
.skup2-czas-suma > span:last-child { font-size: 12px; color: #b9c2cf; }
.skup2-czas-kafle { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.skup2-czas-kafel { display: flex; flex-direction: column; gap: 4px; border: 1px solid; border-radius: 14px; padding: 12px 14px; }
.skup2-czas-kafel strong { font-family: var(--s2-cond); font-size: 24px; font-weight: 800; line-height: 1.1; }
.skup2-czas-kafel span { font-size: 13px; font-weight: 600; line-height: 1.4; }
.skup2-czas-kafel--kolejka { background: #eef3f9; border-color: #c9d7e8; color: #22406a; }
.skup2-czas-kafel--realizacja { background: #fff8e6; border-color: #f2c46b; color: #6e4100; }
.skup2-czas-kafel--wyplata { background: #eefaf1; border-color: #b8e3c6; color: #1f4d33; }
.skup2-os { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 0 16px; align-items: center; }
.skup2-os-dni { display: grid; grid-template-columns: repeat(var(--kol, 4), minmax(0, 1fr)); font-size: 12px; font-weight: 800; color: #8f9bab; padding-bottom: 8px; }
.skup2-os-nazwa { display: flex; flex-direction: column; padding: 10px 0; border-top: 1px solid #edf0f4; }
.skup2-os-nazwa strong { font-weight: 800; font-size: 16px; }
.skup2-os-nazwa span { font-size: 12px; color: var(--s2-szary); }
.skup2-os-tor { position: relative; height: 54px; border-top: 1px solid #edf0f4; background: repeating-linear-gradient(90deg, transparent 0 calc(100% / var(--kol, 4) - 1px), #edf0f4 calc(100% / var(--kol, 4) - 1px) calc(100% / var(--kol, 4))); }
.skup2-os-pasek { position: absolute; left: 0; top: 13px; height: 28px; display: flex; align-items: center; }
.skup2-os-pasek i { position: absolute; left: 0; top: 0; bottom: 0; }
.skup2-os-pasek b { position: relative; padding: 0 10px; font-size: 13px; font-weight: 800; white-space: nowrap; color: var(--s2-tekst); }
.skup2-os-pasek em { position: absolute; left: 0; top: 0; right: 0; bottom: 0; border-radius: 8px; }
.skup2-os-pasek--waski b { position: absolute; left: calc(100% + 6px); padding: 0; }
.skup2-os-pasek--przed b { left: auto; right: calc(100% + 6px); }
.skup2-os-pasek--zlecenie { padding-left: 20px; }
.skup2-os-pasek--zlecenie i { width: 18px; border-radius: 6px; background: var(--s2-ciemny); }
.skup2-os-pasek--kolejka em { background: repeating-linear-gradient(135deg, #f1f5fa 0 8px, #d3deeb 8px 16px); }
.skup2-os-pasek--kolejka i { border-radius: 8px 0 0 8px; background: #c9d7e8; }
.skup2-os-pasek--kolejka b { display: inline-flex; align-items: center; gap: 6px; color: #22406a; }
.skup2-os-pasek--kolejka b svg { flex: none; }
.skup2-os-pasek--realizacja em { background: repeating-linear-gradient(135deg, #fff3d6 0 8px, #ffe4a3 8px 16px); }
.skup2-os-pasek--realizacja i { border-radius: 8px 0 0 8px; background: var(--s2-zloty); }
.skup2-os-pasek--wyplata { border-radius: 8px; overflow: hidden; }
.skup2-os-krotki, .skup2-os-pasek--waski .skup2-os-dlugi { display: none; }
.skup2-os-pasek--waski .skup2-os-krotki { display: inline; }
.skup2-os-pasek--wyplata.skup2-os-pasek--waski b { position: relative; left: auto; padding: 0 6px; }
.skup2-os--gesta .skup2-os-dni span:nth-child(even) { visibility: hidden; }
.skup2-os-pasek--wyplata i { width: 100%; border-radius: 8px; background: var(--s2-zielony); }
.skup2-os-pasek--wyplata b { color: #fff; }
.skup2-legenda { font-size: 13px; color: var(--s2-szary); }
.skup2-czas-wiecej > summary { display: inline-flex; align-items: center; gap: 6px; padding: 4px 0; font-size: 15px; font-weight: 800; color: var(--s2-zloty-tekst); }
.skup2-czas-wiecej > summary::after { content: ''; width: 8px; height: 8px; border-right: 3px solid currentColor; border-bottom: 3px solid currentColor; transform: rotate(45deg) translateY(-2px); margin-left: 4px; }
.skup2-czas-wiecej[open] > summary::after { transform: rotate(-135deg) translateY(-2px); }
.skup2-blok--czas { display: flex; flex-direction: column; gap: 12px; margin-top: 12px; }
/* kolumn tyle, ile kart w [[CZAS]] (3 po paczce harmonogram-skup, 2 w starszej treści z panelu) */
.skup2-czas-karty { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 12px; }
.skup2-czas-karta { background: #f7f9fb; border: 1px solid #e3e7ee; border-radius: 14px; padding: 14px; display: flex; flex-direction: column; gap: 8px; }
.skup2-czas-karta-tytul { display: flex; align-items: center; gap: 9px; font-weight: 800; font-size: 15px; }
.skup2-czas-ikona { width: 30px; height: 30px; border-radius: 10px; background: #fff; border: 1px solid #e3e7ee; display: inline-flex; align-items: center; justify-content: center; flex: none; }
.skup2-czas-karta p { font-size: 14px; color: #3a4558; line-height: 1.5; }
.skup2-kolejka { display: flex; align-items: center; gap: 10px; }
.skup2-kolejka-start { flex-shrink: 0; display: inline-flex; align-items: center; gap: 5px; background: var(--s2-ciemny); color: #fff; border-radius: 8px; padding: 5px 10px; font-size: 12px; font-weight: 800; animation: skup2Pigulka 1.8s ease-in-out infinite; }
.skup2-kolejka-tasma { position: relative; display: block; flex: 1 1 auto; min-width: 0; height: 26px; overflow: hidden; -webkit-mask-image: linear-gradient(90deg, #000 70%, transparent); mask-image: linear-gradient(90deg, #000 70%, transparent); }
.skup2-kolejka-tasma span { position: absolute; left: 0; top: 1px; width: 200%; height: 24px; animation: skup2Tasma 1.8s linear infinite;
  background: radial-gradient(circle at 12px 12px, #ffe8a3 0, #f3b300 6px, #a87400 12px, transparent 12.5px) 0 0 / 40px 24px repeat-x; }
.skup2-tagi { display: flex; gap: 6px; flex-wrap: wrap; }
.skup2-tagi span { background: #eefaf1; color: var(--s2-zielony); border-radius: 7px; padding: 3px 8px; font-size: 12px; font-weight: 800; }
.skup2-tagi .skup2-tag-szary { background: #f1f3f6; color: var(--s2-tekst); }
.skup2-czas-info { background: #fff8e6; border: 1px solid #f2c46b; border-radius: 12px; padding: 10px 12px; font-size: 13px; color: #6e4100; line-height: 1.5; }

/* ---------- Metody wypłaty ---------- */
.skup2-metody { display: flex; flex-direction: column; gap: 14px; }
.skup2-metody-siatka { display: grid; grid-template-columns: 360px minmax(0, 1fr); gap: 14px; }
.skup2-metoda-rev { position: relative; overflow: hidden; background: #fff; border: 2px solid var(--s2-zloty); border-radius: 18px; padding: 22px; display: flex; flex-direction: column; gap: 12px; box-shadow: 0 10px 26px rgba(245,166,35,.16); }
.skup2-plakietka-zolta { align-self: flex-start; background: var(--s2-zloty); color: var(--s2-tekst); border-radius: 999px; padding: 3px 10px; font-size: 12px; font-weight: 800; letter-spacing: .6px; }
.skup2-metoda-rev-nazwa { display: flex; align-items: center; gap: 12px; font-family: var(--s2-cond); font-size: 32px; font-weight: 800; line-height: 1; }
.skup2-metoda-rev-nazwa img { display: block; width: 48px; height: 48px; border-radius: 14px; }
.skup2-metoda-rev > strong { font-family: var(--s2-cond); font-size: 28px; font-weight: 800; line-height: 1.05; }
.skup2-metoda-rev > p:not(.skup2-tagi) { font-size: 15px; color: #3a4558; line-height: 1.5; }
.skup2-metoda-rev .skup2-tagi span { font-size: 13px; padding: 5px 10px; font-weight: 700; border-radius: 8px; }
.skup2-metody-kafle { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-content: start; }
.skup2-metoda { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 14px; padding: 14px 16px; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; gap: 12px; align-items: center; }
.skup2-metoda img { display: block; width: 44px; height: 44px; border-radius: 12px; }
.skup2-metoda > span:nth-child(2) { display: flex; flex-direction: column; min-width: 0; }
.skup2-metoda strong { font-weight: 800; font-size: 16px; }
.skup2-metoda > span:nth-child(2) span { font-size: 13px; color: var(--s2-szary); }
.skup2-metoda-czas { display: flex; flex-direction: column; align-items: flex-end; gap: 3px; font-size: 12px; color: #3a4558; font-weight: 700; white-space: nowrap; }
.skup2-metody-notka { margin: 0; background: #fff8e6; border: 1px solid #f2c46b; border-left: 4px solid var(--s2-zloty); border-radius: 12px; padding: 10px 14px; font-size: 13px; color: #6e4100; line-height: 1.5; }
.skup2-metoda-czas em { font-style: normal; background: var(--s2-zielony); color: #fff; border-radius: 6px; padding: 1px 7px; font-size: 12px; font-weight: 800; }

/* ---------- Opinie ---------- */
.skup2-opinie { display: flex; flex-direction: column; gap: 14px; }
.skup2-opinie-gora { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; }
.skup2-opinie-tytul { display: flex; align-items: center; gap: 16px; }
.skup2-opinie-liczba { font-family: var(--s2-cond); font-size: 60px; font-weight: 800; line-height: .9; white-space: nowrap; }
.skup2-opinie-tytul > span:last-child { display: flex; flex-direction: column; }
.skup2-opinie-tytul h2 { margin: 0; font-family: var(--s2-cond); font-size: 28px; font-weight: 800; line-height: 1; }
.skup2-opinie-tytul > span:last-child > span { color: var(--s2-szary); font-size: 14px; }
.skup2-opinie-gora > a { font-weight: 800; font-size: 15px; }
.skup2-opinie-lista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.skup2-opinia { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 16px; padding: 18px; display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.skup2-opinia-ocena { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 800; color: var(--s2-zielony); }
.skup2-opinia p { font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
.skup2-opinia-autor { margin-top: auto; display: flex; align-items: center; gap: 10px; padding-top: 12px; border-top: 1px solid #edf0f4; min-width: 0; }
.skup2-opinia-autor > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.skup2-opinia-autor strong { font-weight: 700; font-size: 13px; overflow-wrap: anywhere; }
.skup2-opinia-autor > span:last-child > span { font-size: 12px; color: var(--s2-szary); }
.skup2-litera { width: 34px; height: 34px; border-radius: 50%; background: var(--s2-ciemny); color: var(--s2-zloty); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; flex: none; }

/* ---------- FAQ (bloki z panelu, <details>) ---------- */
.skup2-faq { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 18px; overflow: hidden; }
.skup2-faq .skup2-h2 { padding: 22px 24px 12px; font-size: 30px; }
.skup2-faq details { border-top: 1px solid #edf0f4; }
.skup2-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 16px 24px; font-size: 17px; font-weight: 700; color: var(--s2-tekst); }
.skup2-faq summary:hover { background: #fafbfc; }
.skup2-faq summary::after { content: '+'; width: 30px; height: 30px; border-radius: 50%; background: #fff3d6; color: var(--s2-zloty-tekst); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; font-weight: 800; font-size: 18px; }
.skup2-faq details[open] summary::after { content: '\2212'; }
.skup2-faq details p { padding: 0 24px 18px; font-size: 15px; line-height: 1.6; color: #3a4558; }

/* ---------- Koniec strony i SEO ---------- */
.skup2-koniec { background: var(--s2-hero); border-radius: 20px; padding: 26px 30px; display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; }
.skup2-koniec > div:first-child { display: flex; flex-direction: column; gap: 6px; }
.skup2-koniec h2 { margin: 0; font-family: var(--s2-cond); font-size: 32px; font-weight: 800; color: #fff; }
.skup2-koniec p { color: #c3cbd6; font-size: 15px; }
.skup2-koniec p strong { color: var(--s2-zloty); white-space: nowrap; }
.skup2-koniec-akcje { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.skup2-czat { color: #c3cbd6 !important; font-weight: 700; font-size: 15px; display: inline-flex; align-items: center; gap: 6px; }
.skup2-czat:hover { color: #fff !important; }
.skup2-seo { margin: 0; padding: 18px 0 0; border-top: 1px solid #e3e7ee; }

/* ---------- Okna (powiadom, historia) ---------- */
.skup2-okno { position: fixed; inset: 0; z-index: 2000; display: flex; align-items: flex-start; justify-content: center; padding: 60px 16px 24px; overflow-y: auto; }
.skup2-okno-tlo { position: fixed; inset: 0; background: rgba(5,9,14,.62); backdrop-filter: blur(3px); }
.skup2-okno-panel { position: relative; width: 480px; max-width: 100%; background: #fff; border-radius: 22px; box-shadow: 0 40px 90px rgba(0,0,0,.45); overflow: hidden; animation: skup2Wyskok .28s cubic-bezier(.2,.8,.2,1) both; color: var(--s2-tekst); }
.skup2-okno--szerokie .skup2-okno-panel { width: 860px; }
.skup2-okno-glowa { position: relative; background: var(--s2-ciemny2); padding: 22px 22px 18px; display: flex; flex-direction: column; gap: 14px; color: #fff; }
.skup2-okno-x { position: absolute; top: 14px; right: 14px; width: 36px; height: 36px; border-radius: 10px; border: 0; background: #1a2230; color: #c3cbd6; font-size: 18px; }
.skup2-okno-x--statyczny { position: static; width: 44px; height: 44px; }
.skup2-okno-tytul { display: flex; align-items: center; gap: 12px; padding-right: 40px; }
.skup2-okno-tytul > span:last-child { display: flex; flex-direction: column; gap: 2px; }
.skup2-okno-tytul strong { font-family: var(--s2-cond); font-size: 26px; font-weight: 800; line-height: 1; }
.skup2-okno-tytul > span:last-child > span { font-size: 13px; color: #b9c2cf; }
.skup2-dzwonek { width: 48px; height: 48px; border-radius: 14px; background: var(--s2-zloty); display: inline-flex; align-items: center; justify-content: center; flex: none; animation: skup2Dzwon 2.6s ease-in-out infinite; }
.skup2-okno-stawki { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.skup2-okno-stawki > span { background: #131d2a; border: 1px solid #24303f; border-radius: 12px; padding: 8px 12px; display: flex; justify-content: space-between; align-items: center; gap: 8px; }
.skup2-okno-stawki > span > span { font-size: 13px; color: #b9c2cf; font-weight: 700; }
.skup2-okno-stawki strong { font-family: var(--s2-cond); font-size: 20px; font-weight: 800; white-space: nowrap; }
.skup2-okno-form { padding: 20px 22px 22px; display: flex; flex-direction: column; gap: 16px; margin: 0; }
.skup2-okno-form .skup2-blad { color: #c62828; }
.skup2-okno-stopka { font-size: 11px; color: #8f9bab; text-align: center; }
.skup2-okno-gotowe { padding: 26px 22px 24px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.skup2-okno-gotowe > strong { font-family: var(--s2-cond); font-size: 26px; font-weight: 800; }
.skup2-okno-gotowe > span { font-size: 15px; color: #3a4558; line-height: 1.5; max-width: 360px; overflow-wrap: anywhere; }
.skup2-ptaszek { stroke-dasharray: 40; stroke-dashoffset: 40; animation: skup2Ptaszek .5s .15s ease-out forwards; }
.skup2-captcha:empty { display: none; }
.skup2-captcha { min-height: 78px; }
.skup2-grupa { display: flex; flex-direction: column; gap: 8px; }
.skup2-grupa-siatka { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.skup2-wybor { position: relative; display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 12px; border: 2px solid var(--s2-ramka); background: #fff; cursor: pointer; }
.skup2-wybor input, .skup2-rodzaj input, .skup2-zgoda input, .skup2-wszystko input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.skup2-wybor-kratka { flex-shrink: 0; width: 22px; height: 22px; border-radius: 6px; border: 2px solid #b6bec9; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 800; }
.skup2-wybor > span:last-child { display: flex; flex-direction: column; align-items: flex-start; }
.skup2-wybor strong { font-weight: 800; font-size: 15px; }
.skup2-wybor > span:last-child span { font-size: 12px; color: var(--s2-szary); }
.skup2-wybor:has(input:checked) { border-color: var(--s2-zloty); background: #fffaf0; }
.skup2-wybor input:checked + .skup2-wybor-kratka { background: var(--s2-zloty); border-color: var(--s2-zloty); }
.skup2-wybor input:checked + .skup2-wybor-kratka::after { content: '✓'; color: var(--s2-tekst); }
.skup2-wybor input:focus-visible + .skup2-wybor-kratka { outline: 3px solid var(--s2-zloty); outline-offset: 2px; }
.skup2-rodzaje { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 8px; }
.skup2-rodzaj { position: relative; cursor: pointer; }
.skup2-rodzaj span { display: inline-flex; align-items: center; height: 40px; padding: 0 14px; border-radius: 999px; font-size: 14px; font-weight: 800; border: 2px solid var(--s2-ramka); background: #fff; color: var(--s2-szary); }
.skup2-rodzaj--gora input:checked + span { border-color: var(--s2-zielony); background: #eefaf1; color: var(--s2-zielony); }
.skup2-rodzaj--dol input:checked + span { border-color: var(--s2-czerwony); background: #fdecea; color: var(--s2-czerwony); }
.skup2-rodzaj input:focus-visible + span { outline: 3px solid var(--s2-zloty); outline-offset: 2px; }
.skup2-zgoda-mala { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 8px; font-size: 11px; line-height: 1.4; color: var(--s2-szary); cursor: pointer; }
.skup2-zgoda-mala input { margin: 2px 0 0; width: 16px; height: 16px; }
.skup2-zgoda-mala a { color: var(--s2-zloty-tekst); }

/* historia */
.skup2-hist-glowa { background: #0e1620; padding: 18px 22px 0; display: flex; flex-direction: column; gap: 14px; }
.skup2-hist-pasek { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.skup2-hist-pasek h2 { margin: 0; font-family: var(--s2-cond); font-size: 28px; font-weight: 800; color: #fff; }
.skup2-hist-prawa { display: flex; align-items: center; gap: 10px; }
.skup2-segment { display: flex; background: #1a2230; border-radius: 10px; padding: 4px; gap: 4px; }
.skup2-segment button { height: 36px; padding: 0 14px; border: 0; border-radius: 8px; font-size: 14px; font-weight: 800; background: transparent; color: #b9c2cf; white-space: nowrap; }
.skup2-segment button[aria-pressed="true"] { background: var(--s2-zloty); color: var(--s2-tekst); }
.skup2-hist-zakladki { display: flex; gap: 4px; overflow-x: auto; }
.skup2-hist-zakladki button { height: 44px; padding: 0 16px; border: 0; border-radius: 10px 10px 0 0; font-size: 15px; font-weight: 800; background: transparent; color: #b9c2cf; white-space: nowrap; }
.skup2-hist-zakladki button[aria-selected="true"] { background: #fff; color: var(--s2-tekst); }
.skup2-hist-tresc { padding: 20px 22px 6px; display: flex; flex-direction: column; gap: 14px; min-height: 300px; }
.skup2-hist-akcje { padding: 10px 22px 22px; display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.skup2-hist-staty { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.skup2-hist-stat { background: #f1f3f6; border-radius: 12px; padding: 10px 14px; display: flex; flex-direction: column; min-width: 0; }
.skup2-hist-stat:first-child { background: #fff3d6; }
.skup2-hist-stat > span:first-child { font-size: 12px; font-weight: 800; color: var(--s2-szary); }
.skup2-hist-stat strong { font-family: var(--s2-cond); font-size: 28px; font-weight: 800; white-space: nowrap; }
.skup2-hist-stat > span:last-child { font-size: 12px; color: var(--s2-szary); }
.skup2-hist-wykres { margin: 0; border: 1px solid #edf0f4; border-radius: 14px; padding: 12px 8px 4px; }
.skup2-hist-wykres svg { display: block; width: 100%; height: auto; }
.skup2-hist-wykres figcaption { font-size: 12px; color: var(--s2-szary); padding: 2px 8px 6px; }
.skup2-hist-wniosek { background: #eefaf1; border: 1px solid #b2dfbe; border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 2px; }
.skup2-hist-wniosek strong { font-size: 16px; color: #14522c; }
.skup2-hist-wniosek span { font-size: 14px; color: #1e5a33; }
.skup2-hist-filtry { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; }
.skup2-hist-filtry > div { display: flex; gap: 6px; flex-wrap: wrap; }
.skup2-pigulka { height: 40px; padding: 0 14px; border-radius: 999px; font-size: 14px; font-weight: 800; border: 1px solid #d5d9e0; background: #fff; color: var(--s2-tekst); }
.skup2-pigulka[aria-pressed="true"] { border-color: var(--s2-tekst); background: var(--s2-tekst); color: #fff; }
.skup2-legenda-poz { display: inline-flex; align-items: center; gap: 6px; height: 40px; padding: 0 10px; border-radius: 8px; border: 1px solid #d5d9e0; background: #fff; font-size: 14px; font-weight: 800; color: var(--s2-tekst); }
.skup2-legenda-poz[aria-pressed="false"] { opacity: .45; }
.skup2-legenda-poz i { width: 14px; height: 4px; border-radius: 2px; display: inline-block; }
.skup2-hist-tabela { border: 1px solid #edf0f4; border-radius: 14px; overflow: hidden; max-height: 470px; overflow-y: auto; }
.skup2-hist-tabela table { width: 100%; border-collapse: collapse; font-size: 15px; margin: 0; }
.skup2-hist-tabela th { padding: 10px 16px; font-size: 12px; color: var(--s2-szary); background: #f6f7f9; text-align: left; position: sticky; top: 0; }
.skup2-hist-tabela td { padding: 10px 16px; border-top: 1px solid #edf0f4; font-weight: 600; }
.skup2-hist-tabela td:nth-child(2) { font-family: var(--s2-cond); font-size: 20px; font-weight: 800; white-space: nowrap; }
.skup2-hist-tabela td:nth-child(3) { font-weight: 800; white-space: nowrap; }
.skup2-plus { color: var(--s2-zielony); }
.skup2-minus { color: #b02a2a; }
.skup2-hist-info { color: var(--s2-szary); font-size: 15px; padding: 40px 0; text-align: center; }

/* ---------- Krok 2 i 3: wspólny nagłówek ---------- */
.skup2-glowa { position: relative; overflow: hidden; background: var(--s2-hero); border-radius: 22px; padding: 24px 30px; display: flex; flex-direction: column; gap: 18px; color: #fff; }
.skup2-glowa::before { content: ''; position: absolute; right: -8%; top: -60%; width: 50%; height: 200%; background: radial-gradient(closest-side, rgba(36,180,96,.28), transparent); pointer-events: none; }
.skup2-postep { position: relative; list-style: none; display: grid; grid-template-columns: auto 1fr auto 1fr auto; align-items: center; gap: 12px; }
.skup2-postep li { display: flex; align-items: center; gap: 10px; min-width: 0; }
.skup2-postep li.skup2-postep-kreska { height: 3px; border-radius: 3px; background: #2c3748; }
.skup2-postep li.skup2-postep-kreska--ok { background: var(--s2-zielony); }
.skup2-postep-kolko { width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-family: var(--s2-cond); font-size: 18px; font-weight: 800; flex: none; background: #1a2230; border: 1px solid #3a4558; color: #8f9bab; }
.skup2-postep-ok .skup2-postep-kolko { background: var(--s2-zielony); border: 0; }
.skup2-postep-teraz .skup2-postep-kolko { background: var(--s2-zloty); border: 0; color: var(--s2-tekst); box-shadow: 0 0 0 5px rgba(245,166,35,.2); }
.skup2-postep li > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.skup2-postep li > span:last-child > span:first-child { color: #8f9bab; font-size: 12px; font-weight: 700; }
.skup2-postep li > span:last-child > :last-child { color: #fff; font-weight: 800; font-size: 15px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.skup2-postep-teraz > span:last-child > span:first-child { color: var(--s2-zloty) !important; }
.skup2-postep-dalej > span:last-child > :last-child { color: #8f9bab !important; }
.skup2-postep a { color: #fff !important; }
.skup2-glowa-tekst { position: relative; display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }
.skup2-glowa-tekst > div { display: flex; flex-direction: column; gap: 6px; }
.skup2-glowa h1 { margin: 0; font-family: var(--s2-cond); font-size: 44px; font-weight: 800; line-height: 1; color: #fff; }
.skup2-glowa-lead { color: #c3cbd6; font-size: 16px; }
.skup2-szyfr { display: inline-flex; align-items: center; gap: 8px; color: #e3e8ee; font-size: 14px; font-weight: 600; }
.skup2-szyfr svg { flex: none; }

/* ---------- Krok 2 ---------- */
.skup2-k2 { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 22px; align-items: start; }
.skup2-k2-form { display: flex; flex-direction: column; gap: 16px; margin: 0; min-width: 0; }
.skup2-karta { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 18px; padding: 22px 24px; display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.skup2-karta-gora { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.skup2-karta-gora > span:first-child { display: flex; align-items: center; gap: 12px; }
.skup2-karta-gora h2 { margin: 0; font-family: var(--s2-cond); font-size: 26px; font-weight: 800; }
.skup2-nr { width: 30px; height: 30px; border-radius: 50%; background: var(--s2-ciemny); color: var(--s2-zloty); display: inline-flex; align-items: center; justify-content: center; font-weight: 800; flex: none; }
.skup2-plakietka-kremowa { background: #fff3d6; border-radius: 8px; padding: 4px 10px; font-size: 13px; font-weight: 800; color: #6e4100; }
.skup2-bledy { background: #fff5f5; border: 2px solid #e0a39f; border-radius: 14px; padding: 12px 16px; color: #8c1d18; font-size: 14px; font-weight: 700; }
.skup2-bledy ul { list-style: disc; padding-left: 18px; }
.skup2-konto-k { border-radius: 16px; padding: 14px 16px; border: 1px solid var(--s2-ramka); background: #fbfcfd; animation: skup2Wjazd .3s cubic-bezier(.2,.8,.2,1) both; }
.skup2-konto-k.skup2-otwarte { border: 2px solid #f5c66b; background: #fff; box-shadow: 0 8px 22px rgba(17,26,36,.06); }
.skup2-konto-glowa { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.skup2-konto-glowa > span:first-child { display: flex; align-items: center; gap: 12px; min-width: 0; }
.skup2-konto-nr { width: 32px; height: 32px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; font-family: var(--s2-cond); font-size: 18px; font-weight: 800; background: var(--s2-ciemny); color: var(--s2-zloty); flex: none; }
.skup2-konto-nr.skup2-gotowe-k { background: var(--s2-zielony); color: #fff; }
.skup2-konto-glowa > span:first-child > span:last-child { display: flex; flex-direction: column; min-width: 0; }
.skup2-konto-glowa strong { font-weight: 800; font-size: 16px; }
.skup2-konto-skrot { font-size: 12px; color: var(--s2-szary); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.skup2-konto-akcje { display: flex; gap: 6px; flex-shrink: 0; }
.skup2-konto-akcje button { height: 36px; padding: 0 12px; border-radius: 9px; border: 1px solid #d5d9e0; background: #fff; font-size: 13px; font-weight: 800; color: #3a4558; }
.skup2-konto-akcje button.skup2-usun { border-color: #f1d4d2; color: var(--s2-czerwony); }
.skup2-konto-cialo { display: flex; flex-direction: column; gap: 14px; padding-top: 14px; border-top: 1px solid #edf0f4; margin-top: 12px; }
.skup2-konto-k:not(.skup2-otwarte) .skup2-konto-cialo { display: none; }
.skup2-dwa-pola { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.skup2-pole { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.skup2-pole-nazwa { font-size: 14px; font-weight: 800; }
.skup2-pole-nazwa small { font-weight: 600; color: var(--s2-szary); font-size: 13px; }
.skup2-pole-pomoc { font-size: 12px; color: var(--s2-szary); }
.skup2-wejscie { display: flex; align-items: center; gap: 10px; height: 50px; border: 2px solid #d5d9e0; border-radius: 12px; padding: 0 14px; background: #fff; transition: border-color .15s ease, box-shadow .15s ease; }
.skup2-wejscie:focus-within { border-color: var(--s2-zloty); box-shadow: 0 0 0 3px rgba(245,166,35,.22); }
.skup2-wejscie input, .skup2-wejscie select { border: 0; outline: 0; width: 100%; min-width: 0; font-family: inherit; font-size: 16px; background: transparent; color: var(--s2-tekst); padding: 0; height: auto; box-shadow: none; }
.skup2-wejscie--haslo { padding-right: 6px; }
.skup2-wejscie--haslo button { height: 38px; padding: 0 12px; border-radius: 9px; border: 0; background: #f1f3f6; font-size: 13px; font-weight: 800; color: #3a4558; flex: none; }
.skup2-wejscie.skup2-zle, .skup2-kody-pole.skup2-zle { border-color: #c62828; background: #fff5f5; }
.skup2-kody { display: flex; flex-direction: column; gap: 8px; }
.skup2-kody-gora { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 10px; }
.skup2-kody-gora .skup2-pole-nazwa { white-space: nowrap; }
.skup2-kody-gora button { background: transparent; border: 0; padding: 0; font-size: 13px; font-weight: 800; color: var(--s2-zloty-tekst); }
.skup2-kody-pole { display: flex; flex-direction: column; gap: 8px; border: 2px solid #d5d9e0; border-radius: 12px; padding: 12px 14px; background: #fff; transition: border-color .15s ease, box-shadow .15s ease; }
.skup2-kody-pole:focus-within { border-color: var(--s2-zloty); box-shadow: 0 0 0 3px rgba(245,166,35,.22); }
.skup2-kody-pole.skup2-dobre { border-color: #9fdcb8; }
.skup2-kody-pole textarea { border: 0; outline: 0; width: 100%; resize: vertical; min-height: 132px; font-family: var(--s2-cond); font-size: 20px; font-weight: 700; letter-spacing: 1.5px; line-height: 1.35; background: transparent; color: var(--s2-tekst); padding: 0; box-shadow: none; }
.skup2-kody-pole textarea::placeholder { font-family: Barlow, Arial, sans-serif; font-size: 15px; letter-spacing: 0; font-weight: 600; color: #8f9bab; }
.skup2-kody-stan { display: flex; justify-content: space-between; align-items: center; gap: 10px; border-top: 1px dashed #d5d9e0; padding-top: 10px; flex-wrap: wrap; }
.skup2-kody-chipy { display: flex; gap: 6px; flex-wrap: wrap; }
.skup2-kody-chipy span { min-width: 34px; text-align: center; border-radius: 7px; padding: 3px 7px; font-size: 12px; font-weight: 800; background: #f1f3f6; color: #8f9bab; }
.skup2-kody-chipy span.skup2-jest { background: #eefaf1; color: var(--s2-zielony); }
.skup2-kody-licznik { font-size: 13px; font-weight: 800; color: #8f9bab; }
.skup2-kody-licznik.skup2-jest { color: var(--s2-zielony); }
.skup2-kody-licznik.skup2-brak { color: #c62828; }
.skup2-kody-podpowiedz { font-size: 12px; color: var(--s2-szary); }
.skup2-kody-podpowiedz.skup2-zle-tekst { font-size: 13px; font-weight: 700; color: #c62828; }
.skup2-pomoc { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 16px; background: #f6f7f9; border: 1px solid #e3e7ee; border-radius: 14px; padding: 14px; animation: skup2Pomoc .25s ease-out both; }
.skup2-pomoc img { display: block; width: 100%; height: auto; border-radius: 10px; background: var(--s2-ciemny2); }
.skup2-pomoc-tekst { display: flex; flex-direction: column; gap: 8px; }
.skup2-pomoc-tekst strong { font-weight: 800; font-size: 15px; }
.skup2-pomoc-tekst ol { list-style: none; counter-reset: k; display: flex; flex-direction: column; gap: 8px; }
.skup2-pomoc-tekst li { counter-increment: k; display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; font-size: 13px; color: #3a4558; line-height: 1.45; }
.skup2-pomoc-tekst li::before { content: counter(k); width: 22px; height: 22px; border-radius: 50%; background: var(--s2-ciemny); color: var(--s2-zloty); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; }
.skup2-pomoc-uwaga { font-size: 12px; color: #6e4100; background: #fff8e6; border-radius: 8px; padding: 6px 8px; }
.skup2-ilosc { display: flex; flex-direction: column; gap: 10px; background: #f8f9fb; border: 1px solid #e3e7ee; border-radius: 14px; padding: 14px; }
.skup2-ilosc > span:first-child { font-size: 14px; font-weight: 800; }
.skup2-ilosc-wiersz { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.skup2-ilosc-wpis { display: flex; align-items: center; height: 54px; width: 200px; border-radius: 12px; padding: 0 14px; background: #fff; border: 2px solid #f5c66b; transition: border-color .15s ease, box-shadow .15s ease; }
.skup2-ilosc-wpis:focus-within { border-color: var(--s2-zloty); box-shadow: 0 0 0 3px rgba(245,166,35,.22); }
.skup2-ilosc-wpis.skup2-ma { border-color: #d5d9e0; }
.skup2-ilosc-wpis.skup2-zle { border-color: #e0a39f; }
.skup2-ilosc-wpis input { border: 0; outline: 0; width: 100%; min-width: 0; font-family: var(--s2-cond); font-size: 28px; font-weight: 800; background: transparent; color: var(--s2-tekst); padding: 0; height: auto; box-shadow: none; }
.skup2-ilosc-wpis span { font-family: var(--s2-cond); font-size: 22px; font-weight: 800; color: #8f9bab; }
.skup2-ilosc-wartosc { display: flex; flex-direction: column; min-width: 0; }
.skup2-ilosc-wartosc strong { font-family: var(--s2-cond); font-size: 20px; font-weight: 800; line-height: 1; color: #8f9bab; }
.skup2-ilosc-wartosc strong.skup2-ok-k { font-size: 26px; color: var(--s2-zielony); }
.skup2-ilosc-wartosc strong.skup2-zle-k { color: var(--s2-czerwony); }
.skup2-ilosc-wartosc span { font-size: 12px; color: var(--s2-szary); }
.skup2-wszystko { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; align-items: start; padding: 12px 14px; border-radius: 12px; border: 2px solid #e3e7ee; background: #fff; cursor: pointer; }
.skup2-wszystko:has(input:checked) { border-color: var(--s2-zloty); background: #fffaf0; }
.skup2-kratka { width: 22px; height: 22px; border-radius: 6px; border: 2px solid #b6bec9; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 800; margin-top: 1px; }
.skup2-wszystko input:checked + .skup2-kratka, .skup2-zgoda input:checked + .skup2-kratka { background: var(--s2-zloty); border-color: var(--s2-zloty); }
.skup2-wszystko input:checked + .skup2-kratka::after, .skup2-zgoda input:checked + .skup2-kratka::after { content: '✓'; color: var(--s2-tekst); }
.skup2-wszystko input:focus-visible + .skup2-kratka, .skup2-zgoda input:focus-visible + .skup2-kratka { outline: 3px solid var(--s2-zloty); outline-offset: 2px; }
.skup2-wszystko > span:last-child { display: flex; flex-direction: column; gap: 3px; }
.skup2-wszystko strong { font-weight: 800; font-size: 15px; }
.skup2-wszystko > span:last-child > span { font-size: 13px; color: var(--s2-szary); line-height: 1.45; }
.skup2-wszystko .skup2-tak-tekst { display: none; }
.skup2-wszystko:has(input:checked) .skup2-tak-tekst { display: inline; }
.skup2-wszystko:has(input:checked) .skup2-nie-tekst { display: none; }
.skup2-dodaj { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 56px; padding: 8px 14px; border-radius: 14px; border: 2px dashed #c9cfd8; background: #fbfcfd; font-size: 15px; font-weight: 800; color: #3a4558; text-align: center; }
.skup2-dodaj:hover { border-color: var(--s2-zloty); background: #fffaf0; }
.skup2-dodaj > span:first-child { width: 26px; height: 26px; border-radius: 50%; background: var(--s2-ciemny); color: var(--s2-zloty); display: inline-flex; align-items: center; justify-content: center; font-size: 18px; line-height: 1; flex: none; }
.skup2-uwaga-mala { font-size: 12px; color: var(--s2-szary); }
.skup2-metody-wybor { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.skup2-met { position: relative; display: flex; flex-direction: column; align-items: flex-start; gap: 6px; padding: 14px; border-radius: 14px; border: 2px solid var(--s2-ramka); background: #fff; cursor: pointer; transition: border-color .15s ease, background .15s ease, transform .15s ease; }
.skup2-met:hover { transform: translateY(-1px); }
.skup2-met input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.skup2-met--polecana { border-color: #9fdcb8; background: #f3fbf6; }
.skup2-met:has(input:checked) { border-color: var(--s2-zloty); background: #fffaf0; box-shadow: 0 6px 18px rgba(245,166,35,.18); }
.skup2-met:has(input:focus-visible) { outline: 3px solid var(--s2-zloty); outline-offset: 2px; }
.skup2-met-gora { display: flex; justify-content: space-between; align-items: flex-start; width: 100%; gap: 6px; }
.skup2-met-gora img { display: block; width: 36px; height: 36px; border-radius: 10px; }
.skup2-met-gora em { font-style: normal; background: var(--s2-zloty); color: var(--s2-tekst); border-radius: 6px; padding: 2px 7px; font-size: 10px; font-weight: 800; letter-spacing: .6px; }
.skup2-met strong { font-weight: 800; font-size: 16px; color: var(--s2-tekst); }
.skup2-met > span:last-child { font-size: 12px; color: var(--s2-szary); }
.skup2-pola-wyplaty { background: #f6f7f9; border-radius: 14px; padding: 16px; display: flex; flex-direction: column; gap: 12px; }
.skup2-pola-tytul { font-size: 13px; font-weight: 800; color: var(--s2-szary); letter-spacing: .8px; }
.skup2-pola-siatka { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.skup2-pola-siatka .skup2-pole--cale { grid-column: 1 / -1; }
.skup2-pola-grupa { display: contents; }
.skup2-waluty { display: flex; align-items: center; gap: 10px; }
.skup2-waluty > span { font-size: 14px; font-weight: 800; }
.skup2-waluty-segment { display: inline-flex; background: #e9ecf1; border-radius: 10px; padding: 3px; gap: 2px; }
.skup2-waluty-segment label { position: relative; cursor: pointer; }
.skup2-waluty-segment input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.skup2-waluty-segment span { display: inline-flex; align-items: center; height: 34px; padding: 0 16px; border-radius: 8px; font-weight: 800; font-size: 14px; color: var(--s2-szary); }
.skup2-waluty-segment input:checked + span { background: var(--s2-ciemny); color: #fff; }
.skup2-waluty-segment input:focus-visible + span { outline: 3px solid var(--s2-zloty); outline-offset: 2px; }
.skup2-zgoda { position: relative; display: grid; grid-template-columns: 24px minmax(0, 1fr); gap: 12px; align-items: start; padding: 12px 14px; border-radius: 12px; border: 2px solid #e3e7ee; background: #fff; cursor: pointer; font-size: 14px; line-height: 1.45; }
.skup2-zgoda:has(input:checked) { border-color: #9fdcb8; background: #f3fbf6; }
.skup2-zgoda.skup2-zle { border-color: #c62828; background: #fff5f5; }
.skup2-k2-bok { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 14px; }
.skup2-podsum { background: var(--s2-ciemny); border-radius: 18px; overflow: hidden; color: #fff; }
.skup2-podsum-wiersze { padding: 18px 20px 14px; display: flex; flex-direction: column; gap: 8px; }
.skup2-podsum-wiersze > span:first-child { font-size: 12px; font-weight: 800; letter-spacing: 1px; color: #8f9bab; }
.skup2-podsum-wiersz { display: flex; justify-content: space-between; gap: 10px; font-size: 14px; color: #b9c2cf; }
.skup2-podsum-wiersz strong { color: #fff; font-weight: 800; text-align: right; overflow-wrap: anywhere; }
.skup2-podsum-suma { background: var(--s2-ciemny2); padding: 14px 20px; display: flex; flex-direction: column; gap: 4px; border-top: 1px solid #22303f; }
.skup2-podsum-suma > span:first-child { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 10px; font-size: 14px; font-weight: 700; color: #b9c2cf; }
.skup2-podsum-suma strong { margin-left: auto; font-family: var(--s2-cond); font-size: 34px; font-weight: 800; color: var(--s2-zielony-jasny); line-height: 1; white-space: nowrap; }
.skup2-podsum-suma > span:last-child { font-size: 12px; color: #9aa6b5; text-align: right; }
.skup2-podsum-akcja { padding: 16px 20px 18px; display: flex; flex-direction: column; gap: 8px; }
.skup2-wyslij { height: 58px; border-radius: 14px; border: 0; font-size: 19px; font-weight: 800; display: inline-flex; align-items: center; justify-content: center; gap: 10px; background: var(--s2-zloty); color: var(--s2-tekst); transition: background .15s ease, transform .15s ease; }
.skup2-wyslij:hover { background: #ffb93d; }
.skup2-wyslij[aria-disabled="true"] { background: #3a4558; color: #8f9bab; cursor: not-allowed; }
.skup2-wyslij[disabled] { opacity: .8; cursor: progress; }
.skup2-podsum-akcja > span { font-size: 12px; color: #9aa6b5; text-align: center; }
.skup2-podsum-akcja .skup2-blok-zgody { color: #ff8a80; font-weight: 700; }
.skup2-po { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 18px; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px; }
.skup2-po-tytul { font-weight: 800; font-size: 15px; }
.skup2-po-lista { list-style: none; counter-reset: p; display: flex; flex-direction: column; gap: 14px; padding-left: 32px !important; border-left: 0; position: relative; }
.skup2-po-lista li { position: relative; counter-increment: p; display: flex; flex-direction: column; gap: 2px; }
.skup2-po-lista li::before { content: counter(p); position: absolute; left: -32px; top: 0; width: 24px; height: 24px; border-radius: 50%; background: var(--s2-zloty); color: var(--s2-tekst); display: inline-flex; align-items: center; justify-content: center; font-size: 12px; font-weight: 800; }
.skup2-po-lista li.skup2-po-my::before { background: var(--s2-zielony-jasny); color: var(--s2-ciemny2); }
.skup2-po-lista strong { font-size: 14px; font-weight: 800; }
.skup2-po-lista span { font-size: 13px; color: var(--s2-szary); }
.skup2-pytanie { display: flex; align-items: center; gap: 8px; font-size: 14px; color: #3a4558; padding: 0 4px; }
.skup2-pytanie a { font-weight: 800; }
.skup2-pasek-dol { display: none; }

/* ---------- Krok 3 ---------- */
.skup2-k3-hero { position: relative; overflow: hidden; background: var(--s2-hero); border-radius: 22px; padding: 24px 30px 28px; display: flex; flex-direction: column; gap: 22px; color: #fff; }
.skup2-k3-hero::before { content: ''; position: absolute; left: 20%; top: -40%; width: 60%; height: 160%; background: radial-gradient(closest-side, rgba(36,180,96,.25), transparent); pointer-events: none; }
.skup2-k3-gora { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; }
.skup2-k3-ptak { width: 84px; height: 84px; flex: none; }
.skup2-k3-gora > div { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.skup2-k3-napis { font-size: 13px; font-weight: 800; letter-spacing: 1.6px; color: var(--s2-zielony-jasny); }
.skup2-k3-gora h1 { margin: 0; font-family: var(--s2-cond); font-size: 46px; font-weight: 800; line-height: 1; color: #fff; }
.skup2-k3-lead { color: #c3cbd6; font-size: 16px; overflow-wrap: anywhere; }
.skup2-numery { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.skup2-numery > span { font-size: 12px; font-weight: 800; letter-spacing: 1px; color: #8f9bab; }
.skup2-numer { display: inline-flex; align-items: center; gap: 12px; height: 52px; padding: 0 16px; border-radius: 14px; border: 1px solid #2c3748; background: #131d2a; color: #fff; font-family: var(--s2-cond); font-size: 28px; font-weight: 800; letter-spacing: 1px; }
.skup2-numer span { font-family: Barlow, Arial, sans-serif; font-size: 12px; font-weight: 800; color: var(--s2-zloty); letter-spacing: .5px; }
.skup2-numer.skup2-skopiowano span { color: var(--s2-zielony-jasny); }
.skup2-k3 { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 22px; align-items: start; }
.skup2-k3-lewa { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.skup2-statusy { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.skup2-statusy li { position: relative; display: flex; flex-direction: column; gap: 6px; }
.skup2-statusy li::after { content: ''; position: absolute; top: 17px; left: 36px; right: -10px; height: 3px; background: #e1e5eb; }
.skup2-statusy li:last-child::after { display: none; }
.skup2-statusy li > span:first-child { position: relative; z-index: 1; width: 36px; height: 36px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 15px; background: #fff; border: 2px solid #d5d9e0; color: #8f9bab; }
.skup2-statusy li.skup2-st-teraz > span:first-child { background: var(--s2-zloty); border: 0; color: var(--s2-tekst); animation: skup2PulsKolo 1.8s ease-in-out infinite; }
.skup2-statusy strong { font-weight: 800; font-size: 15px; color: var(--s2-szary); }
.skup2-statusy li.skup2-st-teraz strong { color: var(--s2-tekst); }
.skup2-statusy li > span:last-child { font-size: 13px; color: var(--s2-szary); line-height: 1.4; }
.skup2-info3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.skup2-info3 > div { background: #f6f7f9; border-radius: 12px; padding: 12px 14px; display: flex; flex-direction: column; min-width: 0; }
.skup2-info3 > div > span:first-child { font-size: 11px; font-weight: 800; letter-spacing: 1px; color: var(--s2-szary); }
.skup2-info3 strong { font-family: var(--s2-cond); font-size: 24px; font-weight: 800; white-space: nowrap; }
.skup2-info3 > div > span:last-child { font-size: 12px; color: var(--s2-szary); }
.skup2-teraz { background: var(--s2-ciemny); border-radius: 18px; padding: 22px 24px; display: flex; flex-direction: column; gap: 14px; }
.skup2-teraz .skup2-h2 { color: #fff; font-size: 26px; }
.skup2-teraz-karty { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.skup2-teraz-karta { display: flex; flex-direction: column; gap: 6px; border-radius: 14px; padding: 14px; background: #1a2230; border: 1px solid #24303f; color: #fff; }
.skup2-teraz-karta strong { font-weight: 800; font-size: 15px; }
.skup2-teraz-karta > span:last-child { font-size: 13px; color: #b9c2cf; line-height: 1.45; }
.skup2-teraz-ikona { width: 36px; height: 36px; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; background: var(--s2-zielony); color: #fff; }
.skup2-teraz-karta--uwaga { background: rgba(245,166,35,.1); border-color: rgba(245,166,35,.45); }
.skup2-teraz-karta--uwaga .skup2-teraz-ikona { background: var(--s2-zloty); color: var(--s2-tekst); }
.skup2-k3-dalej { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.skup2-k3-dalej > div { background: #fff; border: 1px solid var(--s2-ramka); border-radius: 18px; padding: 18px 20px; display: flex; flex-direction: column; gap: 8px; align-items: flex-start; }
.skup2-k3-dalej strong { font-family: var(--s2-cond); font-size: 22px; font-weight: 800; }
.skup2-k3-dalej > div > span { font-size: 14px; color: #3a4558; }
.skup2-k3-dalej .skup2-przycisk { height: 46px; font-size: 15px; padding: 0 18px; margin-top: auto; }
.skup2-k3-bok { position: sticky; top: 16px; display: flex; flex-direction: column; gap: 14px; }
.skup2-k3-bok .skup2-podsum-akcja a.skup2-przycisk { height: 50px; font-size: 16px; }
.skup2-anuluj { display: inline-flex; justify-content: center; font-size: 14px; font-weight: 800; color: #ff8a80 !important; }
.skup2-anuluj:hover { color: #ffb4ab !important; }

/* ---------- Animacje ---------- */
@keyframes skup2Drift { from { transform: scale(1); } to { transform: scale(1.07) translateX(-8px); } }
@keyframes skup2Blysk { 0% { left: -60%; } 55% { left: 130%; } 100% { left: 130%; } }
@keyframes skup2Rosnij { from { transform: scaleY(.15); } to { transform: scaleY(1); } }
@keyframes skup2Moneta { 0% { left: 0; opacity: 0; } 6% { opacity: 1; } 94% { opacity: 1; } 100% { left: calc(100% - 26px); opacity: 0; } }
@keyframes skup2Unos { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }
@keyframes skup2Puls { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes skup2PulsKolo { 0%, 100% { box-shadow: 0 0 0 0 rgba(245,166,35,.45); } 50% { box-shadow: 0 0 0 7px rgba(245,166,35,0); } }
@keyframes skup2Tasma { from { transform: translateX(0); } to { transform: translateX(-40px); } }
@keyframes skup2Pigulka { 0%, 100% { box-shadow: 0 0 0 0 rgba(245,166,35,0); } 50% { box-shadow: 0 0 0 4px rgba(245,166,35,.25); } }
@keyframes skup2Wyskok { from { opacity: 0; transform: translateY(14px) scale(.97); } to { opacity: 1; transform: none; } }
@keyframes skup2Dzwon { 0%, 70%, 100% { transform: rotate(0); } 75% { transform: rotate(-10deg); } 80% { transform: rotate(9deg); } 85% { transform: rotate(-6deg); } 90% { transform: rotate(3deg); } }
@keyframes skup2Ptaszek { to { stroke-dashoffset: 0; } }
@keyframes skup2Wjazd { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes skup2Pomoc { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@keyframes skup2Wysuw { from { transform: translateY(100%); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) {
  .skup2 *, .skup2 *::before, .skup2 *::after { animation: none !important; transition: none !important; }
  .skup2-jak-moneta { display: none; }
  .skup2-ptaszek { stroke-dashoffset: 0; }
}

/* ---------- Tablet ---------- */
@media (max-width: 1023px) {
  .skup2-hero { grid-template-columns: minmax(0, 1fr); padding: 28px; }
  .skup2-kalk { max-width: 560px; }
  .skup2-h1 { font-size: 50px; }
  .skup2-jak-kroki { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 26px; }
  .skup2-jak-tor { display: none; }
  .skup2-metody-siatka { grid-template-columns: minmax(0, 1fr); }
  .skup2-k2, .skup2-k3 { grid-template-columns: minmax(0, 1fr); }
  .skup2-k2-bok, .skup2-k3-bok { position: static; }
  .skup2-metody-wybor { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ---------- Telefon ---------- */
@media (max-width: 767px) {
  .skup2 { gap: 18px; padding-top: 0; font-size: 15px; }
  .skup2 .skup2-d { display: none; }
  .skup2 .skup2-m { display: inline; }
  .skup2-h2 { font-size: 26px; }
  .skup2-hero { margin: 0 -15px; border-radius: 0 0 22px 22px; padding: 130px 16px 18px; gap: 16px; display: flex; flex-direction: column; align-items: stretch; }
  .skup2-hero-tekst { display: contents; }
  .skup2-hero-tekst > * { position: relative; }
  .skup2-hero-tekst > p:empty, .skup2-stawki { display: none; }
  .skup2-kalk { order: 2; }
  .skup2-fakty { order: 3; }
  .skup2-hero-tlo { -webkit-mask-image: linear-gradient(180deg, #000 0, #000 70px, transparent 140px); mask-image: linear-gradient(180deg, #000 0, #000 70px, transparent 140px); }
  .skup2-hero-monety { top: 0; height: 150px; left: 50%; transform: translateX(-50%); -webkit-mask-image: none; mask-image: none; animation: none; }
  .skup2-hero-tekst { gap: 14px; }
  .skup2-napis { font-size: 11px; letter-spacing: 1.2px; }
  .skup2-h1 { font-size: 36px; }
  .skup2-lead { font-size: 15px; }
  .skup2-fakty { max-width: none; }
  .skup2-fakt { padding: 10px 10px; }
  .skup2-fakt strong { font-size: 21px; }
  .skup2-fakt span { font-size: 11px; }
  .skup2-fakt span br { display: none; }
  .skup2-kalk { border-radius: 18px; max-width: none; }
  .skup2-zakladka { height: 58px; gap: 8px; }
  .skup2-zakladka svg { width: 18px; height: 18px; }
  .skup2-zakladka strong { font-size: 15px; }
  .skup2-ramka { padding: 12px 14px; }
  .skup2-ramka-tekst strong { font-size: 23px; }
  .skup2-schodki { height: 56px; gap: 4px; }
  .skup2-schodek i { width: 18px; }
  .skup2-kalk-srodek { padding: 16px; gap: 12px; }
  .skup2-kalk-kurs strong { font-size: 38px; }
  .skup2-wynik-gora strong { font-size: 34px; }
  .skup2-chip { height: 38px; padding: 0 12px; }
  .skup2-jak { padding: 20px 16px; border-radius: 18px; gap: 16px; }
  .skup2-jak-gora .skup2-h2 { font-size: 28px; }
  .skup2-jak-kroki { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .skup2-jak-krok { display: grid; grid-template-columns: 96px minmax(0, 1fr); grid-template-rows: auto auto 1fr; column-gap: 12px; row-gap: 4px; }
  .skup2-jak-ilu { grid-row: 1 / 4; height: 88px; border-radius: 14px; }
  .skup2-jak-ilu svg { width: 120px; }
  .skup2-jak-nr { top: 6px; left: 6px; width: 24px; height: 24px; font-size: 15px; }
  .skup2-jak-krok h3 { font-size: 19px; }
  .skup2-jak-krok p { font-size: 13px; }
  .skup2-dwie { grid-template-columns: minmax(0, 1fr); }
  .skup2-konto, .skup2-bezp { padding: 18px 16px; }
  .skup2-bezp-kolumny { grid-template-columns: minmax(0, 1fr); }
  .skup2-czas { padding: 18px 16px; gap: 14px; }
  .skup2-czas-suma { align-items: flex-start; width: 100%; }
  .skup2-czas-suma strong { font-size: 32px; }
  .skup2-os { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .skup2-os > span:first-child { display: none; }
  .skup2-os-dni { font-size: 10px; padding-bottom: 2px; }
  .skup2-os-nazwa { flex-direction: row; align-items: baseline; gap: 6px; padding: 8px 0 2px; }
  .skup2-os-nazwa strong { font-size: 14px; }
  .skup2-os-nazwa span::before { content: '· '; }
  .skup2-os-tor { height: 34px; border-top: 0; }
  .skup2-os-pasek { top: 4px; height: 26px; }
  .skup2-os-pasek b { font-size: 11px; padding: 0 6px; }
  .skup2-os-pasek--wyplata .skup2-os-dlugi { display: none; }
  .skup2-os-pasek--wyplata .skup2-os-krotki { display: inline; }
  .skup2-czas-kafle { grid-template-columns: minmax(0, 1fr); gap: 8px; }
  .skup2-czas-kafel { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; padding: 10px 12px; }
  .skup2-czas-kafel strong { font-size: 20px; }
  .skup2-czas-plat { gap: 14px; }
  .skup2-czas-karty { grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); }
  .skup2-metody-kafle { grid-template-columns: minmax(0, 1fr); }
  .skup2-metoda-rev { padding: 18px; }
  .skup2-metoda-rev > strong { font-size: 24px; }
  .skup2-opinie-liczba { font-size: 46px; }
  .skup2-opinie-tytul h2 { font-size: 22px; }
  .skup2-opinie-lista { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 12px; margin: 0 -15px; padding: 0 15px 6px; }
  .skup2-opinia { flex: 0 0 82%; scroll-snap-align: start; }
  .skup2-faq .skup2-h2 { padding: 18px 16px 10px; font-size: 26px; }
  .skup2-faq summary { padding: 14px 16px; font-size: 16px; }
  .skup2-faq details p { padding: 0 16px 16px; }
  .skup2-koniec { padding: 20px 16px; }
  .skup2-koniec h2 { font-size: 28px; }
  .skup2-koniec-akcje { width: 100%; flex-direction: column-reverse; align-items: stretch; }
  .skup2-koniec-akcje .skup2-przycisk { width: 100%; }
  .skup2-czat { justify-content: center; }
  /* okna jako panel od dołu */
  .skup2-okno { align-items: flex-end; padding: 0; }
  .skup2-okno-panel, .skup2-okno--szerokie .skup2-okno-panel { width: 100%; border-radius: 22px 22px 0 0; max-height: 92vh; overflow-y: auto; animation: skup2Wysuw .3s cubic-bezier(.2,.8,.2,1) both; }
  .skup2-okno-glowa { padding: 18px 16px 14px; }
  .skup2-okno-tytul strong { font-size: 22px; }
  .skup2-dzwonek { width: 40px; height: 40px; }
  .skup2-okno-form { padding: 16px; gap: 14px; }
  .skup2-hist-glowa { padding: 14px 16px 0; }
  .skup2-hist-pasek h2 { font-size: 22px; }
  .skup2-hist-tresc { padding: 14px 16px 4px; }
  .skup2-hist-akcje { padding: 10px 16px 16px; flex-direction: column; align-items: stretch; }
  .skup2-hist-staty { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .skup2-hist-stat strong { font-size: 22px; }
  /* krok 2 i 3 */
  .skup2-glowa { margin: 0 -15px; border-radius: 0 0 22px 22px; padding: 16px 16px 20px; gap: 14px; }
  .skup2-postep { grid-template-columns: auto 1fr auto 1fr auto; gap: 6px; }
  .skup2-postep li > span:last-child { display: none; }
  .skup2-postep li.skup2-postep-teraz > span:last-child { display: flex; }
  .skup2-glowa h1 { font-size: 32px; }
  .skup2-glowa-lead { font-size: 14px; }
  .skup2-szyfr { font-size: 12px; }
  .skup2-karta { padding: 16px; border-radius: 16px; }
  .skup2-karta-gora h2 { font-size: 22px; }
  .skup2-konto-k { padding: 12px; }
  .skup2-dwa-pola { grid-template-columns: minmax(0, 1fr); }
  .skup2-pomoc { grid-template-columns: minmax(0, 1fr); }
  .skup2-ilosc-wpis { width: 150px; }
  .skup2-metody-wybor { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .skup2-met { padding: 12px; }
  .skup2-pola-siatka { grid-template-columns: minmax(0, 1fr); }
  .skup2-k2 { gap: 16px; }
  .skup2-k2-bok .skup2-podsum-akcja { display: none; }
  .skup2-pasek-dol { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 1500; background: var(--s2-ciemny); padding: 10px 16px calc(10px + env(safe-area-inset-bottom)); gap: 12px; align-items: center; box-shadow: 0 -10px 30px rgba(0,0,0,.25); }
  .skup2-pasek-dol > span { display: flex; flex-direction: column; min-width: 0; color: #b9c2cf; font-size: 12px; font-weight: 700; }
  .skup2-pasek-dol strong { font-family: var(--s2-cond); font-size: 26px; font-weight: 800; color: var(--s2-zielony-jasny); line-height: 1; white-space: nowrap; }
  .skup2-pasek-dol .skup2-wyslij { flex: 1 1 auto; height: 52px; font-size: 17px; }
  .skup2--k2 { padding-bottom: 90px; }
  .skup2-k3-hero { margin: 0 -15px; border-radius: 0 0 22px 22px; padding: 16px 16px 22px; gap: 16px; }
  .skup2-k3-gora { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .skup2-k3-ptak { width: 60px; height: 60px; }
  .skup2-k3-gora h1 { font-size: 34px; }
  .skup2-numery { align-items: stretch; }
  .skup2-numer { justify-content: space-between; font-size: 24px; }
  .skup2-statusy { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .skup2-statusy li { display: grid; grid-template-columns: 36px minmax(0, 1fr); column-gap: 12px; row-gap: 2px; }
  .skup2-statusy li > span:first-child { grid-row: 1 / 3; }
  .skup2-statusy li::after { top: 36px; bottom: -12px; left: 17px; right: auto; width: 3px; height: auto; }
  .skup2-info3 { grid-template-columns: minmax(0, 1fr); }
  .skup2-teraz { padding: 18px 16px; }
  .skup2-teraz-karty, .skup2-k3-dalej { grid-template-columns: minmax(0, 1fr); }
}
