/* NP Rozpočet – vzhled Nový Plzenec digital.
 * Barvy: grafit (--n) a červená (--acc) jako na webu, zelená (--g) jen pro příjmy.
 * Písma bere ze šablony (--np-sans, --np-mono), jinak systémová.
 */
.npr{--n:#1a1d21;--acc:#d0222b;--accl:#fbe9ea;--g:#3d9a5b;--gd:#2f7d47;--gl:#dcefe1;--line:#e3e8ef;--line2:#f1f3f6;--mut:#6b7280;--txt:#4b5563;
--sans:var(--np-sans,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif);--mono:var(--np-mono,ui-monospace,"SFMono-Regular","Cascadia Mono",Consolas,monospace);
margin:2.5rem 0;color:var(--n);font-family:var(--sans);font-variant-numeric:tabular-nums;line-height:1.45;-webkit-font-smoothing:antialiased}
.npr *,.npr *::before,.npr *::after{box-sizing:border-box}
:where(.npr) button{font:inherit;color:inherit;cursor:pointer;margin:0}
.npr p{margin:0}
.npr ul,.npr ol{list-style:none;margin:0;padding:0}
.npr li{list-style:none}
.npr li::before,.npr li::after{content:none!important;display:none!important}
.npr .npr-gloss__m{list-style:none;padding-left:0}
.npr .npr-gloss__m li{position:relative;padding-left:1rem}
.npr .npr-gloss__m li::before{content:""!important;display:block!important;position:absolute;left:0;top:.55em;width:6px;height:6px;background:var(--acc)}
.npr .pos{color:var(--gd)}
.npr .neg{color:var(--acc)}
.npr .g{color:var(--acc)}
.npr :focus-visible{outline:2px solid var(--acc);outline-offset:2px}

/* Načítání: pixel, který bliká jako kurzor */
.npr-loading{display:flex;align-items:center;gap:.6rem;font:600 .85rem/1 var(--mono);color:var(--mut);padding:2rem 0}
.npr-loading span{width:10px;height:10px;background:var(--acc);animation:npr-blink 1s steps(1) infinite}

/* Kickery: 01 / název – pixelová odrážka, monospace */
.npr-kick{display:flex;align-items:center;gap:.55rem;font:600 .74rem/1.2 var(--mono);letter-spacing:.06em;text-transform:lowercase;color:var(--mut);margin-bottom:.6rem!important}
.npr-kick::before{content:"";width:8px;height:8px;background:var(--acc)}
.npr-kick b{color:var(--acc);font-weight:700}
.npr .npr-title{margin:0;font-size:clamp(2rem,4.4vw,2.9rem);font-weight:800;letter-spacing:-.04em;line-height:1.02;color:var(--n)}
.npr-title .npr-cur{display:inline-block;width:.42em;height:.42em;margin-left:.12em;background:var(--acc);vertical-align:.05em;animation:npr-blink 1.1s steps(1) infinite}
.npr .npr-sec h4{margin:0;font-size:clamp(1.45rem,2.8vw,1.9rem);font-weight:800;letter-spacing:-.03em;line-height:1.12;color:var(--n)}
.npr-head-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.25rem}
.npr-years{display:flex;flex-wrap:wrap;gap:.35rem}
.npr-years button{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:.42rem .95rem;font:700 .88rem/1.2 var(--mono);color:var(--txt);transition:border-color .15s,color .15s}
.npr-years button:hover{border-color:var(--n);color:var(--n)}
.npr-years button.on{background:var(--n);border-color:var(--n);color:#fff}
.npr-period{font-size:.84rem;color:var(--mut);margin-top:.9rem!important}
.npr-live{display:inline-block;width:8px;height:8px;background:var(--acc);margin-right:.5rem;vertical-align:0;animation:npr-blink 1.1s steps(1) infinite}
@keyframes npr-blink{50%{opacity:0}}
.npr-lead{font-size:1.05rem;line-height:1.65;color:var(--txt);margin:.35rem 0 1.4rem!important;max-width:44rem}
.npr-lead b{color:var(--n);font-weight:700}
.npr-hint{font-size:.78rem;color:var(--mut);margin-top:.8rem!important}
.npr-empty{color:var(--mut);font-size:.9rem;padding:1rem 0}
.npr-sw{display:inline-block;flex-shrink:0;width:10px;height:10px;border-radius:2px}
.npr-ico{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;border-radius:8px}
.npr-ico svg{width:20px;height:20px}

/* Karty příjmů a výdajů */
.npr-hero{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem}
.npr-hc{display:flex;flex-direction:column;gap:.4rem;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:1.35rem 1.5rem 1.25rem;transition:border-color .15s,transform .15s,box-shadow .15s}
.npr-hc:hover{border-color:var(--n);transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--n)}
.npr-hc--p:hover{box-shadow:5px 5px 0 var(--g)}
.npr-hc__lab{font:600 .72rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut)}
.npr-hc__num{font-size:clamp(2.3rem,5.4vw,3.4rem);font-weight:800;letter-spacing:-.045em;line-height:1;white-space:nowrap;color:var(--n);margin:.15rem 0 .2rem}
.npr-hc--p .npr-hc__num{color:var(--gd)}
.npr-hc__num small{font-size:.36em;font-weight:700;letter-spacing:-.01em;color:var(--mut)}
/* Plnění jako řádek pixelů (20 kostiček = 100 %) */
.npr-px{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:3px;margin-top:.35rem}
.npr-px i{display:block;aspect-ratio:1/1;max-height:12px;border-radius:2px;background:var(--line2)}
.npr-px i.on{background:var(--n)}
.npr-hc--p .npr-px i.on{background:var(--g)}
.npr-px i.over{background:var(--acc)}
.npr-hc__sub{font-size:.82rem;color:var(--txt)}
.npr-hc__sub b{color:var(--n)}
.npr-hc__tb{display:grid;grid-template-columns:auto auto;justify-content:space-between;gap:.25rem 1rem;margin-top:.45rem;padding-top:.6rem;border-top:1px solid var(--line2);font-size:.84rem;color:var(--txt)}
.npr-hc__tb b{text-align:right;font-weight:700;color:var(--n);white-space:nowrap}
.npr-hc__k{font-size:.74rem;line-height:1.45;color:var(--mut)}
.npr-hc__go{margin-top:.35rem;font:700 .8rem/1.2 var(--mono);color:var(--acc)}

