/* Z203: kroje własne (OFL, wwwroot/fonts) — zero żądań do Google z przeglądarki gościa. Fraunces z osią optyczną (opsz), Archivo z szerokością (wdth). */
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin-ext-opsz-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin-opsz-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin-ext-opsz-italic.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-latin-opsz-italic.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-latin-ext-wdth-normal.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/fonts/archivo-latin-wdth-normal.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* Wersja F „Połączenie” — jeden system: papier i kartografia Atlasu (A), wygoda Prosto (D),
   aneks tygodniowy (E) i odloty weekendu (B) w tym samym języku graficznym. */
:root {
  --paper: #f4efe4;
  --paper-2: #ede5d4;
  --paper-3: #ddd2bc;
  --karta: #fbf8f1;
  --ink: #1b2740;
  --ink-2: #34405a;
  --ink-3: #6d7486;
  --muted: #5a5345;
  --sepia: #7a5530;
  --sepia-2: #a8865e;
  --red: #b0301a;
  --woda: #4f6f8f;
  --line: rgba(27, 39, 64, .26);
  --line-2: rgba(27, 39, 64, .14);
  --f-d: 'Fraunces', 'Iowan Old Style', Georgia, serif;
  --f-t: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
  --gut: 48px;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  margin: 0; background: var(--paper); color: var(--ink);
  font: 400 17px/1.55 var(--f-t); font-variant-numeric: lining-nums;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; overflow-x: hidden;
}
body::after {
  content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 50;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .32 0 0 0 0 .25 0 0 0 0 .16 0 0 0 .5 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  opacity: .26; mix-blend-mode: multiply;
}
body::before { content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 49; background: radial-gradient(120% 90% at 50% 40%, transparent 60%, rgba(122, 85, 48, .07) 100%); }
a { color: inherit; text-decoration-thickness: .5px; text-underline-offset: .18em; }
a:hover { color: var(--red); }
:focus-visible { outline: 2px solid var(--red); outline-offset: 2px; }
img, svg { max-width: 100%; }
h1, h2, h3, h4 { font-weight: 400; }
.wrap { max-width: 1360px; margin: 0 auto; padding: 0 var(--gut); }
.kap { font: 600 12px/1.35 var(--f-t); letter-spacing: .15em; text-transform: uppercase; color: var(--muted); font-stretch: 92%; }
.tab { font-variant-numeric: tabular-nums lining-nums; }
.przyklad { display: inline-block; font: 600 10.5px/1 var(--f-t); letter-spacing: .14em; text-transform: uppercase; color: var(--red); border: .5px solid var(--red); padding: 3px 5px 2px; vertical-align: .2em; margin-left: 6px; white-space: nowrap; font-style: normal; }
.podwojna { border-top: 1.5px solid var(--ink); position: relative; height: 4px; }
.podwojna::after { content: ""; position: absolute; left: 0; right: 0; top: 2.5px; border-top: .5px solid var(--ink); }
.wrap.podwojna { margin: 0 auto; max-width: calc(1360px - 2 * var(--gut)); padding: 0; }
.znak { vertical-align: -2px; flex: none; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ——— nagłówek ——— */
.folio { display: flex; justify-content: space-between; gap: 24px; padding-top: 10px; padding-bottom: 8px; font: 500 11.5px/1.3 var(--f-t); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); font-stretch: 90%; }
.nagl { display: flex; align-items: center; gap: 28px; padding-top: 8px; padding-bottom: 10px; border-top: .5px solid var(--line); }
.tytul-k { display: flex; align-items: center; gap: 12px; text-decoration: none; color: var(--ink); margin-right: auto; }
.tytul-k b { display: block; font: 500 21px/1.1 var(--f-d); letter-spacing: -.005em; font-variation-settings: "opsz" 36; }
.tytul-k i { display: block; font: italic 400 14px/1.3 var(--f-d); color: var(--muted); margin-top: 2px; }
.tytul-k .kr, .menu .kr { display: none; }
.znak-k { color: var(--ink); flex: none; }
.menu { display: flex; gap: 2px; }
.menu a { font: 500 14.5px/1 var(--f-t); text-decoration: none; color: var(--ink-2); padding: 15px 11px; min-height: 48px; display: inline-flex; align-items: center; gap: 5px; border-bottom: 1.5px solid transparent; white-space: nowrap; }
.menu a[aria-current] { color: var(--ink); border-bottom-color: var(--red); }
.moj { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; border: 1px solid var(--ink); padding: 0 14px 0 12px; min-height: 46px; background: var(--karta); }
.moj-k { font: 600 11px/1.15 var(--f-t); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); max-width: 6.5em; }
.moj b { font: 500 24px/1 var(--f-d); font-variant-numeric: lining-nums tabular-nums; letter-spacing: .01em; }
.moj:hover b { color: var(--red); }
.moj.zal { border-color: var(--red); }
.moj.zal .moj-k { color: var(--red); max-width: none; white-space: nowrap; }

