/* 3DFish - arkusz motywu. Port makiety docs/makiety/3dfish.html: panel maszyny / HUD drukarki.
   Czcionki hostowane lokalnie (OFL) w czcionki.css: Saira, Barlow, Space Mono. */

:root{
  --tlo:#15181c; --panel:#0e1013; --panel-2:#1b2027; --tekst:#e9ecef; --tekst-2:#b3bac3; --mute:#7d8691;
  --pom:#ff7a1a; --pom-2:#d9640e; --cyjan:#4cc9f0; --linia:#2a3038; --linia-2:#3b434d;
  --f-display:"Saira","Arial Narrow","Segoe UI",sans-serif;
  --f-text:"Barlow","Segoe UI",system-ui,sans-serif;
  --f-mono:"Space Mono",Consolas,ui-monospace,monospace;
  --w:1280px; --c:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--tlo);color:var(--tekst);font-family:var(--f-text);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
input,output{font:inherit;color:inherit}
img,svg{max-width:100%;height:auto;display:block}
:focus-visible{outline:2px solid var(--pom);outline-offset:3px}
.wrap{max-width:var(--w);margin:0 auto;padding:0 32px}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.kicker{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pom);display:inline-block}
h1,h2,h3{font-family:var(--f-display);font-weight:700;line-height:1.02;letter-spacing:-.01em;margin:0;text-wrap:balance;font-variation-settings:"wdth" 110}
h1 a,h2 a,h3 a{color:inherit}
.wartosc{font-family:var(--f-mono);font-variant-numeric:tabular-nums;color:var(--cyjan)}
.warstwy{background-image:repeating-linear-gradient(180deg,rgba(233,236,239,.045) 0 1px,transparent 1px 7px)}
.ramka{position:relative;background:var(--linia-2);clip-path:polygon(var(--c) 0,100% 0,100% calc(100% - var(--c)),calc(100% - var(--c)) 100%,0 100%,0 var(--c))}
.ramka::before{content:"";position:absolute;inset:1px;background:var(--panel);clip-path:polygon(calc(var(--c) - 1px) 0,100% 0,100% calc(100% - var(--c) + 1px),calc(100% - var(--c) + 1px) 100%,0 100%,0 calc(var(--c) - 1px));pointer-events:none}
.ramka>*{position:relative}
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 20px;background:var(--pom);color:var(--panel);font-weight:700;font-size:15px;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:background .15s}
.btn:hover{background:var(--pom-2)}
.btn.pusty{background:var(--panel-2);color:var(--tekst);box-shadow:inset 0 0 0 1px var(--linia-2)}
.btn.pusty:hover{background:var(--linia)}
.btn.maly{padding:9px 14px;font-size:13.5px}
.etyk{font:400 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.przyklad{display:inline-flex;align-items:center;gap:8px;font:400 11px var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);border:1px dashed var(--linia-2);padding:5px 10px}
.przyklad::before{content:"";width:6px;height:6px;background:var(--pom)}
.pomin{position:absolute;left:-999px;top:0;background:var(--pom);color:var(--panel);padding:8px 12px;font-weight:700}
.pomin:focus{left:8px;top:8px;z-index:99}

/* ---- naglowek ---- */
.top{background:rgba(14,16,19,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--linia);position:sticky;top:0;z-index:5}
.top .wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;min-height:70px;padding-top:8px;padding-bottom:8px}
.logo{display:flex;align-items:center;gap:12px;font-family:var(--f-display);font-weight:800;font-size:26px;letter-spacing:.01em;font-variation-settings:"wdth" 118;line-height:1}
.logo svg{width:36px;height:22px;display:block;color:var(--pom);flex:none}
.logo i{font-style:normal;color:var(--pom)}
.logo small{font:400 10px var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-left:10px;font-variation-settings:normal}
.nav{display:flex;gap:4px 24px;justify-content:flex-start;flex-wrap:wrap;font-weight:600;font-size:15px;}
.nav a{padding:6px 0;border-bottom:2px solid transparent;color:var(--tekst-2);white-space:nowrap}
.nav a:hover,.nav a.on{border-color:var(--pom);color:var(--tekst)}
.szukaj{display:flex;border:1px solid var(--linia-2);background:var(--panel-2);min-width:220px}
.szukaj input{flex:1;border:0;background:transparent;padding:8px 12px;font-size:14px;outline:0;min-width:0}
.szukaj input::placeholder{color:var(--mute)}
.szukaj button{padding:0 12px;font:700 11px var(--f-mono);letter-spacing:.1em;color:var(--pom);border-left:1px solid var(--linia-2)}