.npr-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem;background:#fff;border:1.5px solid var(--line);border-radius:12px}
.npr-chip{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .7rem;padding:1rem 1.5rem}
.npr-chip+.npr-chip{border-left:1px solid var(--line)}
.npr-chip span{width:100%;font:600 .72rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut)}
.npr-chip strong{font-size:1.45rem;font-weight:800;letter-spacing:-.03em}
.npr-chip em{font-style:normal;font-size:.82rem;color:var(--mut)}

.npr-sec{margin-top:3.75rem;padding-top:2.5rem;border-top:1px solid var(--line)}
.npr-sec__head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:.75rem;margin-bottom:1.25rem}

/* Plán vs. skutečnost */
.npr-dev__sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1.5px solid var(--line);border-radius:12px;margin-bottom:1.25rem;background:#fff}
.npr-dev__sum>div{padding:.95rem 1.2rem;min-width:0}
.npr-dev__sum>div+div{border-left:1px solid var(--line)}
.npr-dev__sum span{display:block;font:600 .7rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut)}
.npr-dev__sum strong{display:block;margin-top:.25rem;font-size:1.35rem;font-weight:800;letter-spacing:-.03em;white-space:nowrap}
.npr-dev__sum em{display:block;margin-top:.15rem;font-style:normal;font-size:.76rem;color:var(--mut)}
.npr-dev{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.npr-dev li{margin:0;padding:0}
.npr-dev__row{display:grid;grid-template-columns:2.2rem minmax(0,1fr) auto;grid-template-areas:"r n d" ". b b" ". s s";align-items:center;column-gap:1rem;row-gap:.45rem;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:.95rem .25rem}
button.npr-dev__row:hover .npr-dev__n{color:var(--acc)}
.npr-dev__r{grid-area:r;font:700 1.25rem/1 var(--mono);color:#c5cbd3}
.npr-dev li:first-child .npr-dev__r{color:var(--acc)}
.npr-dev__n{grid-area:n;font-weight:700;font-size:.98rem;line-height:1.25;transition:color .15s}
.npr-dev__n em{display:block;font-style:normal;font:500 .72rem/1.4 var(--mono);color:var(--mut);margin-top:.15rem}
.npr-dev__d{grid-area:d;text-align:right;white-space:nowrap}
.npr-dev__d strong{display:block;font-size:1.05rem;font-weight:800;letter-spacing:-.02em}
.npr-dev__d small{display:block;font:600 .72rem/1.3 var(--mono);color:var(--mut)}
.npr-dev__b{grid-area:b;position:relative;height:10px;background:var(--line2);border-radius:2px}
.npr-dev__b i{position:absolute;left:0;top:0;bottom:0;border-radius:2px;background:var(--n)}
.npr-dev__b i.p{background:var(--g)}
.npr-dev__b b{position:absolute;top:-4px;bottom:-4px;width:3px;background:var(--acc);transform:translateX(-1.5px)}
.npr-dev__s{grid-area:s;font-size:.76rem;color:var(--mut)}
.npr-dev__s b{color:var(--n);font-weight:700}
.npr-key3{display:inline-block;width:10px;height:10px;border-radius:2px;background:var(--n);vertical-align:-1px;margin:0 .35rem 0 .1rem}
.npr-key3.p{background:var(--g);margin-left:.9rem}
.npr-key3.m{width:3px;background:var(--acc);margin-left:.9rem}

.npr-chipset{display:flex;flex-wrap:wrap;gap:.45rem}
.npr-tchip{display:inline-flex;align-items:center;gap:.5rem;border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:.5rem .9rem .5rem .7rem;font-size:.9rem;font-weight:600;color:var(--n);transition:border-color .15s,background .15s,color .15s}
.npr-tchip:hover{border-color:var(--n)}
.npr-tchip__i{display:inline-flex;line-height:0}
.npr-tchip__i svg{width:17px;height:17px}
.npr-tchip.on{background:var(--n);border-color:var(--n);color:#fff}
.npr-tchip.on .npr-tchip__i{color:#fff!important}
.npr-tcard{margin-top:1rem;background:#fff;border:1.5px solid var(--line);border-radius:12px;padding:1.4rem 1.5rem 1.5rem;animation:npr-open .25s ease-out}
@keyframes npr-open{from{opacity:0;transform:translateY(-4px)}}
.npr-tcard__top{display:flex;align-items:center;gap:.85rem;margin-bottom:1.3rem}
.npr-tcard__n{font-weight:800;font-size:1.2rem;letter-spacing:-.02em;line-height:1.2}
.npr-tcard__y{font-size:.8rem;color:var(--mut)}
.npr-tcard__x{margin-left:auto!important;border:1.5px solid var(--line);background:#fff;width:34px;height:34px;border-radius:8px;font-size:1.2rem;line-height:1;color:var(--mut)}
.npr-tcard__x:hover{border-color:var(--n);color:var(--n)}
.npr-tcard__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:2.25rem}
.npr-tkpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;margin-bottom:.6rem}
.npr-tkpi>div{padding:.75rem 1rem;min-width:0}
.npr-tkpi>div+div{border-left:1px solid var(--line)}
.npr-tkpi span{display:block;font:600 .66rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut)}
.npr-tkpi strong{display:block;margin-top:.2rem;font-size:1.25rem;font-weight:800;letter-spacing:-.025em;color:var(--n);white-space:nowrap}
.npr-tkpi small{display:block;margin-top:.2rem;font-size:.74rem;line-height:1.45;color:var(--txt)}
.npr-tkpi em{display:block;margin-top:.1rem;font-style:normal;font-size:.76rem;color:var(--mut)}
.npr-tkpi__res{background:var(--line2)}
.npr-tkpi__res strong{font-size:1.6rem;color:var(--c)}
.npr-titems__row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n v" "b b" "s s";gap:.3rem 1rem;border-bottom:1px solid var(--line2);padding:.7rem 0}
.npr-tcard__hrow{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem}
.npr-tcard__hrow .npr-mode{margin-left:auto}
.npr .npr-tcard .npr-mode button{border:0;background:transparent;border-radius:5px;padding:.25rem .7rem;font-size:.76rem;font-weight:700;color:var(--mut)}
.npr .npr-tcard .npr-mode button:disabled{opacity:.4;cursor:not-allowed}
.npr .npr-tcard .npr-mode button.on{background:#fff;color:var(--n);box-shadow:0 1px 2px rgba(0,0,0,.1)}
.npr-tcard .npr-tplan__bar{margin-bottom:1.5rem}
.npr-tcard__n .npr-code{font-size:.7rem}
.npr-tplan__bar{height:8px;border-radius:2px;background:var(--c2);overflow:hidden}
.npr-tplan__bar i{display:block;height:100%;background:var(--c);border-radius:2px}
.npr-tcard__h{font:600 .7rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut);margin:1.6rem 0 .7rem!important}
.npr-tcard__h--first{margin-top:0!important}
.npr-mini{display:flex;gap:.6rem;height:130px}
.npr-mini__c{flex:1;display:flex;flex-direction:column;align-items:center;gap:.35rem}
.npr-mini__bar{position:relative;flex:1;width:100%;display:flex;justify-content:center;align-items:flex-end;border-bottom:1px solid var(--line);margin-top:1.1rem}
.npr-mini__bar i{position:relative;z-index:1;display:block;width:min(56%,44px);min-height:2px;background:var(--c2);border-radius:2px 2px 0 0}
.npr-mini__c.on .npr-mini__bar i{background:var(--c)}
.npr-mini__g{position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:min(56%,44px);border:1.5px dashed var(--n);border-bottom:0;border-radius:2px 2px 0 0;opacity:.35;pointer-events:none}
.npr-mini__l{position:absolute;left:50%;transform:translateX(-50%);padding-bottom:4px;font:700 .72rem/1 var(--mono);white-space:nowrap;color:var(--mut);z-index:2}
.npr-mini__c.on .npr-mini__l{color:var(--n)}
.npr-mini__y{font:700 .76rem/1 var(--mono);color:var(--mut)}
.npr-mini__c.on .npr-mini__y{color:var(--n)}
.npr-key2{display:inline-block;width:12px;height:9px;border-radius:2px;vertical-align:0;margin:0 .35rem 0 .1rem;background:var(--c)}
.npr-key2.b{background:none;border:1.5px dashed var(--n);opacity:.45;margin-left:.8rem}
.npr-titems{list-style:none;margin:0;padding:0}
.npr-titems li{margin:0;padding:0}
.npr-titems button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n v" "b b" "s s";gap:.3rem 1rem;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line2);padding:.7rem 0}
.npr-titems button:hover .npr-titems__n{color:var(--acc)}
.npr-titems__n{grid-area:n;font-size:.9rem;font-weight:600;line-height:1.3}
.npr-titems strong{grid-area:v;font-weight:800;font-size:.92rem;white-space:nowrap}
.npr-titems__b{grid-area:b;position:relative;height:6px;background:var(--line2);border-radius:2px}
.npr-titems__b i{position:absolute;left:0;top:0;bottom:0;border-radius:2px;background:var(--c)}
.npr-titems__b b{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--acc);transform:translateX(-1px)}
.npr-titems__s{grid-area:s;font-size:.74rem;color:var(--mut)}

.npr-kon{display:flex;align-items:flex-start;gap:.75rem;width:100%;margin:1.1rem 0 0;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:.8rem 1rem;transition:border-color .15s}
.npr-kon:hover{border-color:var(--n)}
.npr-kon__box{flex-shrink:0;position:relative;width:20px;height:20px;margin-top:1px;border:1.5px solid var(--n);border-radius:4px;background:#fff}
.npr-kon.on .npr-kon__box{background:var(--n)}
.npr-kon.on .npr-kon__box::after{content:"";position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.npr-kon__t b{display:block;font-size:.9rem;font-weight:700;color:var(--n)}
.npr-kon__t small{display:block;margin-top:.15rem;font-size:.78rem;line-height:1.45;color:var(--mut)}
.npr-app .npr-kon{margin:0 0 1rem}
.npr-table--fin{min-width:560px}
.npr-table tr.npr-tsum td{font-weight:700;color:var(--n);background:#fafbfc;border-bottom:1px solid var(--line)}
.npr-table tfoot tr.npr-tsal td{border-top:1px solid var(--line);font-weight:600;color:var(--txt)}
.npr-pills{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin:0 0 1.25rem}
.npr-pills__lab{font:600 .76rem/1.2 var(--mono);color:var(--mut);margin-right:.2rem}
.npr .npr-pills button{border:1.5px solid var(--n);background:#fff;border-radius:8px;padding:.5rem 1.05rem;font-size:.9rem;font-weight:700;color:var(--n);transition:background .15s,color .15s}
.npr .npr-pills button:hover{background:var(--line2)}
.npr .npr-pills button.on{background:var(--n);color:#fff}

/* Stokoruna – pixelová mřížka 10 × 10 */
.npr-waf{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:2.5rem;align-items:start}
.npr-waf__grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:3px}
.npr-waf__grid i{display:block;aspect-ratio:1/1;border-radius:2px;transition:opacity .2s}
.npr-anim .npr-waf__grid i{animation:npr-pop .35s cubic-bezier(.34,1.56,.64,1) both}
@keyframes npr-pop{from{opacity:0;transform:scale(.3)}}
.npr-waf__grid.hl i{opacity:.15}
.npr-waf__grid.hl i.on{opacity:1}
.npr-lg{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.npr-lg li{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:.75rem;margin:0;padding:.42rem .3rem;border-bottom:1px solid var(--line2);cursor:pointer;transition:background .15s}
.npr-lg li.on{background:var(--line2)}
.npr-lg__n{min-width:0;font-size:.88rem;font-weight:500;line-height:1.3}
.npr-lg__n small{display:block;font-size:.72rem;color:var(--mut);line-height:1.35}
.npr-lg strong{font-size:.95rem;font-weight:800;white-space:nowrap;text-align:right}
.npr-lg li:first-child strong{font-size:1.25rem;letter-spacing:-.02em}

.npr-tm__crumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;font-size:.9rem;color:var(--mut);margin-bottom:.8rem;min-height:2rem}
.npr-tm__crumb strong{color:var(--n)}
.npr-tm__crumb button{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:.32rem .8rem;font-size:.82rem;font-weight:700;color:var(--n)}
.npr-tm__crumb button:hover{border-color:var(--n)}
.npr-tm{position:relative;height:440px;margin:0 -1.5px}
.npr-tile{position:absolute;border:0;border-radius:4px;padding:0;overflow:hidden;text-align:left;transition:filter .15s}
.npr-tm.go .npr-tile{animation:npr-fade .35s ease-out both}
.npr-tile:hover,.npr-tile:focus-visible{filter:brightness(1.1);z-index:2}
@keyframes npr-fade{from{opacity:0;transform:scale(.96)}}
.npr-tile__in{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;gap:.1rem;padding:.8rem .9rem}
.npr-tile__n{font-weight:700;font-size:.82rem;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.npr-tile__c{font:600 .66rem/1.2 var(--mono);opacity:.7;white-space:nowrap}
.npr-tile--s .npr-tile__c,.npr-tile--xs .npr-tile__c{display:none}
.npr-tile__v{font-size:.74rem;opacity:.8;white-space:nowrap}
.npr-tile__p{font-weight:800;font-size:1.05rem;letter-spacing:-.03em;line-height:1.05}
.npr-tile--xl .npr-tile__n{font-size:1.05rem}
.npr-tile--xl .npr-tile__v{font-size:.84rem}
.npr-tile--xl .npr-tile__p{font-size:2.6rem;margin-top:.15rem}
.npr-tile--l .npr-tile__n{font-size:.9rem}
.npr-tile--l .npr-tile__p{font-size:1.6rem}
.npr-tile--m .npr-tile__in{padding:.5rem .6rem}
.npr-tile--m .npr-tile__v{display:none}
.npr-tile--s .npr-tile__in{padding:.35rem .45rem}
.npr-tile--s .npr-tile__v,.npr-tile--s .npr-tile__p{display:none}
.npr-tile--s .npr-tile__n{font-size:.66rem;-webkit-line-clamp:2}
.npr-tile--xs .npr-tile__in{display:none}
.npr-tm__legend{display:flex;flex-wrap:wrap;gap:.3rem 1.1rem;margin-top:1rem}
.npr-tm__legend button{display:inline-flex;align-items:center;gap:.45rem;border:0;background:none;padding:.2rem 0;font-size:.8rem;font-weight:500;color:var(--txt)}
.npr-tm__legend button:hover{color:var(--n);text-decoration:underline;text-decoration-color:var(--acc);text-underline-offset:3px}
.npr-tm__legend i{width:10px;height:10px;border-radius:2px}

.npr-top{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.npr-top li{margin:0;padding:0}
.npr-top button{display:grid;grid-template-columns:2.4rem minmax(0,1fr) auto;grid-template-areas:"r n v" ". b b";align-items:center;column-gap:1rem;row-gap:.5rem;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:1rem .25rem}
.npr-top button:hover .npr-top__n{color:var(--acc)}
.npr-top__rank{grid-area:r;font:700 1.5rem/1 var(--mono);color:#c5cbd3}
.npr-top li:first-child .npr-top__rank{color:var(--acc)}
.npr-top__n{grid-area:n;font-weight:700;font-size:1rem;line-height:1.25;transition:color .15s}
.npr-top__n em{display:flex;align-items:center;gap:.4rem;font-style:normal;font-weight:500;font-size:.78rem;color:var(--mut);margin-top:.15rem}
.npr-top strong{grid-area:v;font-size:1.1rem;font-weight:800;letter-spacing:-.02em;white-space:nowrap}
.npr-top__bar{grid-area:b;height:6px;border-radius:2px;background:var(--line2);overflow:hidden}
.npr-top__bar i{display:block;height:100%;border-radius:2px}

.npr-stack{display:flex;gap:2px;height:14px;border-radius:2px;overflow:hidden;margin-bottom:1.25rem}
.npr-stack span{display:block;height:100%;min-width:3px}
.npr-src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.6rem}
.npr-sc{display:block;text-align:left;background:#fff;border:1.5px solid var(--line);border-radius:10px;padding:.85rem 1rem .9rem;transition:border-color .15s,transform .15s,box-shadow .15s}
.npr-sc:hover{border-color:var(--n);transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--c)}
.npr-sc__n::before{content:"";display:inline-block;width:10px;height:10px;border-radius:2px;background:var(--c);margin-right:.45rem;vertical-align:0}
.npr-sc__n{display:block;font-size:.84rem;font-weight:700;color:var(--n);line-height:1.25}
.npr-sc strong{display:inline-block;font-size:1.25rem;font-weight:800;letter-spacing:-.03em;margin:.3rem .4rem 0 0}
.npr-sc em{font-style:normal;font-size:.8rem;font-weight:600;color:var(--mut)}
.npr-sc__d{display:block;font-size:.74rem;line-height:1.4;color:var(--mut);margin-top:.3rem}

.npr-trend{display:flex;gap:.75rem;height:230px;padding-top:1.4rem}
.npr-tr{flex:1;display:flex;flex-direction:column;align-items:center;gap:.55rem;height:100%;background:none;border:0;padding:0}
.npr-tr__bars{flex:1;width:100%;display:flex;justify-content:center;align-items:flex-end;gap:5px;border-bottom:1px solid var(--line);transition:opacity .2s}
.npr-tr__bars i{position:relative;display:block;width:min(34%,42px);border-radius:2px 2px 0 0;transform-origin:bottom}
.npr-anim .npr-tr__bars i{animation:npr-rise .5s ease-out both}
@keyframes npr-rise{from{transform:scaleY(0)}}
.npr-tr__bars i.p{background:var(--g)}
.npr-tr__bars i.v{background:var(--n)}
.npr-tr__bars b{position:absolute;bottom:100%;left:50%;transform:translateX(-50%);padding-bottom:4px;font:700 .7rem/1 var(--mono);font-style:normal;color:var(--n);white-space:nowrap}
.npr-tr__y{font:700 .84rem/1 var(--mono);color:var(--mut);padding:.35rem .65rem;border-radius:6px}
.npr-tr.on .npr-tr__y{background:var(--n);color:#fff}
.npr-tr:not(.on) .npr-tr__bars{opacity:.45}
.npr-tr:hover .npr-tr__bars{opacity:1}
.npr-key{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:-1px;margin:0 .35rem 0 .1rem}
.npr-key.p{background:var(--g)}
.npr-key.v{background:var(--n);margin-left:.9rem}

.npr-gloss{margin-top:3.75rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.npr-gloss summary{display:flex;align-items:center;gap:.6rem;cursor:pointer;list-style:none;padding:1.1rem 0;font-weight:700;font-size:.95rem}
.npr-gloss summary::-webkit-details-marker{display:none}
.npr-gloss summary svg{width:18px;height:18px;color:var(--acc)}
.npr-gloss summary::after{content:"+";margin-left:auto;font:400 1.35rem/1 var(--mono);color:var(--mut)}
.npr-gloss[open] summary::after{content:"−"}
.npr-gloss dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem 2.5rem;margin:.25rem 0 1.25rem}
.npr-gloss dt{font-weight:700;font-size:.88rem;margin-bottom:.2rem}
.npr-gloss dd{margin:0;font-size:.84rem;line-height:1.55;color:var(--txt)}
.npr-gloss__h{font:600 .7rem/1.3 var(--mono);letter-spacing:.04em;color:var(--mut);margin:1.4rem 0 .6rem!important}
.npr-gloss__m{margin:0 0 .5rem;font-size:.84rem;line-height:1.6;color:var(--txt)}
.npr-gloss__m li{margin:.15rem 0}
.npr-gloss__map{list-style:none;margin:0 0 1.2rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem}
.npr-gloss__map li{display:block;margin:0;padding:.5rem 0;border-bottom:1px solid var(--line2);font-size:.82rem}
.npr-gloss__mi{display:flex;align-items:center;gap:.55rem}
.npr-gloss__mi b{font-weight:700}
.npr-gloss__md{display:block;margin:.1rem 0 0 calc(10px + .55rem);color:var(--mut);font-size:.76rem;line-height:1.4}
.npr-gloss .npr-src{padding:.9rem 0 1.1rem;border-top:1px solid var(--line2)}

/* Podrobný rozpočet */
.npr-app{margin-top:3.75rem;padding-top:2.5rem;border-top:1px solid var(--line);scroll-margin-top:90px}
.npr-tabs{display:flex;align-items:center;gap:1.75rem;border-bottom:1px solid var(--line);margin:1.1rem 0}
.npr-tabs button{background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;padding:.6rem 0;font-weight:700;color:var(--mut)}
.npr-tabs button.on{color:var(--n);border-bottom-color:var(--acc)}
.npr-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.86rem;margin-bottom:.35rem;scroll-margin-top:100px}
.npr-crumbs button{background:none;border:0;padding:0;color:var(--n);font-weight:600;text-decoration:underline;text-decoration-color:var(--acc);text-underline-offset:3px}
.npr-crumbs button:hover{color:var(--acc)}
.npr-crumbs span{color:var(--mut);font-family:var(--mono)}
.npr-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem 1rem;margin-bottom:1rem}
.npr-head strong{font-size:1.75rem;font-weight:800;letter-spacing:-.03em}
.npr-head span{font-size:.84rem;color:var(--mut)}
.npr-stripe{display:flex;gap:2px;height:14px;border-radius:2px;overflow:hidden;margin-bottom:.5rem;background:var(--line)}
.npr-stripe>*{display:block;border:0;padding:0;height:100%;min-width:3px}
.npr-stripe button:hover{filter:brightness(1.15)}
.npr-list{list-style:none;margin:0;padding:0}
.npr-list li{margin:0;padding:0}
.npr-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto 3.4rem 12px;grid-template-areas:"dot name amt share arr" ". bar bar bar ." ". sub sub sub .";align-items:center;column-gap:.7rem;row-gap:.3rem;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--line2);border-radius:0;padding:.8rem .2rem}
.npr-row--link:hover .npr-name{color:var(--acc)}
.npr-dot{grid-area:dot;width:10px;height:10px;border-radius:2px}
.npr-name{grid-area:name;font-weight:600;font-size:.92rem;line-height:1.3;transition:color .15s}
.npr-amt{grid-area:amt;font-weight:800;font-size:.92rem;white-space:nowrap}
.npr-share{grid-area:share;font:600 .78rem/1 var(--mono);color:var(--mut);text-align:right;white-space:nowrap}
.npr-arr{grid-area:arr;color:var(--mut);font-size:1.2rem;line-height:1}
.npr-bar{grid-area:bar;position:relative;height:6px;background:var(--line2);border-radius:2px}
.npr-bar i{position:absolute;left:0;top:0;bottom:0;border-radius:2px;transform-origin:left center;animation:npr-grow .45s ease-out}
@keyframes npr-grow{from{transform:scaleX(0)}}
.npr-bar b{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--acc);transform:translateX(-1px)}
.npr-code{display:inline-block;margin-left:.45rem;font:500 .7rem/1 var(--mono);letter-spacing:.01em;color:#9ca3af;white-space:nowrap;vertical-align:1px;cursor:help}
.npr-more{margin-top:.75rem;border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:.55rem .95rem;font-size:.84rem;font-weight:700;color:var(--n)}
.npr-more:hover{border-color:var(--n)}
.npr-mode{margin-left:auto;display:inline-flex;align-self:center;gap:2px;background:var(--line2);border-radius:8px;padding:2px}
.npr .npr-mode button{border:0;border-bottom:0;margin:0;background:transparent;border-radius:6px;padding:.3rem .8rem;font-size:.8rem;font-weight:700;color:var(--mut)}
.npr .npr-mode button.on{background:#fff;color:var(--n);box-shadow:0 1px 2px rgba(0,0,0,.1)}
.npr-cls+.npr-mode{margin-left:.4rem}
.npr .npr-mode button:disabled{opacity:.4;cursor:not-allowed}
.npr .npr-clsnote{font-size:.8rem;line-height:1.5;color:var(--txt);margin:-.35rem 0 1rem!important}
.npr-clsnote b{color:var(--n)}
.npr-ttools{display:flex;flex-wrap:wrap;gap:.4rem;margin:.25rem 0 .75rem}
.npr-ttools .npr-more{margin-top:0}
.npr-tablewrap{overflow-x:auto;border:1.5px solid var(--line);border-radius:10px;background:#fff;-webkit-overflow-scrolling:touch}
.npr-table{width:100%;min-width:640px;border-collapse:collapse;font-size:.82rem;line-height:1.35}
.npr-table th{position:sticky;top:0;background:#fff;text-align:right;font:600 .66rem/1.2 var(--mono);letter-spacing:.04em;color:var(--mut);padding:.65rem .7rem;border-bottom:1px solid var(--line);white-space:nowrap}
.npr-table th:nth-child(1),.npr-table th:nth-child(2){text-align:left}
.npr-table td{padding:.45rem .55rem;border-bottom:1px solid var(--line2);text-align:right;white-space:nowrap;vertical-align:top}
.npr-table td.npr-tc{text-align:left;color:#9ca3af;font:500 .72rem/1.35 var(--mono);padding-top:.5rem}
.npr-table td.npr-tn{text-align:left;white-space:normal;min-width:12rem}
.npr-table td.npr-tv{font-weight:700;color:var(--n)}
.npr-table tr.npr-tl0 td{background:#fafbfc;font-weight:700}
.npr-table tr.npr-tl0 td.npr-tc{font-weight:500}
.npr-table tr:hover td{background:#fbf3f3}
.npr-tn button{display:inline-flex;align-items:center;justify-content:center;width:1.15rem;height:1.15rem;margin-right:.4rem;border:1.5px solid var(--line);border-radius:3px;background:#fff;font:700 .8rem/1 var(--mono);color:var(--acc);vertical-align:-2px}
.npr-tn button:hover{border-color:var(--acc)}
.npr-tsp{display:inline-block;width:1.55rem}
.npr-table tfoot td{font-weight:800;color:var(--n);border-top:2px solid var(--n);border-bottom:0;background:#fff}
.npr-sub{grid-area:sub;font-size:.74rem;color:var(--mut)}
.npr-note{font-size:.78rem;color:var(--mut);margin:1.1rem 0 .3rem!important}
.npr-src{font:500 .74rem/1.4 var(--mono);color:var(--mut)}

@media (max-width:640px){
.npr-hero{grid-template-columns:1fr}
.npr-chips{grid-template-columns:1fr}
.npr-chip+.npr-chip{border-left:0;border-top:1px solid var(--line)}
.npr-chip{padding:.9rem 1.1rem}
.npr-hc{padding:1.15rem 1.15rem 1.05rem}
.npr-sec{margin-top:2.75rem;padding-top:2rem}
.npr-dev__sum{grid-template-columns:1fr}
.npr-dev__sum>div+div{border-left:0;border-top:1px solid var(--line)}
.npr-dev__row{grid-template-columns:1.6rem minmax(0,1fr);grid-template-areas:"r n" ". d" ". b" ". s"}
.npr-dev__d{text-align:left}
.npr-waf{grid-template-columns:1fr;gap:1.4rem}
.npr-waf__grid{max-width:340px}
.npr-gloss dl{grid-template-columns:1fr}
.npr-gloss__map{grid-template-columns:1fr}
.npr-lead{font-size:.98rem}
.npr-tcard{padding:1.15rem 1rem 1.25rem}
.npr-tcard__grid{grid-template-columns:1fr;gap:1.5rem}
.npr-tkpi{grid-template-columns:1fr}
.npr-tkpi>div+div{border-left:0;border-top:1px solid var(--line)}
.npr-tchip{font-size:.86rem;padding:.42rem .75rem .42rem .6rem}
.npr-tm{height:420px}
.npr-top button{grid-template-columns:1.8rem minmax(0,1fr) auto;column-gap:.75rem}
.npr-top__rank{font-size:1.2rem}
.npr-trend{gap:.4rem}
.npr-row{grid-template-columns:10px minmax(0,1fr) auto 12px;grid-template-areas:"dot name amt arr" ". bar bar ." ". sub sub ."}
.npr-share{display:none}
.npr-mode{margin-left:0}
.npr-tabs{flex-wrap:wrap}
}
@media (prefers-reduced-motion:reduce){
.npr *{animation:none!important;transition:none!important}
}
.npr-anim .npr-px i.on,.npr-anim .npr-px i.over{animation:npr-pop .35s both}

/* Srovnání s podobnými obcemi */
.npr-cmp{list-style:none;margin:.4rem 0 0;padding:0;border-top:1px solid var(--line)}
.npr-cmp__row{display:grid;grid-template-columns:minmax(10rem,15rem) minmax(0,1fr) 7.5rem 1.6rem;gap:1rem;align-items:center;padding:.7rem .25rem;border-bottom:1px solid var(--line)}
.npr-cmp__n{font-weight:700;font-size:.95rem;line-height:1.25}
.npr-cmp__n em{display:block;font:500 .7rem/1.4 var(--mono);font-style:normal;color:var(--mut)}
.npr-cmp__b{position:relative;height:12px;background:var(--line2);border-radius:2px}
.npr-cmp__b i{position:absolute;left:0;top:0;bottom:0;background:var(--n);border-radius:2px}
.npr-cmp__b i.neg{background:repeating-linear-gradient(45deg,var(--acc) 0 3px,#fff 3px 5px)}
.npr-cmp__b b{position:absolute;top:-5px;bottom:-5px;width:3px;margin-left:-1.5px;background:var(--acc)}
.npr-cmp__row strong{text-align:right;font-weight:800;white-space:nowrap}
.npr-cmp__row.is-home{background:var(--accl)}
.npr-cmp__row.is-home .npr-cmp__n,.npr-cmp__row.is-home strong{color:var(--acc)}
.npr-cmp__row.is-home .npr-cmp__b i{background:var(--acc)}
.npr .npr-cmp__x{border:0;background:none;font:700 1.1rem/1 var(--mono);color:var(--mut);padding:.2rem}
.npr .npr-cmp__x:hover{color:var(--acc)}
.npr-table--cmp th.is-home,.npr-table--cmp td.is-home{color:var(--acc);font-weight:800}
.npr-table--cmp td.hi::after{content:" ▲";font-size:.65em}
.npr-table--cmp td.lo::after{content:" ▼";font-size:.65em}
.npr-table--cmp tr.on td{background:var(--line2)}
.npr-table--cmp td,.npr-table--cmp th{text-align:right;white-space:nowrap}
.npr-table--cmp td:first-child,.npr-table--cmp th:first-child{text-align:left;white-space:normal}
.npr-cmp__edit{margin-top:1.6rem;padding:1.2rem 1.3rem;border:1.5px dashed var(--line);border-radius:12px}
.npr-cmp__edit .npr-pills{margin-bottom:.9rem}
.npr .npr-cmp__auto{border-style:dashed!important;margin-left:auto}
.npr-cmp__q{display:flex;flex-direction:column;gap:.35rem;max-width:30rem}
.npr-cmp__q span{font:600 .76rem/1.2 var(--mono);color:var(--mut)}
.npr-cmp__q input{font:inherit;font-size:.95rem;padding:.6rem .8rem;border:1.5px solid var(--n);border-radius:8px;background:#fff;color:var(--n)}
.npr-cmp__q input:focus{outline:2px solid var(--acc);outline-offset:1px}
.npr-cmp__sug{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}
.npr .npr-cmp__sug button{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:.4rem .75rem;font-size:.86rem;font-weight:700;text-align:left;transition:border-color .15s}
.npr .npr-cmp__sug button:hover{border-color:var(--n)}
.npr-cmp__sug em{font:500 .7rem/1 var(--mono);font-style:normal;color:var(--mut)}
@media (max-width:720px){
.npr-cmp__row{grid-template-columns:minmax(0,1fr) auto 1.4rem;grid-template-areas:"n s x" "b b b";row-gap:.45rem}
.npr-cmp__n{grid-area:n}.npr-cmp__b{grid-area:b}.npr-cmp__row strong{grid-area:s}.npr-cmp__x{grid-area:x}
.npr .npr-cmp__auto{margin-left:0}
}

/* Vysvětlivka k účetním operacím (daň, kterou město platí samo sobě) */
.npr-note{margin:1.2rem 0 0;padding:1rem 1.2rem;border-left:4px solid var(--acc);background:var(--line2);border-radius:0 10px 10px 0;font-size:.88rem;line-height:1.55;color:var(--txt)}
.npr-note b{color:var(--n)}
.npr-note .npr-kon{margin-top:.8rem;background:#fff}
