/* Kontrapunkt v2 — paleta i kroje z kp.css fuzji (papier, tusz, teal; Newsreader + Inter, lokalnie). Mobile-first, zero poziomego scrolla. */
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/nr-v3.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00FF,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2026,U+2032-2033,U+20AC,U+2122,U+2212}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/nr-pl-v3.woff2) format('woff2');unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/in-v3.woff2) format('woff2');unicode-range:U+0020-007E,U+00A0-00AC,U+00AE-00FF,U+2009,U+200B,U+2013-2014,U+2018-201A,U+201C-201E,U+2022,U+2026,U+2032-2033,U+20AC,U+2122,U+2191,U+2193,U+2212}
@font-face{font-family:'Inter';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/in-pl-v3.woff2) format('woff2');unicode-range:U+0104-0107,U+0118-0119,U+0141-0144,U+015A-015B,U+0179-017C}
:root{
 --paper:#F7F5F0;--paper-2:#EFECE5;--card:#FCFBF8;--ink:#14161A;--ink-2:#2E3238;--muted:#5A5F67;
 --rule:#E2DED5;--rule-2:#CFCABF;--accent:#1F5C60;--accent-ink:#17484B;--accent-soft:#E2ECEA;
 --bar:#14161A;--bar-bg:#E6E2DA;--warn:#7A4E00;--warn-bg:#F4EAD3;--up:#1F5C60;--dn:#8A2D24;
 --serif:"Newsreader","Iowan Old Style",Georgia,serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
 --pad:16px;--wrap:1240px;color-scheme:light;
}
@media(prefers-color-scheme:dark){:root{
 --paper:#0F1113;--paper-2:#171A1D;--card:#15181B;--ink:#ECE9E3;--ink-2:#D2CFC9;--muted:#A6AAB1;
 --rule:#262A2F;--rule-2:#3A3F45;--accent:#86BAB6;--accent-ink:#A9D0CD;--accent-soft:#1A2829;
 --bar:#ECE9E3;--bar-bg:#2A2E33;--warn:#E0B062;--warn-bg:#2A2418;--up:#86BAB6;--dn:#E79A8F;color-scheme:dark}}
@media(min-width:600px){:root{--pad:24px}}
@media(min-width:1100px){:root{--pad:32px}}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.5 var(--sans);overflow-wrap:break-word}
img,svg{max-width:100%}
img{height:auto}
a{color:var(--accent-ink);text-decoration-color:var(--rule-2);text-underline-offset:3px}
a:hover{text-decoration-color:currentColor}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-9999px;top:0}.skip:focus{left:8px;top:8px;z-index:99;background:var(--card);padding:8px 12px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
/* nagłówek */
.mast{border-bottom:1px solid var(--ink);background:var(--paper)}
.mast-w{display:flex;flex-wrap:wrap;align-items:center;column-gap:12px}
.brand{display:flex;align-items:center;gap:8px;min-height:48px;color:var(--ink);text-decoration:none}
.brand svg{width:22px;height:22px;flex:none}
.brand b{font:600 22px/1 var(--serif);letter-spacing:-.01em}
.mast-d{margin-left:auto;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.nav{flex-basis:100%;display:flex;flex-wrap:wrap;gap:0 4px;border-top:1px solid var(--rule)}
.nav a{display:flex;align-items:center;min-height:44px;padding:0 10px 0 0;margin-right:8px;font-size:15px;font-weight:500;color:var(--ink-2);text-decoration:none;box-shadow:inset 0 -2px 0 transparent}
.nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}
@media(min-width:960px){.nav{order:0;flex-basis:auto;border:0;margin-left:16px}.nav a{min-height:56px}.mast-d{order:1}}
/* bloki */
.blk-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;border-top:2px solid var(--ink);margin:22px 0 10px;padding-top:8px}
.blk-h h2,h2.blk-h{font:700 12px/1.3 var(--sans);text-transform:uppercase;letter-spacing:.08em;margin:0}
.hint{font-size:12px;color:var(--muted)}
.ph{font:600 clamp(26px,1.4vw + 18px,34px)/1.15 var(--serif);margin:18px 0 12px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.ph .fl{width:30px;height:20px}
.crumb{margin:14px 0 0;font-size:14px;color:var(--muted)}
.empty{margin:8px 0;padding:10px 12px;background:var(--paper-2);border-left:3px solid var(--rule-2);color:var(--ink-2)}
.warn{color:var(--warn)}
.pm-all{margin:8px 0 0}.pm-all a{display:inline-flex;align-items:center;min-height:40px;font-weight:600;text-decoration:none}
/* siatka strony głównej */
.home{display:grid;grid-template-columns:minmax(0,1fr);column-gap:32px}
.home>*{min-width:0}
@media(min-width:960px){
 .home{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start}
 .h-x{grid-column:1;grid-row:1}.h-p{grid-column:2;grid-row:1 / span 3}
 .h-toppl{grid-column:1;grid-row:2}.h-live{grid-column:1;grid-row:3}.h-news{grid-column:1 / -1}
}
/* wpis X */
.xps{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
@media(min-width:960px){.xps.two{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
.xp{display:grid;grid-template-columns:40px minmax(0,1fr);column-gap:10px;background:var(--card);border:1px solid var(--rule);border-radius:12px;padding:12px 14px 6px 12px;min-width:0;scroll-margin-top:12px}
.xp:target{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}
.xp-av img,.xp-ini{width:40px;height:40px;border-radius:50%;display:block;background:var(--paper-2)}
.xp-ini{display:flex;align-items:center;justify-content:center;font:600 13px/1 var(--sans);color:var(--ink-2)}
.xp-b{min-width:0}
.xp-h{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:6px;line-height:1.3}
.xp-n{color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:3px;max-width:100%}
.xp-n b{font-weight:700;overflow-wrap:anywhere}
.vf{width:16px;height:16px;flex:none}
.xp-m{color:var(--muted);font-size:14px;overflow-wrap:anywhere}
.xp-m a{color:var(--muted);text-decoration:none}.xp-m a:hover{text-decoration:underline}
.xp-r{flex-basis:100%;font-size:13px;color:var(--muted)}
.xp-k{margin:4px 0 0;font-size:13px;color:var(--muted)}
.xp-t{margin:6px 0 4px;white-space:pre-line;overflow-wrap:anywhere;font-size:16px;line-height:1.45}
.xp-t a{overflow-wrap:anywhere}
.xp-more{margin:0 0 4px}.xp-more a{font-weight:600}
.xp-md{display:grid;gap:2px;border-radius:12px;margin:8px 0;border:1px solid var(--rule)}
.xp-md.n2,.xp-md.n4{grid-template-columns:1fr 1fr}.xp-md.n3{grid-template-columns:1fr 1fr}.xp-md.n3 a:first-child{grid-row:span 2}
.xp-md a{display:block;min-width:0}
.xp-md img{display:block;width:100%;height:100%;max-height:420px;object-fit:cover;border-radius:10px}
.xp-md.n1 img{object-fit:contain;max-height:520px;background:var(--paper-2)}
.xp-att{margin:6px 0;font-size:14px}
.xp-q{margin:8px 0;padding:8px 10px;border:1px solid var(--rule-2);border-radius:12px;font-size:14px}
.xp-q p{margin:0 0 4px}.xp-qt{white-space:pre-line;overflow-wrap:anywhere}.xp-qh{color:var(--muted)}
.xp-f{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px}
.xp-ft{font-size:12px}
.xp-x{margin-left:auto;display:inline-flex;align-items:center;min-height:40px;font-weight:600;text-decoration:none}
details.more>summary,.tt>summary{cursor:pointer;display:flex;align-items:center;min-height:44px;font-weight:600;color:var(--accent-ink)}
details.more .xps{margin-top:6px}
/* na bieżąco */
.live{list-style:none;margin:0;padding:0}
.live li{border-bottom:1px solid var(--rule)}
.live a{display:block;padding:9px 0;color:var(--ink);text-decoration:none;overflow-wrap:anywhere;line-height:1.4}
.live time{font-variant-numeric:tabular-nums;color:var(--muted);margin-right:4px}
.live span{color:var(--ink-2)}
/* flagi */
.flags{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.flag{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 10px;border:1px solid var(--rule-2);border-radius:999px;background:var(--card);color:var(--ink);font:600 14px/1 var(--sans);text-decoration:none;cursor:pointer}
.flag:hover{border-color:var(--ink)}
.flag[aria-pressed=true],.flag[aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.fl{flex:none;width:24px;height:16px;border-radius:2px;display:inline-block;vertical-align:-2px}
/* sondaże */
.pm-t{font:600 20px/1.25 var(--serif);margin:4px 0 4px;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}
.pm-t small{font:400 13px/1.3 var(--sans);color:var(--muted);flex-basis:100%}
.pm-m{margin:0 0 8px;font-size:13px;color:var(--muted)}
.pm-n{margin:4px 0 0;font-size:12px;color:var(--muted)}
.pm-h{font:700 12px/1.3 var(--sans);text-transform:uppercase;letter-spacing:.07em;margin:16px 0 0}
.pm-s{font-size:12px;color:var(--muted);margin:10px 0 0;overflow-wrap:anywhere}
.avg{list-style:none;margin:0;padding:0}
.avg li{display:grid;grid-template-columns:minmax(0,6.5em) minmax(0,1fr) 3.2em 3.6em;align-items:center;column-gap:8px;min-height:30px;border-bottom:1px solid var(--rule)}
.avg-k{display:flex;align-items:center;gap:6px;font-weight:600;font-size:14px;min-width:0;overflow-wrap:anywhere;line-height:1.2;padding:3px 0}
.avg-k img{width:18px;height:18px;border-radius:3px;flex:none}
.bar{position:relative;display:block;height:14px;background:var(--bar-bg);border-radius:2px}
.bar i{display:block;height:100%;background:var(--bar);border-radius:2px;min-width:1px}
.bar .th{position:absolute;top:-4px;bottom:-4px;border-left:1.5px dashed var(--muted)}
.avg-v{font:600 15px/1 var(--sans);font-variant-numeric:tabular-nums;text-align:right}
.avg-d{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.avg-d.up{color:var(--up)}.avg-d.dn{color:var(--dn)}
.spark{grid-column:2 / -1;display:block;padding:0 0 4px}
.spark svg{display:block;width:100%;height:28px}
/* Ostatnie sondaże — równe kolumny jak fuzja (.pt-r) */
.ptb{min-width:0;margin-top:4px}
.pt-hd,.pt-v{display:grid;grid-template-columns:repeat(var(--n,9),minmax(0,1fr))}
.pt-hd{position:sticky;top:0;z-index:2;background:var(--paper);padding:3px 0 2px}
.pt-hd span{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:0;border-left:1px dashed #c8c4bc;padding:0 2px}
.pt-hd span:first-child{border-left:0}
.pt-hd img{width:14px;height:14px;border-radius:3px;display:block}
.pt-hd b{font:600 10px/1.1 var(--sans);color:var(--ink-2);letter-spacing:0;white-space:nowrap}
.pt-r{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:8px;row-gap:2px;padding:4px 0 3px;border-bottom:0}
.pt-t{flex:1 1 auto;margin:0;font:400 13px/1.25 var(--sans)}
.pt-t b{font-weight:650}
.pt-t .cl{font-size:12px;color:var(--muted)}
.pt-t time{margin-left:8px;font-size:12px;color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap}
.pt-v{flex:1 1 100%;list-style:none;margin:0;padding:0}
.pt-v li{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;border-left:1px dashed #c8c4bc;padding:0 2px}
.pt-v li:first-child{border-left:0}
.pt-v b{font:600 12px/1.2 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}
.pt-v li.na b{color:var(--muted);font-weight:400}
/* 9 partii w jednym rzędzie na 360–412px: bez min-width/max-width 20%, które łamały ostatnie kolumny. */
.pt-v-ranked{display:flex;flex-wrap:wrap;gap:2px 0;grid-template-columns:none}
.pt-v-ranked li{flex:1 1 calc(100% / 9);max-width:none;min-width:0;padding:2px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative;border-left:0}
.pt-v-ranked li:not(:first-child)::before{content:"";position:absolute;left:0;top:2px;bottom:2px;border-left:1px dashed #c8c4bc}
.pt-k{font:600 10px/1.15 var(--sans);color:var(--muted);letter-spacing:-.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.pt-v-ranked b{font:650 13px/1.15 var(--sans);font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap;overflow:hidden;max-width:100%}
@media(min-width:600px){.pt-v-ranked b{font-size:13px}.pt-k{font-size:11px;letter-spacing:0}}
.pt-m{flex:1 1 auto;display:flex;flex-wrap:wrap;align-items:center;gap:0 4px;margin:0;font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums}
.pt-m a{color:var(--accent-ink);display:inline-flex;align-items:center;min-height:28px;text-decoration:none}
@media(pointer:coarse){.pt-m a{min-height:40px}}
@media(min-width:600px){.pt-v b{font-size:13px}.pt-hd b{font-size:11px}.pt-hd img{width:16px;height:16px}}
details.pt-more{margin:2px 0 0}
details.pt-more>summary{cursor:pointer;list-style:none;display:flex;align-items:center;min-height:36px;font:600 13px/1.3 var(--sans);color:var(--accent-ink)}
details.pt-more>summary::-webkit-details-marker{display:none}
details.pt-more>summary::after{content:" ▾";font-weight:500;color:var(--muted)}
details.pt-more[open]>summary::after{content:" ▴"}
details.pt-more .ptb{margin-top:0}
details.pt-more .pt-hd{display:none}
.tt{margin:16px 0}.tt-w{max-width:100%}
.tt table{border-collapse:collapse;font-size:12px;font-variant-numeric:tabular-nums;width:100%;table-layout:fixed}
.tt th,.tt td{border-bottom:1px solid var(--rule);padding:3px 2px;text-align:right;overflow-wrap:anywhere}
.tt th[scope=row]{text-align:left;white-space:nowrap}
.cgrid{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
@media(min-width:700px){.cgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1100px){.cgrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cg{display:flex;flex-direction:column;gap:2px;padding:12px;border:1px solid var(--rule);border-radius:8px;background:var(--card);color:var(--ink);text-decoration:none;min-height:44px}
.cg:hover{border-color:var(--ink)}
.cg-h{display:flex;align-items:center;gap:8px;font-size:17px}
.cg-m{font-variant-numeric:tabular-nums}.cg-s{font-size:13px;color:var(--muted)}
/* wiadomości */
.secs{display:grid;grid-template-columns:minmax(0,1fr);column-gap:28px}
@media(min-width:720px){.secs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1200px){.secs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.sec{min-width:0}
.sec h3,.sech{font:600 19px/1.25 var(--serif);margin:14px 0 4px}
.sec h3 a{color:var(--ink);text-decoration:none}
.sts{list-style:none;margin:0;padding:0}
.st{display:grid;grid-template-columns:3.4em minmax(0,1fr);column-gap:8px;padding:8px 0;border-bottom:1px solid var(--rule)}
.st time{grid-row:span 2;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:2px;line-height:1.3}
.st time small{display:block;font-size:12px}
.sig{margin:10px 0 0;padding-left:18px;font-size:14px;line-height:1.4}.sig li{margin:3px 0}
.st-t{color:var(--ink);text-decoration:none;font-weight:500;line-height:1.35;overflow-wrap:anywhere}
.st-t:hover{text-decoration:underline}
.st-p{font-size:13px;color:var(--muted)}
.st-more{display:inline}.st-more summary{display:inline;cursor:pointer;color:var(--accent-ink)}
.st-more ul{margin:4px 0 0;padding-left:18px}.st-more li{margin:2px 0;overflow-wrap:anywhere}
.dayh{font:600 22px/1.2 var(--serif);margin:26px 0 8px;padding-top:6px;border-top:2px solid var(--ink)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.chips a{display:inline-flex;align-items:center;gap:4px;min-height:40px;padding:0 12px;border:1px solid var(--rule-2);border-radius:999px;font-size:14px;color:var(--ink-2);text-decoration:none;overflow-wrap:anywhere}
.chips a[aria-current]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.chips small{color:inherit;opacity:.7}
.cnews{margin-top:20px}
.accs>summary{cursor:pointer;display:flex;align-items:center;min-height:44px;font-weight:600;color:var(--accent-ink)}
/* metoda */
.prose{max-width:760px}.prose h2{font:600 22px/1.25 var(--serif);margin:28px 0 8px}
.prose li{margin:4px 0}
.code{font:500 15px/1.4 ui-monospace,Menlo,Consolas,monospace;background:var(--paper-2);padding:8px 10px;overflow-wrap:anywhere}
.mt{width:100%;border-collapse:collapse;font-size:14px;table-layout:fixed}
.mt th,.mt td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);padding:6px 6px 6px 0;overflow-wrap:anywhere}
@media(max-width:640px){
 .mt thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .mt,.mt tbody,.mt tr,.mt td{display:block;width:100%}
 .mt tr{border-bottom:1px solid var(--rule-2);padding:6px 0}.mt td{border:0;padding:2px 0}
}
.foot{margin-top:40px;border-top:1px solid var(--ink);padding:16px 0 28px;font-size:13px;color:var(--muted)}
.foot nav a{display:inline-flex;align-items:center;min-height:40px}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