/* ---- hero ---- */
.hero{padding:56px 0 64px;border-bottom:1px solid var(--linia);position:relative}
.hero .wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:56px;align-items:start}
.teza h1{font-size:clamp(40px,5vw,68px);margin-top:16px;font-variation-settings:"wdth" 112}
.teza h1 b{color:var(--pom);font-weight:800}
.teza .lead{font-size:19px;color:var(--tekst-2);max-width:52ch;margin:22px 0 28px}
.teza .btns{display:flex;gap:12px;flex-wrap:wrap}
.zakres{margin-top:36px;display:grid;grid-template-columns:repeat(3,auto);gap:32px;justify-content:start;font-size:13.5px;color:var(--mute)}
.zakres b{display:block;font:700 30px var(--f-display);color:var(--tekst);font-variation-settings:"wdth" 112;line-height:1;margin-bottom:4px}

/* ---- diagnoza (sygnaturowy komponent) ---- */
.diag{padding:22px 24px 20px}
.diag .nag{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--linia);padding-bottom:12px}
.diag .nag h2{font-size:22px}
.diag .nag .etyk{color:var(--mute);letter-spacing:.08em;text-transform:none;font-size:11.5px}
.pole{display:grid;grid-template-columns:86px 1fr;gap:14px;align-items:start;padding:14px 0;border-bottom:1px solid var(--linia)}
.pole .etyk{padding-top:8px}
.wybor{display:flex;flex-wrap:wrap;gap:6px}
.wybor button{padding:7px 12px;font-size:14px;font-weight:600;color:var(--tekst-2);background:var(--panel-2);border:1px solid var(--linia-2);clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px);transition:background .15s,color .15s}
.wybor button:hover{color:var(--tekst);border-color:var(--mute)}
.wybor button[aria-pressed=true]{background:var(--pom);color:var(--panel);border-color:var(--pom)}
.przyczyny{list-style:none;margin:0;padding:0}
.przyczyny li{display:grid;grid-template-columns:44px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--linia);animation:df-wjazd .4s cubic-bezier(.2,.7,.2,1) both}
.przyczyny li:nth-child(2){animation-delay:.08s}.przyczyny li:nth-child(3){animation-delay:.16s}
@keyframes df-wjazd{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
.przyczyny .nr{font:700 26px var(--f-display);color:var(--pom);font-variation-settings:"wdth" 110;line-height:1;padding-top:2px}
.przyczyny h3{font-size:19px;font-family:var(--f-text);font-weight:700;letter-spacing:0;font-variation-settings:normal;line-height:1.25}
.zmiana{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:8px 0 6px;font-family:var(--f-mono);font-size:13.5px}
.zmiana .u{color:var(--mute);font-size:11px;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--linia-2);padding:3px 8px}
.zmiana .od{color:var(--tekst-2);text-decoration:line-through;text-decoration-color:var(--pom)}
.zmiana .strz{color:var(--pom)}
.zmiana .do{color:var(--cyjan);font-weight:700}
.przyczyny .jak{margin:0;font-size:14.5px;color:var(--tekst-2)}
.przyczyny .jak b{color:var(--tekst);font-weight:600}
.param{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--linia);border:1px solid var(--linia);margin-top:16px}
.param div{background:var(--panel-2);padding:10px 12px;display:grid;gap:4px}
.param .etyk{font-size:10px}
.param b{font:400 15px var(--f-mono);color:var(--cyjan);font-variant-numeric:tabular-nums;white-space:nowrap}
.param b s{color:var(--mute);text-decoration-color:var(--pom);font-size:12px;margin-right:4px}
.param b i{font-style:normal;color:var(--pom);font-size:11px;margin:0 3px}
.diag .stopka{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:12.5px;color:var(--mute)}
.diag .stopka a{color:var(--pom);font-weight:600}

/* ---- pasek parametrow ---- */
.pasek{border-bottom:1px solid var(--linia);background:var(--panel)}
.pasek .wrap{display:grid;grid-template-columns:repeat(5,1fr)}
.pasek .poz{padding:18px 20px;border-left:1px solid var(--linia);display:grid;gap:4px}
.pasek .poz:first-child{border-left:0;padding-left:0}
.pasek b{font:400 18px var(--f-mono);color:var(--cyjan);font-variant-numeric:tabular-nums}
.pasek .poz.wyjscie b{color:var(--pom);font-family:var(--f-display);font-weight:700;font-size:20px;font-variation-settings:"wdth" 112}

