:root{--bg:#ffffff;--ink:#1c221e;--muted:#5f6b62;--rule:#d8ded8;--soft:#f4f7f4;--lead-bg:#eef3ee;--accent:#b08d3f;--accent-ink:#1f4034;--on-accent:#ffffff;--focus:#1f4034;--head-bg:#ffffff;--foot-bg:#1f4034;--foot-ink:#e8efe9;--f-head:'Libre Baskerville',Baskerville,'Hoefler Text',Georgia,serif;--f-body:'Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif;--f-mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0}
img,svg{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:0;background:var(--bg);color:var(--ink);padding:.75rem 1rem;z-index:99}
.skip:focus{left:0}
table{border-collapse:collapse;width:100%}
html,body{overflow-x:hidden}
h1,h2,h3,p,li,td,th,dt,dd{overflow-wrap:break-word}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:18px;line-height:1.66}
.law-bar{background:var(--accent-ink);color:var(--on-accent);font-size:.78rem;
letter-spacing:.1em;text-transform:uppercase;text-align:center;padding:.4rem}
.law-head{background:var(--head-bg);border-bottom:1px solid var(--rule)}
.law-wrap{max-width:72rem;margin:0 auto;padding:1.15rem 1.25rem;display:flex;align-items:center;
justify-content:space-between;gap:1.5rem;flex-wrap:wrap}
.law-brand{display:flex;align-items:baseline;gap:.45rem;text-decoration:none;font-family:var(--f-head);
font-size:1.24rem;font-weight:700;color:var(--accent-ink);
letter-spacing:.01em;text-transform:none}
.law-mark{font-size:1.3em;opacity:.55}
header nav ul{list-style:none;display:flex;gap:1.25rem;margin:0;padding:0;flex-wrap:wrap;font-size:.93rem}
header nav a{text-decoration:none;padding-bottom:3px;border-bottom:2px solid transparent}
header nav a:hover{border-bottom-color:var(--accent)}
.law-main{max-width:72rem;margin:0 auto;padding:1.4rem 1.25rem}
.law-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:3.5rem;align-items:start}
@media(max-width:64rem){.law-grid{grid-template-columns:minmax(0,1fr);gap:1.5rem}}
.law-aside{position:sticky;top:1.2rem}
@media(max-width:64rem){.law-aside{position:static;margin-top:2rem}}
.law-article{max-width:42rem;}
.law-crumbs{font-size:.84rem;color:var(--muted);margin:.4rem 0 1.3rem}
.law-h1{font-family:var(--f-head);font-size:clamp(1.8rem,4.8vw,2.4rem);line-height:1.2;
margin:0 0 1rem;font-weight:700;letter-spacing:-.01em}
.law-lead{background:var(--lead-bg);padding:1.05rem 1.2rem;margin:0 0 1.8rem;
border-left:5px solid var(--accent)}
.law-lead p{margin:0}
.law-leadlabel{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;
color:var(--accent-ink);margin-bottom:.35rem!important;font-family:var(--f-body)}
.law-toc{border-top:2px solid var(--accent);padding-top:.8rem;margin:0 0 1.8rem}
.law-toch{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
margin:0 0 .5rem;font-family:var(--f-body)}
.law-toc ol{margin:0;padding-left:1.15rem;font-size:.92rem}
.law-toc li{margin:.3rem 0}
.law-toc a{text-decoration:none}
.law-toc a:hover{text-decoration:underline;color:var(--accent-ink)}
.law-h2{font-family:var(--f-head);font-size:1.35rem;margin:2.4rem 0 .7rem;line-height:1.28;color:var(--accent-ink)}
.law-rzym{color:var(--accent);font-size:.85em}
.law-h3{font-family:var(--f-head);font-size:1.06rem;margin:1.5rem 0 .35rem}
p{margin:0 0 1.05rem}
.law-list,.law-nlist{margin:0 0 1.15rem;padding-left:1.35rem}
.law-list li,.law-nlist li{margin:.35rem 0}
.law-ustawa{margin:1.6rem 0;background:var(--soft);border-left:4px solid var(--accent);
padding:1rem 1.2rem}
.law-ustawa blockquote{margin:0;font-family:var(--f-head);font-size:1rem;line-height:1.55}
.law-ustawa blockquote p{margin:0}
.law-ustawa figcaption{font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;
color:var(--muted);margin-top:.55rem}
.law-uwaga{border:1px solid var(--rule);padding:.9rem 1.1rem;margin:1.5rem 0;background:var(--bg)}
.law-uwaga p{margin:0}
.law-uwagat{font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;
color:var(--accent-ink);margin-bottom:.3rem!important}
.law-tablewrap{overflow-x:auto;margin:1.6rem 0}
th,td{padding:.6rem .8rem;text-align:left;font-size:.93rem;border-bottom:1px solid var(--rule);vertical-align:top}
th{border-bottom:2px solid var(--accent);font-family:var(--f-head);color:var(--accent-ink)}
caption{caption-side:top;text-align:left;font-size:.83rem;color:var(--muted);padding-bottom:.4rem}
.law-defs dt{font-family:var(--f-head);font-weight:700;margin-top:.95rem;color:var(--accent-ink)}
.law-defs dd{margin:.15rem 0 0}
.law-steps{list-style:none;padding:0;margin:1.5rem 0;counter-reset:s}
.law-steps li{display:flex;gap:.9rem;margin:.85rem 0;padding-bottom:.85rem;border-bottom:1px solid var(--rule)}
.law-stepno{flex:0 0 2rem;height:2rem;border:2px solid var(--accent);color:var(--accent-ink);
display:grid;place-items:center;font-family:var(--f-head);font-weight:700;font-size:.9rem}
.law-cardgrid{display:grid;gap:.8rem;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));margin:1.6rem 0}
.law-card{display:block;border:1px solid var(--rule);padding:1rem 1.1rem;text-decoration:none;
background:var(--bg);border-top:3px solid var(--accent)}
.law-card:hover{background:var(--soft)}
.law-card b{display:block;font-family:var(--f-head);color:var(--accent-ink)}
.law-card span{display:block;font-size:.88rem;color:var(--muted);margin-top:.3rem}
.law-qa{border-bottom:1px solid var(--rule);padding:.75rem 0}
.law-qa summary{cursor:pointer;font-family:var(--f-head);font-weight:700;color:var(--accent-ink)}
.law-qa div{padding-top:.5rem}
.law-next,.law-src{margin:2.5rem 0 0;padding-top:1rem;border-top:2px solid var(--accent)}
.law-nexth,.law-srch{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
color:var(--muted);margin:0 0 .55rem;font-family:var(--f-body)}
.law-next ul,.law-src ul{margin:0;padding-left:1.2rem;font-size:.95rem}
.law-next li,.law-src li{margin:.4rem 0}
.law-srcnote{font-size:.84rem;color:var(--muted);margin-top:.55rem}
.law-klauzula{margin:2rem 0 0;font-size:.85rem;color:var(--muted);border:1px solid var(--rule);
padding:.9rem 1.1rem;background:var(--soft)}
.law-klauzula p{margin:0}
.law-dates{font-size:.82rem;color:var(--muted);margin-top:1rem}
.law-tool{margin:1.4rem 0 2rem}
.law-foot{margin-top:4rem;background:var(--foot-bg);color:var(--foot-ink)}
.law-foot a{color:inherit}
.law-foot .law-wrap{display:block;padding:2.1rem 1.25rem 2.8rem;max-width:72rem}
.law-footnote{font-size:.93rem;opacity:.9;max-width:38rem}
.law-footnav{list-style:none;padding:0;margin:1.1rem 0;display:flex;gap:1.2rem;flex-wrap:wrap;font-size:.92rem}
.law-copy{font-size:.81rem;opacity:.75;margin:0}

