:root{--tlo:#fff;--tekst:#1f1f1c;--drugi:#5f5e5a;--linia:#d3d1c7;--linia-mocna:#b4b2a9;--karta:#f7f6f2;--ok:#0f6e56;--ok-tlo:#e1f5ee;--ostrz:#854f0b;--ostrz-tlo:#faeeda;--blad:#a32d2d;--blad-tlo:#fcebeb;--akcent:#185fa5;--tn-tlo:#e8f1fb;--mono:ui-monospace,"Cascadia Mono",Consolas,monospace}
@media (prefers-color-scheme:dark){:root{--tlo:#1c1c1a;--tekst:#eceae3;--drugi:#b4b2a9;--linia:#444441;--linia-mocna:#5f5e5a;--karta:#262624;--ok:#5dcaa5;--ok-tlo:#04342c;--ostrz:#fac775;--ostrz-tlo:#412402;--blad:#f09595;--blad-tlo:#501313;--akcent:#85b7eb;--tn-tlo:#10263d}}
*{box-sizing:border-box}
body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--tlo);color:var(--tekst)}
a{color:var(--akcent)}
h1{font-size:22px;font-weight:600;margin:0}
main{max-width:1240px;margin:0 auto;padding:16px}
.gora{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--linia)}
.gora nav{display:flex;gap:14px;flex-wrap:wrap;flex:1}
.logo{font-weight:600;text-decoration:none;color:var(--tekst)}
.licznik{background:var(--blad-tlo);color:var(--blad);border-radius:999px;padding:0 7px;font-size:12px}
.wyloguj button{background:none;border:0;color:var(--drugi);cursor:pointer}
.stan-sync{margin:0;padding:4px 16px;font-size:12px;color:var(--drugi)}
.komunikat{padding:8px 12px;border-radius:8px;background:var(--ok-tlo);color:var(--ok)}
.komunikat.blad{background:var(--blad-tlo);color:var(--blad)}
.meta{font-size:13px;color:var(--drugi)}
.blad{color:var(--blad)}
.sig{font-family:var(--mono);font-size:12px;color:var(--drugi)}
.pill{font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid var(--linia);color:var(--drugi);white-space:nowrap}
.pill.status-aktywna,.pill.status-czekamy_na_organ{background:var(--ok-tlo);color:var(--ok);border-color:transparent}
.pill.status-wstrzymana{background:var(--ostrz-tlo);color:var(--ostrz);border-color:transparent}
.pill.status-nie_kontynuujemy,.pill.dn{background:var(--blad-tlo);color:var(--blad);border-color:transparent}
.pill.szkic{border-style:dashed}
.chip{font-size:12px;padding:2px 9px;border-radius:999px;white-space:nowrap;align-self:start}
.chip.bad{background:var(--blad-tlo);color:var(--blad)}
.chip.warn{background:var(--ostrz-tlo);color:var(--ostrz)}
.chip.neu{background:var(--karta);color:var(--drugi);border:1px solid var(--linia)}

/* lista spraw */
.filtry,.nowa{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}
.karty{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,460px),1fr))}
.karta{display:flex;flex-direction:column;gap:6px;padding:12px 14px;border:1px solid var(--linia);border-radius:12px;text-decoration:none;color:var(--tekst);background:var(--karta)}
.karta-glowa{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;align-items:baseline}
.liczby{font-size:13px;color:var(--drugi)}
.mini{display:flex;flex-direction:column;border-top:1px solid var(--linia);margin-top:2px}
.mini-w{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-bottom:1px solid var(--linia);font-size:13px}
.mini-nazwa{min-width:0}.mini-nazwa b{font-weight:600}.mini-stan{color:var(--drugi)}
.mini-zam{font-size:12px;color:var(--drugi)}

/* nagłówek sprawy */
.sciezka{font-size:13px;margin:0 0 6px}
.glowa{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}
.stan-sprawy{margin:4px 0 0;color:var(--drugi);font-size:14px}
.liczby-sprawy{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin:12px 0 10px}
.liczby-sprawy div{border-radius:8px;padding:7px 12px}
.liczby-sprawy small{display:block;font-size:12px}.liczby-sprawy b{font-size:19px;font-weight:600}
.liczby-sprawy .bad{background:var(--blad-tlo);color:var(--blad)}
.liczby-sprawy .warn{background:var(--ostrz-tlo);color:var(--ostrz)}
.liczby-sprawy .neu{background:var(--karta);color:var(--tekst)}
.liczby-sprawy .neu small{color:var(--drugi)}
.sterowanie{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:10px;font-size:13px}
.sterowanie button{font-size:13px;padding:3px 10px}
.legenda{font-size:12px;color:var(--drugi);margin-top:14px}
.tn,.od .kto.tn,.na .tn{color:var(--akcent)}