/* ---- sekcje ---- */
.sekcja{padding:64px 0;border-bottom:1px solid var(--linia)}
.sekcja .nag{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:28px}
.sekcja h2{font-size:clamp(30px,3.4vw,44px);margin-top:10px}
.sekcja h2 em{font-style:normal;color:var(--pom)}
.sekcja .nag p{margin:8px 0 0;color:var(--tekst-2);max-width:58ch}

/* ---- materialy ---- */
.tabela{overflow-x:auto;border:1px solid var(--linia-2)}
.tab{width:100%;border-collapse:collapse;font-size:15px;min-width:820px}
.tab th{background:var(--panel);text-align:left;font:400 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);padding:12px 16px;border-bottom:1px solid var(--linia-2)}
.tab td{padding:13px 16px;border-top:1px solid var(--linia);vertical-align:top;color:var(--tekst-2)}
.tab td:first-child{font:700 20px var(--f-display);color:var(--tekst);font-variation-settings:"wdth" 112;white-space:nowrap}
.tab td.wartosc{color:var(--cyjan);white-space:nowrap}
.tab tr:hover td{background:var(--panel-2)}
.tab .tak{color:var(--pom);font-weight:600}
.materialy .uwaga{margin-top:14px;font-size:13.5px;color:var(--mute);max-width:80ch}