/* ——— stopka ——— */
#stopka { margin-top: 104px; padding-bottom: 40px; }
.stopka-siatka { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 48px; padding: 28px 0 24px; }
.stopka-o { display: flex; gap: 16px; align-items: flex-start; }
.stopka-o p { margin: 0; font: 400 16px/1.55 var(--f-d); color: var(--ink-2); max-width: 46ch; }
.stopka-o b { font-weight: 600; color: var(--ink); }
#stopka h4 { margin: 4px 0 8px; }
#stopka ul { list-style: none; margin: 0; padding: 0; }
#stopka li a { display: inline-flex; align-items: center; min-height: 40px; font-size: 16px; color: var(--ink-2); text-decoration: none; border-bottom: .5px solid transparent; }
#stopka li a:hover { border-bottom-color: currentColor; }
.kolofon { display: flex; flex-wrap: wrap; gap: 6px 28px; border-top: .5px solid var(--line); padding-top: 14px; margin: 0; font: 400 13.5px/1.45 var(--f-t); color: var(--muted); }

/* ——— nagłówki działów ——— */
.dzial { display: flex; align-items: baseline; gap: 18px; border-bottom: 1.5px solid var(--ink); padding-bottom: 10px; }
.dzial h2 { font: 400 44px/1 var(--f-d); margin: 0; letter-spacing: -.015em; font-variation-settings: "opsz" 96; }
.dzial h2 em { font-style: italic; font-weight: 300; color: var(--sepia); }
.dzial .kap, .dzial .prawa { margin-left: auto; }
.nadtytul { display: flex; align-items: center; gap: 14px; margin: 0 0 12px; }
.nadtytul::after { content: ""; flex: 1; border-top: .5px solid var(--line); }

