/* ==========================================================================
   pages/polityka-prywatnosci.css: bloki wyłącznie polityki prywatności (prefiks .pp-*)
   Strona bez hero (body bez has-hero): nagłówek strony, 4 zasady w skrócie,
   spis treści (sticky od 1024 px) + kolumna tekstu --measure (62ch), FAQ, CTA.
   Tylko tokeny z base.css, zero hexów.
   ========================================================================== */

/* 1. Nagłówek strony */
.pp-head{padding-block:clamp(3rem, 1.5rem + 5vw, 6.5rem) var(--s-8)}
.pp-head .breadcrumbs{margin-bottom:var(--s-6)}
.pp-head__lead{margin-top:var(--s-5)}
.pp-head__meta{display:inline-flex;align-items:center;gap:var(--s-2);margin-top:var(--s-5);color:var(--ink-3)}
.pp-head__meta .i{color:var(--ink-2)}

/* 2. W skrócie: 4 zasady (1 → 2 → 4 kolumny) */
.pp-brief{display:grid;gap:var(--s-6) var(--gap);margin-top:var(--s-8);padding:0;list-style:none}
.pp-brief__item{display:grid;grid-template-columns:48px minmax(0,1fr);align-content:start;gap:var(--s-1) var(--s-4);padding-top:var(--s-5);border-top:1px solid var(--line);max-width:none}
.pp-brief__item .i{grid-row:span 2;box-sizing:content-box;padding:12px;border-radius:var(--r-pill);background:var(--foam);color:var(--ink)}
.pp-brief__item p:last-child{color:var(--ink-2);max-width:34ch}
@media (max-width:639px){ .pp-brief{gap:var(--s-5)} }
@media (min-width:640px){
  .pp-brief{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pp-brief__item{grid-template-columns:minmax(0,1fr);gap:var(--s-3)}
  .pp-brief__item .i{grid-row:auto;margin-bottom:var(--s-2)}
}
@media (min-width:1200px){ .pp-brief{grid-template-columns:repeat(4,minmax(0,1fr))} }

/* 3. Układ: spis treści + tekst */
.pp-body{padding-top:var(--s-6)}
.pp-layout{display:grid;gap:var(--s-7);align-items:start}
@media (min-width:1024px){
  .pp-layout{grid-template-columns:minmax(220px, 4fr) minmax(0, 8fr);column-gap:var(--gap)}
}

/* 3a. Spis treści: na mobile pudełko na --paper, od 1024 px przyklejona kolumna */
.pp-toc{padding:var(--s-5);background:var(--paper)}
.pp-toc__title{margin-bottom:var(--s-3)}
.pp-toc__list{display:grid;margin:0;padding:0;list-style:none}
.pp-toc__list li{max-width:none}
.pp-toc__link{position:relative;display:grid;grid-template-columns:2.25em minmax(0,1fr);align-items:center;min-height:40px;padding-block:6px;
  color:var(--ink-2);font-size:.9688rem;line-height:1.35;transition:color var(--d-micro) var(--ease-ui)}
.pp-toc__num{color:var(--ink-3);font-size:1rem;transition:color var(--d-micro) var(--ease-ui)}
.pp-toc__link[aria-current="true"]{color:var(--ink);font-weight:600}
.pp-toc__link[aria-current="true"] .pp-toc__num{color:var(--accent-ink)}
@media (hover:hover) and (pointer:fine){ .pp-toc__link:hover{color:var(--sky-ink)} }
@media (min-width:1024px){
  .pp-toc{position:sticky;top:calc(var(--header-h) + var(--s-6));padding:0 var(--s-6) 0 0;background:none}
  .pp-toc__list{border-left:1px solid var(--line)}
  .pp-toc__link{padding-left:var(--s-5)}
  /* znacznik aktywnej sekcji: pasek słońca na linii spisu, wjeżdża skalą (transform, bez layoutu) */
  .pp-toc__link::before{content:"";position:absolute;left:-1px;top:8px;bottom:8px;width:2px;background:var(--accent);
    transform:scaleY(0);transform-origin:center;transition:transform var(--d-ui) var(--ease-ui)}
  .pp-toc__link[aria-current="true"]::before{transform:scaleY(1)}
}

/* 3b. Tekst polityki */
.pp-prose{min-width:0}
.pp-prose > .pp-sec + .pp-sec{margin-top:var(--s-7);padding-top:var(--s-7);border-top:1px solid var(--line)}
.pp-sec > * + *{margin-top:1em}
.pp-sec h2{display:flex;align-items:baseline;gap:var(--s-4);margin-top:0}
.pp-sec__num{flex:none;min-width:1.5em;color:var(--accent-ink);font-size:.8em}
.pp-sec h3{margin-top:1.8em}
.pp-sec a[href^="#"]{font-weight:600}

/* dane administratora */
.pp-admin{display:grid;margin-top:var(--s-5)}
.pp-admin > div{display:grid;gap:var(--s-1);padding-block:var(--s-3);border-top:1px solid var(--line)}
.pp-admin > div:last-child{border-bottom:1px solid var(--line)}
.pp-admin dt{color:var(--ink-3);font-size:var(--t-small);font-weight:600}
.pp-admin dd{margin:0}
@media (min-width:520px){ .pp-admin > div{grid-template-columns:7rem minmax(0,1fr);gap:var(--s-4);align-items:baseline} }

/* pola formularza / okresy przechowywania: etykieta + opis */
.prose .pp-fields{padding:0;list-style:none}
.pp-fields li{display:grid;gap:var(--s-1);max-width:none;padding-block:var(--s-4);border-top:1px solid var(--line)}
.prose .pp-fields li + li{margin-top:0}
.pp-fields li:last-child{border-bottom:1px solid var(--line)}
.pp-fields__label{color:var(--ink);font-weight:600}
.pp-fields li > span:last-child{color:var(--ink-2)}
@media (min-width:640px){ .pp-fields li{grid-template-columns:11.5rem minmax(0,1fr);gap:var(--s-5)} }

/* tabele: podstawy prawne, cookies (na wąskich ekranach stos kart z etykietami) */
.pp-table-wrap{margin-top:var(--s-5)}
.pp-table{width:100%;font-size:.9688rem;line-height:1.5}
.pp-table th{padding:0 var(--s-4) var(--s-3) 0;border-bottom:1px solid var(--ink);text-align:left;vertical-align:bottom;
  color:var(--ink-3);font-size:var(--t-label);font-stretch:var(--w-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.pp-table td{padding:var(--s-4) var(--s-4) var(--s-4) 0;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-2)}
.pp-table td:first-child{color:var(--ink)}
.pp-table th:last-child,.pp-table td:last-child{padding-right:0}
.pp-table code{padding:.1em .35em;background:var(--paper);color:var(--ink);font-size:.875em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:nowrap}
.pp-table__sub{display:block;margin-top:var(--s-1);color:var(--ink-3);font-size:var(--t-small)}
@media (min-width:640px){ .pp-table:not(.pp-table--cookies) td:first-child{width:52%} }
@media (max-width:639px){
  .pp-table:not(.pp-table--cookies) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pp-table:not(.pp-table--cookies),.pp-table:not(.pp-table--cookies) tbody,.pp-table:not(.pp-table--cookies) tr,.pp-table:not(.pp-table--cookies) td{display:block;width:auto}
  .pp-table:not(.pp-table--cookies) tr{padding-block:var(--s-4);border-bottom:1px solid var(--line)}
  .pp-table:not(.pp-table--cookies) tr:first-child{border-top:1px solid var(--ink)}
  .pp-table:not(.pp-table--cookies) td{padding:0;border:0}
  .pp-table:not(.pp-table--cookies) td + td{margin-top:var(--s-3)}
  .pp-table:not(.pp-table--cookies) td::before{content:attr(data-label);display:block;margin-bottom:var(--s-1);color:var(--ink-3);font-size:var(--t-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
}
@media (max-width:767px){
  .pp-table--cookies thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .pp-table--cookies,.pp-table--cookies tbody,.pp-table--cookies tr,.pp-table--cookies td{display:block;width:auto}
  .pp-table--cookies tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-3) var(--s-4);padding-block:var(--s-4);border-bottom:1px solid var(--line)}
  .pp-table--cookies tr:first-child{border-top:1px solid var(--ink)}
  .pp-table--cookies td{padding:0;border:0}
  .pp-table--cookies td:first-child,.pp-table--cookies td:nth-child(2){grid-column:1 / -1}
  .pp-table--cookies td:not(:first-child)::before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--ink-3);font-size:var(--t-label);font-weight:600;letter-spacing:.04em;text-transform:uppercase}
}