/* ---- wycena ---- */
.wycena{background-color:var(--panel)}
.wycena .uklad{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start}
.formularz{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}
.formularz label{display:grid;gap:6px;font-size:13.5px;color:var(--tekst-2)}
.formularz input[type=number]{background:var(--panel-2);border:1px solid var(--linia-2);padding:9px 12px;font-family:var(--f-mono);font-size:15px;color:var(--cyjan);width:100%}
.formularz input[type=number]:focus{border-color:var(--pom);outline:0}
.formularz .pelna{grid-column:1/-1;border-top:1px solid var(--linia);padding-top:14px;margin-top:6px}
.formularz .suwak{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}
.formularz input[type=range]{width:100%;accent-color:var(--pom)}
.formularz output{font:700 22px var(--f-mono);color:var(--cyjan);min-width:3ch;text-align:right}
.wynik{padding:22px 24px}
.wynik .duzy{display:grid;grid-template-columns:1fr 1fr;gap:16px;border-bottom:1px solid var(--linia);padding-bottom:16px}
.wynik .duzy b{display:block;font:700 40px var(--f-display);color:var(--tekst);font-variation-settings:"wdth" 112;line-height:1;font-variant-numeric:tabular-nums;margin-top:6px}
.wynik .duzy .cena b{color:var(--pom)}
.wynik .duzy small{font-size:13px;color:var(--mute)}
.skladniki{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.skladniki li{display:grid;grid-template-columns:150px 1fr 90px;gap:12px;align-items:center;font-size:14px;color:var(--tekst-2)}
.skladniki .tor{height:10px;background:var(--panel-2);border:1px solid var(--linia)}
.skladniki .tor i{display:block;height:100%;background:var(--pom);transition:width .3s}
.skladniki li:nth-child(2) .tor i{background:var(--pom-2)}
.skladniki li:nth-child(3) .tor i{background:var(--tekst-2)}
.skladniki .wartosc{text-align:right;font-size:14px}
.wynik .nota{margin-top:16px;font-size:12.5px;color:var(--mute);border-top:1px solid var(--linia);padding-top:12px}

/* ---- obszary ---- */
.kafle{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.kafel{padding:22px 22px 20px;display:grid;grid-template-rows:auto auto 1fr auto;gap:12px;transition:transform .2s}
.kafel:hover{transform:translateY(-3px)}
.kafel .kat{font:400 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);display:flex;justify-content:space-between;gap:8px}
.kafel .kat b{color:var(--pom);font-weight:400}
.kafel h3{font-size:23px;font-variation-settings:"wdth" 108}
.kafel p{margin:0;font-size:14.5px;color:var(--tekst-2)}
.kafel a{font-size:13.5px;font-weight:700;color:var(--pom);border-top:1px solid var(--linia);padding-top:12px}

/* ---- najnowsze / kafle wpisow ---- */
.wpisy{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.wpis{display:grid;gap:12px;align-content:start}
.wpis .okladka{position:relative;aspect-ratio:16/10;overflow:hidden;border:1px solid var(--linia-2);background:var(--panel);display:block}
.wpis .okladka img{width:100%;height:100%;object-fit:cover}
.df-okladka-svg{display:block;width:100%;height:100%}
.df-okladka-svg svg{width:100%;height:100%;display:block}
.tasma{position:absolute;top:22px;right:-44px;transform:rotate(45deg);background:var(--pom);color:var(--panel);font:700 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;padding:6px 50px;white-space:nowrap}
.wpis h3{font-size:23px;font-variation-settings:"wdth" 106}
.wpis h3 a:hover{color:var(--pom)}
.wpis p{margin:0;font-size:15px;color:var(--tekst-2)}
.wpis .meta{display:flex;gap:10px;flex-wrap:wrap;font:400 11px var(--f-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.wpis .meta span+span::before{content:"·";margin-right:10px}

/* ---- redakcja i kontakt ---- */
.redakcja .wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:start}
.redakcja .kto{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;margin-top:18px}
.redakcja .znak{width:84px;height:84px;background:var(--panel-2);border:1px solid var(--linia-2);display:grid;place-items:center;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);color:var(--pom)}
.redakcja .znak svg{width:48px;height:30px}
.redakcja h3{font-size:26px}
.redakcja .kto p{margin:8px 0 0;color:var(--tekst-2);font-size:15.5px;max-width:60ch}
.redakcja .nota-red{margin:22px 0 0;font-size:15.5px;color:var(--tekst-2);max-width:66ch;border-left:2px solid var(--pom);padding-left:18px}
.redakcja .nota-red b,.redakcja .nota-red strong{color:var(--tekst)}
.kontakt{padding:24px}
.kontakt h3{font-size:24px;margin-top:8px}
.kontakt p{color:var(--tekst-2);font-size:15px}
.kontakt ul{margin:0 0 18px;padding:0;list-style:none;display:grid;gap:6px;font-size:14px;color:var(--tekst-2)}
.kontakt li::before{content:"";display:inline-block;width:8px;height:8px;border:1px solid var(--pom);margin-right:10px;vertical-align:0}

/* ---- stopka ---- */
.stopka{background:var(--panel);color:var(--tekst-2);padding:56px 0 28px;font-size:14px;border-top:1px solid var(--linia)}
.stopka .wrap{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.stopka .opis{margin:14px 0 0;max-width:44ch}
.stopka h4{color:var(--tekst);font:400 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;margin:0 0 14px}
.stopka ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.stopka a:hover{color:var(--tekst)}
.stopka .nota{grid-column:1/-1;border-top:1px solid var(--linia);padding-top:18px;font-size:12.5px;color:var(--mute);display:grid;grid-template-columns:1fr auto;gap:20px}
.stopka .nota b{color:var(--pom);font-weight:600}
.stopka .nota p{margin:0 0 6px;max-width:90ch}
.stopka .nota .wydawca{text-align:right;line-height:1.7}
.stopka .nota a{text-decoration:underline}

/* ---- strona artykulu ---- */
.art-hero{padding:56px 0;border-bottom:1px solid var(--linia)}
.art-hero .wrap{display:grid;grid-template-columns:1.35fr 1fr;gap:56px;align-items:end}
.art-hero h1{font-size:clamp(36px,4.4vw,60px);margin-top:14px;font-variation-settings:"wdth" 110}
.art-hero h1 b{color:var(--pom);font-weight:800}
.art-hero .lead{font-size:19px;color:var(--tekst-2);max-width:56ch;margin:18px 0 0}
.art-hero .meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px;font:400 12px var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute)}
.art-hero .meta b{color:var(--tekst);font-weight:400}
.din{border:1px solid var(--linia-2);background:var(--panel);position:relative;
  background-image:radial-gradient(circle at 10px 10px,var(--tlo) 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 10px) 10px,var(--tlo) 3px,transparent 3.5px),radial-gradient(circle at 10px calc(100% - 10px),var(--tlo) 3px,transparent 3.5px),radial-gradient(circle at calc(100% - 10px) calc(100% - 10px),var(--tlo) 3px,transparent 3.5px)}
