/* Moduł uprawnień korzysta z jasnej palety i typografii całego serwisu. */
.upr-mount{margin:1.25rem 0}
.upr-pasek{position:sticky;top:0;z-index:2;background:var(--bg);padding:.5rem 0 .6rem;border-bottom:1px solid var(--border);margin-bottom:.5rem}
.upr-pasek-t{font-size:.95rem;color:var(--muted)}
.upr-prog{height:8px;border-radius:99px;background:var(--surface2);overflow:hidden;margin-top:.35rem}
.upr-prog span{display:block;height:100%;background:var(--teal);border-radius:99px;transition:width .2s}
.upr-krok h2{margin-top:.75rem}
.upr-krok h2:focus,.upr-suma h2:focus{outline:3px solid var(--focus);outline-offset:3px}
.upr-f{border:0;margin:1.1rem 0 1.4rem;padding:0;min-width:0}
.upr-f legend,.upr-in>label{display:block;padding:0;margin-bottom:.45rem}
.upr-q{display:block;font-weight:700;color:var(--navy);line-height:1.35}
.upr-pod{display:block;font-size:.9rem;color:var(--muted);margin-top:.2rem;font-weight:400}
.upr-opc{font-weight:400;color:var(--muted)}
/* skala pozioma (do 4 krótkich opcji): kropki na linii */
.upr-skala{position:relative;display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));max-width:36rem}
.upr-skala::before{content:"";position:absolute;top:26px;left:calc(50% / var(--n,3));right:calc(50% / var(--n,3));height:2px;background:var(--border)}
.upr-skala .upr-opt{flex-direction:column;align-items:center;text-align:center;padding:0 2px 4px}
.upr-skala .upr-lbl{text-align:center;font-size:.9rem}
/* lista pozioma (dłuższe opcje): zawija się w wiersze, dalej obok siebie */
.upr-lista{display:flex;flex-wrap:wrap;gap:.35rem 1rem}
.upr-lista .upr-opt{flex:0 1 auto;max-width:100%}
.upr-opt{position:relative;display:flex;align-items:center;gap:.45rem;cursor:pointer;min-width:0}
.upr-hit{position:relative;height:52px;min-width:44px;width:44px;flex:0 0 44px;display:flex;align-items:center;justify-content:center}
.upr-skala .upr-hit{width:100%}
.upr-hit input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}
.upr-dot{width:28px;height:28px;border-radius:999px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:2.5px solid var(--muted);color:#fff;font-weight:800;font-size:15px}
.upr-hit input[type=checkbox]+.upr-dot{border-radius:7px}
.upr-hit input:checked+.upr-dot{background:var(--teal);border:3px solid var(--teal);box-shadow:0 0 0 4px var(--ok-bg);color:var(--bg)}
.upr-hit input:checked+.upr-dot::after{content:"✓"}
.upr-hit input:focus-visible+.upr-dot{outline:3px solid var(--focus);outline-offset:3px}
.upr-opt:hover .upr-dot{border-color:var(--teal)}
.upr-lbl{font-size:.97rem;line-height:1.25;color:var(--text);overflow-wrap:normal;word-break:normal;hyphens:manual}
.upr-opt:has(input:checked) .upr-lbl{font-weight:800}
.upr-inw{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.upr-in input{font:inherit;padding:.6rem .75rem;border:2px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);min-height:48px;max-width:100%}
.upr-in input[type=number]{width:11rem}.upr-in input[type=text]{width:22rem}
.upr-in input:focus{outline:3px solid var(--focus);outline-offset:2px}
.upr-jedn{color:var(--muted)}
.upr-nav{display:flex;justify-content:space-between;gap:1rem;margin:1.5rem 0 .5rem;flex-wrap:wrap}
.upr-btn{font:inherit;font-weight:700;min-height:48px;padding:.6rem 1.2rem;border-radius:10px;border:2px solid #00845e;background:#00845e;color:#fff;cursor:pointer}
.upr-btn:hover{background:#006c4d;border-color:#006c4d}
.upr-btn.upr-wstecz{background:#fff;color:var(--navy);border-color:#bdcdd7}
.upr-btn.upr-wstecz:hover{border-color:#00845e;color:#006b50}
.upr-btn:focus-visible,.upr-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.upr-link{font:inherit;background:none;border:0;padding:.3rem 0;min-height:44px;color:var(--link);text-decoration:underline;cursor:pointer}
.upr-pomin{font-size:.9rem;color:var(--muted)}
.upr-narz{margin-top:1.5rem;padding-top:.75rem;border-top:1px solid var(--border);font-size:.92rem;color:var(--muted)}
.upr-wczytaj{position:relative;display:inline-flex;align-items:center}
.upr-wczytaj:focus-within{outline:3px solid var(--focus);outline-offset:2px}
.upr-file{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.upr-kom{padding:.6rem .8rem;border-radius:8px;background:var(--ok-bg)}
.upr-kom:empty{display:none}
/* wynik */
.upr-suma{background:var(--surface2);border-radius:var(--radius,12px);padding:1rem 1.1rem;margin:1rem 0}
.upr-suma h2{margin:0 0 .6rem}
.upr-sumy{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem}
.upr-sv{display:block;font-size:1.45rem;font-weight:800;color:var(--navy)}
.upr-sl{display:block;font-size:.88rem;color:var(--muted)}
.upr-stan{font-size:.85rem;color:var(--muted)}
.upr-sek{margin:1.5rem 0}
.upr-sek>summary{cursor:pointer;list-style:revert}
.upr-sek>summary h2{display:inline;font-size:1.2rem}
.upr-lista-w{list-style:none;padding:0;margin:0;counter-reset:none}
.upr-item{border:1px solid var(--border);border-left:6px solid var(--teal);border-radius:10px;padding:.8rem .9rem;margin:.7rem 0;background:var(--surface);break-inside:avoid}
.upr-item.upr-moze{border-left-color:var(--accent)}
.upr-item.upr-alt{opacity:.85;border-left-style:dashed}
.upr-item.upr-zal{margin-left:1.25rem}
.upr-ih{display:flex;gap:.6rem;align-items:flex-start}
.upr-ih h3{margin:0;font-size:1.05rem;line-height:1.3}
.upr-nr{flex:0 0 auto;min-width:2rem;height:2rem;border-radius:99px;background:var(--navy);color:var(--bg);font-weight:800;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem}
.upr-nr:empty{display:none}
.upr-chk{display:none}
.upr-kto{margin:.2rem 0 0;font-size:.92rem}
.upr-badge{display:inline-block;font-size:.8rem;font-weight:700;padding:.05rem .45rem;border-radius:6px;background:var(--surface2);color:var(--text);border:1px solid var(--border)}
.upr-b-przysluguje{background:var(--ok-bg)}
.upr-b-moze,.upr-b-alt{background:var(--warn-bg)}
.upr-kw{margin:.5rem 0 .2rem}
.upr-next{margin:.75rem 0;padding:.65rem .8rem;border-radius:8px;background:var(--ok-bg);line-height:1.4}
.upr-next a{font-weight:700}
.upr-term{font-weight:700}
.upr-pilne{color:var(--accent)}
.upr-minal{color:var(--accent);text-decoration:underline}
.upr-dep{font-size:.9rem;color:var(--muted)}
.upr-spr{background:var(--warn-bg);border-radius:8px;padding:.4rem .7rem;margin:.5rem 0;font-size:.95rem}
.upr-spr ul{margin:.2rem 0 .2rem 1.1rem;padding:0}
.upr-uwaga{font-size:.95rem;border-left:3px solid var(--accent);padding-left:.6rem}
.upr-det{margin-top:.5rem}
.upr-det summary{cursor:pointer;color:var(--link);min-height:44px;display:flex;align-items:center}
.upr-pp{font-size:.9rem}
.upr-nie li{margin:.35rem 0}
.upr-akcje{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.5rem 0}
.upr-zb ul{margin:.3rem 0 .3rem 1.1rem}
.upr-kat-f{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:1rem 0}
.upr-kat-f input{font:inherit;padding:.55rem .7rem;border:2px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);min-height:46px;width:20rem;max-width:100%}
.upr-kat details{border-bottom:1px solid var(--border);padding:.35rem 0}
.upr-kat summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.upr-steps li{margin:.4rem 0}
@media (max-width:560px){
  .upr-skala{grid-template-columns:minmax(0,1fr)}
  .upr-skala::before{display:none}
  .upr-skala .upr-opt{flex-direction:row;justify-content:flex-start;text-align:left}
  .upr-skala .upr-hit{width:44px}
  .upr-skala .upr-lbl{text-align:left}
  .upr-lista{flex-direction:column;align-items:stretch;gap:0}
  .upr-lista .upr-opt{width:100%}
  .upr-item.upr-zal{margin-left:.5rem}
  .upr-in input[type=text]{width:100%}
}
@media print{
  .no-print,.upr-pasek,.upr-narz,.upr-kom,header.site,footer.site,nav,.upr-akcje,.upr-ukryj-druk{display:none!important}
  .upr-item{border:1px solid #999;border-left:4px solid #333;page-break-inside:avoid}
  .upr-chk{display:inline-block;width:18px;height:18px;border:2px solid #000;border-radius:3px;flex:0 0 18px;margin-top:.3rem}
  .upr-det{display:block}.upr-det>summary{display:none}
  .upr-det:not([open])>*:not(summary){display:block}
  details.upr-sek:not([open]){display:none}
  a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em;word-break:break-all}
}
.upr-zb-inne{margin:.6rem 0 1rem;border:1px solid var(--border);border-radius:var(--radius);padding:.6rem .9rem;background:var(--surface)}
.upr-zb-inne>summary{cursor:pointer;min-height:44px;padding:.3rem 0}
.upr-zb-inne .upr-zb{margin:.6rem 0}
@media print{.upr-zb-inne{border:0;padding:0}.upr-zb-inne>summary{display:none}}