/* ——— przyciski ——— */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 48px; padding: 0 20px; font: 600 15.5px/1.15 var(--f-t); letter-spacing: .01em; text-decoration: none; border: 1px solid var(--ink); color: var(--ink); background: transparent; cursor: pointer; text-align: left; }
.btn:hover { color: var(--red); border-color: var(--red); }
.btn.pelny { background: var(--ink); color: var(--paper); }
.btn.pelny:hover { background: var(--red); border-color: var(--red); color: #fff; }
.btn-gl { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 16px; min-height: 68px; padding: 12px 22px; background: var(--ink); color: var(--paper); text-decoration: none; border: 1px solid var(--ink); box-shadow: 0 0 0 3px var(--paper), 0 0 0 3.5px var(--ink); }
.btn-gl b { font: 600 19px/1.2 var(--f-t); letter-spacing: .005em; }
.btn-gl span { grid-column: 1; font: italic 400 16px/1.2 var(--f-d); opacity: .85; }
.btn-gl svg { grid-row: 1 / span 2; grid-column: 2; }
.btn-gl:hover { background: var(--red); border-color: var(--red); color: #fff; }
.strz { width: 22px; height: 22px; flex: none; }
.lnk { font: 600 16px/1.3 var(--f-t); color: var(--ink); text-decoration: underline; text-decoration-thickness: .5px; text-underline-offset: .22em; display: inline-flex; align-items: center; gap: 6px; min-height: 44px; }

/* ——— ramka podwójna (metryczka, karty ważne) ——— */
.ramka { border: 1px solid var(--ink); padding: 4px; }
.ramka-w { border: .5px solid var(--ink); padding: 22px 24px 20px; height: 100%; }

/* ——— stan słowami ——— */
.stan { display: inline-flex; align-items: center; gap: 7px; font: 600 14.5px/1.25 var(--f-t); color: var(--ink); white-space: nowrap; }
.stan.st-spr { color: var(--sepia); } .stan.st-mar { color: var(--red); } .stan.st-brak { color: var(--muted); }

/* ——— elementy map (z A) ——— */
.plansza-svg { display: block; width: 100% !important; height: auto; overflow: visible; }
.plansza-svg[viewBox] { min-width: 0; }
.graticule { fill: none; stroke: var(--woda); stroke-opacity: .28; stroke-width: .5; }
.gr-pol { fill: none; stroke: var(--ink); stroke-width: 1.35; stroke-linejoin: round; }
.gr-pol-mini { fill: none; stroke: var(--ink); stroke-width: .8; stroke-linejoin: round; }
.gr-reg { fill: none; stroke: var(--ink); stroke-width: 1; stroke-dasharray: 6 2.2 1.2 2.2; stroke-linejoin: round; }
.gr-okr { fill: none; stroke: var(--ink-2); stroke-width: .7; stroke-dasharray: 1.4 2; stroke-linecap: round; }
.gr-okr-kraj { stroke-opacity: .45; stroke-width: .5; }
.ramka-in { fill: none; stroke: var(--ink); stroke-width: .7; }
.ramka-out { fill: none; stroke: var(--ink); stroke-width: 1.1; }
.siatka { fill: none; stroke: var(--red); stroke-opacity: .35; stroke-width: .5; }
.siatka-l { font: italic 500 14px var(--f-d); fill: var(--red); }
.stopnie { font: 500 10.5px var(--f-t); fill: var(--ink-2); letter-spacing: .04em; font-variant-numeric: tabular-nums; }
.sas { font: 500 11px var(--f-t); letter-spacing: .5em; fill: var(--ink-3); font-stretch: 90%; }
.morze { font: italic 400 15px var(--f-d); letter-spacing: .14em; fill: var(--woda); }
.reg-rz { font-family: var(--f-d); font-style: italic; font-weight: 300; fill: var(--ink); paint-order: stroke; stroke: var(--paper); stroke-width: 4px; stroke-opacity: .85; font-variation-settings: "opsz" 144; }
.reg-n { font-family: var(--f-t); font-weight: 600; letter-spacing: .3em; fill: var(--ink-2); paint-order: stroke; stroke: var(--paper); stroke-width: 3px; stroke-opacity: .85; font-stretch: 88%; }
.reg-et.wyr .reg-rz, .reg-et.wyr .reg-n { fill: var(--red); }
.okr-et { font-family: var(--f-t); font-weight: 600; letter-spacing: .32em; fill: var(--sepia); paint-order: stroke; stroke: var(--paper); stroke-width: 3px; stroke-opacity: .7; font-stretch: 86%; }
.et-nr { font: 500 10px var(--f-t); fill: var(--ink); paint-order: stroke; stroke: var(--paper); stroke-width: 2.8px; stroke-linejoin: round; font-variant-numeric: tabular-nums; font-stretch: 88%; }
.et-wyr { font: 600 12.5px var(--f-t); fill: var(--red); paint-order: stroke; stroke: var(--paper); stroke-width: 3.2px; stroke-linejoin: round; }
.roza-n { font: 600 12px var(--f-d); fill: var(--ink); }
.skala text { font: 500 10px var(--f-t); fill: var(--ink-2); font-variant-numeric: tabular-nums; }
.w, .w-gl { fill: none; stroke: var(--sepia); stroke-opacity: .2; stroke-width: .6; }
.w-gl { stroke-opacity: .34; stroke-width: .9; }
.legenda { display: grid; gap: 8px 22px; font: 400 14.5px/1.35 var(--f-t); color: var(--ink-2); }
.legenda .poz { display: flex; gap: 10px; align-items: center; }
.legenda .poz svg { flex: none; }
.legenda .n { margin-left: auto; font-variant-numeric: tabular-nums; color: var(--ink); font-weight: 600; }
.podpis-mapy { font: italic 400 14px/1.5 var(--f-d); color: var(--muted); margin: 10px 0 0; }

/* ——— wiersz jednostki (wyniki, listy okręgu) — wygoda D w kroju A ——— */
.wiersz { display: grid; grid-template-columns: 4.1em minmax(0, 1fr) auto 22px; gap: 2px 16px; align-items: center; padding: 14px 0; border-bottom: .5px solid var(--line); text-decoration: none; color: var(--ink); min-height: 64px; }
.wiersz .nr { font: 400 27px/1 var(--f-d); font-variant-numeric: lining-nums tabular-nums; letter-spacing: -.01em; font-variation-settings: "opsz" 72; }
.wiersz .nz { font: 500 19px/1.25 var(--f-d); font-variation-settings: "opsz" 24; min-width: 0; }
.wiersz .nz small { display: block; font: 400 14.5px/1.4 var(--f-t); color: var(--ink-2); margin-top: 3px; overflow-wrap: anywhere; }
.wiersz .nz .pas { display: block; font: 400 13.5px/1.4 var(--f-t); color: var(--muted); margin-top: 2px; }
.wiersz .nz .pas b { color: var(--ink); font-weight: 600; }
.wiersz .st { text-align: right; display: grid; justify-items: end; gap: 2px; }
.wiersz .st small { font: 400 13px/1.3 var(--f-t); color: var(--muted); white-space: nowrap; }
.wiersz .ref { font: italic 500 15px var(--f-d); color: var(--red); white-space: nowrap; }
.wiersz .go { color: var(--ink); }
.wiersz:hover .nz { color: var(--red); }
.wiersz mark { background: none; color: inherit; box-shadow: inset 0 -.32em 0 rgba(176, 48, 26, .18); }
.wiersz.w-sz { grid-template-columns: 4.1em minmax(0, 1fr) 22px; align-items: start; }
.wiersz.w-sz .nr { padding-top: 3px; }
.wiersz.w-sz .go { align-self: center; }
.st-l { display: block; margin-top: 6px; }
.st-l .stan { font-size: 14.5px; }
.st-p { font: 400 14px/1.3 var(--f-t); color: var(--muted); }
.twoj { display: inline-block; font: 700 10.5px/1 var(--f-t); letter-spacing: .14em; text-transform: uppercase; background: var(--ink); color: var(--paper); padding: 4px 6px 3px; vertical-align: .25em; margin-left: 8px; }

/* ——— pole wyszukiwania (I17) ——— */
.pole { display: flex; border: 2px solid var(--ink); background: var(--karta); box-shadow: 0 0 0 4px rgba(176, 48, 26, .14); }
.pole svg.lupa { margin: 0 2px 0 16px; align-self: center; flex: none; }
.pole input { flex: 1; min-width: 0; border: 0; background: transparent; font: 400 24px/1 var(--f-d); color: var(--ink); padding: 15px 10px; outline: none; }
.pole button { border: 0; background: var(--ink); color: var(--paper); font: 600 16px var(--f-t); padding: 0 24px; cursor: pointer; min-height: 60px; }
.pole button:hover { background: var(--red); }

@media (max-width: 1180px) {
  .menu a { padding: 15px 7px; font-size: 14px; }
  .moj-k { display: none; }
}
@media (max-width: 860px) {
  :root { --gut: 16px; }
  body { font-size: 18px; }
  .kap { font-size: 12.5px; letter-spacing: .12em; }
  .folio { display: none; }
  .nagl { flex-wrap: wrap; gap: 0; padding: 10px 16px 0; }
  .tytul-k { padding: 2px 0 8px; }
  .tytul-k b { font-size: 21px; white-space: nowrap; }
  .tytul-k .dl, .menu .dl { display: none; }
  .tytul-k .kr, .menu .kr { display: inline; }
  .tytul-k i { font-size: 14px; }
  .moj { display: none; }
  .menu { order: 3; flex-basis: calc(100% + 32px); overflow-x: auto; scrollbar-width: none; margin: 0 -16px; padding: 0 8px; border-top: .5px solid var(--line); -webkit-mask-image: linear-gradient(90deg, #000 85%, transparent); mask-image: linear-gradient(90deg, #000 85%, transparent); }
  .menu::-webkit-scrollbar { display: none; }
  .menu { -webkit-mask-image: none; mask-image: none; justify-content: space-between; padding: 0 12px; }   /* krótkie nazwy mieszczą się bez przewijania */
  .menu a { padding: 14px 9px; font-size: 16px; }
  .wrap.podwojna { max-width: calc(100% - 32px); }
  #stopka { margin-top: 72px; }
  .stopka-siatka { grid-template-columns: 1fr; gap: 22px; }
  .stopka-o p { font-size: 17px; }
  #stopka li a { font-size: 17px; min-height: 44px; }
  .dzial { flex-wrap: wrap; gap: 6px 14px; }
  .dzial h2 { font-size: 34px; }
  .dzial .kap, .dzial .prawa { margin-left: 0; flex-basis: 100%; }
  .wiersz { grid-template-columns: 3.4em minmax(0, 1fr) 22px; gap: 2px 12px; }
  .wiersz .nr { font-size: 24px; align-self: start; padding-top: 2px; }
  .wiersz .st { grid-column: 2; grid-row: 2; justify-items: start; text-align: left; }
  .wiersz .go { grid-column: 3; grid-row: 1 / span 2; }
  .wiersz.w-sz { grid-template-columns: 3.4em minmax(0, 1fr) 22px; }
  .wiersz.w-sz .go { grid-row: 1; }
  .st-l .stan { font-size: 15.5px; }
  .st-p { font-size: 15px; }
  .wiersz .nz { font-size: 19px; }
  .wiersz .nz small { font-size: 15.5px; }
  .wiersz .nz .pas { font-size: 14.5px; }
  .wiersz .st small { font-size: 14px; white-space: normal; }
  .stan { font-size: 15.5px; }
  .legenda { font-size: 15.5px; }
  .pole input { font-size: 22px; padding: 14px 8px; }
  .pole button { padding: 0 16px; font-size: 17px; }
  .btn { font-size: 16.5px; min-height: 52px; }
  .btn-gl b { font-size: 19px; }
  .kolofon { font-size: 14px; }
}

/* ——— wyszukiwarka jako pierwsza rzecz pod nagłówkiem ——— */
.szuk-l { display: block; font: 400 44px/1.05 var(--f-d); letter-spacing: -.02em; margin: 0 0 16px; font-variation-settings: "opsz" 110; }
.podp { display: flex; flex-wrap: wrap; gap: 0 4px; align-items: center; margin: 12px 0 0; font: 400 15px/1.4 var(--f-t); color: var(--muted); }
.podp span { margin-right: 4px; }
.podp button { font: italic 500 16.5px var(--f-d); color: var(--ink); background: none; border: 0; border-bottom: .5px dotted var(--ink-3); padding: 10px 5px 5px; cursor: pointer; min-height: 44px; }
.podp .np { font: 400 15px var(--f-t); color: var(--muted); margin-right: 0; }
.podp .podp-w { flex-basis: 100%; margin: 2px 0 0; font: 400 14px/1.4 var(--f-t); color: var(--muted); }
/* odbiór 19.10: „Najbliżej mnie” i „Mapa stref” jako równe przyciski obok siebie (wcześniej przycisk i link rozjeżdżały się na boki) */
.szuk-dwa { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.szuk-dwa > button, .szuk-dwa > a { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 0 16px; border: 1px solid var(--ink); background: transparent; font: 600 15px var(--f-t); color: var(--ink); text-decoration: none; cursor: pointer; }
.szuk-dwa > button:hover, .szuk-dwa > a:hover { border-color: var(--red); color: var(--red); }
.szuk-dwa > button:disabled { opacity: .6; cursor: progress; }
.wyniki { list-style: none; margin: 14px 0 0; padding: 0; border-top: .5px solid var(--ink); }
.wyniki-st { display: flex; justify-content: space-between; gap: 12px; font: 400 15px var(--f-t); color: var(--muted); padding-top: 10px; }
.wyniki-st a { color: var(--ink); font-weight: 600; }
/* Z203: grupy wyników, brak wyniku, „To mój oddział” */
.wyniki:empty { border-top: 0; margin: 0; }
.wyniki .w-gr { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 14px 0 2px; border-bottom: .5px solid var(--line); }
.wyniki .w-gr .kap { color: var(--red); }
.wyniki .w-gr a { font: 600 14px var(--f-t); color: var(--ink); min-height: 32px; display: inline-flex; align-items: center; }
.wiersz .nr.nr-okr { font: italic 400 20px/1.2 var(--f-d); color: var(--ink-2); }
.wiersz.w-brak { grid-template-columns: minmax(0, 1fr); gap: 8px; font: 400 16px/1.5 var(--f-t); color: var(--ink-2); }
.wiersz.w-brak b { color: var(--ink); }
.wyniki li.z-moj { position: relative; }
.wyniki li.z-moj .wiersz { padding-bottom: 54px; }
.w-moj { position: absolute; left: 4.1em; margin-left: 16px; bottom: 10px; font: 600 14.5px var(--f-t); background: var(--karta); color: var(--ink); border: 1px solid var(--ink); padding: 0 14px; min-height: 40px; cursor: pointer; }
.w-moj:hover { background: var(--ink); color: var(--paper); }
@media (max-width: 860px) { .w-moj { left: 3.4em; margin-left: 12px; min-height: 44px; } .wyniki li.z-moj .wiersz { padding-bottom: 60px; } }

/* ——— pasek działu + przełącznik widoku (to samo miejsce na każdej stronie działu) ——— */
.pdz { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px 40px; align-items: end; border-bottom: 1.5px solid var(--ink); padding-bottom: 14px; }
.pdz-t .kap { margin: 0; }
.pdz.pdz-w { grid-template-columns: minmax(0, 1fr); gap: 14px; }
.pdz.pdz-w .widoki { justify-content: flex-start; }
.pdz-h { font: 400 52px/1 var(--f-d); letter-spacing: -.02em; margin: 6px 0 0; font-variation-settings: "opsz" 120; }
h2.pdz-h { font-size: 44px; }
.pdz-l { margin: 10px 0 0; font: italic 400 17px/1.45 var(--f-d); color: var(--ink-2); }
.widoki { display: flex; align-items: center; gap: 10px 14px; flex-wrap: wrap; justify-content: flex-end; }
.widoki > .kap { white-space: nowrap; }
.seg { display: inline-flex; border: 1.5px solid var(--ink); background: var(--karta); }
.seg a { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 16px; font: 600 15.5px var(--f-t); text-decoration: none; color: var(--ink-2); border-left: .5px solid var(--ink); white-space: nowrap; }
.seg a:first-child { border-left: 0; }
.seg a[aria-current] { background: var(--ink); color: var(--paper); }
.seg a:not([aria-current]):hover { color: var(--red); }
.w3d { display: inline-flex; align-items: center; gap: 6px; min-height: 48px; font: 500 15px var(--f-t); color: var(--ink-2); white-space: nowrap; }

/* ——— lista regionów › okręgów › oddziałów (z sekcjami) ——— */
.reg { border-bottom: .5px solid var(--line); }
.reg > summary { list-style: none; display: grid; grid-template-columns: 70px 54px minmax(0, 1fr) 230px 30px; gap: 0 16px; align-items: center; padding: 12px 0; cursor: pointer; min-height: 84px; }
.reg > summary::-webkit-details-marker, .okr > summary::-webkit-details-marker { display: none; }
.rg-rz { font: italic 300 42px/1 var(--f-d); font-variation-settings: "opsz" 144; text-align: center; }
.rg-n { font: 500 22px/1.15 var(--f-d); }
.rg-n small { display: block; font: 400 14px/1.45 var(--f-t); color: var(--muted); margin-top: 4px; }
.rg-l { display: grid; gap: 5px; justify-items: end; font: 400 14px/1.3 var(--f-t); color: var(--ink-2); font-variant-numeric: tabular-nums; text-align: right; }
.rg-l b { color: var(--ink); }
.mob { display: none; }
.plus { width: 30px; height: 30px; border: 1px solid var(--ink); position: relative; justify-self: end; flex: none; }
.plus::before, .plus::after { content: ""; position: absolute; left: 7px; right: 7px; top: 14px; border-top: 1.5px solid var(--ink); }
.plus::after { transform: rotate(90deg); }
details[open] > summary .plus::after { display: none; }
.reg[open] > summary .rg-n { color: var(--red); }
.okr-l { list-style: none; margin: 0 0 18px 140px; padding: 0; border-top: .5px solid var(--ink); }
.okr { border-bottom: .5px solid var(--line-2); }
.okr > summary { list-style: none; display: grid; grid-template-columns: minmax(0, 1fr) 120px 150px 30px; gap: 0 18px; align-items: center; padding: 10px 0; min-height: 66px; cursor: pointer; }
.ok-n b { display: block; font: 500 19px/1.2 var(--f-d); }
.ok-n small { display: block; font: 400 14px/1.35 var(--f-t); color: var(--ink-2); overflow-wrap: anywhere; margin-top: 2px; }
.ok-n small.bez { color: var(--muted); font-style: italic; font-family: var(--f-d); font-size: 15px; }
.ok-ile { font: 400 14px/1.25 var(--f-t); color: var(--ink-2); font-variant-numeric: tabular-nums; text-align: right; }
.ok-ile b { font: 400 22px/1 var(--f-d); color: var(--ink); }
.ok-ile small { display: block; color: var(--muted); font-size: 13.5px; margin-top: 2px; }
.ok-pas { display: grid; gap: 4px; justify-items: end; }
.ok-pas small { font: 400 13px/1.2 var(--f-t); color: var(--muted); white-space: nowrap; }
.okr[open] > summary .ok-n b { color: var(--red); }
.okr[open] { background: linear-gradient(90deg, rgba(251, 248, 241, .7), rgba(251, 248, 241, 0)); }
.odd-l { list-style: none; margin: 0 0 6px 18px; padding: 0 0 0 18px; border-left: 1.5px solid var(--red); }
.od { display: grid; grid-template-columns: 3.6em minmax(0, 1fr) 210px 22px; gap: 2px 14px; align-items: start; padding: 11px 0; border-top: .5px solid var(--line-2); text-decoration: none; min-height: 60px; }
.od .nr { font: 400 23px/1.05 var(--f-d); font-variant-numeric: lining-nums tabular-nums; }
.od .nz b { display: block; font: 500 18px/1.25 var(--f-d); }
.od .st { display: grid; justify-items: end; text-align: right; gap: 2px; padding-top: 2px; }
.od .st small { font: 400 13px/1.3 var(--f-t); color: var(--muted); overflow-wrap: anywhere; }
.od .go { align-self: center; }
.od:hover .nz b { color: var(--red); }
.sek-l { display: flex; flex-wrap: wrap; gap: 2px 14px; margin-top: 4px; font: 400 14.5px/1.4 var(--f-t); color: var(--ink-2); }
.sk { white-space: nowrap; }
.sk i { font: italic 500 13.5px var(--f-d); color: var(--red); margin-right: 5px; }
.sk-bez { font: italic 400 14.5px/1.4 var(--f-d); color: var(--muted); }
.sek-zr { flex-basis: 100%; font: italic 400 13.5px/1.35 var(--f-d); color: var(--sepia); }
.ok-dalej { display: flex; flex-wrap: wrap; align-items: center; gap: 0 18px; margin: 4px 0 12px 36px; font: 500 15px var(--f-t); }
.ok-dalej .kap { margin-right: 2px; }
.ok-dalej a { min-height: 40px; display: inline-flex; align-items: center; color: var(--ink); }

/* ——— dymek, okruszki (drzewo, mapa) ——— */
.okruszki { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; font: 400 15.5px/1.4 var(--f-t); color: var(--muted); margin: 0; padding: 0; list-style: none; }
.okruszki li { display: inline-flex; align-items: center; gap: 6px; }
.okruszki li + li::before { content: "›"; color: var(--ink-3); }
.okruszki button, .okruszki a { font: inherit; color: var(--ink-2); background: none; border: 0; padding: 8px 2px; cursor: pointer; text-decoration: underline; text-decoration-thickness: .5px; text-underline-offset: .2em; min-height: 40px; }
.okruszki li:last-child button, .okruszki li:last-child span { color: var(--ink); font-weight: 600; text-decoration: none; }

@media (max-width: 1180px) {
  .reg > summary { grid-template-columns: 64px minmax(0, 1fr) 190px 30px; }
  .rg-rz { display: none; }
  .okr-l { margin-left: 0; }
  .pdz { grid-template-columns: minmax(0, 1fr); }
  .widoki { justify-content: flex-start; }
}
@media (max-width: 860px) {
  .szuk-l { font-size: 30px; margin-bottom: 12px; }
  .podp { font-size: 16px; }
  .podp .podp-w { display: none; }
  .szuk-dwa { display: grid; grid-template-columns: 1fr 1fr; }
  .szuk-dwa > button:only-child { grid-column: 1 / -1; }
  .szuk.pisze .szuk-dwa { display: none; }
  .szuk .pole { scroll-margin-top: 8px; }
  .szuk.pisze .podp { display: none; }   /* przy pisaniu wyniki tuż pod polem (klawiatura zasłania resztę ekranu) */
  .wyniki-st { font-size: 15.5px; flex-wrap: wrap; }
  .pdz-h, h2.pdz-h { font-size: 34px; }
  .pdz-l { font-size: 17px; }
  .widoki { gap: 8px; }
  .widoki > .kap { display: none; }
  .seg { display: flex; width: 100%; }
  .seg a { flex: 1; justify-content: center; padding: 0 6px; font-size: 16px; min-height: 52px; gap: 6px; }
  .w3d { font-size: 16px; }
  .reg > summary { grid-template-columns: 56px minmax(0, 1fr) 30px; min-height: 76px; gap: 0 12px; }
  .reg > summary .rg-l { display: none; }
  .rg-n { font-size: 21px; }
  .rg-n .mob { display: block; font: 400 15px/1.4 var(--f-t); color: var(--ink-2); margin-top: 2px; }
  .rg-n small.okn { display: none; }
  .okr > summary { grid-template-columns: minmax(0, 1fr) auto 30px; gap: 0 12px; }
  .ok-pas { display: none; }
  .ok-n b { font-size: 19px; }
  .ok-n small { font-size: 15px; }
  .ok-ile { font-size: 14.5px; }
  .odd-l { margin-left: 4px; padding-left: 12px; }
  .od { grid-template-columns: 3.1em minmax(0, 1fr) 20px; gap: 2px 10px; }
  .od .nr { font-size: 21px; }
  .od .st { grid-column: 2; grid-row: 2; justify-items: start; text-align: left; }
  .od .go { grid-column: 3; grid-row: 1 / span 2; }
  .od .nz b { font-size: 18.5px; }
  .sek-l { font-size: 15.5px; gap: 2px 12px; }
  .ok-dalej { margin-left: 0; font-size: 16px; }
  .okruszki { font-size: 16px; }
}