/* drzewo */
.uklad{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
@media (min-width:1000px){
  .uklad.z-panelem{grid-template-columns:minmax(0,1fr) 380px}
  .uklad.z-panelem:has(>#panel:empty){grid-template-columns:minmax(0,1fr)}
}
details>summary{list-style:none;cursor:pointer}
details>summary::-webkit-details-marker{display:none}
/* odnoga = osobna ramka urzędu: szary pasek nagłówka, kolorowy lewy brzeg wg pilności, pisma wcięte pod spodem */
.odnoga{border:1px solid var(--linia);border-left:5px solid var(--linia-mocna);border-radius:8px;margin:0 0 12px;background:var(--tlo);overflow:hidden}
.odnoga.bad{border-left-color:var(--blad)}
.odnoga.warn{border-left-color:var(--ostrz)}
.odnoga.zamknieta{border-left-color:var(--linia)}
.odnoga.szkic{border-style:dashed;border-left-style:solid}
.odnoga>summary.bh{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:8px;align-items:start;padding:10px 12px;background:var(--karta)}
.odnoga[open]>summary.bh{border-bottom:1px solid var(--linia)}
.odnoga>summary.bh::before{content:"›";font-size:20px;line-height:1.1;color:var(--drugi);transition:transform .15s}
.odnoga[open]>summary.bh::before{transform:rotate(90deg)}
.odnoga>summary:focus-visible{outline:2px solid var(--akcent);outline-offset:-2px}
.naglowek{display:block;min-width:0}
.org{font-weight:700;font-size:16px}
.bsg{font-family:var(--mono);font-size:14px;font-weight:600;margin-left:10px;overflow-wrap:anywhere;color:var(--drugi)}
.stan{display:block;font-size:13px;color:var(--tekst);margin-top:2px}
.podsum{display:block;font-family:var(--mono);font-size:12px;color:var(--drugi)}
.odnoga[open]>summary .podsum{display:none}
.odnoga.zamknieta .org{color:var(--drugi)}
.cialo{padding:4px 14px 10px 38px}
.narzedzia{font-size:12px;margin:4px 0 2px;color:var(--drugi)}
.opis{font-size:13px;color:var(--drugi);margin:2px 0}
.cialo>.p:first-of-type,.cialo>.narzedzia+.p{border-top:none}
.podsprawy{margin:12px 0 2px;padding-left:0}
.podsprawy .odnoga{margin-bottom:10px}
.grupa-zamknietych{margin-top:18px}
.gr-tytul{font-size:13px;font-weight:600;color:var(--drugi);margin-bottom:6px}
.starsze>summary{font-size:13px;color:var(--akcent);padding:6px 0;border-top:1px solid var(--linia)}
.starsze>summary::before{content:"›";display:inline-block;margin-right:6px;transition:transform .15s}
.starsze[open]>summary::before{transform:rotate(90deg)}

/* wiersz pisma: kolumna numerów + treść */
.p{display:grid;grid-template-columns:236px minmax(0,1fr);gap:12px;padding:8px 0;border-top:1px solid var(--linia)}
.nr{display:block;font-family:var(--mono);font-size:14px;font-weight:600;line-height:1.3;overflow-wrap:anywhere;color:var(--tekst)}
a.nr{text-decoration:none}
a.nr:hover,.na a:hover{text-decoration:underline}
/* pismo TnROP: numer, data, tytuł i sedno na niebiesko; obce sygnatury i urzędy na czarno */
.p.tnrop .nr,.p.tnrop .dt,.p.tnrop .tm,.p.tnrop .s{color:var(--akcent)}
.dt{font-family:var(--mono);font-size:14px;color:var(--tekst);margin-top:1px}
.na{font-family:var(--mono);font-size:13px;color:var(--drugi);margin-top:2px}
.na a,.na span{color:var(--tekst);text-decoration:none}
.od{font-size:12px;color:var(--drugi)}
.od .kto{font-weight:600;color:var(--tekst)}
.tm{display:block;font-size:14px;font-weight:600;color:var(--tekst);text-decoration:none}
a.tm:hover{text-decoration:underline}
.s{font-size:13px;color:var(--drugi)}
.co-dalej{font-size:13px;color:var(--akcent)}
.ext{text-decoration:none;margin-left:4px}
.wiele{color:var(--ostrz);cursor:help;margin-left:4px}
.p.usuniete .tm{text-decoration:line-through}
.p.miss,.p.miss .nr,.p.miss .dt,.p.miss .na,.p.miss .od,.p.miss .tm{color:var(--blad)}
.p.wait,.p.wait .nr,.p.wait .dt,.p.wait .na,.p.wait .od,.p.wait .tm{color:var(--ostrz)}
@media (max-width:600px){
  .p{grid-template-columns:minmax(0,1fr);gap:2px}
  .cialo{padding:4px 10px 8px 16px}
  .odnoga>summary.bh{padding:8px 10px;grid-template-columns:14px minmax(0,1fr)}
  .odnoga>summary.bh .chip{grid-column:2;justify-self:start}
  .nr-kol{display:flex;gap:10px;flex-wrap:wrap;align-items:baseline}
}

/* panel boczny i formularze */
form.pionowo{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}
input,select,textarea,button{font:inherit;padding:4px 8px;border:1px solid var(--linia);border-radius:6px;background:var(--tlo);color:var(--tekst);max-width:100%}
button{cursor:pointer;background:var(--karta)}
.panel{position:sticky;top:12px;border:1px solid var(--linia);border-radius:12px;padding:12px 14px;background:var(--karta);max-height:calc(100vh - 24px);overflow:auto}
.panel h4{margin:14px 0 6px}
.panel .nr{margin:0}
.zamknij{float:right}
.historia{font-size:12px;color:var(--drugi)}
pre.skroty{white-space:pre-wrap;font-size:13px}
textarea[name=tekst]{font-family:var(--mono);font-size:13px}
table{border-collapse:collapse;width:100%;font-size:13px}
td,th{border-bottom:1px solid var(--linia);padding:4px 6px;text-align:left;vertical-align:top}
tr.miss td{color:var(--blad)}
tr.wait td{color:var(--ostrz)}
.propozycja{border:1px solid var(--linia);border-radius:12px;padding:10px 14px;margin-bottom:10px}
.logowanie{max-width:360px;margin:60px auto;display:flex;flex-direction:column;gap:8px}
.logowanie label{display:flex;flex-direction:column;gap:2px}
.wiecej{font-family:var(--mono);font-size:12px;color:var(--drugi);margin-left:6px;cursor:help;border-bottom:1px dotted var(--drugi)}
.p.stare{padding:3px 0}
.p.stare .dt,.p.stare .od{color:var(--drugi);font-size:12px;font-style:italic}
form.w-linii{display:inline;margin:0}
button.link{background:none;border:0;padding:0;font:inherit;color:var(--akcent);text-decoration:underline;cursor:pointer}
button.link.usun{color:var(--blad)}
/* postępowania w odnodze: blok z wcięciem i kreską wg pilności */
.op{display:block;font-size:13px;color:var(--tekst);margin-top:3px;max-width:75ch}
.op.brak-opisu{color:var(--drugi);font-style:italic}
.postepowanie{border-left:3px solid var(--linia-mocna);margin:10px 0 14px;padding-left:12px}
.postepowanie.bad{border-left-color:var(--blad)}
.postepowanie.warn{border-left-color:var(--ostrz)}
.postepowanie>summary.pgh{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:8px;align-items:start;padding:4px 0}
.postepowanie>summary.pgh::before{content:"›";font-size:17px;line-height:1.1;color:var(--drugi);transition:transform .15s}
.postepowanie[open]>summary.pgh::before{transform:rotate(90deg)}
.pg-nag{display:block;min-width:0}
.pgn{font-family:var(--mono);font-size:14px;font-weight:700}
.pg-meta{font-size:12px;color:var(--drugi)}
.pg-cialo{padding-left:22px}
.pg-cialo>.p:first-child{border-top:none}
.popraw-opis{font-size:12px;margin:6px 0}
.popraw-opis>summary{color:var(--akcent)}
@media (max-width:600px){.pg-cialo{padding-left:4px}.postepowanie{padding-left:8px}}
/* uzupełnienia i załączniki pod pismem głównym */
.dodatki{margin-left:34px;border-left:2px dotted var(--linia-mocna)}
.dodatki>.p{padding-left:12px;grid-template-columns:222px minmax(0,1fr)}
.znacznik-dodatku{font-size:11px;padding:0 6px;border-radius:999px;border:1px solid var(--linia-mocna);color:var(--drugi)}
@media (max-width:600px){.dodatki{margin-left:10px}.dodatki>.p{grid-template-columns:minmax(0,1fr)}}
/* sedno sprawy (AI) pod tytułem, notatka osobno */
.sedno-sprawy{margin:8px 0 4px;padding:8px 12px;border-left:3px solid var(--akcent);background:var(--karta);font-size:14px;max-width:85ch}
.sedno-sprawy small{display:block;font-size:11px;color:var(--drugi);margin-bottom:2px}
.sedno-sprawy.brak-opisu{color:var(--drugi);font-style:italic}
.notatka{font-size:13px;color:var(--drugi);font-style:italic;margin:4px 0}
.ks{font-size:13px;color:var(--tekst)}