/* prawa osoby */
.prose .pp-rights{padding-left:1.25em}
.pp-rights li::marker{color:var(--ink-3)}
.pp-rights strong{color:var(--ink)}
.pp-note{margin-top:var(--s-6)}
.pp-note p{max-width:none}

/* panel zmiany zgody (pokazuje go pages/polityka-prywatnosci.js) */
.pp-consent{margin-top:var(--s-6);padding:var(--s-5) var(--s-5) var(--s-5) var(--s-6);background:var(--foam);border-left:2px solid var(--accent)}
.pp-consent > * + *{margin-top:var(--s-2)}
.pp-consent__status{color:var(--ink-2)}
.pp-consent__status strong{color:var(--ink)}
.pp-consent .pp-consent__actions{margin-top:var(--s-4);gap:var(--s-3)}
.pp-consent .btn[aria-pressed="true"]{pointer-events:none}
.pp-consent-fallback{color:var(--ink-3);font-size:var(--t-small)}

/* serwisy zewnętrzne */
.pp-services{display:grid;margin-top:var(--s-5)}
.pp-services > div{padding-block:var(--s-5);border-top:1px solid var(--line)}
.pp-services dt{font-size:var(--t-h4);font-weight:600;line-height:1.3}
.pp-services dd{margin:var(--s-2) 0 0;color:var(--ink-2);max-width:var(--measure)}
.pp-services dd a{color:var(--ink);white-space:nowrap}

.pp-updated{margin-top:var(--s-6)}

/* 4. FAQ */
.pp-faq .t-h2{max-width:20ch}

/* 5. CTA końcowe */
.pp-cta__grid{display:grid;gap:var(--s-6)}
.pp-cta__body .t-lead{margin-top:var(--s-5)}
.pp-cta__actions{display:grid;gap:var(--s-3);justify-items:start}
.pp-cta__actions .t-small{margin-top:var(--s-1)}
.pp-cta__back{margin-top:var(--s-3)}
@media (max-width:519px){ .pp-cta__actions .btn{width:100%} }
@media (min-width:1024px){
  .pp-cta__grid{grid-template-columns:7fr 5fr;align-items:end;column-gap:var(--gap)}
  .pp-cta__actions{padding-left:var(--s-6)}
}

/* 6. Druk: sam tekst polityki */
@media print{
  .pp-toc,.pp-consent,.pp-cta,.pp-faq{display:none !important}
  .pp-layout{display:block}
}