.kr{border:1px solid var(--rule);background:var(--soft);padding:1.2rem}
.kr h2{margin-top:0}
.kr-krok{display:none}
.kr-krok.on{display:block}
.kr-pas{display:flex;gap:.3rem;margin-bottom:1.2rem;list-style:none;padding:0}
.kr-pas li{flex:1;height:5px;background:var(--rule)}
.kr-pas li.done{background:var(--accent)}
.kr-f{display:grid;gap:.9rem;margin-bottom:1rem}
.kr-f label{display:block;font-size:.86rem;color:var(--muted);margin-bottom:.25rem;font-weight:600}
.kr-f input,.kr-f textarea,.kr-f select{width:100%;font:inherit;font-size:1rem;padding:.55rem .65rem;
border:1px solid var(--rule);background:#fff;color:var(--ink);border-radius:2px}
.kr-f textarea{min-height:6rem}
.kr-hint{font-size:.85rem;color:var(--muted);margin:.25rem 0 0}
.kr-nav{display:flex;gap:.5rem;flex-wrap:wrap}
.kr-b{font:inherit;font-size:.95rem;padding:.55rem 1.15rem;background:var(--accent-ink);
color:#fff;border:0;cursor:pointer;border-radius:2px}
.kr-b.sec{background:transparent;color:var(--accent-ink);border:1px solid var(--accent-ink)}
.kr-b:hover{filter:brightness(1.15)}
.kr-out{white-space:pre-wrap;font-family:var(--f-mono);font-size:.84rem;background:#fff;
border:1px solid var(--rule);padding:1.1rem;line-height:1.55;margin-top:1rem}
.kr-priv{font-size:.88rem;color:var(--muted);border-top:1px solid var(--rule);
padding-top:.7rem;margin-top:1rem}
@media print{header,footer,nav,.kr-f,.kr-nav,.kr-pas,.kr-priv{display:none!important}
.kr-out{border:0;font-size:11pt}}