.din .glowa{display:flex;justify-content:space-between;gap:12px;padding:12px 24px 10px;font:400 10.5px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);border-bottom:1px solid var(--linia-2)}
.din .glowa b{color:var(--pom);font-weight:400}
.din .siatka{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:var(--linia)}
.din .siatka div{background:var(--panel);padding:12px 16px;display:grid;gap:4px}
.din .siatka b{font:400 17px var(--f-mono);color:var(--cyjan);font-variant-numeric:tabular-nums}
.din .siatka .objaw b{color:var(--pom)}
.art{padding:48px 0 72px}
.art .wrap{display:grid;grid-template-columns:200px minmax(0,680px) 320px;gap:48px}
.toc{position:sticky;top:96px;align-self:start;font-size:13.5px}
.toc h4{font:400 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.toc ol{margin:0;padding:0;list-style:none;display:grid;gap:8px;border-left:1px solid var(--linia-2)}
.toc li{padding-left:12px;color:var(--tekst-2)}
.toc li.on{border-left:2px solid var(--pom);margin-left:-1px;color:var(--tekst);font-weight:600}
.toc a:hover{color:var(--tekst)}

/* ---- tresc artykulu (HTML z WordPressa) ---- */
.tresc{font-size:18px;line-height:1.7}
.tresc p{margin:0 0 1.35em;max-width:66ch}
.tresc h2{font-size:30px;margin:1.6em 0 .6em;font-variation-settings:"wdth" 108}
.tresc h2 em{font-style:normal;color:var(--pom)}
.tresc h3{font-size:22px;margin:1.4em 0 .5em;font-variation-settings:"wdth" 108}
.tresc ul,.tresc ol{padding-left:22px;margin:0 0 1.35em;max-width:66ch}
.tresc li{margin-bottom:.5em;padding-left:6px}
.tresc li::marker{font-family:var(--f-mono);color:var(--pom)}
.tresc a{color:var(--cyjan);text-decoration:underline;text-decoration-color:var(--pom)}
.tresc strong{color:var(--tekst)}
.tresc blockquote,.tresc .cytat{border-left:3px solid var(--pom);padding:4px 0 4px 22px;margin:1.6em 0;font-family:var(--f-display);font-size:26px;line-height:1.2;font-weight:600;font-variation-settings:"wdth" 104}
.tresc blockquote p{margin:0;max-width:none}
.tresc .cytat small{display:block;font:400 12px var(--f-mono);letter-spacing:.08em;color:var(--mute);margin-top:10px;text-transform:uppercase}
.tresc img{max-width:100%;height:auto;border:1px solid var(--linia-2)}
.tresc figure{margin:1.6em 0}
.tresc figcaption{font-size:14px;color:var(--mute);margin-top:8px}
.tresc pre{background:var(--panel);border:1px solid var(--linia-2);color:var(--tekst);padding:16px 18px;overflow:auto;font-size:14px;font-family:var(--f-mono)}
.tresc code{font-family:var(--f-mono);font-size:.9em;background:var(--panel-2);padding:1px 5px;color:var(--cyjan)}
.tresc pre code{background:none;padding:0;color:inherit}
.sp-tabela{overflow-x:auto;margin:1.4em 0;border:1px solid var(--linia-2)}
.tresc table{width:100%;border-collapse:collapse;font-size:15px;margin:0;min-width:620px}
.tresc th{background:var(--panel);text-align:left;font:400 11px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);padding:12px 16px;border-bottom:1px solid var(--linia-2)}
.tresc td{padding:13px 16px;border-top:1px solid var(--linia);vertical-align:top;color:var(--tekst-2)}
.tresc td:first-child{font-weight:600;color:var(--tekst)}
.tresc tr:hover td{background:var(--panel-2)}
.tresc .sp-nota{background:var(--panel);border:1px solid var(--linia-2);border-left:3px solid var(--pom);padding:18px 22px;margin:1.6em 0;font-size:16px;color:var(--tekst-2)}
.tresc .sp-nota strong,.tresc .sp-nota b{color:var(--tekst)}
.tresc .sp-nota--ai{margin-top:32px;background:transparent;border:1px dashed var(--linia-2);font-size:13.5px;color:var(--tekst-2)}
.tresc .sp-nota--ai p{margin:0;max-width:none}
.tresc .sp-nota--ai b{color:var(--pom)}
.pobocz{align-self:start;position:sticky;top:96px;display:grid;gap:20px}
.pobocz .din .siatka{grid-template-columns:1fr 1fr}
.pobocz .din .glowa{padding:12px 16px 10px}
.pobocz .box{border:1px solid var(--linia-2);background:var(--panel);padding:18px}
.pobocz h4{font:400 11px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);margin:0 0 10px}
.pobocz .box p{margin:0 0 12px;font-size:14px;color:var(--tekst-2)}
.pobocz .box p:last-child{margin-bottom:0}
.pow{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.pow li{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;font-size:14px;font-weight:600;line-height:1.3}
.pow li span{font:400 11px/1.8 var(--f-mono);color:var(--pom);letter-spacing:.06em;white-space:nowrap}
.pow a:hover{color:var(--pom)}

/* ---- strony statyczne ---- */
.strona-hero{padding:48px 0 24px;border-bottom:1px solid var(--linia)}
.strona-hero h1{font-size:clamp(32px,3.6vw,46px);margin-top:10px;max-width:24ch}
.strona-tresc{padding:40px 0 72px}
.tresc--strona{max-width:720px}
.tresc--strona .sp-naglowek h1{display:none}
.tresc--strona .sp-kicker{display:none}
.tresc--strona .sp-naglowek__lead{font-size:19px;color:var(--tekst-2)}
.tresc--strona h2{font-size:26px}

/* ---- archiwum ---- */
.archiwum{padding:48px 0 72px}
.naglowek-arch{max-width:60ch;margin-bottom:36px}
.naglowek-arch h1{font-size:clamp(32px,3.8vw,48px);margin-top:10px}
.naglowek-arch p{color:var(--tekst-2);font-size:17px}
.naglowek-arch a{color:var(--cyjan);text-decoration:underline}
.strony{margin-top:40px;font-family:var(--f-mono);font-size:13px}
.strony .nav-links{display:flex;gap:14px;flex-wrap:wrap}
.strony .page-numbers{padding:8px 12px;border:1px solid var(--linia-2);color:var(--tekst-2)}
.strony .page-numbers.current{background:var(--pom);color:var(--panel);border-color:var(--pom)}
.strony a.page-numbers:hover{color:var(--tekst);border-color:var(--mute)}
.pusto{color:var(--tekst-2)}
.pusto a{color:var(--cyjan);text-decoration:underline}

/* ---- responsywnosc ---- */
@media(max-width:1100px){
  .art .wrap{grid-template-columns:minmax(0,1fr) 300px}
  .toc{display:none}
}
@media(max-width:1020px){
  .hero .wrap,.wycena .uklad,.redakcja .wrap,.art-hero .wrap{grid-template-columns:1fr}
  .kafle{grid-template-columns:repeat(2,1fr)}
  .wpisy{grid-template-columns:1fr 1fr}
  .art .wrap{grid-template-columns:1fr}.toc,.pobocz{position:static}
  .nav{display:none}
  .pasek .wrap{grid-template-columns:repeat(3,1fr)}.pasek .poz{border-left:0;padding-left:0}
  .stopka .wrap{grid-template-columns:1fr 1fr}
  .param{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:900px){
  .top .wrap{grid-template-columns:auto 1fr;gap:16px;height:auto;padding:12px 20px}
  .szukaj{min-width:0;justify-self:end;max-width:220px}
  .logo small{display:none}
  .wrap{padding:0 20px}
  .sekcja .nag{grid-template-columns:1fr}
}
@media(max-width:640px){
  .kafle,.wpisy,.formularz,.wynik .duzy{grid-template-columns:1fr}
  .zakres{grid-template-columns:1fr;gap:16px}
  .pole{grid-template-columns:1fr;gap:8px}.pole .etyk{padding-top:0}
  .param{grid-template-columns:1fr 1fr}
  .pasek .wrap{grid-template-columns:1fr 1fr}
  .din .siatka{grid-template-columns:1fr 1fr}
  .skladniki li{grid-template-columns:1fr 80px}.skladniki .tor{grid-column:1/-1}
  .stopka .wrap,.stopka .nota{grid-template-columns:1fr}
  .stopka .nota .wydawca{text-align:left}
  .redakcja .kto{grid-template-columns:1fr}
  .teza h1{font-size:34px}
}

/* ---- ruch i druk ---- */
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
@media print{
  .top,.pobocz,.toc,.stopka ul,.diag .wybor,.pomin{display:none!important}
  body,.art-hero,.din,.din .siatka div{background:#fff;color:#000}
  .warstwy{background-image:none}
  .art .wrap{display:block}
  .tresc a::after{content:" (" attr(href) ")";font-size:9pt;color:#555}
}
