/* ════════════════════════════════════════════════════════════════════════════
   SzK — baner zgód na pliki cookies (wspólny). Kolory i czcionki ze zmiennych
   aktywnego szablonu (SzkView::cssVars) z bezpiecznymi wartościami zapasowymi.
   ════════════════════════════════════════════════════════════════════════════ */
.szk-cc-banner,.szk-cc-modal,.szk-cc-reopen,.szk-cc-ph,.szk-cc-btn{
  --cc-p:var(--color-primary,#1d2b4f);
  --cc-pd:var(--color-primary-dark,#16213d);
  --cc-on:var(--color-on-primary,#fff);
  --cc-tx:var(--color-text,#1e293b);
  --cc-mu:var(--color-text-muted,#55627a);
  --cc-bg:var(--color-bg,#fff);
  --cc-alt:var(--color-bg-alt,#f3f5f9);
  --cc-ln:var(--color-border,#dfe4ec);
  font-family:var(--font-body,system-ui,-apple-system,"Segoe UI",sans-serif);
}

/* ── Przyciski (równa waga „Odrzuć” i „Akceptuj” — wymóg UODO/EROD) ───────── */
.szk-cc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 20px;border:2px solid var(--cc-p);border-radius:6px;font:inherit;font-size:.92rem;font-weight:700;line-height:1.2;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.szk-cc-btn--primary{background:var(--cc-p);color:var(--cc-on)}
.szk-cc-btn--primary:hover{background:var(--cc-pd);border-color:var(--cc-pd)}
.szk-cc-btn--ghost{background:var(--cc-bg);color:var(--cc-p)}
.szk-cc-btn--ghost:hover{background:var(--cc-alt)}
.szk-cc-btn:focus-visible,.szk-cc-reopen:focus-visible,.szk-cc-switch:focus-visible,.szk-cc-cat__toggle:focus-visible,.szk-cc-close:focus-visible,.szk-cc-banner a:focus-visible,.szk-cc-modal a:focus-visible,.szk-cc-ph a:focus-visible{outline:3px solid var(--cc-p);outline-offset:3px}

/* ── Baner: pływające okienko w prawym dolnym rogu (jak CookieYes) ───────────── */
.szk-cc-banner{position:fixed;right:20px;bottom:20px;z-index:9990;width:min(420px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow-y:auto;background:var(--cc-bg);color:var(--cc-tx);border:1px solid var(--cc-ln);border-top:4px solid var(--cc-p);border-radius:10px;box-shadow:0 18px 50px -12px rgba(10,16,32,.45)}
.szk-cc-banner[hidden]{display:none}
.szk-cc-banner__inner{display:flex;flex-direction:column;gap:14px;padding:18px 20px 20px}
.szk-cc-banner__text{min-width:0}
.szk-cc-banner__title{margin:0 0 6px;font-family:var(--font-heading,inherit);font-size:1rem;font-weight:700;line-height:1.3;color:var(--cc-tx)}
.szk-cc-banner p{margin:0;font-size:.82rem;line-height:1.55;color:var(--cc-tx)}
.szk-cc-policy-link{color:var(--cc-p);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.szk-cc-banner__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.szk-cc-banner__actions .szk-cc-btn{min-height:40px;padding:8px 10px;font-size:.82rem}
.szk-cc-banner__actions .szk-cc-btn:first-child{grid-column:1/-1;order:3}
/* ── Przycisk ponownego otwarcia ──────────────────────────────────────────── */
.szk-cc-reopen{position:fixed;left:16px;bottom:16px;z-index:9980;display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:2px solid var(--cc-bg);border-radius:50%;background:var(--cc-p);color:var(--cc-on);box-shadow:0 8px 22px -8px rgba(10,16,32,.5);cursor:pointer;transition:transform .15s}
.szk-cc-reopen:hover{transform:scale(1.06)}
.szk-cc-reopen[hidden]{display:none}
body:has(.ticker--bottom) .szk-cc-reopen{bottom:64px}

/* ── Okno ustawień ────────────────────────────────────────────────────────── */
html.szk-cc-lock{overflow:hidden}
.szk-cc-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}
.szk-cc-modal[hidden]{display:none}
.szk-cc-modal__backdrop{position:absolute;inset:0;background:rgba(10,16,32,.55)}
.szk-cc-modal__dialog{position:relative;display:flex;flex-direction:column;width:100%;max-width:680px;max-height:calc(100vh - 32px);background:var(--cc-bg);color:var(--cc-tx);border-radius:10px;border-top:4px solid var(--cc-p);box-shadow:0 30px 70px -20px rgba(10,16,32,.6);outline:none}
.szk-cc-modal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid var(--cc-ln)}
.szk-cc-modal__head h2{margin:0;font-family:var(--font-heading,inherit);font-size:1.25rem;line-height:1.25;color:var(--cc-tx)}
.szk-cc-close{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;border:0;border-radius:6px;background:var(--cc-alt);color:var(--cc-tx);cursor:pointer}
.szk-cc-modal__body{flex:1;overflow-y:auto;padding:18px 22px}
.szk-cc-modal__body>p{margin:0 0 16px;font-size:.92rem;line-height:1.6}
.szk-cc-cats{list-style:none;margin:0;padding:0;border:1px solid var(--cc-ln);border-radius:8px}
.szk-cc-cat+.szk-cc-cat{border-top:1px solid var(--cc-ln)}
.szk-cc-cat__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 14px 6px 6px}
.szk-cc-cat__toggle{display:flex;align-items:center;gap:10px;flex:1;min-height:44px;padding:6px 8px;border:0;background:none;font:inherit;font-weight:700;font-size:.98rem;color:var(--cc-tx);text-align:left;cursor:pointer}
.szk-cc-cat__toggle svg{flex-shrink:0;transition:transform .15s}
.szk-cc-cat__toggle[aria-expanded="true"] svg{transform:rotate(90deg)}
.szk-cc-always{font-size:.8rem;font-weight:700;color:var(--cc-p);white-space:nowrap}
.szk-cc-cat__body{padding:0 16px 14px 42px;font-size:.88rem;line-height:1.55}
.szk-cc-cat__body p{margin:0 0 8px}
.szk-cc-cat__sub{font-weight:700}
.szk-cc-list{margin:0;padding-left:18px}
.szk-cc-list li{margin:4px 0}
.szk-cc-list a{color:var(--cc-p)}
.szk-cc-dim{color:var(--cc-mu)}
.szk-cc-modal__foot{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid var(--cc-ln)}

/* Przełącznik (role="switch") */
.szk-cc-switch{position:relative;flex-shrink:0;width:52px;height:30px;padding:0;border:2px solid var(--cc-mu);border-radius:999px;background:var(--cc-alt);cursor:pointer;transition:background .15s,border-color .15s}
.szk-cc-switch span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--cc-mu);transition:transform .15s,background .15s}
.szk-cc-switch[aria-checked="true"]{background:var(--cc-p);border-color:var(--cc-p)}
.szk-cc-switch[aria-checked="true"] span{transform:translateX(22px);background:#fff}

/* ── Zaślepka zablokowanej ramki (film, mapa, widżet) ─────────────────────── */
.szk-cc-ph{display:flex;align-items:center;justify-content:center;width:100%;margin:0 0 1em;padding:20px;border:1px solid var(--cc-ln);border-radius:8px;background:var(--cc-alt);color:var(--cc-tx);text-align:center;box-sizing:border-box}
.szk-cc-ph__box{max-width:460px}
.szk-cc-ph p{margin:0 0 10px;font-size:.9rem;line-height:1.5}
.szk-cc-ph__title{font-weight:700;font-size:1rem!important}
.szk-cc-ph__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.szk-cc-ph__link a{color:var(--cc-p);font-size:.85rem}

/* ── Tabela w polityce ([[lista-cookies]]) ────────────────────────────────── */
.szk-cc-policy table{width:100%;border-collapse:collapse;font-size:.9rem}
.szk-cc-policy th,.szk-cc-policy td{padding:8px 10px;border:1px solid var(--color-border,#dfe4ec);text-align:left;vertical-align:top}

/* ── Telefon ──────────────────────────────────────────────────────────────── */
@media (max-width:820px){
  .szk-cc-banner{right:12px;left:12px;bottom:12px;width:auto;max-height:calc(100vh - 24px)}
  .szk-cc-banner__inner{padding:16px}
  .szk-cc-modal{padding:0;align-items:flex-end}
  .szk-cc-modal__dialog{max-height:92vh;border-radius:10px 10px 0 0}
  .szk-cc-modal__foot{display:grid;grid-template-columns:1fr 1fr}
  .szk-cc-modal__foot .szk-cc-btn:nth-child(2){grid-column:1/-1;order:3}
}
@media (prefers-reduced-motion:reduce){
  .szk-cc-btn,.szk-cc-reopen,.szk-cc-switch,.szk-cc-switch span,.szk-cc-cat__toggle svg{transition:none}
}
@media print{.szk-cc-banner,.szk-cc-reopen,.szk-cc-modal{display:none!important}}
