/* =====================================================================
 * Nájem & investice – základ stylů + design system 1.28
 * Klidný minimalismus: bílé karty, jemné linky, jeden akcent (modrá),
 * barvy jen tam, kde nesou význam. Čísla se nikdy nelámou do řádků.
 * ===================================================================== */
:root{
  --ak:#175cd3; --ak-svetla:#eff4ff; --ak-tm:#1e40af;
  --pozadi:#f6f7f9; --karta:#fff; --text:#111827; --text2:#6b7280; --ram:#e7e9ee;
  --zelena:#047857; --zelena-bg:#ecfdf5; --zelena-ram:#a7dcc8;
  --modra:#175cd3; --modra-bg:#eff4ff; --modra-ram:#bcd2f7;
  --zluta:#92600a; --zluta-bg:#fefae8; --zluta-ram:#eedc9a;
  --cervena:#b91c1c; --cervena-bg:#fdf0ef;
  --stin:0 1px 2px rgba(17,24,39,.04),0 4px 12px -6px rgba(17,24,39,.06);
  --r:12px;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
html.ni-pre-dark,html.ni-pre-dark body{background:#0d131c;color-scheme:dark}
body{font:15px/1.55 var(--ni-font);
  background:var(--pozadi);color:var(--text);-webkit-font-smoothing:antialiased}
#ni-app{display:flex;min-height:100vh}
a{color:var(--ak)}
h1{font-size:1.3rem;margin:.2rem 0 1rem;font-weight:700;letter-spacing:-.015em}
h2{font-size:.95rem;margin:1.15rem 0 .55rem;font-weight:600;letter-spacing:-.01em}
h3{font-size:.9rem;margin:.8rem 0 .4rem;font-weight:600}

/* ---------- Sidebar (tmavý, ale klidný a plochý) ---------- */
.ni-sidebar{background:#151b26;color:#b6bfcd;width:240px;flex:0 0 240px;padding:0 .6rem 1rem}
.ni-logo{padding:1.1rem .6rem .9rem;font-weight:700;color:#fff;font-size:.95rem;
  border-bottom:1px solid rgba(148,163,184,.15);margin-bottom:.55rem}
.ni-logo small{display:block;font-weight:400;color:#7d8794;font-size:.76rem;margin-top:.1rem}
.ni-nav{display:flex;flex-direction:column;gap:2px}
.ni-nav button{display:flex;align-items:center;gap:.55rem;background:none;border:0;color:#b6bfcd;
  text-align:left;padding:.58rem .75rem;font-size:.9rem;font-weight:500;cursor:pointer;width:100%;
  min-height:44px;border-radius:9px;transition:background .15s,color .15s;font-family:inherit}
.ni-nav button{position:relative;transition:background .18s,color .18s,transform .18s,box-shadow .18s}
.ni-nav button:hover{background:rgba(99,102,241,.16);color:#fff;transform:translateX(3px)}
.ni-nav button.akt{background:linear-gradient(120deg,#4f46e5,#7c3aed);color:#fff;font-weight:600;
  box-shadow:0 4px 16px rgba(99,102,241,.45),inset 0 1px 0 rgba(255,255,255,.18);transform:translateX(3px)}
.ni-nav button.akt:after{content:"";position:absolute;left:-9px;top:22%;bottom:22%;width:3px;border-radius:3px;
  background:linear-gradient(#818cf8,#c084fc)}
@media (prefers-reduced-motion:reduce){.ni-nav button,.ni-nav button:hover,.ni-nav button.akt{transform:none;transition:none}}
.ni-badge{margin-left:auto;background:linear-gradient(120deg,#e11d48,#f43f5e);color:#fff;border-radius:999px;font-size:.7rem;
  font-weight:700;padding:.1rem .45rem;min-width:1.3rem;text-align:center;box-shadow:0 2px 8px rgba(225,29,72,.5)}
.ni-role{padding:.85rem .75rem;border-top:1px solid rgba(148,163,184,.15);margin-top:.7rem;
  font-size:.76rem;color:#7d8794}
.ni-role select{width:100%;margin-top:.35rem;padding:.5rem;border-radius:9px;border:1px solid rgba(148,163,184,.25);
  min-height:42px;background:#1f2735;color:#dbe1ea;font-weight:500}

/* ---------- Hlavní obsah ---------- */
.ni-main{flex:1;padding:1.4rem 1.6rem 3rem;max-width:1200px;min-width:0}
.ni-topbar{display:none}

/* ---------- Karty a dlaždice ---------- */
.ni-karta{background:var(--karta);border:1px solid var(--ram);border-radius:var(--r);
  padding:1.1rem 1.2rem;margin-bottom:1rem;box-shadow:var(--stin)}
.ni-dlazdice{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.7rem;margin-bottom:.8rem}
.ni-dlazdice.ni-top{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.ni-dl{background:var(--karta);border:1px solid var(--ram);border-radius:var(--r);padding:.85rem 1rem;
  box-shadow:var(--stin);min-width:0}
.ni-dl .l{font-size:.7rem;color:var(--text2);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.ni-dl .v{font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:700;margin-top:.18rem;letter-spacing:-.015em;
  font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ni-dl.zel .v{color:var(--zelena)} .ni-dl.cer .v{color:var(--cervena)}
.ni-dl.mod .v{color:var(--modra)} .ni-dl.zlu .v{color:var(--zluta)}
.ni-dl .ni-pozn{white-space:normal;font-size:.76rem;margin-top:.15rem}
.ni-pozn{font-size:.8rem;color:var(--text2)}

/* ---------- Řádek doplňkových údajů pod dlaždicemi ---------- */
.ni-chips{display:flex;gap:.45rem;flex-wrap:wrap;margin:0 0 1.1rem}
.ni-chip{background:var(--karta);border:1px solid var(--ram);border-radius:999px;
  padding:.32rem .8rem;font-size:.8rem;color:var(--text2);white-space:nowrap}
.ni-chip b{color:var(--text);font-variant-numeric:tabular-nums}
.ni-chip.ceka{cursor:pointer;background:var(--zluta-bg);border-color:var(--zluta-ram);color:var(--zluta)}
.ni-chip.ceka b{color:var(--zluta)}
.ni-chip.ceka:hover{filter:brightness(.97)}

/* ---------- Progress ---------- */
.ni-progress{background:#eceef2;border-radius:999px;height:18px;overflow:hidden;margin:.45rem 0}
.ni-progress>div{background:var(--ak);height:100%;min-width:2.1rem;transition:width .4s ease;color:#fff;
  font-size:.7rem;font-weight:600;text-align:right;padding-right:.55rem;line-height:18px;border-radius:999px}

/* ---------- Kalendář ---------- */
.ni-kal{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.55rem}
.ni-mes{border:1px solid var(--ram);border-radius:10px;padding:.55rem .65rem;background:var(--karta);
  font-size:.8rem;min-height:76px}
.ni-mes .n{font-weight:600;font-size:.85rem}
.ni-mes .c{font-size:.76rem;color:var(--text2);font-variant-numeric:tabular-nums;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.ni-mes .s{display:inline-block;margin-top:.28rem;border-radius:5px;padding:.05rem .45rem;
  font-size:.7rem;font-weight:600}
.ni-mes.uhrazeno{background:var(--zelena-bg);border-color:var(--zelena-ram)}
.ni-mes.uhrazeno .s{color:var(--zelena);background:rgba(4,120,87,.1)}
.ni-mes.zaplaceno{background:var(--modra-bg);border-color:var(--modra-ram)}
.ni-mes.zaplaceno .s{color:var(--modra);background:rgba(37,99,235,.1)}
.ni-mes.doplatit{background:var(--zluta-bg);border-color:var(--zluta-ram);cursor:pointer}
.ni-mes.doplatit .s{color:var(--zluta);background:rgba(146,96,10,.12)}
.ni-mes.nedoplatek{background:#fff;border:1.5px solid #ef9a9a;cursor:pointer}
.ni-mes.nedoplatek .s{color:var(--cervena);background:var(--cervena-bg)}
.ni-mes.budouci{background:transparent;border-style:dashed;color:var(--text2)}
.ni-mes.budouci .s{background:#eceef2;color:var(--text2)}
.ni-mes.bez-najmu{background:#f0f1f4;border-color:var(--ram)}
.ni-mes.bez-najmu .s{background:#dde0e6;color:#4b5563}
.ni-mes.castecne{background:#99f6e4;border-color:#2dd4bf}
.ni-mes.castecne .s{color:#0f766e;background:rgba(13,148,136,.16)}
.ni-mes.doplatit:hover,.ni-mes.nedoplatek:hover{box-shadow:var(--stin)}
.ni-legenda{display:flex;flex-wrap:wrap;gap:.85rem;font-size:.76rem;margin:.6rem 0;color:var(--text2)}
.ni-legenda i{display:inline-block;width:.8rem;height:.8rem;border-radius:3px;margin-right:.3rem;
  vertical-align:-2px;border:1px solid var(--ram)}

/* ---------- Tabulky ---------- */
.ni-tab-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:10px;border:1px solid var(--ram)}
table.ni-tab{border-collapse:collapse;width:100%;font-size:.85rem;background:var(--karta)}
.ni-tab th,.ni-tab td{border-bottom:1px solid var(--ram);padding:.58rem .68rem;text-align:left;
  vertical-align:top;white-space:nowrap}
.ni-tab tr:last-child td{border-bottom:0}
.ni-tab td.wrap{white-space:normal;min-width:190px}
.ni-tab th{background:#fafbfc;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;
  color:var(--text2);font-weight:600;position:sticky;top:0}
.ni-tab td.num,.ni-tab th.num{text-align:right;font-variant-numeric:tabular-nums}
.ni-tab tbody tr:hover td{background:#fafbfd}
.ni-tab tr.mezisoucet td{background:var(--ak-svetla);font-weight:600;color:var(--ak-tm)}
.ni-tab tr.celkem td{background:#eef0f4;font-weight:700}

/* ---------- Štítky ---------- */
.ni-st{display:inline-block;border-radius:5px;padding:.04rem .45rem;font-size:.7rem;font-weight:600;margin-right:.28rem}
.st-ceka{background:var(--zluta-bg);color:var(--zluta);border:1px solid var(--zluta-ram)}
.st-schvaleno{background:var(--zelena-bg);color:var(--zelena);border:1px solid var(--zelena-ram)}
.st-zamitnuto{background:var(--cervena-bg);color:var(--cervena);border:1px solid #f0c4c0}
.st-info{background:var(--ak-svetla);color:var(--ak-tm);border:1px solid var(--modra-ram)}
.st-seda{background:#f0f1f4;color:var(--text2);border:1px solid var(--ram)}

/* ---------- Formuláře ---------- */
.ni-form label{display:block;font-size:.8rem;font-weight:600;margin:.75rem 0 .25rem;color:#374151}
.ni-form input[type=text],.ni-form input[type=number],.ni-form input[type=date],.ni-form input[type=email],
.ni-form select,.ni-form textarea{width:100%;padding:.55rem .68rem;border:1px solid #d6dae2;border-radius:9px;
  font-size:.95rem;min-height:44px;background:#fff;font-family:inherit;color:var(--text);
  transition:border-color .15s,box-shadow .15s}
.ni-form input:focus,.ni-form select:focus,.ni-form textarea:focus{outline:none;border-color:var(--ak);
  box-shadow:0 0 0 3px rgba(37,99,235,.12)}
.ni-form input:disabled{background:#f0f1f4;color:var(--text2)}
.ni-form textarea{min-height:90px}
.ni-form .radek{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.ni-form .hint{font-size:.76rem;color:var(--text2);margin-top:.2rem}
.ni-form input[type=file]{padding:.5rem;background:#fafbfc;border:1px dashed #c9cedb;border-radius:9px;width:100%}

/* ---------- Tlačítka ---------- */
.ni-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;background:var(--ak);
  color:#fff;border:0;border-radius:9px;padding:.58rem 1.1rem;font-size:.9rem;font-weight:600;
  cursor:pointer;min-height:44px;font-family:inherit;transition:background .12s,transform .12s}
.ni-btn:hover{background:var(--ak-tm)}
.ni-btn:active{transform:translateY(1px)}
.ni-btn:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}
.ni-btn.sek{background:#fff;color:var(--text);border:1px solid #d6dae2}
.ni-btn.sek:hover{background:#f6f7f9;border-color:#b9bfcc}
.ni-btn.zel{background:#0f766e}.ni-btn.zel:hover{background:#047857}
.ni-btn.zlu{background:#b54708}.ni-btn.zlu:hover{background:#93370d}
.ni-btn.cer{background:#b42318}.ni-btn.cer:hover{background:#b91c1c}
.ni-btn.maly{padding:.3rem .65rem;font-size:.8rem;min-height:33px;border-radius:7px}
.ni-akce{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}

/* ---------- Modal ---------- */
.ni-overlay{position:fixed;inset:0;background:rgba(17,24,39,.45);display:flex;align-items:flex-start;
  justify-content:center;z-index:1000;padding:1rem;overflow-y:auto;animation:niFade .16s ease}
.ni-modal{background:#fff;border-radius:14px;max-width:640px;width:100%;margin:3vh auto;
  padding:1.25rem 1.35rem;max-height:92vh;overflow-y:auto;
  box-shadow:0 20px 50px -12px rgba(17,24,39,.3);animation:niUp .2s ease}
@keyframes niFade{from{opacity:0}to{opacity:1}}
@keyframes niUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.ni-modal h2{margin-top:0}
.ni-modal .zavrit-x{float:right;background:#f0f1f4;border:0;font-size:1.15rem;cursor:pointer;color:var(--text2);
  min-width:38px;min-height:38px;border-radius:999px;line-height:1}
.ni-modal .zavrit-x:hover{background:#e3e5ea;color:var(--text)}

/* ---------- Detail ---------- */
.ni-detail dt{font-size:.7rem;color:var(--text2);text-transform:uppercase;margin-top:.65rem;
  letter-spacing:.05em;font-weight:600}
.ni-detail dd{margin:.08rem 0 0;font-weight:600}

/* ---------- Chat ---------- */
.ni-chat{max-height:290px;overflow-y:auto;border:1px solid var(--ram);border-radius:12px;
  padding:.7rem;background:#fafbfc;margin:.5rem 0}
.ni-zprava{margin-bottom:.6rem;max-width:85%}
.ni-zprava .kdo{font-size:.7rem;color:var(--text2);margin:0 .3rem .12rem}
.ni-zprava .txt{background:#fff;border:1px solid var(--ram);border-radius:12px 12px 12px 4px;
  padding:.48rem .72rem;font-size:.9rem;white-space:pre-wrap}
.ni-zprava.moje{margin-left:auto;text-align:right}
.ni-zprava.moje .txt{background:var(--ak-svetla);border-color:var(--modra-ram);
  border-radius:12px 12px 4px 12px;text-align:left}

/* ---------- SVG graf ---------- */
/* Barvu si grafy určují atributem fill; CSS je jen záloha pro prvky bez něj. */
.ni-karta svg rect:not([fill]){fill:var(--ak)}
.ni-karta svg text:not([fill]){fill:var(--text2)}

/* ---------- Protokol / upozornění / tisk ---------- */
.ni-podpisy{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.5rem}
.ni-podpis{border-top:1px solid var(--text);padding-top:.32rem;font-size:.85rem;text-align:center;font-weight:600}
.ni-upozorneni{background:var(--zluta-bg);border:1px solid var(--zluta-ram);border-radius:10px;
  padding:.72rem .95rem;font-size:.8rem;margin:1rem 0;color:#6b4d0c}
@media print{.ni-sidebar,.ni-topbar,.ni-akce,.ni-btn,.ni-netisk,.ni-chips{display:none!important}
  .ni-main{padding:0;max-width:none}
  body{background:#fff}
  .ni-karta{border:0;padding:0;box-shadow:none}
  .ni-tab-wrap{border:0}}

/* ---------- Mobil ---------- */
@media(max-width:860px){
  #ni-app{flex-direction:column}
  .ni-sidebar{width:100%;flex:none;position:sticky;top:0;z-index:100;padding:0 .6rem .4rem}
  .ni-logo{display:flex;justify-content:space-between;align-items:center;padding:.7rem .5rem;margin-bottom:.3rem}
  .ni-hamburger{display:inline-flex;align-items:center;justify-content:center;background:rgba(148,163,184,.14);
    border:1px solid rgba(148,163,184,.3);color:#fff;border-radius:9px;font-size:1.15rem;
    padding:.2rem .6rem;cursor:pointer;min-height:40px;min-width:44px}
  .ni-nav,.ni-role{display:none}
  .ni-sidebar.otevreno .ni-nav{display:flex}
  .ni-sidebar.otevreno .ni-role{display:block}
  .ni-main{padding:1rem .85rem 2.5rem}
  .ni-kal{grid-template-columns:repeat(2,1fr)}
  .ni-form .radek{grid-template-columns:1fr}
  .ni-dlazdice,.ni-dlazdice.ni-top{grid-template-columns:repeat(2,1fr);gap:.55rem}
  .ni-dl .v{font-size:1.05rem}
  h1{font-size:1.15rem}
}
@media(min-width:861px){.ni-hamburger{display:none}}

/* =====================================================================
 * TMAVÝ FUTURISTICKÝ DASHBOARD (v1.4.0)
 * Platí JEN pro obrazovku Dashboard (:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard)).
 * Ostatní obrazovky zůstávají světlé a klidné.
 * ===================================================================== */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard){
  background:#070b14;
  background-image:
    radial-gradient(ellipse 60% 40% at 85% -5%,rgba(139,92,246,.18),transparent 60%),
    radial-gradient(ellipse 55% 45% at -10% 15%,rgba(34,211,238,.12),transparent 60%),
    radial-gradient(ellipse 50% 50% at 50% 110%,rgba(59,130,246,.10),transparent 65%)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-main{color:#e6eaf3}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) h1{background:linear-gradient(90deg,#fff,#a5b4fc);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) h2{color:#dbe3f4}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-pozn{color:#8a94ab}

/* Karty a dlaždice – tmavé sklo se září */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-karta{background:rgba(15,23,42,.55);backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.13);
  box-shadow:0 8px 32px -12px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl{background:rgba(15,23,42,.55);backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.13);position:relative;
  overflow:hidden;box-shadow:0 8px 32px -12px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);
  transition:transform .18s,border-color .18s,box-shadow .18s}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl:hover{transform:translateY(-3px);border-color:rgba(34,211,238,.4);
  box-shadow:0 8px 32px -12px rgba(0,0,0,.55),0 0 24px -6px rgba(34,211,238,.35)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl::before{content:"";position:absolute;left:0;top:12%;bottom:12%;width:3px;
  border-radius:99px;background:linear-gradient(180deg,#22d3ee,#8b5cf6);box-shadow:0 0 10px rgba(34,211,238,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.zel::before{background:linear-gradient(180deg,#34d399,#0f766e);box-shadow:0 0 10px rgba(52,211,153,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.cer::before{background:linear-gradient(180deg,#fb7185,#b42318);box-shadow:0 0 10px rgba(248,113,113,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.mod::before{background:linear-gradient(180deg,#60a5fa,#175cd3);box-shadow:0 0 10px rgba(96,165,250,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl .l{color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl .v{background:linear-gradient(90deg,#fff,#c7d2fe);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.zel .v{background:linear-gradient(90deg,#6ee7b7,#34d399);-webkit-background-clip:text;background-clip:text}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.cer .v{background:linear-gradient(90deg,#fda4af,#f87171);-webkit-background-clip:text;background-clip:text}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.mod .v{background:linear-gradient(90deg,#93c5fd,#60a5fa);-webkit-background-clip:text;background-clip:text}

/* Chips */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-chip{background:rgba(15,23,42,.55);border-color:rgba(148,163,184,.18);color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-chip b{color:#e6eaf3}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-chip.ceka{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.4);color:#fde68a}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-chip.ceka b{color:#fde68a}

/* Progress */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-progress{background:rgba(148,163,184,.12);border:1px solid rgba(148,163,184,.13);height:22px}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-progress>div{background:linear-gradient(90deg,#22d3ee,#8b5cf6);color:#04121a;
  font-weight:800;line-height:22px;box-shadow:0 0 18px rgba(34,211,238,.5)}

/* Kalendář */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes{background:rgba(15,23,42,.45);border-color:rgba(148,163,184,.13)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes .n{color:#dbe3f4}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes .c{color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.uhrazeno{background:rgba(52,211,153,.12);border-color:rgba(52,211,153,.45);
  box-shadow:inset 0 0 24px -14px rgba(52,211,153,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.uhrazeno .s{background:rgba(52,211,153,.22);color:#6ee7b7}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.zaplaceno{background:rgba(96,165,250,.12);border-color:rgba(96,165,250,.45);
  box-shadow:inset 0 0 24px -14px rgba(96,165,250,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.zaplaceno .s{background:rgba(96,165,250,.22);color:#93c5fd}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.doplatit{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.45);
  box-shadow:inset 0 0 24px -14px rgba(251,191,36,.55)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.doplatit .s{background:rgba(251,191,36,.2);color:#fde68a}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.nedoplatek{background:rgba(248,113,113,.14);border:1px solid rgba(248,113,113,.55);
  box-shadow:0 0 16px -6px rgba(248,113,113,.5)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.nedoplatek .s{background:rgba(248,113,113,.2);color:#fda4af}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.budouci{background:transparent;border-style:dashed;color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.budouci .s{background:rgba(148,163,184,.12);color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.bez-najmu{background:rgba(148,163,184,.07)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.bez-najmu .s{background:rgba(148,163,184,.18);color:#aab4c8}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.castecne{background:rgba(45,212,191,.2);border-color:rgba(45,212,191,.55)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.castecne .s{background:rgba(45,212,191,.22);color:#5eead4}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-legenda{color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-legenda i{border-color:rgba(148,163,184,.2)}

/* Tabulka rozpadu na dashboardu */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab-wrap{border-color:rgba(148,163,184,.13)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) table.ni-tab{background:rgba(10,16,28,.4)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab th{background:rgba(15,23,42,.75);color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab th,:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab td{border-color:rgba(148,163,184,.13);color:#cfd8ea}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab tbody tr:hover td{background:rgba(34,211,238,.05)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab tr.mezisoucet td{background:rgba(139,92,246,.13);color:#c4b5fd}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-tab tr.celkem td{background:rgba(34,211,238,.12);color:#a5f3fc}

/* Upozornění */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-upozorneni{background:rgba(251,191,36,.08);border-color:rgba(251,191,36,.3);color:#e7d9ad}

/* Tisk dashboardu: vždy světle */
/* T-052: Rent page aligned with the shared compact card language. */
#ni-app[data-view=platby] .t020-rent-health:not(.warn){display:none}
#ni-app[data-view=platby] .t020-rent-status{padding-bottom:8px}
#ni-app[data-view=platby] .t020-rent-status-body{min-height:64px;padding:5px 18px 10px}
#ni-app[data-view=platby] .t020-rent-status-copy small{margin-top:3px}
#ni-app[data-view=platby] .t020-rent-month .t021-eyehead{padding-top:12px}
#ni-app[data-view=platby] .t020-month-head{min-height:52px;margin:0 16px;padding:5px 0 8px}
#ni-app[data-view=platby] .t020-month-title p{margin-top:2px}
#ni-app[data-view=platby] .t020-month-state{min-width:0;padding:6px 10px;border:1px solid #a6f4c5;border-radius:999px;background:#ecfdf3;color:#067647}
#ni-app[data-view=platby] .t020-month-state.bad{border-color:#fecdca;background:#fef3f2;color:#b42318}
#ni-app[data-view=platby] .t020-month-state.part{border-color:#fedf89;background:#fffaeb;color:#b54708}
#ni-app[data-view=platby] .t020-month-state>span,#ni-app[data-view=platby] .t020-month-state small{display:none}
#ni-app[data-view=platby] .t020-month-state b{font-size:.75rem;line-height:1.15;white-space:nowrap}
#ni-app[data-view=platby] .t020-month-metrics{padding:10px 16px 14px;gap:9px}
#ni-app[data-view=platby] .t020-month-metric{--rent-accent:#667085;position:relative;min-height:74px;padding:10px 11px 9px 48px;overflow:hidden;border:1px solid var(--ram);border-radius:11px;background:var(--karta);color:var(--text);box-shadow:0 4px 12px -9px rgba(16,24,40,.35)}
#ni-app[data-view=platby] .t020-month-metric:before{content:"";position:absolute;left:7px;top:9px;bottom:9px;width:4px;border-radius:999px;background:var(--rent-accent);box-shadow:0 0 12px color-mix(in srgb,var(--rent-accent) 34%,transparent)}
#ni-app[data-view=platby] .t020-month-metric.prescribed{--rent-accent:#667085;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.offsets{--rent-accent:#0f9f8f;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.cash{--rent-accent:#2e70e8;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.remaining{--rent-accent:#0f9f8f;background:var(--karta)}
#ni-app[data-view=platby] .t020-rent-month.warn .t020-month-metric.remaining,#ni-app[data-view=platby] .t020-month-metric.remaining.due{--rent-accent:#ef4444;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric .t020-metric-icon{position:absolute;left:17px;top:50%;width:22px;height:22px;transform:translateY(-50%);background:transparent;color:var(--rent-accent)!important}
#ni-app[data-view=platby] .t020-month-metric .t020-metric-icon svg{width:19px;height:19px}
#ni-app[data-view=platby] .t020-month-metric small{color:var(--text2)}
#ni-app[data-view=platby] .t020-month-metric strong{margin-top:2px;color:var(--text);font-size:1.08rem;line-height:1.15}
#ni-app[data-view=platby] .t020-month-metric p{margin-top:3px;color:var(--text2);font-size:.66rem;line-height:1.25}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric.prescribed,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.offsets,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.cash,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.remaining,#ni-app.tema-tmave[data-view=platby] .t020-rent-month.warn .t020-month-metric.remaining{background:var(--karta);border-color:var(--ram)}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric small,#ni-app.tema-tmave[data-view=platby] .t020-month-metric p{color:var(--text2)}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric strong{color:var(--text)}
#ni-app.tema-tmave[data-view=platby] .t020-month-state{border-color:#176b61;background:#103e39;color:#5eead4}
#ni-app.tema-tmave[data-view=platby] .t020-month-state.bad{border-color:#7a271a;background:#3b1715;color:#fda29b}
#ni-app.tema-tmave[data-view=platby] .t020-month-state.part{border-color:#7a4a12;background:#3a2914;color:#fdb022}
@media(max-width:900px){#ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#ni-app[data-view=platby] .t020-month-head{align-items:flex-start;flex-wrap:wrap}#ni-app[data-view=platby] .t020-month-state{margin-left:0}#ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:1fr}}

@media print{
  :is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard){background:#fff!important}
  :is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-main{color:#000}
  :is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) h1{-webkit-text-fill-color:#000;background:none}
  :is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl .v{-webkit-text-fill-color:#000;background:none}
  :is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-karta,:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl{background:#fff;backdrop-filter:none}
}

/* ---------- v1.4.1: doplňky pro dlaždice ---------- */
/* Podtext v dlaždici vždy na jeden řádek (žádné lámání) */
.ni-dl .ni-pozn{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.76rem;margin-top:.15rem}
/* Klikací dlaždice (Čeká na rozhodnutí) */
.ni-dl.klik{cursor:pointer}
.ni-dl.klik:hover{border-color:var(--zluta-ram);box-shadow:var(--stin),0 0 0 3px rgba(146,96,10,.08)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.zlu::before{background:linear-gradient(180deg,#fbbf24,#b54708);box-shadow:0 0 10px rgba(251,191,36,.6)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.zlu .v{background:linear-gradient(90deg,#fde68a,#fbbf24);-webkit-background-clip:text;background-clip:text}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-dl.klik:hover{border-color:rgba(251,191,36,.5);box-shadow:0 8px 32px -12px rgba(0,0,0,.55),0 0 24px -6px rgba(251,191,36,.4)}

/* ---------- v1.6.2: tisk smlouvy z aplikace ---------- */
#ni-print{display:none}
@media print{body.ni-tiskne #ni-app{display:none!important}
  body.ni-tiskne #ni-print{display:block;color:#000;font-size:11pt;line-height:1.55}
  #ni-print h1{color:#000;-webkit-text-fill-color:#000;background:none;font-size:16pt;margin:0 0 .3em}
  #ni-print .tp{color:#444;font-size:9pt;margin:0 0 1.2em}
  #ni-print .tt{white-space:pre-wrap}
  #ni-print .ts{margin-top:1.5em;font-size:10pt}
  #ni-print .tpod{width:100%;margin-top:4em;border-collapse:collapse}
  #ni-print .tpod td{width:50%;border-top:1px solid #000;padding-top:.3em;text-align:center;font-size:10pt}
  #ni-print .tpod td+td{border-left:0}
  #ni-print .tpod{border-spacing:3em 0;border-collapse:separate}}

/* ---------- v1.8.3: doladění pro mobil ---------- */
@media(max-width:860px){
  /* 16px ve formulářích = iPhone nepřibližuje obrazovku při psaní */
  .ni-form input[type=text],.ni-form input[type=number],.ni-form input[type=date],
  .ni-form input[type=email],.ni-form input[type=password],.ni-form select,.ni-form textarea{font-size:.95rem}
  /* Modaly přes celý displej, pohodlné ovládání palcem */
  .ni-overlay{padding:.4rem}
  .ni-modal{margin:.5rem auto;padding:1rem .9rem;max-height:96vh;border-radius:12px}
  .ni-akce{gap:.5rem}
  .ni-akce .ni-btn{flex:1 1 45%;min-height:48px}
  .ni-btn.maly{min-height:40px}
  /* Tabulky: kompaktnější, ale čitelné; posun prstem */
  .ni-tab th,.ni-tab td{padding:.5rem .5rem;font-size:.85rem}
  /* Kalendář: větší dotykové cíle */
  .ni-mes{min-height:82px;padding:.6rem}
  /* Chat přes větší část displeje */
  .ni-chat{max-height:45vh}
  /* PDF prohlížečka na výšku displeje */
  #ni-pdf-ramec{height:62vh!important}
}

/* ---------- Galerie ---------- */
.ni-galerie{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.ni-foto{margin:0;border:1px solid var(--ram,#e2e8f0);border-radius:10px;overflow:hidden;background:#fff}
.ni-foto img{width:100%;height:145px;object-fit:cover;display:block;cursor:zoom-in}
.ni-foto .pop{padding:.45rem .6rem;font-size:.8rem;line-height:1.35}
@media (max-width:560px){.ni-galerie{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}.ni-foto img{height:110px}}
.ni-kniha-edit{position:absolute;right:6px;top:6px;border:0;border-radius:8px;background:rgba(255,255,255,.92);box-shadow:0 1px 4px rgba(0,0,0,.25);padding:.25rem .45rem;cursor:pointer;font-size:.9rem;z-index:5}
.ni-kniha-edit:hover{background:#fff}
.ni-foto{position:relative}
.ni-spoj{position:absolute;left:6px;top:6px;background:#4f46e5;color:#fff;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;font-weight:700;box-shadow:0 1px 4px rgba(0,0,0,.3)}
/* PŘED / PO */
.predpo-stitek{position:absolute;left:-1px;top:8px;background:#4f46e5;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.08em;padding:.2rem .55rem;border-radius:0 8px 8px 0;z-index:4;box-shadow:0 1px 4px rgba(0,0,0,.3)}
/* správa */
.ni-foto{cursor:grab}
.ni-tazeni{opacity:.4}
.ni-foto .g-vyb{position:absolute;right:6px;top:6px;width:20px;height:20px;z-index:6;accent-color:#4f46e5}
.ni-karta-strana .strana-ikona{height:110px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;background:linear-gradient(135deg,#eef2ff,#e0e7ff)}
.ni-spoj.pp{left:34px;background:#0891b2}
/* tisk knížky */
.ni-ktisk{display:none}
body.ni-tiskne .ni-ktisk{display:block}
@media print{.tk-strana{page-break-after:always;min-height:92vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;position:relative;padding:8mm}
  .tk-obalka h1{font-size:26pt;margin:.3rem 0}
  .tk-kap h2{font-size:22pt}
  .tk-foto{display:flex;flex-direction:column;align-items:center;max-width:100%;margin:4mm 0}
  .tk-foto img{max-width:100%;max-height:62vh;object-fit:contain}
  .tk-foto.maly img{max-height:34vh}
  .tk-pop{font-size:10pt;margin-top:2mm}
  .tk-pop div{font-size:9pt;color:#444}
  .tk-datum{color:#777!important;font-size:8pt!important}
  .tk-predpo{font-weight:700;letter-spacing:.1em;font-size:10pt;margin-bottom:1mm}
  .tk-odstavec{white-space:pre-wrap;font-size:11pt;max-width:150mm;text-align:left}
  .tk-cislo{position:absolute;bottom:4mm;right:0;left:0;text-align:center;font-size:8pt;color:#888}}

/* ---------- Galerie v1.18: moderní časová osa + lightbox ---------- */
.ni-gal-liska{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:1rem}
.ni-gal-liska input[type=search]{flex:1;min-width:200px;padding:.55rem .8rem;border:1px solid var(--ram,#e2e8f0);border-radius:10px;font-size:.9rem}
.ni-chipy{display:flex;gap:6px;flex-wrap:wrap}
.ni-chipy .chip{border:1px solid var(--ram,#e2e8f0);background:#fff;border-radius:999px;padding:.3rem .8rem;font-size:.8rem;cursor:pointer}
.ni-chipy .chip.aktivni{background:#4f46e5;border-color:#4f46e5;color:#fff}
.ni-mesic{margin-bottom:1.6rem}
.ni-mesic h2{font-size:.95rem;margin:.2rem 0 .7rem;position:sticky;top:0;background:inherit;padding:.3rem 0;z-index:2}
.ni-mozaika{column-count:3;column-gap:12px}
@media (max-width:900px){.ni-mozaika{column-count:2}}
@media (max-width:520px){.ni-mozaika{column-count:1}}
.ni-mkarta{position:relative;break-inside:avoid;margin:0 0 12px;border-radius:14px;overflow:hidden;background:#111;cursor:zoom-in;box-shadow:0 2px 10px rgba(0,0,0,.12)}
.ni-mkarta img{width:100%;display:block;transition:transform .35s ease,opacity .3s}
.ni-mkarta:hover img{transform:scale(1.04)}
.ni-mkarta .mpopis{position:absolute;left:0;right:0;bottom:0;padding:22px 10px 8px;background:linear-gradient(transparent,rgba(0,0,0,.72));color:#fff;font-size:.8rem;line-height:1.3;pointer-events:none}
.ni-mkarta .mpopis .mtext{display:block;font-size:.7rem;opacity:.85;max-height:2.6em;overflow:hidden}
.ni-mkarta .mpopis .mdatum{display:block;font-size:.7rem;opacity:.7}
.ni-mkarta .ni-kniha-edit{opacity:0;transition:opacity .2s}
.ni-mkarta:hover .ni-kniha-edit{opacity:1}
.ni-mkarta.par .pulky{display:flex;gap:2px}
.ni-mkarta.par .pul{position:relative;flex:1;min-width:0;cursor:zoom-in}
.ni-mkarta.par .pul img{height:100%;object-fit:cover}
.ni-mkarta.par .predpo-stitek{left:0;top:8px}
.ni-mkarta.par .predpo-stitek.po{background:#0f766e}
@media (hover:none){.ni-mkarta .ni-kniha-edit{opacity:1}}
/* lightbox */
#ni-lightbox{position:fixed;inset:0;z-index:10050;background:rgba(8,8,12,.96);display:flex;flex-direction:column;align-items:center;justify-content:center}
.lb-horni{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;color:#d4d4d8;z-index:3}
.lb-pocet{font-size:.85rem}
.lb-nastroje button{background:rgba(255,255,255,.08);border:0;color:#fff;font-size:.95rem;border-radius:8px;padding:.4rem .6rem;margin-left:.35rem;cursor:pointer}
.lb-nastroje button:hover{background:rgba(255,255,255,.2)}
.lb-plocha{max-width:92vw;max-height:78vh;display:flex;align-items:center;justify-content:center;position:relative}
.lb-plocha img{max-width:92vw;max-height:78vh;object-fit:contain;border-radius:6px;box-shadow:0 8px 40px rgba(0,0,0,.6)}
.lb-plocha.zoom{overflow:auto;max-height:86vh}
.lb-plocha.zoom img{max-width:none;max-height:none;cursor:zoom-out}
.lb-predpo{position:absolute;left:10px;top:10px;background:#4f46e5;color:#fff;font-weight:700;font-size:.76rem;letter-spacing:.1em;padding:.25rem .6rem;border-radius:8px;z-index:2}
.lb-sipka{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.09);border:0;color:#fff;font-size:2rem;line-height:1;border-radius:12px;padding:.7rem .8rem;cursor:pointer;z-index:3}
.lb-sipka:hover{background:rgba(255,255,255,.22)}
.lb-sipka.vlevo{left:10px}
.lb-sipka.vpravo{right:10px}
.lb-popis{position:absolute;bottom:0;left:0;right:0;text-align:center;color:#e4e4e7;padding:.7rem 4rem;font-size:.9rem;background:linear-gradient(transparent,rgba(0,0,0,.7))}
.lb-popis .lb-text{font-size:.8rem;opacity:.85;font-style:italic}
.lb-popis .lb-datum{font-size:.7rem;opacity:.65}
@media (max-width:640px){.lb-sipka{font-size:1.4rem;padding:.5rem .55rem}.lb-popis{padding:.6rem 3rem}}
/* tisk fotokroniky po měsících */
@media print{
  .tg-mesic{page-break-before:always;padding-top:6mm}
  .tg-mesic:first-of-type{page-break-before:auto}
  .tg-mesic h2{font-size:16pt;border-bottom:1pt solid #999;padding-bottom:2mm}
  .tg-foto{display:inline-block;vertical-align:top;width:47%;margin:1.5%;page-break-inside:avoid;text-align:center}
  .tg-foto img{max-width:100%;max-height:70mm;object-fit:contain}
}

/* ---------- Galerie v1.19: případová studie ---------- */
.odhal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.odhal.videt{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.odhal{opacity:1;transform:none;transition:none}}
.ni-sekce{margin:1.6rem 0}
.ni-sekce>h2{font-size:1.3rem;letter-spacing:-.01em;margin:.2rem 0 .9rem}
/* hero */
.ni-hero{position:relative;border-radius:18px;overflow:hidden;min-height:340px;background:#1c1917 center/cover no-repeat;display:flex;align-items:flex-end;box-shadow:0 8px 30px rgba(0,0,0,.18)}
.hero-prekryv{width:100%;padding:2.4rem 1.6rem 1.6rem;background:linear-gradient(transparent,rgba(10,10,14,.82));color:#fff}
.hero-nad{font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;color:#c7d2fe;margin:0 0 .3rem}
.ni-hero h2{color:#fff;font-size:1.7rem;margin:0 0 .4rem;letter-spacing:-.02em}
.hero-pribeh{max-width:56ch;font-size:.9rem;color:#e5e7eb;margin:.2rem 0}
.hero-obdobi{color:#a5b4fc;font-weight:600;margin:.2rem 0 .6rem}
.hero-stat{display:flex;gap:1.4rem;flex-wrap:wrap;margin:.6rem 0 .9rem}
.hero-stat div{text-align:center}
.hero-stat b{display:block;font-size:1.35rem;line-height:1.1}
.hero-stat span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#d4d4d8}
.hero-cta{background:#fff;color:#1c1917;font-weight:700}
.hero-cta:hover{background:#e0e7ff}
/* PŘED/PO posuvník */
.ni-bas{position:relative;max-width:820px;margin:0 auto;aspect-ratio:16/10;border-radius:16px;overflow:hidden;cursor:ew-resize;touch-action:pan-y;box-shadow:0 6px 24px rgba(0,0,0,.18);outline-offset:3px}
.ni-bas:focus-visible{outline:3px solid #4f46e5}
.ni-bas img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;user-select:none;-webkit-user-drag:none}
.ni-bas .bas-pred{clip-path:inset(0 calc(100% - var(--p,50%)) 0 0)}
.bas-ucho{position:absolute;top:0;bottom:0;left:var(--p,50%);width:3px;background:#fff;box-shadow:0 0 8px rgba(0,0,0,.5);transform:translateX(-50%)}
.bas-ucho span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;color:#111;border-radius:999px;padding:.35rem .5rem;font-size:.76rem;font-weight:700;white-space:nowrap;box-shadow:0 2px 8px rgba(0,0,0,.4)}
.bas-stitek{position:absolute;top:12px;background:rgba(17,17,17,.72);color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.1em;padding:.25rem .6rem;border-radius:8px}
.bas-stitek.vlevo{left:12px}
.bas-stitek.vpravo{right:12px}
.bas-popisek{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);background:rgba(17,17,17,.72);color:#fff;font-size:.76rem;padding:.25rem .7rem;border-radius:8px;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis}
/* sticky filtry */
.ni-filtry-sticky{position:sticky;top:8px;z-index:30;display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border:1px solid var(--ram,#e2e8f0);border-radius:14px;padding:.6rem .8rem;box-shadow:0 4px 14px rgba(0,0,0,.07);margin:1.2rem 0}
.ni-filtry-sticky .f-pole{display:flex;flex-direction:column;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#64748b;gap:2px;min-width:0}
.ni-filtry-sticky select{border:1px solid var(--ram,#e2e8f0);border-radius:8px;padding:.35rem .4rem;font-size:.8rem;max-width:150px;background:#fff}
.ni-filtry-sticky .chip{align-self:flex-end}
.chip.reset{border-color:#b42318;color:#b42318}
.chip.mini{font-size:.7rem;padding:.15rem .55rem;cursor:default;background:#eef2ff;border-color:#e0e7ff;color:#3730a3}
/* časová osa */
.ni-rok-nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:1rem}
.ni-osa{position:relative;padding:6px 0}
.ni-osa:before{content:"";position:absolute;left:18px;top:0;bottom:0;width:3px;border-radius:2px;background:linear-gradient(#c7d2fe,#4f46e5)}
.osa-rok{position:relative;margin:1.2rem 0 .8rem;padding-left:48px}
.osa-rok span{background:#4f46e5;color:#fff;font-weight:800;font-size:.95rem;letter-spacing:.06em;border-radius:10px;padding:.3rem .9rem;box-shadow:0 3px 10px rgba(79,70,229,.35)}
.osa-polozka{position:relative;margin:0 0 1.3rem;padding-left:48px}
.osa-tecka{position:absolute;left:18px;top:14px;transform:translateX(-50%);width:16px;height:16px;border-radius:50%;background:#fff;border:4px solid #4f46e5;display:flex;align-items:center;justify-content:center;font-size:.7rem}
.osa-polozka.milnik .osa-tecka{width:26px;height:26px;border-color:#f59e0b;font-size:.8rem}
.osa-karta{background:#fff;border:1px solid var(--ram,#e2e8f0);border-radius:14px;padding:1rem 1.1rem;box-shadow:0 3px 12px rgba(0,0,0,.06)}
.osa-polozka.milnik .osa-karta{border-color:#fcd34d;box-shadow:0 3px 14px rgba(245,158,11,.18)}
.osa-meta{font-size:.8rem;color:#64748b;display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.osa-karta h3{margin:.25rem 0 .3rem;font-size:1.05rem}
.osa-chips{display:flex;gap:5px;flex-wrap:wrap;margin:.15rem 0 .35rem}
.osa-uvod{font-size:.9rem;color:#44403c;margin:.25rem 0 .6rem}
.osa-foto{width:100%;max-height:300px;object-fit:cover;border-radius:10px;margin:.2rem 0 .6rem;cursor:zoom-in;display:block}
.osa-karta .ni-kniha-edit.stat{position:static;box-shadow:none;background:transparent;font-size:.85rem}
.et-detail{margin-top:.8rem;border-top:1px dashed var(--ram,#e2e8f0);padding-top:.8rem}
.et-popis{white-space:pre-wrap;font-size:.9rem;color:#44403c}
.et-detail .ni-bas{margin:.6rem auto}
.et-mozaika{column-count:2;column-gap:10px;margin-top:.6rem}
@media (max-width:560px){.et-mozaika{column-count:1}}
@media (min-width:900px){.ni-osa:before{left:50%}
  .osa-rok{padding-left:0;text-align:center}
  .osa-polozka{width:calc(50% - 34px);padding-left:0}
  .osa-polozka .osa-tecka{left:auto}
  .osa-polozka.leva{margin-right:auto}
  .osa-polozka.leva .osa-tecka{right:-42px}
  .osa-polozka.prava{margin-left:auto}
  .osa-polozka.prava .osa-tecka{left:-42px;transform:translateX(-50%) translateX(8px)}}
/* závěr */
.ni-zaver{text-align:center;background:linear-gradient(180deg,#fafaf9,#f1f5f9);border:1px solid var(--ram,#e2e8f0);border-radius:18px;padding:1.6rem 1.2rem}
.zaver-text{max-width:62ch;margin:.3rem auto .9rem;font-size:.95rem;color:#44403c}
.zaver-foto{max-width:100%;max-height:420px;border-radius:14px;box-shadow:0 8px 28px rgba(0,0,0,.16);cursor:zoom-in}
.zaver-fakta{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin-top:1rem}

/* ---------- Zálohy na vodu / QR platba ---------- */
.ni-qr{display:flex;justify-content:center;margin:.4rem 0 .8rem}
.ni-qr svg{width:min(240px,70vw);height:auto;border:1px solid var(--ram,#e2e8f0);border-radius:12px;padding:8px;background:#fff}

/* ---------- Legenda grafu nákladů ---------- */
.ni-legenda{display:flex;gap:10px 16px;flex-wrap:wrap;justify-content:center;margin:.6rem 0 .4rem;font-size:.8rem;color:#475569}
.ni-legenda .leg{display:inline-flex;align-items:center;gap:5px}
.ni-legenda .leg i{width:11px;height:11px;border-radius:3px;display:inline-block}
.ni-legenda .leg b{color:#1c1917}

/* ---------- Žádosti: moderní karty ---------- */
.ni-zadosti-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:.9rem;margin-bottom:1.1rem;align-items:start}
.ni-zkarta{position:relative;background:var(--karta,#fff);border:1px solid var(--ram,#e2e8f0);border-radius:16px;
  padding:1rem 1.1rem 0.85rem;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.06);
  transition:transform .18s,box-shadow .18s;overflow:hidden}
.ni-zkarta:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}
.ni-zkarta.ceka:before{background:linear-gradient(#f59e0b,#fbbf24)}
.ni-zkarta.schvaleno:before{background:linear-gradient(#0f766e,#34d399)}
.ni-zkarta.zamitnuto:before{background:linear-gradient(#b42318,#f87171)}
.ni-zkarta:hover,.ni-zkarta:focus-visible{transform:translateY(-3px);box-shadow:0 10px 26px rgba(0,0,0,.13);outline:none}
.ni-zkarta:focus-visible{box-shadow:0 0 0 3px rgba(99,102,241,.5),0 10px 26px rgba(0,0,0,.13)}
.zk-hlava{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:flex-start;gap:.35rem .5rem;margin-bottom:.35rem;min-width:0}
.ni-zkarta h3{margin:.1rem 0 .3rem;font-size:1.02rem;letter-spacing:-.01em}
.zk-popis{font-size:.85rem;color:#57534e;margin:.15rem 0 .4rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zk-vyjadreni{font-size:.8rem;font-style:italic;color:#44403c;background:#fafaf9;border-radius:8px;padding:.4rem .6rem;margin:.2rem 0 .45rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.zk-pata{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:.3rem}
.zk-otevrit{margin-left:auto;font-size:.8rem;font-weight:600;color:#4f46e5}
@media (prefers-reduced-motion:reduce){.ni-zkarta,.ni-zkarta:hover{transform:none;transition:none}}

/* ---------- Smlouva: historie verzí + diff ---------- */
.ni-verze{display:flex;align-items:center;gap:.9rem;padding:.65rem .3rem;border-bottom:1px dashed var(--ram,#e2e8f0);flex-wrap:wrap}
.ni-verze:last-child{border-bottom:0}
.verze-cislo{flex:0 0 auto;background:linear-gradient(120deg,#4f46e5,#7c3aed);color:#fff;font-weight:800;border-radius:10px;padding:.4rem .65rem;font-size:.85rem;box-shadow:0 3px 10px rgba(99,102,241,.35)}
.ni-verze:not(.aktualni) .verze-cislo{background:#e2e8f0;color:#475569;box-shadow:none}
.verze-info{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:.85rem}
.verze-schv .ni-st{font-size:.7rem}
.verze-akce{margin-left:auto;display:flex;gap:.3rem;flex-wrap:wrap}
.ni-diff{font-family:ui-monospace,Consolas,monospace;font-size:.8rem;line-height:1.5;border:1px solid var(--ram,#e2e8f0);border-radius:10px;padding:.6rem;max-height:55vh;overflow:auto;white-space:pre-wrap;word-break:break-word}
.ni-diff .pridano{background:#dcfce7;color:#14532d;border-radius:4px;padding:0 .25rem}
.ni-diff .odebrano{background:#fee2e2;color:#991b1b;text-decoration:line-through;border-radius:4px;padding:0 .25rem}
.ni-diff .stejne{color:#78716c}
.ni-diff .vypusteno{text-align:center;color:#a8a29e;font-size:.76rem;padding:.25rem 0}
@media (max-width:560px){.verze-akce{margin-left:0;width:100%}}

/* ---------- Vizuální audit v1.25 ---------- */
/* progress umoření na dashboardu */
.ni-progress-blok{background:var(--karta,#fff);border:1px solid var(--ram,#e2e8f0);border-radius:var(--r,14px);padding:.9rem 1.1rem;margin-bottom:.8rem;box-shadow:var(--stin)}
.pr-radek{display:flex;justify-content:space-between;align-items:baseline;font-size:.85rem;font-weight:600}
.pr-radek b{font-size:1.3rem;color:#4f46e5}
.pr-radek.mensi{font-weight:400;font-size:.76rem;color:#78716c;margin-top:.3rem}
.ni-progress{height:12px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-top:.45rem}
.ni-progress-vypln{height:100%;border-radius:999px;background:linear-gradient(90deg,#4f46e5,#7c3aed,#22c55e);background-size:200% 100%;transition:width .6s ease}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-progress-blok{background:#1f2735;border-color:#324156}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .pr-radek{color:#dbe1ea}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-progress{background:#324156}
/* tabulky: zebra + hover pro rychlejší čtení */
.ni-tab tbody tr:nth-child(even){background:rgba(148,163,184,.07)}
.ni-tab tbody tr:hover{background:rgba(99,102,241,.08)}
.ni-tab th{white-space:nowrap}
/* tlačítka: hlavní akce s gradientem, jasná hierarchie */
.ni-btn{transition:transform .15s,box-shadow .15s,background .15s}
.ni-btn:not(.sek):not(.cer):not(.zel){background:linear-gradient(120deg,#4f46e5,#6d28d9);box-shadow:0 3px 10px rgba(79,70,229,.3)}
.ni-btn:not(.sek):hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(79,70,229,.35)}
.ni-btn.sek:hover{border-color:#4f46e5;color:#4f46e5}
.ni-btn:focus-visible{outline:3px solid rgba(99,102,241,.55);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.ni-btn,.ni-btn:hover{transform:none;transition:none}}
/* modaly: jemné rozostření pozadí */
.ni-overlay{backdrop-filter:blur(3px)}
.ni-overlay .ni-modal{border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.3)}
/* dlaždice: jemný hover, klikací zřetelně */
.ni-dl{transition:box-shadow .15s,transform .15s}
.ni-dl.klik{cursor:pointer}
.ni-dl.klik:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.12)}

/* ---------- Toast ---------- */
.ni-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(16px);opacity:0;
  background:#1c1917;color:#fff;padding:.6rem 1.1rem;border-radius:999px;font-size:.85rem;font-weight:600;
  box-shadow:0 8px 24px rgba(0,0,0,.35);z-index:10060;transition:opacity .3s,transform .3s;pointer-events:none}
.ni-toast.videt{opacity:1;transform:translateX(-50%) translateY(0)}
/* ---------- Přepínač vzhledu v menu ---------- */
.ni-tema{padding:.5rem .75rem 0}
.ni-tema button{width:100%;background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.2);color:#b6bfcd;
  border-radius:9px;padding:.5rem;font-size:.8rem;cursor:pointer;font-family:inherit}
.ni-tema button:hover{background:rgba(99,102,241,.15);color:#fff}
/* ---------- Plný tmavý režim (volba se pamatuje v zařízení) ---------- */
#ni-app.tema-tmave{--karta:#1e2532;--ram:#33405a;--stin:0 2px 12px rgba(0,0,0,.35)}
#ni-app.tema-tmave .ni-main{background:#12161f;color:#d6dbe6}
#ni-app.tema-tmave h1,#ni-app.tema-tmave h2,#ni-app.tema-tmave h3,#ni-app.tema-tmave dt{color:#eef1f6}
#ni-app.tema-tmave .ni-pozn{color:#8b94a7}
#ni-app.tema-tmave input,#ni-app.tema-tmave select,#ni-app.tema-tmave textarea{background:#141a26;color:#d6dbe6;border-color:#33405a}
#ni-app.tema-tmave input::placeholder,#ni-app.tema-tmave textarea::placeholder{color:#5c6579}
#ni-app.tema-tmave .ni-tab th{color:#8b94a7;border-color:#33405a}
#ni-app.tema-tmave .ni-tab td{border-color:#2a3448}
#ni-app.tema-tmave .ni-tab tbody tr:nth-child(even){background:rgba(148,163,184,.05)}
#ni-app.tema-tmave .ni-tab tbody tr:hover{background:rgba(99,102,241,.14)}
#ni-app.tema-tmave .ni-dl{background:#1e2532;border-color:#33405a}
#ni-app.tema-tmave .ni-dl .v{color:#eef1f6}
#ni-app.tema-tmave .chip{background:#141a26;border-color:#33405a;color:#b6bfcd}
#ni-app.tema-tmave .chip.aktivni{background:#4f46e5;border-color:#4f46e5;color:#fff}
#ni-app.tema-tmave .chip.mini{background:#26304a;border-color:#33405a;color:#a5b4fc}
#ni-app.tema-tmave .ni-filtry-sticky{background:rgba(20,26,38,.92);border-color:#33405a}
#ni-app.tema-tmave .ni-gal-liska input[type=search]{background:#141a26;color:#d6dbe6}
#ni-app.tema-tmave .zk-vyjadreni{background:#141a26;color:#c8cfdd}
#ni-app.tema-tmave .zk-popis{color:#9aa3b5}
#ni-app.tema-tmave .osa-uvod,#ni-app.tema-tmave .et-popis{color:#b3bccb}
#ni-app.tema-tmave .ni-diff{background:#141a26}
#ni-app.tema-tmave .ni-diff .stejne{color:#8b94a7}
#ni-app.tema-tmave .ni-diff .pridano{background:#14532d;color:#bbf7d0}
#ni-app.tema-tmave .ni-diff .odebrano{background:#7f1d1d;color:#fecaca}
#ni-app.tema-tmave .ni-progress{background:#33405a}
#ni-app.tema-tmave .ni-zaver{background:linear-gradient(180deg,#1a2130,#141a26);border-color:#33405a}
#ni-app.tema-tmave .ni-mesic h2{background:transparent}
#ni-app.tema-tmave .strana-ikona{background:linear-gradient(135deg,#26304a,#1e2532)}
#ni-app.tema-tmave .ni-motiv-sel{background:#141a26;color:#d6dbe6}
#ni-app.tema-tmave .ni-verze:not(.aktualni) .verze-cislo{background:#33405a;color:#b6bfcd}
#ni-app.tema-tmave svg text{fill:#9aa3b5}
#ni-app.tema-tmave .ni-qr svg{background:#fff}
#ni-app.tema-tmave .ni-nahled{background:#141a26;border-color:#33405a}
#ni-app.tema-tmave .obsah-radek{border-color:#33405a;color:#d6dbe6}

/* ---------- Nové zprávy: zvýraznění v seznamu + banner ---------- */
.ni-tab tbody tr.ma-nove{background:#fef3c7 !important;box-shadow:inset 4px 0 0 #f59e0b}
.ni-tab tbody tr.ma-nove:hover{background:#fde68a !important}
#ni-app.tema-tmave .ni-tab tbody tr.ma-nove{background:#4a3a12 !important;box-shadow:inset 4px 0 0 #f59e0b}
.ni-nove-banner{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;background:linear-gradient(120deg,#fffbeb,#fef3c7);
  border:1px solid #fcd34d;border-left:5px solid #f59e0b;border-radius:12px;padding:.6rem .9rem;margin-bottom:.8rem;font-size:.85rem}
#ni-app.tema-tmave .ni-nove-banner{background:linear-gradient(120deg,#3a2f10,#4a3a12);border-color:#7c5f10;color:#fde68a}
.ni-nove-banner.sviti{background:linear-gradient(120deg,#fff7ed,#fef2f2);border-color:#fda29b;border-left-color:#b42318;box-shadow:0 8px 22px rgba(180,35,24,.12)}
.ni-nove-banner.sviti .ni-unread-dot{width:10px;height:10px;border-radius:50%;background:#b42318;box-shadow:0 0 0 5px rgba(217,45,32,.12);flex:0 0 auto}
.ni-nove-banner.sviti .ni-btn{background:#b42318;border-color:#b42318;color:#fff}
#ni-app.tema-tmave .ni-nove-banner.sviti{background:linear-gradient(120deg,#451a1a,#3f1d1d);border-color:#b42318;color:#fecaca}
#ni-app.tema-tmave .ni-nove-banner.sviti .ni-pozn{color:#fca5a5}

/* =====================================================================
 * DESIGN SYSTEM 1.28 — quiet technology / profesionální finanční ledger
 * ===================================================================== */
:root{
  --ak:#0f766e;--ak-svetla:#e8f5f2;--ak-tm:#115e59;
  --pozadi:#f5f6f3;--karta:#fff;--text:#111827;--text2:#667085;--ram:#e4e7ec;
  --zelena:#0f766e;--zelena-bg:#ecfdf3;--zelena-ram:#abefc6;
  --modra:#175cd3;--modra-bg:#eff8ff;--modra-ram:#b2ddff;
  --zluta:#93370d;--zluta-bg:#fffaeb;--zluta-ram:#fedf89;
  --cervena:#b42318;--cervena-bg:#fef3f2;
  --stin:0 1px 2px rgba(16,24,40,.035),0 8px 24px rgba(16,24,40,.045);
  --r:14px;
}
body{font-family:var(--ni-font);background:var(--pozadi);color:var(--text)}
#ni-app{background:var(--pozadi);letter-spacing:-.005em}
h1{font-size:clamp(1.55rem,2.4vw,2rem);font-weight:700;letter-spacing:-.035em;margin:0}
h2{font-size:1.05rem;font-weight:600;letter-spacing:-.02em}
.ni-main{max-width:1440px;padding:2.1rem 2.4rem 4rem}
.ni-sidebar{display:flex;flex-direction:column;width:264px;flex-basis:264px;background:#101722;color:#aeb7c6;padding:0 .8rem 1.1rem;border-right:1px solid rgba(255,255,255,.04)}
.ni-logo{display:flex;align-items:center;gap:.7rem;padding:1.3rem .55rem 1.05rem;font-size:.95rem;border-bottom:0;margin-bottom:.75rem}
.ni-logo-mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#14b8a6;color:#062e2b;font-weight:800;font-size:.8rem;letter-spacing:.04em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.22)}
.ni-logo small{font-size:.76rem;color:#7f8a9b;margin-top:1px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ni-nav{gap:4px}
.ni-nav button{gap:.7rem;padding:.66rem .72rem;border-radius:10px;color:#aeb7c6;font-size:.85rem;min-height:46px;transform:none;box-shadow:none}
.ni-nav button:hover{background:rgba(255,255,255,.055);color:#f7fafc;transform:none}
.ni-nav button.akt{background:rgba(20,184,166,.13);color:#ecfdfb;font-weight:600;box-shadow:inset 3px 0 0 #2dd4bf;transform:none}
.ni-nav button.akt:after{display:none}
.ni-nav-icon{width:19px;height:19px;flex:none;color:#7f8a9b}
.ni-nav button.akt .ni-nav-icon{color:#5eead4}
.ni-nav-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ni-badge{background:#b42318;box-shadow:none;font-size:.7rem;padding:.08rem .4rem}
#ni-app .ni-nav button.ma-pozornost:not(.akt){background:rgba(180,35,24,.07)}
#ni-app .ni-nav button.ma-pozornost:not(.akt) .ni-nav-label{color:#f2f4f7;font-weight:750}
#ni-app .ni-nav button.ma-pozornost:not(.akt) .ni-nav-icon{color:#fda29b}
.ni-role{margin-top:auto;color:#8490a2}
.ni-tema button{border-color:rgba(255,255,255,.09);background:rgba(255,255,255,.035);color:#9da8b8}
.ni-page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin:0 0 1.5rem}
.ni-page-head p{margin:.45rem 0 0;color:var(--text2);max-width:680px}
.ni-page-head .ni-eyebrow,.ni-eyebrow{margin:0 0 .4rem;color:var(--ak);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ni-karta,.ni-dl{border-color:var(--ram);box-shadow:var(--stin);border-radius:var(--r)}
.ni-karta{padding:1.25rem 1.35rem;margin-bottom:1.1rem}
.ni-dl{padding:1rem 1.05rem}
.ni-dl .l{font-size:.7rem;letter-spacing:.065em;color:#667085}
.ni-dl .v{font-size:clamp(1.15rem,1.75vw,1.48rem);font-weight:700}
.ni-dlazdice.ni-top{grid-template-columns:repeat(4,minmax(185px,1fr));gap:.8rem;margin-bottom:1.2rem}
.ni-progress>div,.ni-progress-vypln{background:#0f766e}
.ni-btn,.ni-btn:not(.sek):not(.cer):not(.zel){background:#0f766e;box-shadow:0 1px 2px rgba(16,24,40,.08);border-radius:10px;transform:none!important}
.ni-btn:hover,.ni-btn:not(.sek):hover{background:#115e59;box-shadow:0 1px 2px rgba(16,24,40,.1);transform:none}
.ni-btn.sek{background:#fff;color:#344054;border-color:#d0d5dd;box-shadow:0 1px 2px rgba(16,24,40,.04)}
.ni-btn.sek:hover{background:#f9fafb;color:#1d2939;border-color:#98a2b3}
.ni-btn.zel{background:#0f766e}.ni-btn.zel:hover{background:#05603a}
.ni-btn.cer{background:#b42318}.ni-btn.cer:hover{background:#912018}
.ni-form label{color:#344054;font-size:.76rem}
.ni-form input[type=text],.ni-form input[type=number],.ni-form input[type=date],.ni-form input[type=email],.ni-form select,.ni-form textarea{border-color:#d0d5dd;border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(16,24,40,.03)}
.ni-form input:focus,.ni-form select:focus,.ni-form textarea:focus{border-color:#0f766e;box-shadow:0 0 0 3px rgba(20,184,166,.13)}
.ni-tab-wrap{border-radius:12px;border-color:var(--ram)}
.ni-tab th{background:#f9fafb;color:#667085}
.ni-modal{border-radius:18px!important;border:1px solid rgba(255,255,255,.5);box-shadow:0 24px 80px rgba(16,24,40,.24)!important}
.ni-modal:focus{outline:none}
.ni-modal .zavrit-x{background:#f2f4f7;color:#667085}
.ni-dokument-chyba{margin:.75rem 0;padding:1rem;border:1px solid #fedf89;border-radius:12px;background:#fffaeb;color:#7a2e0e}
.ni-hub-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:1rem;max-width:1000px}
.ni-hub-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:190px;padding:1.35rem;background:#fff;border:1px solid var(--ram);border-radius:16px;box-shadow:var(--stin);font-family:inherit;color:var(--text);cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}
.ni-hub-card:hover{border-color:#99d5cf;box-shadow:0 12px 32px rgba(16,24,40,.08);transform:translateY(-2px)}
.ni-hub-title{font-size:1.15rem;font-weight:700;letter-spacing:-.02em;margin:.4rem 0 .5rem}
.ni-hub-copy{color:var(--text2);line-height:1.55;max-width:38ch}
.ni-hub-meta{margin-top:auto;color:var(--ak);font-size:.76rem;font-weight:600;text-transform:uppercase;letter-spacing:.055em}
.ni-hub-arrow{position:absolute;right:1.2rem;top:1rem;color:var(--ak);font-size:1.3rem}
.ni-mobile-logout{display:none}

/* Přihlášení */
.ni-login-shell{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 20% 10%,#dff4ef 0,transparent 34%),#f5f6f3;font-family:var(--ni-font);color:#111827}
.ni-login-card{width:min(100%,440px);background:#fff;border:1px solid #e4e7ec;border-radius:22px;padding:2.1rem;box-shadow:0 24px 70px rgba(16,24,40,.10)}
.ni-login-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:#0f766e;color:#fff;font-size:.85rem;font-weight:800;letter-spacing:.05em;margin-bottom:1.5rem}
.ni-login-eyebrow{font-size:.7rem;color:#0f766e;font-weight:700;letter-spacing:.12em;margin:0 0 .45rem}
.ni-login-card h1{font-size:1.8rem;margin:0}
.ni-login-copy{color:#667085;line-height:1.55;margin:.65rem 0 1.4rem}
.ni-login-form label{display:block;color:#344054;font-size:.8rem;font-weight:600;margin-bottom:.35rem}
.ni-login-form input{width:100%;min-height:48px;padding:.7rem .8rem;border:1px solid #d0d5dd;border-radius:11px;font:inherit;box-sizing:border-box}
.ni-login-form input:focus{outline:none;border-color:#0f766e;box-shadow:0 0 0 3px rgba(20,184,166,.13)}
.ni-login-form button{width:100%;min-height:48px;margin-top:.85rem;border:0;border-radius:11px;background:#0f766e;color:#fff;font:600 .93rem/1 inherit;cursor:pointer}
.ni-login-form button:hover{background:#115e59}
.ni-login-foot{font-size:.76rem;color:#98a2b3;margin:1.3rem 0 0;text-align:center}.ni-login-foot a{color:#475467}
.ni-login-error{padding:.7rem .8rem;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;color:#b42318;font-size:.8rem}

#ni-app.tema-tmave{--karta:#18212d;--ram:#2a394b;--pozadi:#0d131c;--text:#f2f4f7;--text2:#98a2b3;--stin:0 8px 24px rgba(0,0,0,.2)}
#ni-app.tema-tmave .ni-main{background:#0d131c;color:#e6e9ef}
#ni-app.tema-tmave .ni-hub-card{background:#18212d;color:#f2f4f7;border-color:#2a394b}

/* ---------- Tmavý režim: doplnění chybějících světlých ploch ----------
   Dřív měla řada prvků natvrdo background:#fff, ale text dědil světlou
   barvu --text → světlé písmo na bílé. Zde se sjednocuje na tmavé sklo. */
#ni-app.tema-tmave .ni-karta{background:#18212d;color:#e6e9ef;border-color:#2a394b}
#ni-app.tema-tmave .ni-modal{background:#18212d;color:#e6e9ef;border-color:#2a394b}
#ni-app.tema-tmave .ni-modal h1,#ni-app.tema-tmave .ni-modal h2,#ni-app.tema-tmave .ni-modal h3,#ni-app.tema-tmave .ni-modal label,#ni-app.tema-tmave .ni-modal dt,#ni-app.tema-tmave .ni-modal p{color:#eef1f6}
#ni-app.tema-tmave .ni-modal .zavrit-x{background:#26304a;color:#c8cfdd}
#ni-app.tema-tmave .ni-modal .zavrit-x:hover{background:#33405a;color:#fff}
#ni-app.tema-tmave .ni-btn.sek{background:#26304a;color:#dbe1ec;border-color:#3a4660}
#ni-app.tema-tmave .ni-btn.sek:hover{background:#33405a;color:#fff;border-color:#4a5674}
#ni-app.tema-tmave .ni-zprava .txt{background:#1e2736;color:#dbe1ec;border-color:#33405a}
#ni-app.tema-tmave .ni-chipy .chip{background:#141a26;color:#b6bfcd;border-color:#33405a}
#ni-app.tema-tmave .ni-foto{background:#141a26;border-color:#33405a}
#ni-app.tema-tmave .osa-karta{background:#18212d;color:#dbe1ec;border-color:#2a394b}
#ni-app.tema-tmave .osa-tecka{background:#18212d}
#ni-app.tema-tmave .ni-tab tr.celkem td{background:#232d3f;color:#eef1f6}
#ni-app.tema-tmave .ni-tab th{background:#161d29;color:#8b94a7}
#ni-app.tema-tmave .ni-mes.nedoplatek{background:#3a1e1e;border-color:#7f3838;color:#fecaca}
#ni-app.tema-tmave .ni-mes.budouci .s{background:#232d3f;color:#8b94a7}
#ni-app.tema-tmave .ni-mes.castecne{background:#123b38;border-color:#2b7a70;color:#c9f5ee}
#ni-app.tema-tmave .ni-mes.castecne .s{background:rgba(45,212,191,.18);color:#7fe9db}
#ni-app.tema-tmave .ni-progress{background:#2a3448}
#ni-app.tema-tmave .ni-filtry-sticky select{background:#141a26;color:#d6dbe6;border-color:#33405a}
#ni-app.tema-tmave .verze-cislo,#ni-app.tema-tmave .ni-verze:not(.aktualni) .verze-cislo{background:#33405a;color:#c8cfdd}
#ni-app.tema-tmave .chip.mini{background:#26304a;border-color:#33405a;color:#a5b4fc}
#ni-app.tema-tmave .ni-kniha-edit:hover{background:#232d3f}
#ni-app.tema-tmave .ni-rozbal{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ni-rozbal>summary{color:#e6e9ef}
#ni-app.tema-tmave .ni-rozbal>summary:hover{background:#1e2736}
#ni-app.tema-tmave .ni-rozbal>summary::before{background:#0e3a35;color:#5eead4}
#ni-app.tema-tmave .ni-rozbal[open]>summary{border-color:#2a394b}
#ni-app.tema-tmave .ni-souhrn-flex .ni-dl{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ni-pill-bar .ni-btn.sek{background:#26304a;color:#dbe1ec;border-color:#3a4660}
/* Dialogy jsou připojené přímo do body, ne dovnitř #ni-app. Téma proto
 * zrcadlíme i na body, aby všechny formuláře a rozhodovací modaly byly čitelné. */
body.ni-tema-tmave .ni-overlay{background:rgba(2,6,23,.72)}
body.ni-tema-tmave .ni-modal{background:#18212d;color:#e6e9ef;border-color:#2a394b;box-shadow:0 24px 80px rgba(0,0,0,.55)!important;color-scheme:dark}
body.ni-tema-tmave .ni-modal h1,body.ni-tema-tmave .ni-modal h2,body.ni-tema-tmave .ni-modal h3,body.ni-tema-tmave .ni-modal label,body.ni-tema-tmave .ni-modal dt,body.ni-tema-tmave .ni-modal p{color:#eef1f6}
body.ni-tema-tmave .ni-modal .ni-pozn,body.ni-tema-tmave .ni-modal .hint{color:#aab2c1}
body.ni-tema-tmave .ni-modal input,body.ni-tema-tmave .ni-modal select,body.ni-tema-tmave .ni-modal textarea{background:#111827;color:#f2f4f7;border-color:#475467}
body.ni-tema-tmave .ni-modal input::placeholder,body.ni-tema-tmave .ni-modal textarea::placeholder{color:#7f8a9c}
body.ni-tema-tmave .ni-modal .ni-form,body.ni-tema-tmave .ni-modal .ux-detail-section,body.ni-tema-tmave .ni-modal .opr-rizeni,body.ni-tema-tmave .ni-modal .ux-review{background:#1d2939;color:#e6e9ef;border-color:#344054}
body.ni-tema-tmave .ni-modal .ni-detail dd,body.ni-tema-tmave .ni-modal .opr-material-list li{color:#e6e9ef;border-color:#344054}
body.ni-tema-tmave .ni-modal .ni-zprava .txt{background:#1e2736;color:#dbe1ec;border-color:#33405a}
body.ni-tema-tmave .ni-modal .ni-btn.sek{background:#26304a;color:#dbe1ec;border-color:#3a4660}
body.ni-tema-tmave .ni-modal .zavrit-x{background:#26304a;color:#c8cfdd}
body.ni-tema-tmave .ni-modal .dok-paper{background:#111827;color:#e5e7eb;border-color:#344054}
body.ni-tema-tmave .ni-dokument-chyba{background:#3a2914;border-color:#7a4c12;color:#fbdba7}

@media(max-width:1100px){.ni-dlazdice.ni-top{grid-template-columns:repeat(2,minmax(170px,1fr))}.ni-main{padding:1.7rem 1.5rem 4rem}}
@media(max-width:860px){
  #ni-app{display:block;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .ni-main{padding:3.25rem .9rem 2.5rem}
  .ni-sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;box-sizing:border-box;z-index:1000;padding:.3rem .28rem calc(.3rem + env(safe-area-inset-bottom));border:0;border-top:1px solid rgba(255,255,255,.1)}
  .ni-logo,.ni-role,.ni-tema{display:none!important}
  .ni-nav,.ni-sidebar.otevreno .ni-nav{display:flex;flex-direction:row;gap:2px;overflow:visible;height:100%;width:100%}
  .ni-nav button{flex:1 1 0;min-width:0;min-height:56px;padding:.32rem .16rem;gap:.14rem;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-radius:10px;font-size:.7rem;color:#c2ccda}
  .ni-nav button,.ni-mobile-upload{touch-action:manipulation}
  .ni-nav button:focus-visible{outline:2px solid #5eead4;outline-offset:-2px}
  .ni-nav button.akt{color:#5eead4;background:rgba(20,184,166,.14);box-shadow:inset 0 2px 0 #2dd4bf}
  .ni-nav-icon{width:23px;height:23px;color:inherit}
  .ni-nav button.akt .ni-nav-icon{color:#5eead4}
  .ni-nav-label{overflow:visible;text-overflow:clip;white-space:nowrap;font-weight:600;line-height:1.05;letter-spacing:-.01em}
  .ni-badge{position:absolute;top:5px;right:calc(50% - 22px);margin:0;font-size:.7rem;padding:.05rem .32rem}
  .ni-page-head{margin-bottom:1rem}
  .ni-mobile-logout{display:block;position:absolute;right:10px;top:10px;bottom:auto;z-index:1001;border:1px solid #d0d5dd;border-radius:999px;background:rgba(255,255,255,.94);color:#475467;padding:.42rem .7rem;font:600 var(--fs-chip)/1 var(--ni-font);box-shadow:0 2px 8px rgba(16,24,40,.08)}
  .ni-hub-grid{grid-template-columns:1fr;gap:.7rem}
  .ni-hub-card{min-height:150px;padding:1.1rem}
}
@media(max-width:520px){.ni-dlazdice.ni-top,.ni-dlazdice{grid-template-columns:1fr 1fr}.ni-dl{padding:.85rem}.ni-dl .v{font-size:1.05rem}.ni-login-shell{padding:1rem}.ni-login-card{padding:1.5rem;border-radius:18px}}
@media(max-width:360px){.ni-nav button{font-size:.57rem;padding:.3rem .1rem}.ni-nav-icon{width:22px;height:22px}}
@media(max-width:330px){.ni-nav button{font-size:.53rem}.ni-nav-icon{width:21px;height:21px}}

/* =====================================================================
 * 1.29.2 — sjednocené rozbalovací sekce, kompaktní filtr, centrování
 * ===================================================================== */

/* Přehled – horní panel: dlaždice o něco menší a kompaktnější. */
.ni-dlazdice.ni-top .ni-dl{padding:.9rem 1rem}
.ni-dlazdice.ni-top .ni-dl .v{font-size:clamp(1.05rem,1.5vw,1.3rem)}
.ni-dlazdice.ni-top .ni-dl .l{font-size:.7rem}

/* Rozbalovací sekce: „tlačítko, které rozbalí obsah“ (bez extra JS). */
.ni-rozbal{border:1px solid var(--ram);border-radius:var(--r);background:var(--karta);box-shadow:var(--stin);margin-bottom:1.1rem;overflow:hidden}
.ni-rozbal>summary{list-style:none;cursor:pointer;padding:.85rem 1.15rem;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.55rem;color:var(--text);user-select:none}
.ni-rozbal-souhrn{margin-left:auto;color:var(--text2);font-size:.8rem;font-weight:500;text-align:right}
.ni-rozbal>summary::-webkit-details-marker{display:none}
.ni-rozbal>summary::before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:var(--ak-svetla);color:var(--ak);font-weight:700;font-size:1.05rem;line-height:1;flex:none}
.ni-rozbal[open]>summary::before{content:"\2013"}
.ni-rozbal[open]>summary{border-bottom:1px solid var(--ram)}
.ni-rozbal>summary:hover{background:var(--ak-svetla)}
.ni-rozbal>summary .ni-rozbal-hint{margin-left:auto;font-weight:400;font-size:.8rem;color:var(--text2)}
.ni-rozbal-telo{padding:1.15rem 1.25rem}

/* Kompaktní filtr (Zápočty): menší mezery, bez pole od–do. */
.ni-filtr-kompakt{padding:.7rem .85rem;margin-bottom:1rem}
.ni-filtr-kompakt .radek{gap:.6rem;align-items:end}
.ni-filtr-kompakt label{margin-bottom:.2rem}
.ni-filtr-kompakt .ni-akce{margin-top:.55rem}

/* Centrovaná lišta záložek Provoz a energie + jemné barevné odlišení. */
.ni-pill-bar{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.ni-pill-bar .ni-btn{border-radius:999px}

/* Přehledové dlaždice v jednom vycentrovaném řádku (voda, náklady). */
.ni-souhrn-flex{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;margin-bottom:1.1rem}
.ni-souhrn-flex .ni-dl{flex:1 1 155px;max-width:230px;min-width:140px}

/* Zvýraznění nejdůležitější dlaždice (Průměr měsíčně / Nejvyšší měsíc). */
.ni-dl.ni-hlavni{border-color:var(--ak);box-shadow:0 0 0 1px var(--ak),var(--stin)}
.ni-dl.ni-hlavni .l{color:var(--ak)}

/* Kompaktní kalendář stavu nájmu v sekci Nájem. */
.ni-kal-mini{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.3rem}
.ni-kal-mini span{font-size:.76rem;padding:.28rem .5rem;border-radius:7px;border:1px solid var(--ram);white-space:nowrap;line-height:1.2}
.ni-kal-mini span.zaplaceno{background:var(--modra-bg);border-color:var(--modra-ram);color:var(--modra)}
.ni-kal-mini span.uhrazeno{background:var(--zelena-bg);border-color:var(--zelena-ram);color:var(--zelena)}
.ni-kal-mini span.doplatit{background:var(--zluta-bg);border-color:var(--zluta-ram);color:var(--zluta)}
.ni-kal-mini span.nedoplatek{background:var(--cervena-bg);border-color:var(--cervena);color:var(--cervena)}
.ni-kal-mini span.budouci{color:var(--text2);border-style:dashed}
.ni-kal-mini span.bez-najmu{color:var(--text2);opacity:.7}
#ni-app.tema-tmave .ni-kal-mini span{border-color:#2a394b}
#ni-app.tema-tmave .ni-kal-mini span.zaplaceno{background:#12233a;color:#93c5fd}
#ni-app.tema-tmave .ni-kal-mini span.uhrazeno{background:#0f2e22;color:#86efac}
#ni-app.tema-tmave .ni-kal-mini span.doplatit{background:#2e2410;color:#fcd34d}
#ni-app.tema-tmave .ni-kal-mini span.nedoplatek{background:#3a1e1e;color:#fca5a5}
@media(max-width:520px){.ni-souhrn-flex .ni-dl{flex:1 1 44%;max-width:none}}


/* =====================================================================
 * 1.30.3 — opravy: tmavý hover, barevné záložky, karty verzí, badge
 * ===================================================================== */
/* Tmavý režim: buňky řádku při najetí myší byly skoro bílé → nečitelné. */
#ni-app.tema-tmave .ni-tab tbody tr:hover td{background:#232d3f}
#ni-app.tema-tmave .ni-tab tbody tr.ma-nove:hover{background:#5c4a1a!important}
#ni-app.tema-tmave .ni-tab tbody tr.ma-nove:hover td{background:transparent}

/* Barevné odlišení záložek Provoz a energie. */
.ni-pill-bar .pill-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:.05rem;flex:none;vertical-align:middle}

/* Badge (notifikace) na kartě v rozcestníku Dům. */
.ni-hub-card{position:relative}
.ni-hub-badge{position:absolute;top:1rem;right:2.7rem;margin:0}

/* Hezčí karty verzí smlouvy. */
.ni-verze{border:1px solid var(--ram);border-radius:12px;padding:.7rem .85rem;margin-bottom:.55rem;background:var(--karta);box-shadow:var(--stin)}
.ni-verze:last-child{border-bottom:1px solid var(--ram)}
.ni-verze.aktualni{border-color:var(--ak);box-shadow:0 0 0 1px var(--ak),var(--stin)}
#ni-app.tema-tmave .ni-verze{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ni-verze.aktualni{border-color:#2dd4bf;box-shadow:0 0 0 1px #2dd4bf}

/* =====================================================================
 * 1.30.4 — tmavý režim: dashboard tabulky + legenda grafu
 * ===================================================================== */
/* Na dashboardu má tabulka „skleněný“ styl navržený pro světlý režim;
   v tmavém vycházela zašedle. Zde se sjednocuje na tmavé a čitelné. */
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) table.ni-tab{background:#151d29}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab th{background:#131a25;color:#8b94a7}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab td{color:#dbe1ec;border-color:#2a3448}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab tbody tr:nth-child(even) td{background:rgba(148,163,184,.05)}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab tr.mezisoucet td{background:#28223f;color:#cbb9f9}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab tr.celkem td{background:#123240;color:#a5f3fc}
:is(#ni-app.tema-tmave[data-view=dash],#ni-app.tema-tmave .ni-finance-dashboard) .ni-tab tbody tr:hover td{background:#26324a}
/* Legenda grafu: částky (b) byly skoro černé → v tmavém neviditelné. */
#ni-app.tema-tmave .ni-legenda{color:#98a2b3}
#ni-app.tema-tmave .ni-legenda .leg b{color:#eef1f6}

/* =====================================================================
 * 1.30.5 — dashboard: rozbalovací karta musí ladit s tmavým hero
 * (dashboard je tmavý i ve světlém režimu; bílá .ni-rozbal se šedou
 *  tabulkou uvnitř působila rozbitě). Platí pro světlý i tmavý režim.
 * ===================================================================== */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal{background:rgba(15,23,42,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.13);box-shadow:0 8px 32px -12px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal>summary{color:#e6eaf3}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal>summary:hover{background:rgba(148,163,184,.08)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal>summary::before{background:rgba(34,211,238,.16);color:#5eead4}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal>summary .ni-rozbal-hint{color:#8a94ab}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-rozbal[open]>summary{border-color:rgba(148,163,184,.13)}

/* =====================================================================
 * 1.31.0 — barevné ikonové odznaky na kartách (decentní, 1 barva/karta)
 * ===================================================================== */
.ni-ikona-odznak{display:inline-flex;align-items:center;justify-content:center;flex:none;line-height:0}
.ni-ikona-odznak svg{width:56%;height:56%}
.ni-hub-card .ni-ikona-odznak{width:46px;height:46px;border-radius:12px;margin-bottom:14px}
.ni-dlazdice.ni-top .ni-dl .ni-ikona-odznak{width:36px;height:36px;border-radius:10px;margin-bottom:9px}
.ni-zkarta .ni-ikona-odznak{width:38px;height:38px;border-radius:10px;margin-bottom:8px}
.ni-od-teal{background:#E1F5EE;color:#0F6E56}
.ni-od-blue{background:#E6F1FB;color:#185FA5}
.ni-od-purple{background:#EEEDFE;color:#3C3489}
.ni-od-green{background:#EAF3DE;color:#3B6D11}
.ni-od-amber{background:#FAEEDA;color:#854F0B}
.ni-od-pink{background:#FBEAF0;color:#993556}
.ni-od-gray{background:#EEF0F4;color:#475569}

/* =====================================================================
 * 1.31.1 — KPI dlaždice: velký jemný bílý vodoznak ikony (styl ITM)
 * ===================================================================== */
.ni-dlazdice.ni-top .ni-dl .ni-vodoznak{position:absolute;right:-10px;top:50%;transform:translateY(-50%);color:#fff;opacity:.16;pointer-events:none;z-index:0;line-height:0}
.ni-dlazdice.ni-top .ni-dl .ni-vodoznak svg{width:108px;height:108px}
.ni-dlazdice.ni-top .ni-dl .l,.ni-dlazdice.ni-top .ni-dl .v,.ni-dlazdice.ni-top .ni-dl .ni-pozn{position:relative;z-index:1}

/* =====================================================================
 * 1.31.2 — KPI dlaždice v barvě (styl ITM): plná barva + bílý obsah
 * Barva nese význam: tyrkysová běžně, modrá "zbývá", červená výstraha,
 * jantarová čeká. Bílá čísla + bílý vodoznak ikony.
 * ===================================================================== */
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl{background:#0F766E;border-color:rgba(255,255,255,.14);color:#fff}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl.mod{background:#175CD3}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl.zel{background:#0F766E}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl.cer{background:#B42318}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl.zlu{background:#B54708}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl .l{color:rgba(255,255,255,.82)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl .v{background:none;-webkit-text-fill-color:#fff;color:#fff}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl .ni-pozn{color:rgba(255,255,255,.74)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl::before{display:none}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl:hover{border-color:rgba(255,255,255,.32)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-top .ni-dl .ni-vodoznak{opacity:.2}

/* Přehled: dva panely vedle sebe (styl Lector). Na mobilu pod sebe. */
.ni-dash-2col{display:grid;grid-template-columns:1.4fr 1fr;gap:1.1rem;align-items:start;margin-bottom:1.1rem}
.ni-dash-2col > .ni-karta{margin-bottom:0}
@media(max-width:860px){.ni-dash-2col{grid-template-columns:1fr;gap:0}.ni-dash-2col > .ni-karta{margin-bottom:1.1rem}}

/* =====================================================================
 * 1.33.1 — Dům: karty jako barevné dlaždice s vodoznakem (styl dashboard)
 * ===================================================================== */
.ni-hub-card{overflow:hidden}
#ni-app .ni-hub-card.ni-hubcol-amber{background:#B54708;border:0}
#ni-app .ni-hub-card.ni-hubcol-blue{background:#175CD3;border:0}
#ni-app .ni-hub-card.ni-hubcol-purple{background:#5B4BC4;border:0}
#ni-app .ni-hub-card.ni-hubcol-teal{background:#0F766E;border:0}
.ni-hub-card[class*=ni-hubcol],.ni-hub-card[class*=ni-hubcol] .ni-hub-title,.ni-hub-card[class*=ni-hubcol] .ni-hub-meta,.ni-hub-card[class*=ni-hubcol] .ni-hub-arrow{color:#fff}
.ni-hub-card[class*=ni-hubcol] .ni-hub-copy{color:rgba(255,255,255,.85)}
.ni-hub-card[class*=ni-hubcol]:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(16,24,40,.2);border:0}
.ni-hub-vz{position:absolute;right:-16px;bottom:-18px;color:#fff;opacity:.15;line-height:0;pointer-events:none}
.ni-hub-vz svg{width:132px;height:132px}

/* =====================================================================
 * 1.34.0 — kalendář kompaktnější + částečné krytí z investic (listopad)
 * ===================================================================== */
.ni-kal{grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:.4rem}
.ni-mes{padding:.4rem .5rem;border-radius:8px}
.ni-mes .n{font-size:.76rem}
.ni-mes .c{font-size:.7rem}
.ni-mes .s{font-size:.7rem;margin-top:.2rem;padding:.03rem .38rem}
.ni-mes.castecne{background:#99f6e4;border-color:#2dd4bf;border-style:solid}
.ni-mes.castecne .c{white-space:normal;line-height:1.25}
.ni-mes.castecne .s{color:#0f766e;background:rgba(13,148,136,.16)}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.castecne{background:rgba(45,212,191,.2);border-color:rgba(45,212,191,.55);border-style:solid}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-mes.castecne .s{background:rgba(45,212,191,.24);color:#5eead4}

/* =====================================================================
 * 1.34.1 — Přehled: Investice + Umoření v jednom kontejneru
 * ===================================================================== */
.ni-panel-2{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem;align-items:start}
.ni-panel-cast h2{margin-top:0}
.ni-panel-2 > .ni-panel-cast:nth-child(2){border-left:1px solid var(--ram);padding-left:1.5rem}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-panel-2 > .ni-panel-cast:nth-child(2){border-left-color:rgba(148,163,184,.18)}
@media(max-width:860px){.ni-panel-2{grid-template-columns:1fr;gap:1.1rem}.ni-panel-2 > .ni-panel-cast:nth-child(2){border-left:0;padding-left:0;border-top:1px solid var(--ram);padding-top:1.1rem}}

/* 1.34.2 — Náklady: podstínovat tlačítka (pill lišta + chipy roku) */
.ni-pill-bar .ni-btn{box-shadow:0 1px 3px rgba(16,24,40,.12)}
.ni-pill-bar .ni-btn.sek{box-shadow:0 1px 3px rgba(16,24,40,.08)}
.ni-chipy .chip{box-shadow:0 1px 2px rgba(16,24,40,.08)}

/* 1.34.3 — Zápočty: kontejnery podle stavu + barevná tlačítka */
.ni-zap-skupina{border-left:4px solid var(--ram)}
.ni-zap-skupina.zap-zlu{border-left-color:var(--zluta)}
.ni-zap-skupina.zap-zel{border-left-color:var(--zelena)}
.ni-zap-skupina.zap-cer{border-left-color:var(--cervena)}
.ni-zap-skupina .ni-btn.sek{background:var(--ak-svetla);color:var(--ak-tm);border-color:var(--modra-ram)}
.ni-zap-skupina .ni-btn.sek:hover{background:#dbeafe;border-color:var(--modra)}
#ni-app.tema-tmave .ni-zap-skupina .ni-btn.sek{background:#0e2a3a;color:#93c5fd;border-color:#2a4a6a}

/* 1.34.4 — Dokumenty: karty dokumentů + potvrzení u aktuální verze */
.ni-dok-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.8rem;margin-top:.6rem}
.ni-dok-karta{display:flex;flex-direction:column;gap:.5rem;border:1px solid var(--ram);border-radius:12px;padding:.9rem 1rem;background:var(--karta);box-shadow:var(--stin)}
.ni-dok-ikona{width:40px;height:40px;border-radius:10px;background:var(--ak-svetla);color:var(--ak);display:flex;align-items:center;justify-content:center}
.ni-dok-ikona svg{width:22px;height:22px}
.ni-dok-telo{display:flex;flex-direction:column;gap:2px;font-size:.9rem}
.ni-dok-akce{display:flex;gap:.4rem;align-items:center;flex-wrap:wrap;margin-top:auto}
.verze-potvrzeni{flex-basis:100%;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--ram);display:flex;gap:.4rem;flex-wrap:wrap;align-items:center}
#ni-app.tema-tmave .ni-dok-karta{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ni-dok-ikona{background:#0e3a35;color:#5eead4}
#ni-app.tema-tmave .verze-potvrzeni{border-top-color:#2a394b}

/* =====================================================================
 * 1.36.0 — dávka A: Přehled stack, Dům jemnější+větší vodoznak, filtr, voda
 * ===================================================================== */
/* Přehled: 4 dlaždice nahoře, umoření pod nimi na celou šířku. */
.ni-panel-stack .ni-panel-cast:nth-child(2){border-top:1px solid var(--ram);margin-top:1.2rem;padding-top:1.2rem}
:is(#ni-app[data-view=dash],#ni-app .ni-finance-dashboard) .ni-panel-stack .ni-panel-cast:nth-child(2){border-top-color:rgba(148,163,184,.18)}
/* Dům: jemnější barvy karet + větší vodoznak. */
#ni-app .ni-hub-card.ni-hubcol-amber{background:#B56A38}
#ni-app .ni-hub-card.ni-hubcol-blue{background:#4174C0}
#ni-app .ni-hub-card.ni-hubcol-purple{background:#6C5FC2}
#ni-app .ni-hub-card.ni-hubcol-teal{background:#1B8478}
.ni-hub-vz{right:-24px;bottom:-26px;opacity:.16}
.ni-hub-vz svg{width:172px;height:172px}
/* Zápočty: menší, méně nápadný filtr. */
.ni-filtr-kompakt{padding:.5rem .75rem;margin-bottom:.8rem}
.ni-filtr-kompakt label{font-size:.7rem;margin-bottom:.15rem}
.ni-filtr-kompakt input,.ni-filtr-kompakt select{min-height:34px;font-size:.85rem}

/* 1.36.0 — klikatelné měsíce v Nájmu */
.ni-mes-klik{cursor:pointer;transition:border-color .12s,transform .12s}
.ni-mes-klik:hover{border-color:var(--ak);transform:translateY(-1px)}

/* 1.37.0 — komentář majitele u zamítnutých + přehled spotřeby vody v mřížce */
.ni-zamit-pozn{margin-top:.35rem;font-size:.8rem;color:var(--cervena);background:var(--cervena-bg);border:1px solid #f3c2be;border-radius:7px;padding:.25rem .5rem;display:inline-block;max-width:100%}
#ni-app.tema-tmave .ni-zamit-pozn{background:#3a1e1e;border-color:#7f3838;color:#fca5a5}
.ni-souhrn-grid{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-bottom:1.1rem}
@media(max-width:520px){.ni-souhrn-grid{grid-template-columns:1fr}}

/* 1.37.0 — dlouhé formuláře v modalu musí rolovat */
.ni-overlay .ni-modal{max-height:92vh;overflow-y:auto}

/* 1.38.0 — ještě menší filtr Zápočtů + kompaktní tlačítka verzí smlouvy */
.ni-filtr-kompakt{padding:.45rem .65rem;margin-bottom:.7rem}
.ni-filtr-kompakt .radek{margin-bottom:.35rem}
.ni-filtr-kompakt input,.ni-filtr-kompakt select{min-height:32px;font-size:.8rem}
.ni-filtr-kompakt .ni-akce{margin-top:.35rem}
.verze-akce{margin-left:0;flex-basis:100%;justify-content:flex-start;margin-top:.4rem}
.verze-akce .ni-btn{font-size:.76rem;padding:.22rem .55rem}

/* 1.39.0 — Celkem: souhrn komodit + sjednocené barvy */
.ni-kom-prehled{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin-bottom:1.1rem}
.ni-kom-karta{display:flex;flex-direction:column;gap:.2rem;align-items:flex-start;text-align:left;background:var(--karta);border:1px solid var(--ram);border-radius:12px;padding:.9rem 1rem;box-shadow:var(--stin);cursor:pointer;font-family:inherit;color:var(--text);transition:transform .14s,box-shadow .14s}
.ni-kom-karta:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(16,24,40,.1)}
.ni-kom-nazev{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text2);font-weight:600}
.ni-kom-castka{font-size:1.3rem;font-weight:700}
.ni-kom-letos{display:flex;align-items:baseline;gap:.34rem;max-width:100%;color:var(--text2);font-size:clamp(.62rem,.34vw + .36rem,.74rem);line-height:1.25;white-space:nowrap}
.ni-kom-letos b{color:inherit;font-size:1em;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
#ni-app.tema-tmave .ni-kom-karta{background:#18212d;border-color:#2a394b}

.ni-vic-wrap{margin-top:10px;display:flex;align-items:center;gap:8px;justify-content:center;flex-wrap:wrap}

/* =====================================================================
 * Galerie „Proměna domu" – Fáze B (fotky po místnostech)
 * ===================================================================== */
.gal-head{align-items:flex-start}
.gal-sek-nadpis{font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text2,#475569);margin:1.5rem 2px .6rem;display:flex;align-items:center;gap:8px}
.gal-rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.gal-rc{display:block;text-align:left;padding:0;border:1px solid var(--ram,#e2e8f0);border-radius:14px;overflow:hidden;background:var(--karta,#fff);cursor:pointer;box-shadow:0 1px 2px rgba(16,24,40,.05);transition:transform .12s,box-shadow .12s;width:100%}
.gal-rc:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(16,24,40,.13)}
.gal-cover{display:block;position:relative;height:150px;background:#eef1f4}
.gal-cover img{width:100%;height:100%;object-fit:cover;display:block}
.gal-cover.gal-empty{display:flex;align-items:center;justify-content:center;color:var(--text3,#94a3b8);font-size:.8rem;text-align:center;padding:10px;background:repeating-linear-gradient(135deg,#eef1f4,#eef1f4 12px,#e8ebef 12px,#e8ebef 24px)}
.gal-badges{position:absolute;left:8px;bottom:8px;display:flex;gap:6px}
.gal-badge{font-size:.7rem;font-weight:700;color:#fff;padding:3px 8px;border-radius:999px}
.gal-badge.po{background:rgba(15,118,110,.95)}
.gal-badge.pred{background:rgba(180,83,9,.94)}
.gal-rc-body{display:block;padding:10px 12px 12px}
.gal-rc-nm{display:block;font-weight:600;font-size:.9rem;color:var(--text1,#0f172a);line-height:1.3}
.gal-rc-mt{display:block;color:var(--text2,#475569);font-size:.8rem;margin-top:3px}
#ni-app.tema-tmave .gal-rc-nm{color:#eef1f6}
#ni-app.tema-tmave .gal-rc-mt{color:#b6bfcd}
.gal-det-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:4px 0 14px}
.gal-back{border:0;background:transparent;color:var(--text2,#475569);font-size:.85rem;cursor:pointer;font-weight:600}
.gal-det-head h2{margin:0;font-size:22px;flex:1;min-width:120px}
.gal-acts{display:flex;gap:8px;flex-wrap:wrap}
.gal-status-wrap{margin:-6px 0 12px}
.gal-status{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:#0f766e;background:#e6fbf8;border:1px solid #9fe1cb;padding:5px 11px;border-radius:999px}
.gal-status.save{color:var(--text2,#475569);background:#eef1f4;border-color:var(--ram,#e2e8f0)}
.gal-status.err{color:#b42318;background:#fdecea;border-color:#f5c2bd}
.gal-predpo{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;align-items:center}
.gal-pp{position:relative}
.gal-pp-lab{position:absolute;top:9px;left:9px;z-index:2;font-size:.76rem;font-weight:700;color:#fff;padding:3px 10px;border-radius:999px}
.gal-pp.pred .gal-pp-lab{background:#b45309}
.gal-pp.po .gal-pp-lab{background:#0f766e}
.gal-pp-photo{height:210px;border-radius:11px;overflow:hidden;cursor:pointer}
.gal-pp-photo img{width:100%;height:100%;object-fit:cover;display:block}
.gal-pp-miss{height:210px;border-radius:11px;border:2px dashed #cfd6de;background:#fbfcfd;display:flex;align-items:center;justify-content:center;color:var(--text3,#94a3b8);font-size:.8rem;text-align:center;padding:12px}
.gal-pp-arrow{color:var(--text3,#94a3b8);font-size:24px;text-align:center}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.gal-cell{position:relative;border-radius:11px;overflow:hidden;height:132px;background:#eef1f4;cursor:pointer}
.gal-cell img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.gal-cell.lift{opacity:.45}
.gal-cell.over{outline:3px solid #0f766e;outline-offset:-3px}
.gal-tag{position:absolute;top:7px;left:7px;z-index:2;font-size:.7rem;font-weight:700;color:#fff;padding:2px 8px;border-radius:999px}
.gal-tag.pred{background:#b45309}
.gal-tag.po{background:#0f766e}
.gal-drag{position:absolute;top:7px;right:7px;z-index:3;background:rgba(15,23,42,.62);color:#fff;border-radius:8px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:.9rem;cursor:grab;touch-action:none}
.gal-cmenu{position:absolute;bottom:7px;right:7px;z-index:3;background:rgba(15,23,42,.64);color:#fff;border:0;border-radius:8px;width:30px;height:30px;font-size:1.05rem;cursor:pointer}
.gal-sheet{display:flex;flex-direction:column;gap:8px;margin-top:6px}
.gal-sheet-b{display:flex;width:100%;align-items:center;gap:9px;border:1px solid var(--ram,#e2e8f0);background:#fff;padding:13px 14px;border-radius:10px;font-size:.9rem;cursor:pointer;text-align:left;color:var(--text1,#0f172a)}
.gal-sheet-b:hover{background:#f3f5f7}
.gal-sheet-b.del{color:#b42318;border-color:#f2c9c4}
@media(max-width:1000px){.gal-rooms{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.gal-rooms{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.gal-grid{grid-template-columns:repeat(2,1fr)}.gal-predpo{grid-template-columns:1fr}.gal-pp-arrow{transform:rotate(90deg)}.gal-det-head .gal-acts{width:100%}.gal-det-head .gal-acts .ni-btn{flex:1;justify-content:center}}
@media(max-width:360px){.gal-rooms{grid-template-columns:1fr}}
.gal-cover img,.gal-pp-photo img,.gal-cell img,#ni-lightbox img{image-orientation:from-image}

/* Platby nájmu – Fáze B */
.pl-alert{background:#fdecea;border:1px solid #f3b6ae;border-radius:12px;padding:11px 15px;margin-bottom:14px;display:flex;align-items:center;gap:10px;color:#b42318;font-weight:600;font-size:.9rem}
.pl-alert-dot{width:9px;height:9px;border-radius:50%;background:#b42318;flex:none}
.pl-cur{margin-bottom:16px}
.pl-cur.warn{border-color:#f3b6ae}
.pl-cur-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.pl-tabs{display:flex;gap:4px;border-bottom:1px solid var(--ram,#e2e8f0);margin:6px 0 16px}
.pl-tabs button{border:0;background:transparent;padding:10px 16px;font-size:.9rem;font-weight:600;color:var(--text2,#475569);cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1px}
.pl-tabs button.on{color:#0f766e;border-bottom-color:#0f766e}
.pl-yearbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.pl-y-nav{border:1px solid var(--ram,#e2e8f0);background:#fff;width:34px;height:34px;border-radius:9px;cursor:pointer;font-size:.95rem;color:var(--text2,#475569)}
.pl-y-nav[disabled]{opacity:.4;cursor:default}
.pl-y{font-size:1.05rem;font-weight:700;min-width:64px;text-align:center}
.pl-empty{text-align:center;padding:40px 20px;background:var(--karta,#fff);border:1px solid var(--ram,#e2e8f0);border-radius:14px}
.pl-empty h3{margin:0 0 6px;font-size:1.05rem}
.pl-empty p{margin:0 0 16px;color:var(--text2,#475569);font-size:.85rem}
.legenda{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px;font-size:.8rem;color:var(--text2,#475569)}
.legenda span{display:flex;align-items:center;gap:6px}
.legenda i{width:12px;height:12px;border-radius:4px;display:inline-block}

/* Dokumenty – Fáze B (3 záložky) */
.dok-tabs{display:flex;gap:4px;border-bottom:1px solid var(--ram,#e2e8f0);margin:6px 0 18px;overflow-x:auto}
.dok-tabs button{border:0;background:transparent;padding:11px 18px;font-size:.9rem;font-weight:600;color:var(--text2,#475569);cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1px;white-space:nowrap}
.dok-tabs button.on{color:#0f766e;border-bottom-color:#0f766e}
.dok-infobar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:flex-start}
.dok-meta{font-size:.85rem;color:var(--text2,#475569)}
.dok-chips{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}
.dok-chip{font-size:.76rem;font-weight:700;padding:4px 10px;border-radius:999px}
.dok-chip.ok{background:var(--zelena-bg,#ecfdf5);color:#047857}
.dok-chip.wait{background:var(--zluta-bg,#fef3e2);color:#b45309}
.dok-infoacts{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.dok-confirm{background:var(--zluta-bg,#fef3e2);border:1px solid #f3d19a;border-radius:12px;padding:13px 16px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.dok-confirm .t{font-weight:600;color:#b45309;font-size:.9rem}
.dok-split{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start}
.dok-paper{background:#fff;border:1px solid var(--ram,#e2e8f0);border-radius:12px;padding:26px 30px;box-shadow:0 1px 3px rgba(16,24,40,.06);white-space:pre-wrap;font-size:.9rem;line-height:1.6;color:#334155;max-height:420px;overflow:hidden;position:relative}
.dok-fade{position:absolute;left:0;right:0;bottom:0;height:76px;background:linear-gradient(transparent,#fff)}
.dok-verlist{display:flex;flex-direction:column;gap:2px}
.dok-ver{display:flex;gap:11px;padding:11px 12px;border-radius:10px;cursor:pointer;align-items:flex-start}
.dok-ver:hover{background:#f6f7f9}.dok-ver.akt{background:var(--tealbg,#e6fbf8)}
.dok-ver .dot{width:11px;height:11px;border-radius:50%;margin-top:4px;flex:none;border:2px solid #0f766e}
.dok-ver.akt .dot{background:#0f766e}.dok-ver:not(.akt) .dot{border-color:#cbd5e1}
.dok-ver .vinfo{display:flex;flex-direction:column}
.dok-ver .vinfo b{font-size:.85rem}.dok-ver .vinfo .mm{font-size:.8rem;color:var(--text2,#475569);margin-top:1px}
.dok-ver .vinfo .ss{font-size:.76rem;color:var(--text3,#94a3b8);margin-top:3px;display:flex;flex-direction:column;gap:2px}
.dok-ver .ss .ok{color:#0f766e}.dok-ver .ss .wait{color:#93370d}
.ux-contract-impact{margin:0 0 14px;padding:12px 14px;border:1px solid #b2ddff;border-radius:12px;background:#eff8ff;color:#1849a9}
.ux-contract-impact p{margin:4px 0 0;color:#344054}
.dok-sumtable{width:100%;border-collapse:collapse;font-size:.9rem}
.dok-sumtable td{padding:11px 4px;border-bottom:1px solid #eef1f4}
.dok-sumtable td.v{text-align:right;font-weight:600;font-variant-numeric:tabular-nums}
.dok-controls{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.dok-controls input[type=search]{flex:1;min-width:150px;border:1px solid var(--ram,#e2e8f0);border-radius:9px;padding:8px 11px;font-size:.85rem;background:#fff}
.dok-controls select{border:1px solid var(--ram,#e2e8f0);border-radius:9px;padding:8px 11px;font-size:.85rem;background:#fff}
.dok-ficon{width:34px;height:34px;border-radius:8px;background:var(--tealbg,#e6fbf8);color:#0f766e;display:inline-flex;align-items:center;justify-content:center;flex:none}
.dok-ficon svg{width:18px;height:18px}
@media(max-width:760px){.dok-split{grid-template-columns:1fr}.dok-infobar{flex-direction:column}}

/* T-002: obrazovka Dnes */
.dnes-akce{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.4rem}
.dnes-karta{display:flex;align-items:center;gap:.85rem;background:var(--karta);border:1px solid var(--ram);border-left:4px solid #98a2b3;border-radius:12px;padding:.8rem 1rem;box-shadow:var(--stin)}
.dnes-karta.cer{border-left-color:#b42318}.dnes-karta.zlu{border-left-color:#b54708}.dnes-karta.mod{border-left-color:#175cd3}.dnes-karta.zel{border-left-color:#0f766e}
.dnes-ic{flex:none;width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:#f2f4f7;color:#475467}
.dnes-ic svg,.dnes-empty-ic svg{width:20px;height:20px}
.dnes-karta.cer .dnes-ic{background:#fef3f2;color:#b42318}.dnes-karta.zlu .dnes-ic{background:#fffaeb;color:#93370d}.dnes-karta.mod .dnes-ic{background:#eff8ff;color:#175cd3}.dnes-karta.zel .dnes-ic{background:#ecfdf3;color:#0f766e}
.dnes-karta.ma-neprecteno{background:linear-gradient(105deg,#fff 55%,#fff1f0);border-color:#fecdca;box-shadow:0 8px 26px rgba(180,35,24,.11)}
.dnes-unread-label{display:inline-flex;margin-bottom:.22rem;padding:.12rem .42rem;border-radius:999px;background:#fee4e2;color:#b42318;font-size:.7rem;font-weight:800;letter-spacing:.07em}
#ni-app.tema-tmave .dnes-karta.ma-neprecteno{background:linear-gradient(105deg,#1d2939 55%,#3f1d1d);border-color:#7f1d1d}
#ni-app.tema-tmave .dnes-unread-label{background:#7f1d1d;color:#fecaca}
.dnes-txt{flex:1;min-width:0}
.dnes-nadpis{font-weight:600;letter-spacing:-.01em}
.dnes-meta{color:var(--text2);font-size:.85rem;margin-top:2px}
.dnes-akce-btn{flex:none;white-space:nowrap}
.dnes-akce-btn.is-urgent{border-color:#d92d20;background:linear-gradient(135deg,#d92d20,#f04438);color:#fff;box-shadow:0 5px 12px rgba(180,35,24,.18)}
.dnes-akce-btn.is-urgent:hover{border-color:#b42318;background:linear-gradient(135deg,#b42318,#d92d20);color:#fff;transform:none}
.dnes-akce-btn.is-warning{border-color:#f79009;background:#fffaeb;color:#93370d;box-shadow:none}
.dnes-akce-btn.is-warning:hover{border-color:#dc6803;background:#fef0c7;color:#7a2e0e;transform:none}
.dnes-empty{display:flex;align-items:center;gap:.85rem}
.dnes-empty-ic{flex:none;width:40px;height:40px;display:grid;place-items:center;border-radius:10px;background:#ecfdf3;color:#0f766e}
.dnes-vice{margin:.5rem 0 0}
.dnes-zpet-nahoru{position:fixed;right:22px;bottom:22px;z-index:85;border:1px solid var(--ram);border-radius:999px;padding:.65rem .9rem;background:var(--karta);color:var(--text);box-shadow:0 8px 24px rgba(16,24,40,.18);font:inherit;font-size:.8rem;font-weight:600;line-height:1;cursor:pointer}
.dnes-zpet-nahoru[hidden]{display:none}
#ni-app.tema-tmave .dnes-karta{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .dnes-ic{background:#141a26;color:#c8cfdd}
@media(max-width:520px){.dnes-karta{flex-wrap:wrap}.dnes-akce-btn{width:100%;margin-top:.25rem}}
@media(max-width:860px){.dnes-zpet-nahoru{position:static;display:flex;width:100%;min-height:44px;margin:16px 0 0;align-items:center;justify-content:center;padding:12px 16px;border-radius:10px}.ni-rozbal>summary{align-items:flex-start;flex-wrap:wrap}.ni-rozbal-souhrn{flex:1 0 100%;margin-left:27px;text-align:left}}

/* ===================== T-003: Dnes sloučení + Opravy ===================== */
.dnes-top{margin-bottom:.4rem}
.dnes-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0 .2rem}
.dnes-chip{background:var(--karta);border:1px solid var(--ram);border-radius:999px;padding:.32rem .7rem;font-size:.8rem;color:var(--text2)}
.dnes-chip b{color:var(--text);font-weight:600}
.dnes-oddel{height:1px;background:var(--ram);margin:1.1rem 0 .2rem}
#ni-app.tema-tmave .dnes-chip{background:#18212d;border-color:#2a394b}
.opr-filtr{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1rem}
.opr-filtr select{border:1px solid #d0d5dd;border-radius:9px;padding:.45rem .6rem;background:#fff;font:inherit;min-height:40px;color:var(--text)}
#ni-app.tema-tmave .opr-filtr select{background:#141a26;color:#d6dbe6;border-color:#33405a}
.opr-chip{display:inline-block;border-radius:6px;padding:.05rem .45rem;font-size:.7rem;font-weight:600;margin-right:.28rem}
.opr-typ{background:#eef2ff;color:#4338ca;border:1px solid #c7d2fe}
.opr-specha{background:#fffaeb;color:#93370d;border:1px solid #fedf89}
.opr-havarie{background:#fef3f2;color:#b42318;border:1px solid #fecdca}
#ni-app.tema-tmave .opr-typ{background:#26304a;color:#a5b4fc;border-color:#3a4660}
.st-nove{background:#eff8ff;color:#175cd3;border:1px solid #b2ddff}
.st-prijate{background:#ecfdf3;color:#0f766e;border:1px solid #abefc6}
.st-resi{background:#fffaeb;color:#93370d;border:1px solid #fedf89}
.ni-zkarta.resi:before{background:linear-gradient(#175cd3,#60a5fa)}
.opr-havarie-karta{box-shadow:0 0 0 2px rgba(220,38,38,.30),var(--stin)}
.opr-hlavicky{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;margin:-.2rem 0 .8rem}
.opr-rizeni{background:var(--karta);border:1px solid var(--ram);border-radius:12px;padding:.9rem 1rem;margin:.6rem 0}
.opr-rizeni h3{margin:0 0 .5rem}
#ni-app.tema-tmave .opr-rizeni{background:#18212d;border-color:#2a394b}
.zk-datum{flex:1 0 100%;margin-left:0;text-align:right;white-space:normal;overflow-wrap:anywhere}
.opr-card-kind{margin:.05rem 0 .35rem;color:var(--text2);font-size:.8rem;font-weight:600}
@media(max-width:520px){.opr-filtr select{flex:1 1 44%}}

/* =====================================================================
 * 1.53.3 — opravený finanční přehled uvnitř Dnes + sjednocené rozcestníky
 * ===================================================================== */
.ni-finance-dashboard{position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin-top:1.35rem;padding:1.25rem;border-radius:20px;color:#e6eaf3;background:#070b14;background-image:radial-gradient(ellipse 60% 40% at 85% -5%,rgba(139,92,246,.18),transparent 60%),radial-gradient(ellipse 55% 45% at -10% 15%,rgba(34,211,238,.12),transparent 60%),radial-gradient(ellipse 50% 50% at 50% 110%,rgba(59,130,246,.10),transparent 65%);box-shadow:0 18px 48px -28px rgba(2,6,23,.9)}
.ni-finance-dashboard>.ni-page-head{margin-bottom:1.1rem}
.ni-finance-dashboard>.ni-page-head h1{margin-bottom:.25rem}
.ni-finance-dashboard>.ni-page-head p{color:#9aa6bb}
.ni-finance-dashboard .ni-dlazdice,.ni-finance-dashboard .ni-karta,.ni-finance-dashboard .ni-panel-cast,.ni-finance-dashboard .ni-kal,.ni-finance-dashboard .ni-tab-wrap{min-width:0;max-width:100%}
/* Každá karta je vlastní polohovací kontext; vodoznak ji nikdy neopustí. */
.ni-finance-dashboard .ni-dl{position:relative;overflow:hidden;isolation:isolate;min-width:0}
.ni-finance-dashboard .ni-vodoznak{pointer-events:none}
/* Desktop: datum čekající platby se zalomí celé a zůstane mimo vodoznak. */
@media(min-width:761px){
  .ni-finance-dashboard #ni-dl-zalohy .v{max-width:calc(100% - 5.5rem);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:normal;line-height:1.18}
}
.ni-vybaveni-verejne{border:1px solid var(--ram);border-radius:12px;overflow:hidden}
.ni-vybaveni-radek{display:grid;grid-template-columns:minmax(160px,1.2fr) minmax(70px,.35fr) minmax(180px,1fr);gap:1rem;padding:.75rem .85rem;border-bottom:1px solid var(--ram);align-items:start}
.ni-vybaveni-radek:last-child{border-bottom:0}
.ni-vybaveni-radek>div{min-width:0;overflow-wrap:anywhere}
.ni-vybaveni-label{display:block;margin-bottom:.18rem;color:var(--text2);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}

.ni-breadcrumb{display:flex;align-items:center;gap:.55rem;margin:0 0 .9rem;color:var(--text2);font-size:.8rem}
.ni-breadcrumb button{border:0;background:transparent;color:var(--ak);padding:.35rem .15rem;font:inherit;font-weight:700;cursor:pointer;min-height:40px}
.ni-breadcrumb strong{color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.dok-sections{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:0 0 1rem}
.dok-section{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr);gap:.75rem;align-items:center;text-align:left;min-width:0;padding:.9rem;background:var(--karta);color:var(--text);border:1px solid var(--ram);border-radius:14px;box-shadow:var(--stin);font:inherit;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}
.dok-section:hover{transform:translateY(-2px);border-color:#80c9c1;box-shadow:0 10px 26px rgba(16,24,40,.1)}
.dok-section.on{border-color:var(--ak);box-shadow:0 0 0 1px var(--ak),var(--stin)}
.dok-section-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--ak-svetla);color:var(--ak)}
.dok-section-icon svg{width:23px;height:23px}
.dok-section b,.dok-section small{display:block;min-width:0}
.dok-section b{font-size:.9rem;line-height:1.25}
.dok-section small{margin-top:.22rem;color:var(--text2);font-size:.76rem;line-height:1.35}
.dok-section-arrow{grid-column:2;color:var(--ak);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.dok-paper-modal{max-height:58vh;overflow-y:auto;padding:1rem;box-sizing:border-box}

#ni-app.tema-tmave .dok-section{background:#18212d;border-color:#2a394b;color:#f2f4f7}
#ni-app.tema-tmave .dok-section.on{border-color:#2dd4bf;box-shadow:0 0 0 1px #2dd4bf,var(--stin)}
#ni-app.tema-tmave .dok-section-icon{background:#0e3a35;color:#5eead4}
#ni-app.tema-tmave .dok-paper{background:#18212d;color:#e5e7eb;border-color:#2a394b}
#ni-app.tema-tmave .dok-fade{background:linear-gradient(transparent,#18212d)}
#ni-app.tema-tmave .dok-ver:hover{background:#222d3b}
#ni-app.tema-tmave .dok-ver.akt{background:#0e3a35}
body.ni-tema-tmave .ux-contract-impact{background:#102a56;border-color:#1849a9;color:#b2ccff}
body.ni-tema-tmave .ux-contract-impact p{color:#d1e0ff}
body.ni-tema-tmave .dok-ver .ss .ok{color:#75e0a7}
body.ni-tema-tmave .dok-ver .ss .wait{color:#fdb022}
#ni-app.tema-tmave .dok-controls input[type=search],#ni-app.tema-tmave .dok-controls select{background:#141a26;color:#e5e7eb;border-color:#33405a}
#ni-app.tema-tmave .dok-sumtable td{border-color:#2a394b}

@media(max-width:760px){
  .ni-finance-dashboard{margin-left:-.25rem;margin-right:-.25rem;padding:.85rem;border-radius:15px}
  .ni-finance-dashboard .ni-top .ni-dl{min-height:132px}
  .ni-finance-dashboard .ni-top .ni-dl .v{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.18}
  .ni-finance-dashboard .ni-top .ni-dl .ni-pozn{white-space:normal;overflow:visible;text-overflow:clip;line-height:1.35}
  .ni-vybaveni-radek{grid-template-columns:minmax(0,1fr) 62px;gap:.65rem .8rem;padding:.75rem}
  .ni-vybaveni-radek>div:last-child{grid-column:1/-1;padding-top:.55rem;border-top:1px solid var(--ram)}
  .dok-sections{grid-template-columns:1fr;gap:.55rem}
  .dok-section{padding:.75rem .85rem;grid-template-columns:38px minmax(0,1fr) auto}
  .dok-section-icon{width:38px;height:38px}
  .dok-section-arrow{grid-column:3;grid-row:1;align-self:center;font-size:0}
  .dok-section-arrow::after{content:'→';font-size:1.05rem}
}
@media(max-width:390px){
  .ni-main{padding-left:.65rem;padding-right:.65rem}
  .ni-finance-dashboard{margin-left:0;margin-right:0;padding:.7rem}
  .ni-finance-dashboard .ni-dl .v{font-size:1.15rem}
  .dnes-chip{width:100%;border-radius:10px}
  .opr-filtr select{flex:1 1 100%;min-width:0}
  .ni-hub-grid{grid-template-columns:1fr;min-width:0}
  .ni-hub-card{min-width:0}
}
@media print{
  .ni-finance-dashboard{background:#fff!important;color:#000;padding:0;box-shadow:none}
  .ni-breadcrumb,.dok-sections{display:none!important}
}

/* =====================================================================
 * T-004 — sdílená UX vrstva hlavních sekcí
 * Omezené komponentové přepisy; datové pohledy a galerie zůstávají beze změny.
 * ===================================================================== */
.ux-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 24px}
.ux-summary{position:relative;overflow:hidden;min-width:0;padding:16px 18px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:var(--stin)}
.ux-summary span,.ux-summary small{display:block;color:var(--text2)}
.ux-summary span{font-size:.76rem;font-weight:700;letter-spacing:.045em;text-transform:uppercase}
.ux-summary strong{display:block;margin:.35rem 0 .2rem;color:var(--text);font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.15;overflow-wrap:anywhere}
.ux-summary small{font-size:.8rem}
.ux-filter{margin:0 0 16px;padding:14px 16px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:none}
.ux-filter-main,.ux-filter-more{display:flex;align-items:end;gap:12px;min-width:0}
.ux-filter-main>div,.ux-filter-more>div{min-width:0}
.ux-filter-main .ux-search{flex:1 1 340px}.ux-filter-main>div:not(.ux-search){flex:0 1 220px}
.ux-filter label{display:block;margin:0 0 5px;color:var(--text2);font-size:.76rem;font-weight:700}
.ux-filter input,.ux-filter select{box-sizing:border-box;width:100%;min-height:44px;border:1px solid #d0d5dd;border-radius:10px;background:var(--karta);color:var(--text);font:inherit;padding:.58rem .7rem}
.ux-more{min-height:44px;white-space:nowrap}
.ux-filter-more{display:none;margin-top:12px;padding-top:12px;border-top:1px solid var(--ram)}
.ux-filter-more.open{display:flex}.ux-filter-more>div{flex:0 1 220px}
.ux-view-tabs,.pl-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--ram);margin:0 0 16px;scrollbar-width:thin}
.ux-view-tabs button,.pl-tabs button{min-height:44px;padding:10px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--text2);font:600 .88rem/1.2 inherit;white-space:nowrap;cursor:pointer}
.ux-view-tabs button.on,.ux-view-tabs button[aria-selected=true],.pl-tabs button.on{border-bottom-color:#0f766e;color:#0f766e}
.ux-count{margin:-6px 0 10px}.ux-mobile-list{display:none}
.ux-waiting{margin-top:5px;color:var(--text2);font-size:.76rem}
.ux-record-card{padding:15px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:var(--stin)}
.ux-record-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.ux-record-head h3{margin:0;font-size:.95rem}.ux-record-head p{margin:.25rem 0 0;color:var(--text2);font-size:.8rem}
.ux-record-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.ux-record-facts span{min-width:0;padding:10px;border-radius:10px;background:var(--seda-bg,#f2f4f7)}
.ux-record-facts small,.ux-record-facts b{display:block}.ux-record-facts small{color:var(--text2);font-size:.7rem}.ux-record-facts b{margin-top:3px;overflow-wrap:anywhere}
.ux-next{margin:0 0 12px;color:var(--text2);font-size:.8rem}
.ux-record-card>.ni-btn{width:100%;justify-content:center}
.ux-detail-section{margin:14px 0;padding:14px;border:1px solid var(--ram);border-radius:12px;background:var(--karta)}
.ux-detail-section h3{margin:0 0 10px}.ux-detail-section p:last-child{margin-bottom:0}
.ux-form-heading{margin:20px 0 10px;padding-top:14px;border-top:1px solid var(--ram);font-size:.95rem}
.ux-review{display:grid;gap:4px;padding:14px;border:1px solid #99d5cf;border-radius:12px;background:#f0fdfa}
.ux-review span,.ux-review small{color:#475467}.ux-review strong{font-size:1.15rem}
.ux-section{margin:0 0 24px;padding:20px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:var(--stin)}
.ux-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.ux-section-title>div{display:flex;align-items:center;gap:10px}.ux-section-title h2{margin:0;font-size:1.05rem}
.ux-step{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e6fbf8;color:#0f766e;font-size:.8rem;font-weight:800}
.ux-answer{display:flex;align-items:center;gap:16px;padding:18px;border-radius:14px;background:#f2f4f7}
.ux-answer-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:12px;background:#d9f5f0;color:#0f766e}
.ux-answer-icon svg{width:23px;height:23px}.ux-answer p{margin:0;color:#667085;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.ux-answer strong,.ux-answer small{display:block}.ux-answer strong{margin:3px 0;font-size:clamp(1.2rem,2.2vw,1.75rem);line-height:1.2}.ux-answer small{color:#667085;line-height:1.45}
.ux-month-name{margin:-8px 0 12px;color:var(--text2);font-weight:600}
.ux-rent-history>.ni-karta{margin-bottom:0}.ux-rent-history .pl-tabs{margin-top:-4px}
.ux-attention{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:14px 16px;border:1px solid #fedf89;border-radius:14px;background:#fffaeb;color:#7a2e0e}
.ux-attention>div{flex:1;min-width:0}.ux-attention p{margin:3px 0 0;font-size:.85rem}.ux-attention .ux-answer-icon{background:#fef0c7;color:#b54708}
.ux-shared-status{margin:7px 0 0;color:var(--text);font-size:.8rem;font-weight:700}
.ux-contract-paper{max-width:960px;max-height:none;overflow:visible;margin:0 auto;box-sizing:border-box}
.ux-protocol{overflow:hidden}.ux-protocol .dok-infobar{margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--ram)}
.ux-finance-answer{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:18px 20px;border:1px solid rgba(94,234,212,.28);border-radius:16px;background:linear-gradient(120deg,rgba(15,118,110,.32),rgba(30,41,59,.72))}
.ux-finance-answer span,.ux-finance-answer strong,.ux-finance-answer small{display:block}.ux-finance-answer span{color:#99f6e4;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ux-finance-answer strong{margin:5px 0 4px;color:#fff;font-size:clamp(1.35rem,2.4vw,2.1rem);line-height:1.18}.ux-finance-answer small{color:#cbd5e1;line-height:1.45}
.dnes-next{margin-top:4px;color:var(--text2);font-size:.8rem}

/* Dům: neutrální povrch, barevné ikonové pole a stejná geometrie. */
#ni-app .ni-hub-card[class*=ni-hubcol]{min-height:190px;padding:20px;background:var(--karta);color:var(--text);border:1px solid var(--ram);box-shadow:var(--stin);overflow:hidden}
#ni-app .ni-hub-card[class*=ni-hubcol] .ni-hub-title{margin:14px 0 7px;color:var(--text)}
#ni-app .ni-hub-card[class*=ni-hubcol] .ni-hub-copy{color:var(--text2)}
#ni-app .ni-hub-card[class*=ni-hubcol] .ni-hub-meta,#ni-app .ni-hub-card[class*=ni-hubcol] .ni-hub-arrow{color:#0f766e}
#ni-app .ni-hub-card[class*=ni-hubcol]:hover{border:1px solid #80c9c1;box-shadow:0 12px 30px rgba(16,24,40,.10)}
.ni-hub-vz{position:static;display:grid;place-items:center;width:48px;height:48px;border-radius:13px;opacity:1;color:#0f766e;background:#e6fbf8;line-height:0}
.ni-hub-vz svg{width:25px;height:25px}
.ni-hubcol-amber .ni-hub-vz{color:#b54708;background:#fffaeb}.ni-hubcol-blue .ni-hub-vz{color:#175cd3;background:#eff8ff}.ni-hubcol-purple .ni-hub-vz{color:#5925dc;background:#f4f3ff}

#ni-app.tema-tmave .ux-filter input,#ni-app.tema-tmave .ux-filter select{background:#111827;color:#f2f4f7;border-color:#475467}
#ni-app.tema-tmave .ux-view-tabs button.on,#ni-app.tema-tmave .pl-tabs button.on{color:#5eead4;border-bottom-color:#2dd4bf}
#ni-app.tema-tmave .ux-record-facts span,#ni-app.tema-tmave .ux-answer{background:#1d2939}
#ni-app.tema-tmave .ux-answer p,#ni-app.tema-tmave .ux-answer small{color:#b3bac6}
#ni-app.tema-tmave .ux-step,#ni-app.tema-tmave .ni-hub-vz{background:#0e3a35;color:#5eead4}
#ni-app.tema-tmave .ni-hubcol-amber .ni-hub-vz{background:#3a2914;color:#fdb022}
#ni-app.tema-tmave .ni-hubcol-blue .ni-hub-vz{background:#102a56;color:#84adff}
#ni-app.tema-tmave .ni-hubcol-purple .ni-hub-vz{background:#292056;color:#bdb4fe}
#ni-app.tema-tmave .ux-review{background:#0e3a35;border-color:#207e72}.tema-tmave .ux-review span,.tema-tmave .ux-review small{color:#b3bac6}
#ni-app.tema-tmave .ux-attention{background:#3a2914;border-color:#7a4c12;color:#fbdba7}
#ni-app.tema-tmave .ux-shared-status{color:#f2f4f7}

@media(max-width:760px){
  .ux-summary-grid{grid-template-columns:1fr;gap:9px;margin-bottom:18px}.ux-summary{padding:13px 15px}
  .ux-filter-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}.ux-filter-main .ux-search{grid-column:1/-1}.ux-filter-main>div:not(.ux-search){width:auto}
  .ux-filter-more.open{display:grid;grid-template-columns:1fr 1fr}.ux-filter-more .ni-btn{grid-column:1/-1}
  .ux-view-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:visible;border-bottom:0}
  .ux-view-tabs button{min-width:0;padding:9px 8px;white-space:normal;border:1px solid var(--ram);border-radius:9px}
  .ux-view-tabs button.on,.ux-view-tabs button[aria-selected=true]{border-color:#0f766e;background:#ecfdf9}
  #ni-app.tema-tmave .ux-view-tabs button.on,#ni-app.tema-tmave .ux-view-tabs button[aria-selected=true]{border-color:#2dd4bf;background:#0e3a35}
  .ux-desktop-list{display:none}.ux-mobile-list{display:grid;gap:10px}
  .ux-section{padding:15px;margin-bottom:20px}.ux-answer{align-items:flex-start;padding:14px}.ux-answer-icon{width:40px;height:40px}
  .ux-finance-answer{align-items:flex-start;flex-direction:column;padding:16px}.ux-finance-answer .ni-btn{width:100%;justify-content:center}
  .ux-attention{align-items:flex-start;flex-wrap:wrap}.ux-attention>button{width:100%}
  .dok-paper.ux-contract-paper{padding:18px 16px;font-size:.9rem}
  .ni-finance-dashboard{margin:24px 0 0;padding:14px;border-radius:16px;box-shadow:none}
  .ni-finance-dashboard .ni-panel-cast,.ni-finance-dashboard .ni-karta,.ni-finance-dashboard .ni-rozbal{scroll-margin-top:12px}
}
@media(max-width:390px){
  .ux-filter{padding:12px}.ux-filter-main{grid-template-columns:1fr}.ux-filter-main .ux-search{grid-column:auto}.ux-more{width:100%}
  .ux-filter-more.open{grid-template-columns:1fr}.ux-record-head{flex-direction:column}.ux-record-facts{grid-template-columns:1fr 1fr}
  .ux-section-title{align-items:flex-start}.ux-section-title>div{align-items:flex-start}.ux-answer{gap:11px}
  .ni-souhrn-flex .ni-dl{min-width:0;max-width:none;flex:1 1 100%}
  #ni-app .ni-hub-card[class*=ni-hubcol]{min-height:170px}
}
@media(prefers-reduced-motion:reduce){.ni-hub-card,.dok-section{transition:none!important}}

/* T-004: oddělená větev „Opravil jsem sám“. */
.ux-head-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.ux-check{display:flex!important;align-items:flex-start;gap:9px;padding:10px 0;color:var(--text)!important;font-size:.85rem!important;line-height:1.4}
.ux-check input{flex:none;width:18px!important;height:18px!important;margin:1px 0 0}
.opr-safety-choice{display:grid!important;grid-template-columns:20px 34px minmax(0,1fr);align-items:start;gap:10px;margin:12px 0 18px;padding:14px 16px!important;border:1px solid #b54708;border-radius:12px;background:#fff7e8;color:#713f12!important;cursor:pointer;line-height:1.45}
.opr-safety-choice:hover{border-color:#b45309;background:#ffefd1}.opr-safety-choice:focus-within{outline:3px solid rgba(217,119,6,.25);outline-offset:2px}
.opr-safety-choice input{width:20px!important;height:20px!important;margin:3px 0 0;accent-color:#b45309}
.opr-safety-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#fed7aa;color:#9a3412}.opr-safety-icon svg{width:20px;height:20px}
.opr-safety-choice strong{display:block;font-size:.95rem;color:inherit}.opr-safety-choice small{display:block;margin-top:3px;font-size:.85rem;color:#713f12;line-height:1.45}
.ux-reconcile{margin-top:5px;white-space:normal;line-height:1.4}.ux-reconcile-box{margin:0 0 1rem;padding:14px 16px;border:1px solid #b2ddff;border-radius:12px;background:#eff8ff;color:#1849a9}.ux-reconcile-box p{margin:5px 0;color:#102a56}.ux-reconcile-box small{color:#344054}.ux-saldo-breakdown{white-space:normal;line-height:1.45}.ux-payment-missing p{margin:.45rem 0 0}
.opr-svepomoc{background:#ecfdf3;color:#0f766e;border:1px solid #abefc6}.opr-majitel{background:#eff8ff;color:#175cd3;border:1px solid #b2ddff}.opr-zapocet{background:#f4f3ff;color:#5925dc;border:1px solid #d9d6fe}
.opr-svepomoc-karta:before{background:linear-gradient(#0f766e,#32d583)}
.opr-mat-row{display:grid;grid-template-columns:minmax(0,1fr) 150px 44px;gap:8px;margin-bottom:8px;align-items:center}
.opr-material-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0 16px}
.opr-material-list{list-style:none;padding:0;margin:0}.opr-material-list li{display:flex;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid var(--ram)}
.opr-material-total{text-align:right}.opr-risk{margin:2px 0 12px;padding:10px 12px;border:1px solid #fdb022;border-radius:10px;background:#fffaeb;color:#7a2e0e;font-size:.8rem;font-weight:600}
#ni-app.tema-tmave .opr-svepomoc{background:#053321;color:#75e0a7;border-color:#087443}
#ni-app.tema-tmave .opr-majitel{background:#102a56;color:#84adff;border-color:#1849a9}
#ni-app.tema-tmave .opr-zapocet{background:#292056;color:#bdb4fe;border-color:#53389e}
#ni-app.tema-tmave .opr-risk{background:#3a2914;color:#fbdba7;border-color:#7a4c12}
body.ni-tema-tmave .opr-safety-choice{background:#2b2114;border-color:#d89a36;color:#fff4d6!important}
body.ni-tema-tmave .opr-safety-choice:hover{background:#332718;border-color:#f0b95a}
body.ni-tema-tmave .opr-safety-choice small{color:#f8e3b4}
body.ni-tema-tmave .opr-safety-icon{background:#5a3b16;color:#ffe1a8}
body.ni-tema-tmave .ux-reconcile-box{background:#142742;border-color:#315f91;color:#cfe8ff}body.ni-tema-tmave .ux-reconcile-box p,body.ni-tema-tmave .ux-reconcile-box small{color:#d7e8fa}
@media(max-width:520px){.ux-head-actions{width:100%;justify-content:stretch}.ux-head-actions .ni-btn{flex:1 1 100%;justify-content:center}.opr-mat-row{grid-template-columns:minmax(0,1fr) 110px 44px}.opr-material-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:860px){.ni-overlay{z-index:1100;padding:.5rem .5rem calc(82px + env(safe-area-inset-bottom))}.ni-overlay .ni-modal{margin:0 auto;max-height:calc(100dvh - 94px - env(safe-area-inset-bottom));padding-bottom:calc(1.75rem + env(safe-area-inset-bottom));overscroll-behavior:contain}.opr-svepomoc-form>.ni-akce{position:relative;z-index:1;margin-bottom:.25rem;padding-bottom:.25rem}}

/* T-004 / 1.54.4 — cílené komponentové opravy maximálního auditu. */
.ux-value-definition{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin:12px 0;padding:12px 14px;border:1px solid var(--ram);border-radius:12px;background:var(--ak-svetla);color:var(--text);font-size:.8rem;line-height:1.45}
.ux-value-definition span{color:var(--text2)}
#ni-app.tema-tmave .ux-value-definition{background:#0e3a35;border-color:#207e72;color:#f2f4f7}
#ni-app.tema-tmave .ux-value-definition span{color:#cbd5e1}
.pl-cur .ni-dl .ni-pozn.ux-reconcile{display:block;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.45}
.ux-payment-warning{margin:0 0 12px;padding:12px 14px;border:1px solid var(--zluta-ram);border-radius:12px;background:var(--zluta-bg);color:var(--zluta);font-size:.8rem;line-height:1.45}
.ux-payment-warning[hidden]{display:none}
#ni-app.tema-tmave .ux-payment-warning{background:#3a2914;border-color:#7a4c12;color:#fbdba7}
.ux-cost-group{margin:0 0 16px;padding:16px;border:1px solid var(--ram);border-radius:14px;background:var(--karta)}
.ux-cost-group>h3{margin:0 0 12px;font-size:.95rem}.ux-cost-group[data-kind=payments]{border-left:4px solid #175cd3}
.ux-cost-group[data-kind=cost]{border-left:4px solid #0f766e}
.ux-electric-breakdown{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px;min-width:0;padding:14px 16px;border:1px solid var(--ram);border-radius:12px;background:var(--karta);font-size:.8rem;line-height:1.35}
.ux-electric-breakdown b{font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.ux-electric-breakdown .sum{margin-top:2px;padding-top:10px;border-top:1px solid var(--ram);color:var(--text)}
.ux-electric-breakdown small{grid-column:1/-1;color:var(--text2);overflow-wrap:anywhere}
.ux-readonly-banner,.ux-last-reading{margin:0 0 16px;padding:12px 14px;border:1px solid #b2ddff;border-radius:12px;background:#eff8ff;color:#1849a9;font-size:.8rem;line-height:1.45}
#ni-app.tema-tmave .ux-readonly-banner,#ni-app.tema-tmave .ux-last-reading{background:#102a56;border-color:#1849a9;color:#b2ccff}
.gal-room-form{display:grid;gap:14px}.ni-form-error{margin:0;color:#b42318;font-size:.8rem;font-weight:600}.ni-form-error[hidden]{display:none}
.dok-contract-state{display:inline-flex;align-items:center;border-radius:999px;padding:.15rem .48rem;font-size:.76rem;font-weight:700;line-height:1.2}
.dok-contract-state.draft{background:#fffaeb;color:#93370d;border:1px solid #fedf89}.dok-contract-state.valid{background:#ecfdf3;color:#0f766e;border:1px solid #abefc6}
#ni-app.tema-tmave .dok-contract-state.draft{background:#3a2914;color:#fbdba7;border-color:#7a4c12}#ni-app.tema-tmave .dok-contract-state.valid{background:#053321;color:#75e0a7;border-color:#087443}
.ux-protocol-mobile{display:none}.ni-zadosti-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start}.ni-zkarta{min-width:0;height:auto;align-self:start}

@media(max-width:760px){
  .ni-finance-dashboard .ni-top .ni-vodoznak{display:none}
  .ux-protocol-desktop{display:none}.ux-protocol-mobile{display:grid;gap:0;border:1px solid var(--ram);border-radius:12px;background:var(--karta);overflow:hidden}
  .ux-protocol-item{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;min-width:0;padding:12px;border:0;border-bottom:1px solid var(--ram);border-radius:0;background:transparent;overflow-wrap:anywhere}
  .ux-protocol-item:last-child{border-bottom:0}.ux-protocol-item h3,.ux-protocol-item p{grid-column:1/-1;margin:0;font-family:var(--ni-font,Arial,sans-serif)}.ux-protocol-item h3{font-size:.88rem;line-height:1.3}.ux-protocol-item p{color:var(--text2);font-size:.72rem;line-height:1.35}
  .ux-protocol-fact{min-width:0;padding:0;background:transparent}.ux-protocol-fact small,.ux-protocol-fact b{display:block}.ux-protocol-fact small{color:var(--text2);font-size:.64rem;font-weight:700}.ux-protocol-fact b{margin-top:2px;color:var(--text);font-size:.8rem;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
  .ni-zadosti-grid{grid-template-columns:1fr}
}
@media(max-width:390px){.ux-electric-breakdown{gap:8px;padding:12px}.ux-electric-breakdown b{font-size:.8rem}}

/* T-004 / 1.54.5 — cílené opravy tří potvrzených připomínek. */
@media(max-width:760px){
  .ni-dl .ni-pozn.ux-full-note{
    display:block;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:anywhere;
    line-height:1.4;
  }
}
#ni-app.tema-tmave .ni-zkarta .zk-otevrit{
  color:#5eead4;
  font-weight:700;
}
#ni-app.tema-tmave .dnes-zpet-nahoru{color:#eef1f6}

/* T-005 — schválené zjednodušení Dnes, Zápočtů, Domu a Smlouvy. */
.t005-finance-dashboard{margin-top:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
.t005-finance-answer{margin-top:0}
.t005-invest-list{padding:6px 14px}
.t005-invest-row{display:grid;grid-template-columns:104px minmax(170px,1fr) minmax(170px,230px) 104px 118px auto;gap:12px;align-items:center;min-width:0;padding:14px 12px;border-bottom:0}
.t005-invest-row:last-child{border-bottom:0}.t005-invest-name{min-width:0}.t005-invest-name b,.t005-invest-name small{display:block;overflow-wrap:anywhere}.t005-invest-name small{margin-top:3px;color:var(--text2);font-size:.76rem}.t005-invest-amount{text-align:right;font-variant-numeric:tabular-nums}.t005-invest-state .ni-st{white-space:normal;text-align:center}
.t005-energy-panels{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:16px;align-items:start}
.t005-energy-panel{min-width:0;padding:16px;border:1px solid var(--ram);border-radius:16px;background:var(--karta)}.t005-energy-panel>h2{margin:0 0 14px;font-size:1.05rem}.t005-energy-panel .ni-dash-2col{grid-template-columns:1fr}.t005-energy-panel .ni-karta{max-width:100%}

/* 1.55.9 — Provoz a energie: nahoře graf + přehled, další bloky vždy po řádcích. */
.t007-energy-stack{display:grid;gap:16px;min-width:0}
.t007-energy-stack>h2{margin-bottom:-4px}
.t007-energy-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:16px;align-items:stretch;min-width:0}
.t007-energy-chart,.t007-energy-summary{display:grid;min-width:0}
.t007-energy-hero .ni-karta{width:100%;max-width:none;margin:0;min-width:0}
.t007-energy-summary .ni-souhrn-grid{grid-template-columns:1fr;margin-bottom:0}
.t007-energy-summary .ni-souhrn-flex{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;margin:0}
.t007-energy-summary .ni-souhrn-flex .ni-dl{max-width:none;min-width:0}
.t007-energy-section{min-width:0;padding:18px;border:1px solid var(--ram);border-radius:16px;background:var(--karta);box-shadow:var(--stin)}
.t007-energy-section>.ni-karta{max-width:none;margin:0;box-shadow:none;border:0;padding:0;background:transparent}
.t007-energy-section>.ni-karta+.ni-karta{margin-top:16px}
.t007-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.t007-section-head span{display:block;margin-bottom:3px;color:var(--ak);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.t007-section-head h2{margin:0;font-size:1.05rem}
.t007-empty{display:flex;flex-direction:column;justify-content:center;min-height:180px}
.t007-empty h2{margin:0 0 8px}
#ni-app.tema-tmave .t007-energy-section{background:#18212d;border-color:#2a394b;box-shadow:none}
@media(max-width:980px){.t007-energy-hero{grid-template-columns:1fr}.t007-energy-summary .ni-souhrn-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.t007-energy-section{padding:13px}.t007-energy-summary .ni-souhrn-grid,.t007-energy-summary .ni-souhrn-flex{grid-template-columns:1fr}.t007-section-head .ni-btn{width:100%;justify-content:center}}

/* 1.56.0 — barevné karty jsou zároveň navigace Provozu; elektřina má jediný finanční řádek. */
.t008-cost-nav{margin:0 0 16px;padding:15px 16px 16px;border:1px solid var(--ram);border-radius:16px;background:var(--karta);box-shadow:var(--stin)}
.t008-cost-nav .t007-section-head{margin-bottom:11px}
.t008-energy-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0}
.t008-energy-tabs .ni-kom-karta{min-width:0;border-top-width:4px;box-shadow:none}
.t008-energy-tabs .ni-kom-karta.on{background:var(--ak-svetla);box-shadow:inset 0 0 0 2px var(--kom-barva)}
.t008-energy-tabs .ni-kom-karta.on .ni-kom-nazev{color:var(--kom-barva)}
.t008-energy-tabs .ni-kom-nazev{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%}
.t008-energy-tabs .ni-kom-nazev .ni-st{flex:none;margin:0}
.t008-energy-tabs .ni-kom-castka{max-width:100%;font-size:1.15rem;overflow-wrap:anywhere}
.t008-energy-finance-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 18px}
.t008-energy-finance-row .ni-dl{min-width:0;margin:0}
#ni-app.tema-tmave .t008-cost-nav{background:#18212d;border-color:#2a394b;box-shadow:none}
#ni-app.tema-tmave .t008-energy-tabs .ni-kom-karta.on{background:#202f3c}
@media(max-width:1100px){.t008-energy-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.t008-energy-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.t008-energy-finance-row{grid-template-columns:1fr}}
@media(max-width:430px){.t008-cost-nav{padding:13px}.t008-energy-tabs{grid-template-columns:1fr}}

/* Dům → Ostatní: společný kategoriální přehled pro interní roli i agregovaný pohled majitele. */
.t024-other-costs{min-width:0}
.t024-tenant-view .t007-energy-hero{align-items:start}
.t024-tenant-view .t007-energy-chart,.t024-tenant-view .t007-energy-summary{align-self:start}
.t024-other-costs .t024-category-chart{display:block;width:100%;max-width:680px;height:auto;margin:0 auto}
.t024-category-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:7px 13px;margin:14px 0 4px;color:var(--text2);font-size:.78rem}
.t024-category-legend span{display:inline-flex;align-items:center;gap:6px;min-width:0}
.t024-category-legend i,.t024-category-summary-row i{width:9px;height:9px;flex:none;border-radius:50%}
.t024-category-summary{display:grid;gap:0;min-width:0;margin-top:3px;border:1px solid var(--ram);border-radius:12px;overflow:hidden}
.t024-category-summary-head,.t024-category-summary-row,.t024-category-summary-total{display:grid;grid-template-columns:minmax(0,1fr) auto 54px;gap:10px;align-items:center;padding:9px 10px}
.t024-category-summary-head{background:var(--pozadi);color:var(--text2);font-size:.7rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.t024-category-summary-row{border-top:1px solid var(--ram);font-size:.8rem}
.t024-category-summary-row>span:first-child{display:flex;align-items:center;gap:7px;min-width:0;overflow-wrap:anywhere}
.t024-category-summary-row strong,.t024-category-summary-total strong{text-align:right;white-space:nowrap}
.t024-category-summary-row>span:last-child,.t024-category-summary-total>span:last-child{text-align:right;color:var(--text2);white-space:nowrap}
.t024-category-summary-total{border-top:1px solid var(--ram);background:var(--pozadi);font-size:.82rem;font-weight:800}
.t024-cost-stats{margin-top:14px;padding-top:14px;border-top:1px solid var(--ram)}
.t024-owner-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(250px,.6fr);gap:16px;align-items:stretch}
.t024-owner-chart,.t024-owner-total{min-width:0;margin:0;max-width:none}
.t024-owner-chart>.ni-pozn{text-align:center;margin:12px 0 0}
.t024-owner-empty{display:grid;place-content:center;min-height:170px;text-align:center;color:var(--text2)}
.t024-owner-empty h2{margin:0 0 6px;color:var(--text)}
.t024-owner-empty p{margin:0}
.t024-owner-total{position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.t024-owner-total p{margin:0 0 8px;color:var(--text2);font-size:.82rem;font-weight:700}
.t024-owner-total strong{font-size:clamp(1.65rem,3vw,2.35rem);line-height:1.05;color:var(--text)}
.t024-owner-total>span:last-child{margin-top:8px;color:var(--text2);font-size:.8rem}
.t024-form-error{display:block;min-height:1.2em;margin-top:4px;color:#b42318;font-size:.76rem;font-weight:700}
#ni-app.tema-tmave .t024-category-summary-head,#ni-app.tema-tmave .t024-category-summary-total{background:#111923}
@media(max-width:900px){.t024-owner-hero{grid-template-columns:1fr}.t024-owner-total{min-height:150px}}
@media(max-width:760px){.t024-other-cost-head{flex-wrap:wrap}.t024-other-cost-head>.t011-year-switch{max-width:100%;margin-left:0}}
@media(max-width:700px){.t024-category-summary-head,.t024-category-summary-row,.t024-category-summary-total{grid-template-columns:minmax(0,1fr) auto 50px;gap:7px;padding-left:8px;padding-right:8px}.t024-category-summary-row{font-size:.75rem}}

/* 1.56.1 — kompaktní rozpad elektřiny pod grafem. */
.t009-electric-breakdown-chips{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.t009-electric-breakdown-chips span{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:1px solid #f4c36b;border-radius:999px;background:#fffaeb;color:#7a2e0e;font-size:.76rem}
.t009-electric-breakdown-chips b{font-size:.8rem;font-weight:800;font-variant-numeric:tabular-nums}
#ni-app.tema-tmave .t009-electric-breakdown-chips span{border-color:#7a5a18;background:#3a2f10;color:#fde68a}

/* 1.56.2 — Smlouva v samostatném okně s redline změnami přímo v textu. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.t009-contract-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:15px 17px;border:1px solid #99d5cc;border-left:5px solid #0f766e;border-radius:14px;background:#f0fdfa;color:#101828}
.t009-contract-alert>div:first-child{display:flex;align-items:flex-start;gap:12px;min-width:0}.t009-contract-alert b{font-size:.95rem}.t009-contract-alert p{margin:4px 0 0;color:#475467;font-size:.8rem;line-height:1.45}
.t009-contract-alert-icon{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:9px;background:#ccfbf1;color:#0f766e;font-size:.95rem;font-weight:800}
.t009-contract-alert.attention,.t009-contract-alert.warning{border-color:#f2c56d;border-left-color:#b54708;background:#fffaeb}.t009-contract-alert.attention .t009-contract-alert-icon,.t009-contract-alert.warning .t009-contract-alert-icon{background:#fef0c7;color:#93370d}
.t009-contract-alert.returned{border-color:#f2a69b;border-left-color:#b42318;background:#fff1f0}.t009-contract-alert.returned .t009-contract-alert-icon{background:#fee4e2;color:#b42318}
.t009-contract-alert.waiting{border-color:#b2ccff;border-left-color:#175cd3;background:#eff8ff}.t009-contract-alert.waiting .t009-contract-alert-icon{background:#d1e9ff;color:#175cd3}
.t009-contract-alert-actions{display:flex!important;align-items:center!important;gap:8px!important}.t009-contract-alert-actions details{position:relative}.t009-contract-alert-actions summary{cursor:pointer;color:#475467;font-size:.76rem;font-weight:700;white-space:nowrap}.t009-contract-alert-actions details .ni-btn{margin:8px 4px 0 0}
.t009-contract-screen{min-width:0}
.t009-contract-screen .t009-contract-layout{display:grid;grid-template-columns:minmax(270px,285px) minmax(0,1fr);gap:16px;align-items:start}
.t009-contract-screen .t009-contract-sidebar{position:static;align-self:start;display:flex;flex-direction:column;min-width:0;max-height:clamp(420px,64dvh,720px);box-sizing:border-box;overflow:hidden;padding:14px;border:1px solid var(--ram);border-radius:16px;background:var(--karta);box-shadow:var(--stin)}
.t009-contract-screen .t009-contract-sidebar-head{display:flex;flex:none;align-items:center;justify-content:space-between;gap:10px;padding:0 2px 11px;border-bottom:1px solid var(--ram)}.t009-contract-screen .t009-contract-sidebar-head span{display:block;color:var(--ak);font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.t009-contract-screen .t009-contract-sidebar-head h2{margin:3px 0 0;font-size:.95rem}.t009-contract-screen .t009-contract-sidebar-head>b{display:grid;place-items:center;min-width:29px;height:29px;padding:0 8px;border-radius:999px;background:var(--ak-svetla);color:var(--ak);font-size:.74rem}
.t009-contract-screen .t009-contract-sidebar-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:2px;scrollbar-color:#98a2b3 transparent;scrollbar-width:thin}
.t009-contract-screen .t009-version-group{margin:13px 3px 6px;color:var(--text2);font-size:.67rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.t009-contract-screen .t009-version-list{display:grid;gap:3px}
.t009-contract-screen .t009-version{display:grid;grid-template-columns:36px minmax(0,1fr);gap:9px;width:100%;padding:9px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color .14s,background .14s,transform .14s}.t009-contract-screen .t009-version:hover{transform:translateY(-1px);border-color:var(--ram);background:#f8fafc}.t009-contract-screen .t009-version.active{background:#f5fbfa}.t009-contract-screen .t009-version.on{border-color:#99d5cc;background:#edf9f7;box-shadow:inset 3px 0 0 #0f766e}
.t009-contract-screen .t009-version-number{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:transparent;color:#475467;font-size:.76rem;font-weight:800}.t009-contract-screen .t009-version.active .t009-version-number{background:#e6f5f2;color:#115e59}.t009-contract-screen .t009-version.on .t009-version-number{background:#ccfbf1;color:#115e59}
.t009-contract-screen .t009-version-info{display:block;min-width:0}.t009-contract-screen .t009-version-info>b,.t009-contract-screen .t009-version-info>small{display:block}.t009-contract-screen .t009-version-info>b{font-size:.8rem}.t009-contract-screen .t009-version-info>small{margin-top:2px;color:var(--text2);font-size:.68rem;line-height:1.35;overflow-wrap:anywhere}
.t009-contract-screen .t009-version-signs{display:grid;gap:2px;margin-top:6px}.t009-contract-screen .t009-version-signs i{padding:0;background:none;color:#667085;font-size:.59rem;font-style:normal;font-weight:700;line-height:1.35}.t009-contract-screen .t009-version-signs i.ok{background:none;color:#0f766e}
.t009-contract-screen .t009-contract-document{min-width:0;padding:0;overflow:hidden;border:1px solid var(--ram);border-radius:16px;background:var(--karta);box-shadow:var(--stin)}
.t009-contract-screen .t009-document-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px 14px;border-bottom:1px solid var(--ram)}.t009-contract-screen .t009-document-title{min-width:0}.t009-contract-screen .t009-document-kicker{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.t009-contract-screen .t009-document-head h2{margin:6px 0 2px;font-size:1.25rem}.t009-contract-screen .t009-document-head p{margin:0;max-width:620px;color:var(--text2);font-size:.75rem;line-height:1.45}.t009-contract-screen .t009-document-version{color:var(--text2);font-size:.7rem;font-weight:700}.t009-contract-screen .t009-document-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.t009-contract-screen .t009-document-state{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:.62rem;font-weight:800;text-transform:uppercase}.t009-contract-screen .t009-document-state.platna{background:#dcfae6;color:#0f766e}.t009-contract-screen .t009-document-state.navrh{background:#fef0c7;color:#93370d}.t009-contract-screen .t009-document-state.vraceno{background:#fee4e2;color:#b42318}
.t009-contract-screen .t014-view-toggle{display:inline-flex;align-items:center;gap:5px}
.t009-contract-screen .t009-document-confirmations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;padding:9px 18px;border-bottom:1px solid var(--ram)}.t009-contract-screen .t009-document-confirmations span{min-width:0;padding:7px 9px;border:1px solid #e4e7ec;border-radius:8px;background:#f8fafc;color:#667085;font-size:.68rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}.t009-contract-screen .t009-document-confirmations span.ok{border-color:#b7e8d0;background:#f3fbf6;color:#0f766e}.t009-contract-screen .t009-document-confirmations span.wait{border-color:#f3d99a;background:#fffaf0;color:#93370d}
.t009-change-summary{margin:14px 0;padding:16px;background:#f8fafc}.t009-change-lead{margin:0 0 12px;padding:10px 12px;border-left:3px solid #0f766e;background:#fff;color:#344054;font-size:.85rem;line-height:1.5}.t009-section-title span{display:block;color:var(--ak);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.t009-section-title h2{margin:3px 0 12px;font-size:1.05rem}
.t009-contract-screen .t010-document-more{position:relative}.t009-contract-screen .t010-document-more>summary{display:grid;place-items:center;min-width:39px;min-height:34px;padding:0 10px;border:1px solid var(--ram);border-radius:8px;background:var(--karta);color:var(--text);font-weight:800;letter-spacing:.08em;cursor:pointer;list-style:none}.t009-contract-screen .t010-document-more>summary::-webkit-details-marker{display:none}.t009-contract-screen .t010-document-more>div{position:absolute;z-index:8;top:calc(100% + 7px);right:0;display:grid;gap:6px;min-width:190px;padding:8px;border:1px solid var(--ram);border-radius:11px;background:var(--karta);box-shadow:0 16px 38px rgba(16,24,40,.18)}.t009-contract-screen .t010-document-more>div .ni-btn{width:100%;justify-content:flex-start;white-space:nowrap}
.t009-contract-screen .t010-contract-scroll-shell{position:relative;background:#eef1f4}.t009-contract-screen .t010-contract-scroll-shell:after{content:none}.t009-contract-screen .t010-contract-viewport{height:clamp(520px,70vh,820px);overflow-y:auto;overscroll-behavior:contain;padding:24px clamp(18px,3vw,36px) 34px;scrollbar-color:#98a2b3 transparent;scrollbar-width:thin}.t009-contract-screen .t010-contract-viewport:focus-visible{outline:3px solid #2dd4bf;outline-offset:-3px}
.t010-contract-legend{display:flex;align-items:center;gap:16px;position:sticky;z-index:3;top:-16px;margin:-16px -20px 15px;padding:12px 20px;border-bottom:1px solid #e4e7ec;background:rgba(255,255,255,.96);backdrop-filter:blur(7px);color:#475467;font-size:.76rem}.t010-contract-legend span{display:inline-flex;align-items:center;gap:6px}.t010-contract-legend i{width:13px;height:13px;border-radius:3px}.t010-contract-legend i.removed{background:#fecaca}.t010-contract-legend i.added{background:#bbf7d0}.t010-contract-legend b{margin-left:auto;color:#667085;font-size:.7rem}
.t009-contract-screen .t009-contract-paper-wrap{width:100%;max-width:840px;margin:0 auto;color-scheme:light}.t009-contract-screen .t009-contract-paper-wrap .t005-contract-paper{box-sizing:border-box;width:100%;margin:0;border:1px solid #d0d5dd;background:#fff;color:#101828;box-shadow:0 10px 28px rgba(16,24,40,.09)}
.t009-contract-screen .t010-contract-paper{min-height:520px;max-height:none;overflow:visible;padding:58px clamp(28px,6vw,76px);font-family:Georgia,"Times New Roman",serif;font-size:.93rem;line-height:1.72;white-space:pre-wrap;overflow-wrap:anywhere}.t010-inline-change{position:relative;margin-left:-5px;padding:3px 5px 4px 9px;border-left:3px solid #0f9f92;border-radius:3px;background:#f0fdfa;box-decoration-break:clone;-webkit-box-decoration-break:clone}.t010-inline-change del{padding:1px 3px;border-radius:3px;background:#fee2e2;color:#b42318;text-decoration-color:#b42318;text-decoration-thickness:2px}.t010-inline-change ins{margin-left:5px;padding:1px 3px;border-radius:3px;background:#dcfce7;color:#0f766e;font-weight:700;text-decoration:underline;text-decoration-color:#16a34a;text-decoration-thickness:2px;text-underline-offset:2px}.t010-change-badge{display:inline-flex;margin-left:7px;padding:2px 6px;border:1px solid #5cc8bd;border-radius:999px;background:#ecfdf9;color:#0f766e;font-family:var(--ni-font);font-size:.7rem;font-weight:800;line-height:1.35;vertical-align:middle;white-space:nowrap}
.t009-contract-screen .t014-no-comparison{margin:0;padding:9px 18px;border-bottom:1px solid var(--ram);background:#f8fafc;color:#667085;font-size:.72rem}
.t009-contract-empty{text-align:center;padding:54px 24px}.t009-contract-empty h2{margin:0 0 7px}.t009-contract-empty p{margin:0 0 18px;color:var(--text2)}
.t009-contract-editor.t005-contract-form{max-width:1100px;margin:0 0 16px;padding:0;overflow:hidden}.t009-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--ram);background:#f8fafc}.t009-editor-head h2{margin:2px 0 5px}.t009-editor-head p:last-child{margin:0;color:var(--text2);font-size:.8rem}.t009-editor-head>span{display:grid;place-items:center;flex:none;min-width:48px;height:48px;border-radius:13px;background:#0f766e;color:#fff;font-size:.9rem;font-weight:800}
.t009-editor-section{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:20px;border-bottom:1px solid var(--ram)}.t009-editor-section>div:last-child{min-width:0}.t009-editor-section h3{margin:1px 0 3px;font-size:.95rem}.t009-editor-section h3+p{margin:0 0 12px;color:var(--text2);font-size:.76rem}.t009-editor-step{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e8f5f2;color:#0f766e;font-size:.8rem;font-weight:800}.t009-editor-section textarea{width:100%}.t009-contract-editor .t009-editor-section fieldset{margin:0;padding:0;border:0}.t009-editor-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;background:#f8fafc}.t009-editor-footer>p{margin:0;color:var(--text2);font-size:.76rem}.t009-editor-footer .ni-akce{margin:0}
#ni-app.tema-tmave .t009-contract-alert{background:#152b29;color:#eef1f6}#ni-app.tema-tmave .t009-contract-alert p{color:#c3cad5}#ni-app.tema-tmave .t009-contract-alert.attention,#ni-app.tema-tmave .t009-contract-alert.warning{background:#3a2f10}#ni-app.tema-tmave .t009-contract-alert.returned{background:#3b1719}#ni-app.tema-tmave .t009-contract-alert.waiting{background:#172c46}
#ni-app.tema-tmave .t009-contract-screen .t009-contract-sidebar,#ni-app.tema-tmave .t009-contract-screen .t009-contract-document{background:#18212d;border-color:#2a394b;box-shadow:none}#ni-app.tema-tmave .t009-contract-screen .t009-version{background:transparent;border-color:transparent}#ni-app.tema-tmave .t009-contract-screen .t009-version:hover{background:#202b3a;border-color:#344054}#ni-app.tema-tmave .t009-contract-screen .t009-version.active{background:#172a2a}#ni-app.tema-tmave .t009-contract-screen .t009-version.on{background:#0e3a35;border-color:#2dd4bf}#ni-app.tema-tmave .t009-contract-screen .t009-version-number{background:transparent;color:#b3bac6}#ni-app.tema-tmave .t009-contract-screen .t009-version.active .t009-version-number,#ni-app.tema-tmave .t009-contract-screen .t009-version.on .t009-version-number{background:#17554e;color:#ccfbf1}#ni-app.tema-tmave .t009-contract-screen .t009-version-signs i{background:none;color:#b3bac6}#ni-app.tema-tmave .t009-contract-screen .t009-version-signs i.ok{background:none;color:#a6f4c5}
#ni-app.tema-tmave .t009-change-summary{background:#141a26}#ni-app.tema-tmave .t009-change-lead{background:#202b3a;color:#d6dbe6}#ni-app.tema-tmave .t009-contract-screen .t010-contract-scroll-shell{background:#101720}#ni-app.tema-tmave .t009-contract-screen .t009-contract-paper-wrap .t005-contract-paper{background:#fff;color:#101828;border-color:#cbd2dc}#ni-app.tema-tmave .t009-contract-screen .t009-document-confirmations span{background:#202b3a;border-color:#344054;color:#c3cad5}#ni-app.tema-tmave .t009-contract-screen .t009-document-confirmations span.ok{background:#15352b;border-color:#256a50;color:#a6f4c5}#ni-app.tema-tmave .t009-contract-screen .t009-document-confirmations span.wait{background:#372b15;border-color:#735d25;color:#fde68a}#ni-app.tema-tmave .t010-contract-legend{border-color:#344054;background:rgba(17,24,39,.96);color:#c3cad5}#ni-app.tema-tmave .t010-contract-legend b{color:#98a2b3}#ni-app.tema-tmave .t010-inline-change{border-left-color:#2dd4bf;background:#102f2d}#ni-app.tema-tmave .t010-inline-change del{background:#4b1d22;color:#fda29b}#ni-app.tema-tmave .t010-inline-change ins{background:#123b2a;color:#75e0a7}#ni-app.tema-tmave .t010-change-badge{border-color:#207e72;background:#0e3a35;color:#99f6e4}
#ni-app.tema-tmave .t009-editor-head,#ni-app.tema-tmave .t009-editor-footer{background:#141a26}#ni-app.tema-tmave .t009-editor-step{background:#17554e;color:#ccfbf1}
@media(max-width:980px){.t009-contract-screen .t009-contract-layout{grid-template-columns:1fr}.t009-contract-screen .t009-contract-sidebar{position:static;display:block;max-height:none;overflow:visible}.t009-contract-screen .t009-contract-sidebar-scroll{overflow:visible}.t009-contract-screen .t009-version-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.t009-contract-screen .t009-contract-alert,.t009-contract-screen .t009-document-head,.t009-editor-head,.t009-editor-footer{align-items:stretch;flex-direction:column}.t009-contract-alert>.ni-btn,.t009-contract-alert-actions>.ni-btn{width:100%;justify-content:center}.t009-contract-alert-actions{align-items:stretch!important;flex-direction:column}.t009-contract-screen .t009-version-list{grid-template-columns:1fr}.t009-contract-screen .t009-document-actions{width:100%;justify-content:flex-start}.t009-contract-screen .t009-document-actions>.ni-btn{flex:1 1 auto;justify-content:center}.t009-contract-screen .t010-document-more{flex:none}.t009-contract-screen .t010-contract-viewport{height:65vh;padding:14px 10px 26px}.t010-contract-legend{top:-12px;margin:-12px -10px 12px;padding:10px;gap:10px}.t009-contract-screen .t010-contract-paper{min-height:520px;padding:28px 18px;font-size:.85rem}.t010-change-badge{margin-left:3px}.t009-editor-section{grid-template-columns:1fr;padding:16px}.t009-editor-footer .ni-akce{display:grid;width:100%}.t009-editor-footer .ni-btn{width:100%;justify-content:center}}

/* 1.56.1 — vlastní věci nájemníka v protokolu bez dlouhé tabulky. */
.t009-protocol-belongings{margin-top:18px;padding:12px;border:1px solid var(--ram);border-radius:12px;background:#f8fafc}.t009-protocol-belongings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.t009-protocol-belongings-head h2{margin:0;font-size:.9rem}.t009-protocol-belongings-head p{margin:2px 0 0;color:var(--text2);font-size:.7rem;line-height:1.3}.t009-protocol-belongings-head>span{flex:none;padding:3px 7px;border-radius:999px;background:#e8f5f2;color:#115e59;font-size:.66rem;font-weight:800}
.t009-protocol-belongings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.t009-protocol-belonging{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;min-width:0;padding:5px 7px;border:1px solid #e4e7ec;border-radius:7px;background:#fff}.t009-protocol-belonging div{min-width:0}.t009-protocol-belonging b,.t009-protocol-belonging small{display:block;overflow-wrap:anywhere}.t009-protocol-belonging b{font-size:.72rem;line-height:1.22}.t009-protocol-belonging small{margin-top:1px;color:var(--text2);font-size:.64rem;line-height:1.2}.t009-protocol-belonging>span{flex:none;padding:1px 5px;border-radius:999px;background:#f2f4f7;color:#344054;font-size:.64rem;font-weight:800;line-height:1.35}
#ni-app.tema-tmave .t009-protocol-belongings{background:#141a26;border-color:#33405a}#ni-app.tema-tmave .t009-protocol-belonging{background:#18212d;border-color:#344054}#ni-app.tema-tmave .t009-protocol-belonging>span{background:#263244;color:#eef1f6}
@media(max-width:1050px){.t009-protocol-belongings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.t009-protocol-belongings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.t009-protocol-belongings-grid{grid-template-columns:1fr}.t009-protocol-belongings-head{flex-direction:column}}
.t005-valid-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:11px 14px;border:1px solid #99d5cc;border-radius:12px;background:#ecfdf9;color:#115e59}
.t005-contract-status{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;margin:0 0 14px;padding:18px 20px;border:1px solid #99d5cc;border-left:5px solid #0f766e;border-radius:14px;background:var(--karta)}.t005-contract-status b{font-size:1.05rem}.t005-contract-status p{margin:5px 0 0;color:var(--text2)}.t005-contract-status.attention{border-color:#f2c56d;border-left-color:#b54708}.t005-contract-status.returned{border-color:#f2a69b;border-left-color:#b42318}.t005-contract-status details{grid-column:1/-1}.t005-contract-status summary{cursor:pointer;font-weight:700}.t005-contract-status details .ni-btn{margin:10px 8px 0 0}
.t005-contract-tabs{display:flex;gap:8px;margin:0 0 14px}.t005-contract-tabs button{min-height:44px;padding:9px 16px;border:1px solid var(--ram);border-radius:10px;background:var(--karta);color:var(--text);font-weight:700}.t005-contract-tabs button.on{border-color:#0f766e;background:#0f766e;color:#fff}
.t005-contract-work{min-width:0}.t005-contract-paper{min-height:320px;white-space:pre-wrap}.t005-contract-end{margin:14px 0 16px;padding:10px;text-align:center;border:1px dashed var(--ram);border-radius:9px;color:var(--text2);font-weight:700}
.t005-change-summary,.t005-decision,.t005-return-form,.t005-contract-form{margin:0 0 16px;padding:20px;border:1px solid var(--ram);border-radius:14px;background:var(--karta)}
.t005-change-list{display:grid;gap:10px}.t005-change-list article{display:grid;grid-template-columns:150px 1fr 1fr;gap:12px;padding:12px;border:1px solid var(--ram);border-radius:10px}.t005-change-list h4{margin:0}.t005-change-list span{display:block;color:var(--text2);font-size:.76rem;font-weight:800;text-transform:uppercase}.t005-change-list p{margin:4px 0 0;white-space:pre-wrap}.t005-change-list .new{padding-left:12px;border-left:3px solid #0f766e}
.t005-contract-history{margin-top:24px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.t005-contract-history>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}.t005-contract-history>div button{display:flex;flex-direction:column;gap:4px;min-height:64px;padding:12px;text-align:left;border:1px solid var(--ram);border-radius:10px;background:var(--karta);color:var(--text)}.t005-contract-history>div button.on{border:2px solid #0f766e}.t005-contract-history span{color:var(--text2);font-size:.76rem}
.t005-contract-form{max-width:980px}.t005-contract-form fieldset{margin:16px 0;padding:14px;border:1px solid var(--ram);border-radius:12px}.t005-change-row{display:grid;grid-template-columns:180px 1fr 1fr auto;gap:10px;align-items:start;margin-bottom:10px}.t005-change-row label{margin:0}.t005-change-row textarea{min-height:76px}.t005-contract-textarea{min-height:520px!important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.t005-error{min-height:18px;margin:3px 0;color:#b42318;font-size:.8rem;font-weight:700}.t005-return-reason{margin-bottom:14px;padding:12px;border:1px solid #f2a69b;border-radius:10px;background:#fff1f0;color:#7a271a}
#ni-app.tema-tmave .t005-valid-strip{background:#0e3a35;border-color:#207e72;color:#ccfbf1}#ni-app.tema-tmave .t005-return-reason{background:#3b1719;border-color:#912018;color:#fecaca}
.t005-contract-tabs button:focus-visible,.t005-contract-history button:focus-visible,.t006-invest-tabs button:focus-visible{outline:3px solid #2dd4bf;outline-offset:2px}
@media(max-width:900px){.t005-invest-row{display:none}.t005-invest-list{display:none!important}.t005-invest-list+.ux-mobile-list{display:grid;gap:10px}.t005-energy-panels{grid-template-columns:1fr}.t005-change-list article{grid-template-columns:1fr}.t005-change-list .new{padding:0;border:0}.t005-change-row{grid-template-columns:1fr 1fr}.t005-change-row label:first-child{grid-column:1/-1}}
@media(max-width:760px){
  .t005-finance-answer{display:grid;grid-template-columns:1fr;gap:14px}.ni-dlazdice.ni-top{grid-template-columns:1fr!important}
  .t005-valid-strip,.t005-contract-status{grid-template-columns:1fr}.t005-valid-strip .ni-btn,.t005-contract-status>.ni-btn{width:100%;justify-content:center}.t005-contract-tabs{display:grid;grid-template-columns:1fr 1fr}.t005-contract-tabs button{white-space:normal}
  .t005-contract-paper{padding:18px 14px}.t005-change-row{grid-template-columns:1fr}.t005-contract-form{padding:15px}.t005-contract-textarea{min-height:440px!important}
  #ni-main{padding-bottom:calc(96px + env(safe-area-inset-bottom))}
}
@media(max-width:430px){.t005-contract-tabs{grid-template-columns:1fr}.t005-contract-status,.t005-change-summary,.t005-decision,.t005-return-form{padding:15px}.t005-contract-history>div{grid-template-columns:1fr}}

/* 1.55.1 — finanční přehled ve světlém režimu.
 * T-005 odstranil tmavé pozadí kontejneru, ale vnořené karty dál dědily
 * tmavý skleněný vzhled. Na světlém plátně proto vznikla šedá plocha se
 * slabým textem. Světlý režim má nyní vlastní, plně neprůhlednou paletu;
 * tmavého režimu se tato pravidla netýkají. */
#ni-app:not(.tema-tmave) .t005-finance-dashboard{color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer{
  border-color:#0f766e;
  background:linear-gradient(125deg,#0f766e 0%,#116b72 48%,#164e63 100%);
  box-shadow:0 14px 30px -20px rgba(15,76,82,.7);
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer span{color:#ccfbf1}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer strong{color:#fff}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer small{color:#e0f2fe}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer .ni-btn.sek{
  background:#fff;color:#1d2939;border-color:#fff;box-shadow:0 4px 12px rgba(15,23,42,.16)
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-finance-answer .ni-btn.sek:hover{background:#f0fdfa;color:#115e59}

/* Horní KPI zůstávají barevné, ale doprovodný text musí být stejně čitelný
 * jako samotná částka. */
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-top .ni-dl .l{color:rgba(255,255,255,.94)}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-top .ni-dl .ni-pozn{color:rgba(255,255,255,.9)}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-top .ni-dl .ni-vodoznak{opacity:.14}

/* Rozbalovací sekce jsou ve světlém režimu skutečné světlé karty. */
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal{
  background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;
  border:1px solid #d9e2e1;box-shadow:0 8px 22px -18px rgba(16,24,40,.5)
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal>summary{color:#101828;background:#fff}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal>summary:hover{background:#f0fdfa}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal>summary::before{background:#d5f5ef;color:#0f766e}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal>summary .ni-rozbal-hint,
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-souhrn{color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal[open]>summary{border-color:#d9e2e1}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo{background:#f8faf9;color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard h2{color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-pozn{color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-panel-stack .ni-panel-cast:nth-child(2){border-top-color:#d0d5dd}

/* Dílčí finanční karty uvnitř rozbalených sekcí. */
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl,
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-karta{
  background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;
  border-color:#d0d5dd;box-shadow:0 5px 16px -14px rgba(16,24,40,.5)
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl:hover{
  transform:translateY(-1px);border-color:#80c9c1;box-shadow:0 8px 20px -15px rgba(15,118,110,.45)
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl .l{color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl .v{
  background:none;-webkit-text-fill-color:currentColor;color:#101828
}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl.mod .v{color:#175cd3}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl.zel .v{color:#0f766e}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl.zlu .v{color:#93370d}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rozbal-telo .ni-dl.cer .v{color:#b42318}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-value-definition{background:#e8f5f2;border-color:#99d5cc;color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ux-value-definition span{color:#344054}

/* Graf, tabulky a kalendář dostávají samostatné světlé barvy místo
 * zděděných tmavých průhledných odstínů. */
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-progress{background:#dbe5e7;border-color:#cbd5d7}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-progress>div{color:#07131a;box-shadow:none}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab-wrap{border-color:#d0d5dd;background:#fff}
#ni-app:not(.tema-tmave) .t005-finance-dashboard table.ni-tab{background:#fff}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab th{background:#f2f4f7;color:#344054}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab th,
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab td{border-color:#e4e7ec;color:#344054}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab tbody tr:nth-child(even) td{background:#fafafa}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab tbody tr:hover td{background:#f0fdfa}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab tr.mezisoucet td{background:#f4f3ff;color:#3c3489}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-tab tr.celkem td{background:#e8f5f2;color:#115e59}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-legenda{color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes{background:#fff;border-color:#d0d5dd}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes .n{color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes .c{color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.uhrazeno{background:#ecfdf3;border-color:#75e0a7;box-shadow:none}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.uhrazeno .s{background:#d1fadf;color:#05603a}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.zaplaceno{background:#eff8ff;border-color:#84caff;box-shadow:none}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.zaplaceno .s{background:#d1e9ff;color:#1849a9}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.doplatit{background:#fffaeb;border-color:#fec84b;box-shadow:none}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.doplatit .s{background:#fef0c7;color:#93370d}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.nedoplatek{background:#fef3f2;border-color:#f97066;box-shadow:none}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.nedoplatek .s{background:#fee4e2;color:#b42318}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.budouci{background:#fff;border-color:#98a2b3;color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.budouci .s{background:#f2f4f7;color:#475467}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.bez-najmu{background:#f2f4f7;border-color:#d0d5dd}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.bez-najmu .s{background:#e4e7ec;color:#344054}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.castecne{background:#f0fdfa;border-color:#5fe9d0}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-mes.castecne .s{background:#ccfbf1;color:#115e59}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-upozorneni{background:#fffaeb;border-color:#fedf89;color:#7a2e0e}

/* 1.55.2 — kompaktní kalendář přímo pod hlavním finančním stavem. */
.ni-rent-carousel{
  margin:0 0 18px;padding:15px 16px 13px;border:1px solid var(--ram);border-radius:16px;
  background:var(--karta);box-shadow:0 8px 22px -20px rgba(16,24,40,.5)
}
.ni-rent-carousel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:11px}
.ni-rent-carousel-head strong,.ni-rent-carousel-head span{display:block}
.ni-rent-carousel-head strong{color:var(--text);font-size:.95rem;line-height:1.25}
.ni-rent-kicker{margin-bottom:2px;color:var(--ak);font-size:.7rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ni-rent-carousel-nav{display:flex;gap:7px}
.ni-rent-carousel-nav button{
  display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--ram);border-radius:10px;
  background:var(--karta);color:var(--text);font-size:1.15rem;font-weight:800;cursor:pointer
}
.ni-rent-carousel-nav button:hover:not(:disabled){border-color:var(--ak);background:var(--ak-svetla);color:var(--ak)}
.ni-rent-carousel-nav button:focus-visible,.ni-rent-track:focus-visible{outline:3px solid #2dd4bf;outline-offset:2px}
.ni-rent-carousel-nav button:disabled{opacity:.32;cursor:default}
.ni-rent-track{
  display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 81px)/10);gap:9px;overflow-x:auto;
  padding:2px 2px 5px;scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch
}
.ni-rent-track::-webkit-scrollbar{display:none}
.ni-rent-track .ni-rent-month{min-width:0;min-height:92px;padding:.55rem .55rem;scroll-snap-align:start}
.ni-rent-track .ni-rent-month .n{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ni-rent-track .ni-rent-month .c{margin-top:3px;font-size:.7rem}
.ni-rent-track .ni-rent-month .s{max-width:100%;font-size:.58rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}
.ni-rent-track .ni-rent-focus{outline:2px solid var(--ak);outline-offset:-2px}
.ni-rent-carousel-foot{display:flex;align-items:center;gap:10px 15px;flex-wrap:wrap;margin-top:8px;color:var(--text2);font-size:.7rem}
.ni-rent-carousel-foot span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
.ni-rent-carousel-foot i{width:11px;height:11px;border:1px solid var(--ram);border-radius:3px;background:#fff;box-sizing:border-box}
.ni-rent-carousel-foot i.inv{background:#d1fadf;border-color:#75e0a7}.ni-rent-carousel-foot i.paid{background:#d1e9ff;border-color:#84caff}
.ni-rent-carousel-foot i.due{background:#fef0c7;border-color:#fec84b}.ni-rent-carousel-foot i.future{background:#f2f4f7;border-color:#98a2b3}
.ni-rent-carousel-foot small{margin-left:auto;color:var(--text2);font-size:inherit}
.ni-invest-breakdown{margin-top:4px;padding-top:20px;border-top:1px solid var(--ram)}
.ni-invest-breakdown>h2{margin:0 0 14px}

#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-carousel{background:#fff;border-color:#d9e2e1}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-carousel-head strong{color:#101828}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-kicker{color:#0f766e}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-carousel-nav button{background:#fff;border-color:#d0d5dd;color:#344054}
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-carousel-foot,
#ni-app:not(.tema-tmave) .t005-finance-dashboard .ni-rent-carousel-foot small{color:#475467}
#ni-app.tema-tmave .ni-rent-carousel{background:#18212d;border-color:#2a394b;box-shadow:none}
#ni-app.tema-tmave .ni-rent-carousel-nav button{background:#202b3a;border-color:#34445a;color:#eef1f6}
#ni-app.tema-tmave .ni-rent-carousel-foot i.inv{background:rgba(52,211,153,.22);border-color:rgba(52,211,153,.55)}
#ni-app.tema-tmave .ni-rent-carousel-foot i.paid{background:rgba(96,165,250,.22);border-color:rgba(96,165,250,.55)}
#ni-app.tema-tmave .ni-rent-carousel-foot i.due{background:rgba(251,191,36,.2);border-color:rgba(251,191,36,.55)}
#ni-app.tema-tmave .ni-rent-carousel-foot i.future{background:#232d3f;border-color:#526078}

@media(max-width:1500px){.ni-rent-track{grid-auto-columns:calc((100% - 45px)/6)}}
@media(max-width:760px){
  .ni-rent-carousel{padding:13px 12px 11px}.ni-rent-track{grid-auto-columns:calc((100% - 18px)/2.35)}
  .ni-rent-track .ni-rent-month{min-height:96px}.ni-rent-carousel-foot{gap:7px 11px}.ni-rent-carousel-foot small{flex-basis:100%;margin-left:0}
}

/* 1.55.3 — Zápočty: jediný kompaktní ovládací pás a úplné řádky. */
.t006-invest-toolbar{
  display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin:0 0 16px;padding:8px;
  border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:0 6px 18px -18px rgba(16,24,40,.45)
}
.t006-invest-tabs{display:flex;align-items:stretch;gap:12px;min-width:0;flex-wrap:wrap;margin:0 0 14px}
.t006-invest-tabs button{
  display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:7px 10px;border:0;border-radius:9px;
  background:transparent;color:var(--text2);font-family:inherit;font-size:.8rem;font-weight:600;line-height:1.1;white-space:nowrap;cursor:pointer
}
.t006-invest-tabs button:hover{background:var(--ak-svetla);color:var(--text)}
.t006-invest-tabs button.on,.t006-invest-tabs button[aria-selected=true]{background:#e8f5f2;color:#115e59}
.t006-invest-tabs button small{
  display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;
  background:#f2f4f7;color:#475467;font-size:.7rem;font-weight:700
}
.t006-invest-tabs button.on small,.t006-invest-tabs button[aria-selected=true] small{background:#ccebe5;color:#115e59}
.t006-invest-search{flex:1 1 190px;min-width:170px;max-width:290px;margin-left:auto}
.t006-invest-search input{
  width:100%;height:38px;margin:0;padding:7px 11px;border:1px solid var(--ram);border-radius:9px;
  background:var(--pozadi);color:var(--text);font:inherit
}
.t006-invest-search input:focus{outline:3px solid rgba(45,212,191,.28);border-color:#0f766e}
.t006-invest-count{color:var(--text2);font-size:.76rem;white-space:nowrap}
.t006-invest-tags{display:flex!important;align-items:center;gap:4px;flex-wrap:wrap;margin-top:5px}
.t006-invest-tags:empty{display:none!important}
.t006-invest-tags .ni-st{margin:0;font-size:.7rem}
.t006-invest-comments{display:grid;gap:3px;margin-top:7px}
.t006-invest-comments p{
  display:-webkit-box;margin:0;padding:5px 8px;border-left:3px solid #80c9c1;border-radius:0 7px 7px 0;
  background:#f3f8f7;color:#475467;font-size:.7rem;line-height:1.35;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2
}
.t006-invest-comments p b{color:#344054}
.t005-invest-row.ma-nove{margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:9px;background:#fffbeb;box-shadow:inset 4px 0 0 #f59e0b}
.ux-record-card.ma-nove{background:#fffbeb;border-color:#fcd34d;box-shadow:inset 4px 0 0 #f59e0b,var(--stin)}
.t006-invest-actions{display:flex;justify-content:flex-end;gap:6px;min-width:0}
.t006-invest-actions .ni-btn{min-width:0;padding-left:10px;padding-right:10px;white-space:nowrap}
.t006-invest-actions.mobile{display:grid;grid-template-columns:1fr 1fr;margin-top:10px}
.t006-invest-actions.mobile .ni-btn{width:100%;justify-content:center}
.ux-record-card>.t006-invest-tags{margin:8px 0}.ux-record-card>.t006-invest-comments{margin:9px 0 0}

#ni-app.tema-tmave .t006-invest-toolbar{background:#18212d;border-color:#2a394b;box-shadow:none}
#ni-app.tema-tmave .t006-invest-tabs button.on,#ni-app.tema-tmave .t006-invest-tabs button[aria-selected=true]{background:#0e3a35;color:#99f6e4}
#ni-app.tema-tmave .t006-invest-tabs button small{background:#263244;color:#b3bac6}
#ni-app.tema-tmave .t006-invest-tabs button.on small,#ni-app.tema-tmave .t006-invest-tabs button[aria-selected=true] small{background:#17554e;color:#ccfbf1}
#ni-app.tema-tmave .t006-invest-search input{background:#111827;border-color:#475467;color:#f2f4f7}
#ni-app.tema-tmave .t006-invest-comments p{background:#202b3a;border-left-color:#2dd4bf;color:#c3cad5}
#ni-app.tema-tmave .t006-invest-comments p b{color:#eef1f6}
#ni-app.tema-tmave .t005-invest-row.ma-nove,#ni-app.tema-tmave .ux-record-card.ma-nove{background:#3a2f10;border-color:#7c5f10;box-shadow:inset 4px 0 0 #f59e0b}

@media(max-width:1180px){
  .t006-invest-tabs{order:1;flex:1 1 100%;overflow-x:auto;scrollbar-width:thin}
  .t006-invest-search{order:2;margin-left:0}.t006-invest-count{order:3;margin-left:auto}
}
@media(max-width:760px){
  .t006-invest-toolbar{padding:7px}.t006-invest-tabs{gap:2px}.t006-invest-tabs button{padding:7px 8px}
  .t006-invest-search{flex:1 1 100%;max-width:none}.t006-invest-count{margin-left:auto}
}
@media(max-width:430px){
  .t006-invest-actions.mobile{grid-template-columns:1fr}.t006-invest-count{flex:1;margin-left:0}
}

/* 1.55.6 — Dům má počet vstupů podle role a žádnou širokou kartu. */
.t006-house-grid{width:100%;max-width:none}
.t006-house-grid.tenant{grid-template-columns:repeat(3,minmax(0,1fr))}
.t006-house-grid.owner{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1000px}
@media(max-width:1100px){.t006-house-grid.tenant{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.t006-house-grid.tenant,.t006-house-grid.owner{grid-template-columns:1fr;max-width:none}}

/* 1.56.4 — rok provozu, kompaktní Opravy, přehled změn a audit tmavého režimu. */
.t011-year-switch{display:flex;align-items:center;gap:3px;flex:none;padding:4px;border:1px solid var(--ram);border-radius:12px;background:var(--karta);box-shadow:var(--stin)}
.t011-year-switch button{display:grid;place-items:center;min-width:40px;height:38px;padding:0 9px;border:0;border-radius:8px;background:transparent;color:var(--text2);font:700 .82rem/1 inherit;cursor:pointer}
.t011-year-switch button:first-child,.t011-year-switch button:last-child{min-width:34px;font-size:1.3rem}
.t011-year-switch button:hover{background:var(--ak-svetla);color:var(--text)}
.t011-year-switch button.on{background:#0f766e;color:#fff}
.t011-year-switch button:focus-visible{outline:3px solid rgba(45,212,191,.35);outline-offset:1px}

.t011-contract-changes{margin:0 0 15px;padding:15px;border:1px solid var(--ram);border-radius:13px;background:#f8fafc}
.t011-contract-changes .t009-section-title h2{margin-bottom:9px}
.t011-contract-changes .t009-change-lead{margin-bottom:10px;background:#fff}
.t011-contract-changes .t005-change-list{display:grid;gap:8px}
.t011-contract-changes .t005-change-list article{margin:0;padding:11px;border:1px solid #e4e7ec;border-radius:10px;background:#fff}
.t011-contract-changes .t005-change-list article h4{margin:0 0 7px;font-size:.8rem}
.t011-contract-changes .t005-change-list article>div{display:grid;grid-template-columns:54px minmax(0,1fr);gap:7px;align-items:start}
.t011-contract-changes .t005-change-list article span{font-size:.7rem;font-weight:800;text-transform:uppercase;color:#b42318}
.t011-contract-changes .t005-change-list article .new span{color:#0f766e}
.t011-contract-changes .t005-change-list article p{margin:0;color:var(--text2);font-size:.76rem;line-height:1.4}

.t011-repair-filter{margin:0 0 16px;padding:8px;border:1px solid var(--ram);border-radius:13px;background:var(--karta);box-shadow:none}
.t011-repair-filter-main,.t011-repair-filter-more{display:flex;align-items:center;gap:8px;min-width:0}
.t011-repair-search{flex:1 1 360px;min-width:180px}
.t011-repair-filter-main>div:not(.t011-repair-search){flex:0 1 210px;min-width:150px}
.t011-repair-filter input,.t011-repair-filter select{box-sizing:border-box;width:100%;height:38px;min-height:38px;margin:0;padding:6px 10px;border:1px solid var(--ram);border-radius:9px;background:var(--pozadi);color:var(--text);font:inherit}
.t011-repair-more{height:38px;min-height:38px;white-space:nowrap}
.t011-repair-more b{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#0f766e;color:#fff;font-size:.7rem}
.t011-repair-filter-more{display:none;margin-top:8px;padding-top:8px;border-top:1px solid var(--ram)}
.t011-repair-filter-more.open{display:flex}.t011-repair-filter-more>div{flex:0 1 220px;min-width:150px}
.t011-repair-empty{display:inline-block;margin:0;padding:10px 12px;border:1px dashed var(--ram);border-radius:10px;color:var(--text2);font-size:.8rem}

/* Explicit dark palette for reusable controls and every audited section. */
#ni-app.tema-tmave{color-scheme:dark}
#ni-app.tema-tmave .t011-year-switch,#ni-app.tema-tmave .t011-repair-filter{background:#18212d;border-color:#344054;box-shadow:none}
#ni-app.tema-tmave .t011-year-switch button{color:#c3cad5}#ni-app.tema-tmave .t011-year-switch button:hover{background:#263244;color:#fff}#ni-app.tema-tmave .t011-year-switch button.on{background:#0f766e;color:#fff}
#ni-app.tema-tmave .t011-repair-filter input,#ni-app.tema-tmave .t011-repair-filter select,
#ni-app.tema-tmave .ni-form input,#ni-app.tema-tmave .ni-form select,#ni-app.tema-tmave .ni-form textarea{background:#111827;color:#f2f4f7;border-color:#475467}
#ni-app.tema-tmave .ni-form input::placeholder,#ni-app.tema-tmave .ni-form textarea::placeholder{color:#98a2b3;opacity:1}
#ni-app.tema-tmave input[type=file]{background:#111827;color:#d6dbe6;border-color:#475467}
#ni-app.tema-tmave input[type=file]::file-selector-button{margin-right:10px;padding:7px 10px;border:0;border-right:1px solid #475467;background:#344054;color:#f2f4f7;font-weight:700;cursor:pointer}
#ni-app.tema-tmave .ni-btn.sek{background:#202b3a;color:#eef1f6;border-color:#475467}#ni-app.tema-tmave .ni-btn.sek:hover{background:#29374a;border-color:#667085}
#ni-app.tema-tmave .chip,#ni-app.tema-tmave .ni-chip,#ni-app.tema-tmave .opr-chip,#ni-app.tema-tmave .t006-invest-tags .ni-st{background:#263244;color:#d6dbe6;border-color:#475467}
#ni-app.tema-tmave .ni-st.st-ceka,#ni-app.tema-tmave .ni-st.st-resi{background:#3a2f10;color:#fde68a;border-color:#7c5f10}
#ni-app.tema-tmave .ni-st.st-schvaleno,#ni-app.tema-tmave .ni-st.st-prijate{background:#123b2a;color:#a6f4c5;border-color:#207a50}
#ni-app.tema-tmave .ni-st.st-zamitnuto{background:#4b1d22;color:#fda29b;border-color:#8a2c36}
#ni-app.tema-tmave .ni-st.st-info,#ni-app.tema-tmave .ni-st.st-nove{background:#172c46;color:#b2ccff;border-color:#24558a}
#ni-app.tema-tmave .ni-st.st-seda{background:#263244;color:#d0d5dd;border-color:#475467}
#ni-app.tema-tmave table.ni-tab{background:#18212d;color:#e5e7eb}#ni-app.tema-tmave .ni-tab th{background:#202b3a;color:#d0d5dd}#ni-app.tema-tmave .ni-tab th,#ni-app.tema-tmave .ni-tab td{border-color:#344054;color:#d6dbe6}
#ni-app.tema-tmave .ni-tab tbody tr:nth-child(even) td{background:#1a2533}#ni-app.tema-tmave .ni-tab tbody tr:hover td{background:#203443}#ni-app.tema-tmave .ni-tab tr.celkem td{background:#123b36;color:#ccfbf1}#ni-app.tema-tmave .ni-tab tr.mezisoucet td{background:#29264c;color:#ddd6fe}
#ni-app.tema-tmave .ni-mes{background:#18212d;border-color:#475467;color:#eef1f6}#ni-app.tema-tmave .ni-mes .n{color:#eef1f6}#ni-app.tema-tmave .ni-mes .c{color:#b3bac6}
#ni-app.tema-tmave .ni-mes.uhrazeno{background:#123b2a;border-color:#207a50}#ni-app.tema-tmave .ni-mes.uhrazeno .s{background:#165c3a;color:#c9f8da}
#ni-app.tema-tmave .ni-mes.zaplaceno{background:#172c46;border-color:#24558a}#ni-app.tema-tmave .ni-mes.zaplaceno .s{background:#1f4b7a;color:#d1e9ff}
#ni-app.tema-tmave .ni-mes.doplatit{background:#3a2f10;border-color:#7c5f10}#ni-app.tema-tmave .ni-mes.doplatit .s{background:#5a4510;color:#fde68a}
#ni-app.tema-tmave .ni-mes.nedoplatek{background:#4b1d22;border-color:#8a2c36}#ni-app.tema-tmave .ni-mes.nedoplatek .s{background:#6f222b;color:#fee4e2}
#ni-app.tema-tmave .ni-mes.budouci,#ni-app.tema-tmave .ni-mes.bez-najmu{background:#202b3a;border-color:#475467}#ni-app.tema-tmave .ni-mes.budouci .s,#ni-app.tema-tmave .ni-mes.bez-najmu .s{background:#344054;color:#e4e7ec}
#ni-app.tema-tmave .t011-contract-changes{background:#141a26;border-color:#344054}#ni-app.tema-tmave .t011-contract-changes .t009-change-lead,#ni-app.tema-tmave .t011-contract-changes .t005-change-list article{background:#202b3a;border-color:#344054}#ni-app.tema-tmave .t011-contract-changes .t005-change-list article p{color:#d0d5dd}#ni-app.tema-tmave .t011-contract-changes .t005-change-list article span{color:#fda29b}#ni-app.tema-tmave .t011-contract-changes .t005-change-list article .new span{color:#75e0a7}

@media(max-width:760px){.ni-page-head>.t011-year-switch{width:100%;justify-content:center}.t011-repair-filter-main{flex-wrap:wrap}.t011-repair-search{flex-basis:100%}.t011-repair-filter-main>div:not(.t011-repair-search){flex:1 1 170px}.t011-repair-filter-more.open{display:grid;grid-template-columns:1fr 1fr}.t011-repair-filter-more .ni-btn{grid-column:1/-1}}
@media(max-width:480px){.t011-year-switch button{min-width:35px;padding:0 6px}.t011-repair-filter-main{display:grid;grid-template-columns:1fr auto}.t011-repair-search{grid-column:1/-1}.t011-repair-filter-main>div:not(.t011-repair-search){min-width:0}.t011-repair-filter-more.open{grid-template-columns:1fr}.t011-contract-changes{padding:11px}}

/* 1.56.5 — tři sloupce Oprav, přímý editor smlouvy a kompaktní odečty. */
.t012-repair-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start;min-width:0}
.t012-repair-column{min-width:0;padding:10px;border:1px solid var(--ram);border-radius:15px;background:#f5f7f8}
.t012-repair-column>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:4px 4px 10px}
.t012-repair-column>header h2{margin:0;font-size:.95rem}.t012-repair-column>header p{margin:3px 0 0;color:var(--text2);font-size:.7rem;line-height:1.35}
.t012-repair-column>header>b{display:grid;place-items:center;flex:none;min-width:27px;height:27px;padding:0 7px;border-radius:999px;background:#e4e7ec;color:#344054;font-size:.76rem}
.t012-repair-list{display:grid;gap:9px}.t012-repair-list .ni-zkarta{width:100%;margin:0;box-sizing:border-box}
.t012-repair-column-empty{margin:0;padding:18px 10px;border:1px dashed #d0d5dd;border-radius:10px;color:var(--text2);font-size:.76rem;text-align:center}

.t012-reading-photo{display:inline-grid;place-items:center;width:36px;height:36px;overflow:hidden;border:1px solid var(--ram);border-radius:7px;background:var(--karta);vertical-align:middle;cursor:zoom-in}
.t012-reading-photo img{display:block;width:100%;height:100%;object-fit:cover}
.t015-equipment-photo{display:inline-grid;place-items:center;width:36px;height:36px;overflow:hidden;border:1px solid var(--ram);border-radius:7px;background:var(--karta);vertical-align:middle;cursor:zoom-in}
.t015-equipment-photo img{display:block;width:100%;height:100%;object-fit:cover}

/* 1.56.9 — nájem se přepíná inline a smlouva ukazuje jen konkrétní změny. */
.ux-rent-status .ux-answer{padding:13px 15px;gap:12px}
.ux-rent-status .ux-answer-icon{width:38px;height:38px;border-radius:10px}.ux-rent-status .ux-answer-icon svg{width:20px;height:20px}
.ux-rent-status .ux-answer strong{font-size:clamp(1.05rem,1.55vw,1.35rem)}
.pl-month-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-8px 0 12px}.pl-month-title .ux-month-name{margin:0}
.pl-month-payments{margin-top:13px;padding-top:12px;border-top:1px solid var(--ram)}.pl-month-payments h3{margin:0 0 8px;font-size:.85rem}
.ni-mes-klik.pl-month-selected{border-color:var(--ak);box-shadow:0 0 0 3px color-mix(in srgb,var(--ak) 22%,transparent);transform:translateY(-1px)}

.ni-modal.t016-contract-change-modal{max-width:780px}
.t016-contract-change-head{padding-right:46px}.t016-contract-change-head>span{display:block;margin-bottom:4px;color:#0f766e;font-size:.7rem;font-weight:800;letter-spacing:.08em}.t016-contract-change-head h2{margin:0}.t016-contract-change-head p{margin:7px 0 16px;color:var(--text2);font-size:.8rem;line-height:1.45}
.t016-contract-change-list{display:grid;gap:11px}.t016-contract-change-list article{padding:12px;border:1px solid var(--ram);border-radius:12px;background:#f8fafc}.t016-contract-change-list article h3{margin:0 0 9px;font-size:.8rem}
.t016-change-old,.t016-change-new{display:grid;grid-template-columns:66px minmax(0,1fr);gap:9px;align-items:start}.t016-change-new{margin-top:7px}.t016-change-old>span,.t016-change-new>span{padding-top:5px;font-size:.7rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.t016-change-old>span{color:#b42318}.t016-change-new>span{color:#0f766e}
.t016-change-old del,.t016-change-new ins{display:block;padding:7px 9px;border-radius:7px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.8rem;line-height:1.5}.t016-change-old del{background:#fee4e2;color:#b42318;text-decoration-color:#b42318;text-decoration-thickness:2px}.t016-change-new ins{background:#dcfae6;color:#0f766e;font-weight:700;text-decoration:none}
.t016-no-changes{padding:18px;border:1px dashed var(--ram);border-radius:12px;background:#f8fafc}.t016-no-changes p{margin:5px 0 0;color:var(--text2)}
.t018-contract-unseen{display:flex;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;border:1px solid #84adff;border-radius:13px;background:#eff4ff;color:#102a56;box-shadow:0 8px 20px -18px rgba(23,92,211,.65)}
.t018-contract-unseen>div{flex:1;min-width:0}.t018-contract-unseen b{display:block}.t018-contract-unseen p{margin:3px 0 0;color:#475467;font-size:.76rem;line-height:1.4}.t018-unread-dot{flex:none;width:10px;height:10px;border-radius:50%;background:#175cd3;box-shadow:0 0 0 5px rgba(23,92,211,.14)}
.ni-btn.t018-changes-new{display:inline-flex;align-items:center;gap:7px;background:#175cd3;color:#fff;border-color:#175cd3;box-shadow:0 5px 13px rgba(23,92,211,.22)}.ni-btn.t018-changes-new:hover{background:#1849a9;border-color:#1849a9}.t018-new-pill{display:inline-grid;place-items:center;height:18px;padding:0 5px;border-radius:999px;background:#fff;color:#175cd3;font-size:.55rem;font-weight:800;letter-spacing:.04em}.t018-approve{box-shadow:0 5px 13px rgba(5,150,105,.2)}

.t009-contract-screen .t010-contract-viewport{overflow-y:auto;overflow-x:hidden;min-height:0;touch-action:pan-y;-webkit-overflow-scrolling:touch}
.t009-contract-screen .t012-editor-note{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;max-width:840px;box-sizing:border-box;margin:0 auto 10px;padding:7px 10px;border:1px solid #d0d5dd;border-radius:8px;background:#f8fafc;color:#344054;font-size:.74rem}
.t009-contract-screen .t012-editor-note span{color:#667085;white-space:nowrap}
.t012-editor-stack{position:relative;min-height:620px;overflow:hidden;border:1px solid #d0d5dd;background:#fff;box-shadow:0 12px 32px -28px rgba(16,24,40,.55)}
.t012-editor-stack pre,.t012-editor-stack textarea{box-sizing:border-box;width:100%;min-height:620px;margin:0;padding:48px clamp(24px,6vw,82px);border:0;border-radius:0;font:400 .93rem/1.72 Georgia,"Times New Roman",serif;letter-spacing:normal;white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4}
.t012-editor-stack pre{position:absolute;inset:0;height:100%;overflow:hidden;background:#fff;color:#101828;pointer-events:none}
.t012-editor-stack pre mark{margin:-2px;padding:2px 0;border-radius:3px;background:#dcfce7;color:#0f766e;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.t012-editor-stack textarea{position:relative;z-index:1;display:block;overflow:hidden;resize:none;background:transparent;color:transparent;caret-color:#101828;-webkit-text-fill-color:transparent;outline:0}
.t012-editor-stack textarea::placeholder{color:#667085;-webkit-text-fill-color:#667085;opacity:1}
.t012-editor-stack textarea::selection{background:rgba(23,92,211,.23);-webkit-text-fill-color:transparent}
.t012-editor-stack:focus-within{outline:3px solid rgba(45,212,191,.34);outline-offset:-3px}

#ni-app.tema-tmave .t012-repair-column{background:#141a26;border-color:#344054}#ni-app.tema-tmave .t012-repair-column>header>b{background:#263244;color:#d6dbe6}#ni-app.tema-tmave .t012-repair-column-empty{border-color:#475467}
#ni-app.tema-tmave .t012-reading-photo{background:#111827;border-color:#475467}
#ni-app.tema-tmave .t015-equipment-photo{background:#111827;border-color:#475467}
#ni-app.tema-tmave .pl-month-payments{border-color:#344054}#ni-app.tema-tmave .ni-mes-klik.pl-month-selected{border-color:#2dd4bf;box-shadow:0 0 0 3px rgba(45,212,191,.22)}
#ni-app.tema-tmave .t016-contract-change-head>span{color:#5eead4}#ni-app.tema-tmave .t016-contract-change-head p{color:#b3bac6}#ni-app.tema-tmave .t016-contract-change-list article,#ni-app.tema-tmave .t016-no-changes{background:#141a26;border-color:#344054}#ni-app.tema-tmave .t016-change-old>span{color:#fda29b}#ni-app.tema-tmave .t016-change-new>span{color:#75e0a7}#ni-app.tema-tmave .t016-change-old del{background:#4b1d22;color:#fda29b}#ni-app.tema-tmave .t016-change-new ins{background:#123b2a;color:#75e0a7}
#ni-app.tema-tmave .t018-contract-unseen{background:#172c46;border-color:#2e69a5;color:#d1e9ff}#ni-app.tema-tmave .t018-contract-unseen p{color:#b2ccff}#ni-app.tema-tmave .t018-unread-dot{background:#84adff;box-shadow:0 0 0 5px rgba(132,173,255,.15)}#ni-app.tema-tmave .ni-btn.t018-changes-new{background:#175cd3;color:#fff;border-color:#528bff}
#ni-app.tema-tmave .t009-contract-screen .t012-editor-note{background:#1b2532;border-color:#344054;color:#d6dbe6}#ni-app.tema-tmave .t009-contract-screen .t012-editor-note span{color:#b3bac6}
#ni-app.tema-tmave .t009-contract-screen .t014-no-comparison{background:#202b3a;border-color:#344054;color:#b3bac6}
#ni-app.tema-tmave .t012-editor-stack,#ni-app.tema-tmave .t012-editor-stack pre{background:#111827;border-color:#344054;color:#e5e7eb}#ni-app.tema-tmave .t012-editor-stack pre mark{background:#123b2a;color:#a6f4c5}#ni-app.tema-tmave .t012-editor-stack textarea{caret-color:#fff}#ni-app.tema-tmave .t012-editor-stack textarea::placeholder{color:#98a2b3;-webkit-text-fill-color:#98a2b3}

@media(max-width:1050px){.t012-repair-board{grid-template-columns:1fr 1fr}.t012-repair-column.hotovo{grid-column:1/-1}}
@media(max-width:700px){.t012-repair-board{grid-template-columns:1fr}.t012-repair-column.hotovo{grid-column:auto}.t009-contract-screen .t012-editor-note{align-items:flex-start;flex-direction:column;gap:3px}.t009-contract-screen .t012-editor-note span{white-space:normal}.t012-editor-stack pre,.t012-editor-stack textarea{padding:28px 18px;font-size:.85rem}}
@media(max-width:600px){.pl-month-title{align-items:flex-start;flex-direction:column}.t016-change-old,.t016-change-new{grid-template-columns:1fr;gap:3px}.t016-change-old>span,.t016-change-new>span{padding-top:0}}
@media(max-width:650px){.t018-contract-unseen{align-items:flex-start;flex-wrap:wrap}.t018-contract-unseen>button{width:100%;justify-content:center}}

/* 1.56.6 — aktuální měsíc a stabilní smlouva pro obě role. */
.ni-rent-track .ni-rent-current{position:relative;outline:3px solid var(--ak);outline-offset:-3px;box-shadow:0 0 0 2px color-mix(in srgb,var(--ak) 18%,transparent)}
.ni-rent-track .ni-rent-current:before{content:"Nyní";position:absolute;z-index:2;top:4px;right:5px;padding:2px 5px;border-radius:999px;background:var(--ak);color:#fff;font-size:.48rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}

.t009-contract-screen .t010-contract-viewport{height:clamp(420px,64dvh,720px);max-height:calc(100dvh - 230px)}
.t009-contract-screen .t010-contract-paper{min-height:520px}
.t009-contract-screen .t012-contract-editor{box-sizing:border-box;width:100%;min-height:520px;margin:0;padding:58px clamp(28px,6vw,76px);border:1px solid #d0d5dd;background:#fff;color:#101828;color-scheme:light;box-shadow:0 10px 28px rgba(16,24,40,.09);font:400 .93rem/1.72 Georgia,"Times New Roman",serif;white-space:pre-wrap;overflow-wrap:anywhere;outline:0}
.t009-contract-screen .t012-contract-editor:empty:before{content:attr(data-placeholder);color:#667085;pointer-events:none}
.t009-contract-screen .t012-contract-editor:focus{outline:3px solid rgba(45,212,191,.34);outline-offset:-3px}
.t009-contract-screen .t005-contract-end,.t009-contract-screen .t005-decision,.t009-contract-screen .t005-return-form{box-sizing:border-box;width:100%;max-width:840px;margin-right:auto;margin-left:auto}
.t013-contract-changes{margin:0 0 12px;padding:12px;border:1px solid #99d5cc;border-radius:12px;background:#f8fffd}
.t013-contract-changes[hidden]{display:none}
.t013-contract-changes-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;padding-bottom:9px;border-bottom:1px solid #d7eee9}
.t013-contract-changes-head span{display:block;color:#0f766e;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.t013-contract-changes-head h3{margin:2px 0 0;font-size:.9rem}.t013-contract-changes-head>b{display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;border-radius:999px;background:#ccfbf1;color:#115e59;font-size:.7rem}
.t013-contract-changes .t005-change-list{gap:7px}.t013-contract-changes .t005-change-list article{grid-template-columns:110px minmax(0,1fr) minmax(0,1fr);padding:9px;background:#fff}.t013-contract-changes .t005-change-list h4{font-size:.76rem}.t013-contract-changes .t005-change-list p{max-height:150px;overflow:auto;font-size:.76rem;line-height:1.45}
#ni-app.tema-tmave .t009-contract-screen .t012-contract-editor{background:#fff;color:#101828;border-color:#cbd2dc;caret-color:#101828}#ni-app.tema-tmave .t009-contract-screen .t012-contract-editor:empty:before{color:#667085}
#ni-app.tema-tmave .t013-contract-changes{background:#102422;border-color:#207e72}#ni-app.tema-tmave .t013-contract-changes-head{border-color:#26524d}#ni-app.tema-tmave .t013-contract-changes .t005-change-list article{background:#18212d;border-color:#344054}#ni-app.tema-tmave .t013-contract-changes-head>b{background:#17554e;color:#ccfbf1}
@media(max-height:760px) and (min-width:681px){.t009-contract-screen .t010-contract-viewport{height:clamp(350px,54dvh,480px)}.t009-contract-screen .t009-document-head{padding-top:13px;padding-bottom:11px}.t009-contract-screen .t009-document-confirmations{padding-top:7px;padding-bottom:7px}}
@media(max-width:680px){.t009-contract-screen .t010-contract-viewport{height:58dvh;max-height:none}.t009-contract-screen .t010-contract-paper,.t009-contract-screen .t012-contract-editor{min-height:390px;padding:28px 18px;font-size:.85rem}.t013-contract-changes .t005-change-list article{grid-template-columns:1fr}.t013-contract-changes .t005-change-list .new{padding-left:0;border-left:0}}

/* 1.56.7 — uzavřené opravy a redline přímo ve smlouvě. */
.t012-repair-column.hotovo .ni-zkarta{background:#f7f8fa;border-color:#d0d5dd;color:#344054;box-shadow:none}
.t012-repair-column.hotovo .ni-zkarta:before{background:#98a2b3}.t012-repair-column.hotovo .ni-zkarta h3{color:#1d2939}.t012-repair-column.hotovo .ni-zkarta .zk-popis,.t012-repair-column.hotovo .ni-zkarta .opr-card-kind{color:#667085}.t012-repair-column.hotovo .ni-zkarta .zk-otevrit{color:#0f766e}
.t012-repair-column.hotovo .ni-zkarta:hover,.t012-repair-column.hotovo .ni-zkarta:focus-visible{transform:translateY(-1px);box-shadow:0 5px 14px rgba(16,24,40,.08)}
.t009-contract-screen .t014-contract-redline[hidden]{display:none}.t009-contract-screen .t012-contract-editor[hidden]{display:none}
.t009-contract-screen .t014-diff-block{display:block;margin:7px -7px;padding:5px 7px;border-left:3px solid #98a2b3;border-radius:4px;background:#f8fafc;white-space:pre-wrap}
.t009-contract-screen .t014-diff-block del,.t009-contract-screen .t014-diff-block ins{display:block;padding:4px 6px;border-radius:4px;white-space:pre-wrap;text-decoration-thickness:2px}
.t009-contract-screen .t014-diff-block del{background:#fee4e2;color:#8f1f17;text-decoration-color:#b42318}.t009-contract-screen .t014-diff-block ins{margin-top:4px;background:#dcfae6;color:#0b5f55;font-weight:700;text-decoration:none}
#ni-app.tema-tmave .t012-repair-column.hotovo .ni-zkarta{background:#202b3a;border-color:#475467;color:#d0d5dd}#ni-app.tema-tmave .t012-repair-column.hotovo .ni-zkarta h3{color:#f2f4f7}#ni-app.tema-tmave .t012-repair-column.hotovo .ni-zkarta .zk-popis,#ni-app.tema-tmave .t012-repair-column.hotovo .ni-zkarta .opr-card-kind{color:#b3bac6}#ni-app.tema-tmave .t012-repair-column.hotovo .ni-zkarta .zk-otevrit{color:#5eead4}
#ni-app.tema-tmave .t009-contract-screen .t014-diff-block{background:#f8fafc;border-left-color:#98a2b3}#ni-app.tema-tmave .t009-contract-screen .t014-diff-block del{background:#fee4e2;color:#8f1f17}#ni-app.tema-tmave .t009-contract-screen .t014-diff-block ins{background:#dcfae6;color:#0b5f55}

/* 1.56.16 — tři barevně odlišené kroky stránky Nájem. */
.t020-rent-section{overflow:hidden;padding:0;border-radius:15px;background:#fff;box-shadow:0 8px 24px -22px rgba(16,24,40,.45)}
.t020-rent-section .t020-section-title{min-height:50px;margin:0;padding:11px 18px;border-bottom:1px solid;box-sizing:border-box}
.t020-rent-section .t020-section-title h2{font-size:.95rem;font-weight:800}
.t020-rent-section .t020-section-title .ux-step{width:28px;height:28px;border-radius:50%;color:#fff;box-shadow:0 4px 10px -5px currentColor}
.t020-rent-status{border-color:#8ed9b1}.t020-rent-status .t020-section-title{border-color:#9fe3bd;background:linear-gradient(90deg,#f1fcf5,#fbfefc);color:#08783e}.t020-rent-status .ux-step{background:var(--grad-zel)}
.t020-rent-month{border-color:#a9c9ff}.t020-rent-month .t020-section-title{border-color:#b5d0ff;background:linear-gradient(90deg,#f2f7ff,#fbfdff);color:#175cd3}.t020-rent-month .ux-step{background:var(--grad-mod)}
.t020-rent-calendar{border-color:#f4c071}.t020-rent-calendar .t020-section-title{border-color:#f3c47c;background:linear-gradient(90deg,#fff8ed,#fffdfa);color:#b95f05}.t020-rent-calendar .ux-step{background:var(--grad-zlu)}
.t020-rent-status-body{display:flex;align-items:center;gap:18px;padding:18px 28px}
.t020-rent-main-icon{display:grid;place-items:center;flex:none;width:54px;height:54px;border:5px solid #c7f2d9;border-radius:50%;background:#079447;color:#fff;box-shadow:0 0 0 3px #e8f8ef}.t020-rent-main-icon svg{width:27px;height:27px;stroke-width:2.2}.t020-rent-main-icon.warn{border-color:#fed7aa;background:#dc6803;box-shadow:0 0 0 3px #fff3e7}
.t020-rent-status-copy{flex:1;min-width:0}.t020-rent-status-copy strong{display:block;color:#101828;font-size:clamp(1.05rem,1.7vw,1.42rem);line-height:1.25}.t020-rent-status-copy small{display:block;margin-top:7px;color:#667085;font-size:.76rem;line-height:1.45}
.t020-rent-health{display:inline-flex;align-items:center;gap:6px;flex:none;padding:8px 12px;border-radius:8px;background:#eaf8ef;color:#0f766e;font-size:.76rem;font-weight:800}.t020-rent-health svg{width:16px;height:16px;stroke-width:2.4}.t020-rent-health.warn{background:#fff0e2;color:#b54708}
.t020-rent-status .pl-alert{margin:0 18px 18px}
.t020-month-head{display:flex;align-items:center;gap:14px;margin:0 18px;padding:14px 0;border-bottom:1px solid #e4e7ec}
.t020-month-calendar{display:grid;place-items:center;flex:none;width:54px;height:54px;border-radius:14px;background:#edf4ff;color:#175cd3}.t020-month-calendar svg{width:27px;height:27px}
.t020-month-title{flex:1;min-width:0}.t020-month-title h3{margin:0;color:#101828;font-size:1.24rem}.t020-month-title p{margin:4px 0 0;color:#667085;font-size:.76rem}
.t020-month-state{display:flex;align-items:center;gap:11px;flex:none;min-width:220px;padding-left:24px;border-left:1px solid #e4e7ec;color:#175cd3}.t020-month-state>span{display:grid;place-items:center;width:42px;height:42px;border:1px solid #a9c9ff;border-radius:50%;background:#fff}.t020-month-state svg{width:21px;height:21px}.t020-month-state b,.t020-month-state small{display:block}.t020-month-state b{font-size:.85rem}.t020-month-state small{margin-top:3px;color:#667085;font-size:.7rem;font-weight:500}.t020-month-state.part{color:#b54708}.t020-month-state.part>span{border-color:#f3c47c;background:#fffaf2}.t020-month-state.bad{color:#b42318}.t020-month-state.bad>span{border-color:#fda29b;background:#fff5f4}
.t020-month-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:16px 18px 12px}
.t020-month-metric{display:flex;align-items:center;gap:12px;min-width:0;padding:14px;border:1px solid #d8e4f5;border-radius:12px;background:#fff;box-shadow:0 5px 14px -13px rgba(16,24,40,.45)}
.t020-metric-icon{display:grid;place-items:center;flex:none;width:43px;height:43px;border-radius:50%;background:#edf4ff;color:#175cd3}.t020-metric-icon svg{width:23px;height:23px}.t020-month-metric.offsets .t020-metric-icon,.t020-month-metric.remaining .t020-metric-icon{background:#eaf8ef;color:#0f766e}.t020-month-metric.remaining.due .t020-metric-icon{background:#fff0e2;color:#b54708}
.t020-month-metric>div{min-width:0}.t020-month-metric small,.t020-month-metric strong,.t020-month-metric p{display:block}.t020-month-metric small{color:#475467;font-size:.7rem;white-space:nowrap}.t020-month-metric strong{margin-top:3px;color:#101828;font-size:1.15rem;line-height:1.2;font-variant-numeric:tabular-nums;white-space:nowrap}.t020-month-metric.remaining strong{color:#fff}.t020-month-metric.remaining.due strong{color:#b54708}.t020-month-metric p{margin:4px 0 0;color:#98a2b3;font-size:.59rem;line-height:1.3}
.t020-month-equation{display:flex;align-items:center;gap:10px;margin:0 18px 16px;padding:9px 12px;border-radius:9px;background:linear-gradient(90deg,#effaf4,#f2f6ff);color:#475467;font-size:.7rem;line-height:1.35}.t020-month-equation b{color:#08783e}.t020-month-equation i{color:#98a2b3;font-style:normal}.t020-month-equation span{white-space:nowrap}
.t020-rent-month .pl-month-payments{margin:0 18px 18px}.t020-rent-month>.ni-akce{margin-right:18px!important;margin-left:18px!important;margin-bottom:18px}
.t020-rent-calendar .pl-tabs{margin:0 18px 12px}.t020-rent-calendar .pl-tabs button{color:#667085}.t020-rent-calendar .pl-tabs button.on{border-bottom-color:#e98308;color:#b95f05}
.t020-calendar-card,.t020-history-card{margin:0 18px 18px!important;border:0;box-shadow:none}.t020-calendar-card{padding:0}.t020-calendar-card .pl-yearbar{padding:0 0 10px;margin:0}.t020-calendar-card .pl-y{font-size:.9rem}.t020-calendar-card .ni-kal{grid-template-columns:repeat(10,minmax(92px,1fr));gap:8px}.t020-calendar-card .ni-mes{min-height:86px;padding:8px;border-radius:9px;font-size:.7rem}.t020-calendar-card .ni-mes .n{font-size:.7rem;white-space:nowrap}.t020-calendar-card .ni-mes .c{margin-top:4px;font-size:.7rem}.t020-calendar-card .ni-mes .s{margin-top:6px;padding:3px 6px;font-size:.58rem;white-space:normal;line-height:1.25}.t020-calendar-card .ni-mes-klik{cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.t020-calendar-card .ni-mes-klik:hover{transform:translateY(-2px);box-shadow:0 7px 14px -12px rgba(16,24,40,.7)}.t020-calendar-card .ni-mes-klik.pl-month-selected{border:2px solid #0f766e;box-shadow:0 0 0 3px rgba(45,212,191,.22);transform:translateY(-1px)}
.t020-calendar-card .legenda{margin-top:14px;padding-top:12px;border-top:1px solid #eaecf0;font-size:.7rem}.t020-history-card h2{margin:0 0 12px;font-size:.9rem}.t020-history-card h2 span{color:#667085;font-size:.76rem;font-weight:600}.t020-rent-calendar>.pl-empty{margin:0 18px 18px}.t020-rent-calendar>.ni-akce,.t020-rent-calendar>.ux-reconcile-box{margin-right:18px!important;margin-left:18px!important}
#ni-app.tema-tmave .t020-rent-section{background:#18212d;box-shadow:none}#ni-app.tema-tmave .t020-rent-status{border-color:#207e72}#ni-app.tema-tmave .t020-rent-status .t020-section-title{border-color:#207e72;background:linear-gradient(90deg,#102d29,#18212d);color:#75e0a7}#ni-app.tema-tmave .t020-rent-month{border-color:#2e5d9f}#ni-app.tema-tmave .t020-rent-month .t020-section-title{border-color:#2e5d9f;background:linear-gradient(90deg,#172c46,#18212d);color:#84adff}#ni-app.tema-tmave .t020-rent-calendar{border-color:#8f4f12}#ni-app.tema-tmave .t020-rent-calendar .t020-section-title{border-color:#8f4f12;background:linear-gradient(90deg,#352514,#18212d);color:#fec84b}
#ni-app.tema-tmave .t020-rent-status-copy strong,#ni-app.tema-tmave .t020-month-title h3,#ni-app.tema-tmave .t020-month-metric strong{color:#f2f4f7}#ni-app.tema-tmave .t020-rent-status-copy small,#ni-app.tema-tmave .t020-month-title p,#ni-app.tema-tmave .t020-month-state small,#ni-app.tema-tmave .t020-month-metric small{color:#b3bac6}#ni-app.tema-tmave .t020-month-head{border-color:#344054}#ni-app.tema-tmave .t020-month-calendar{background:#172c46;color:#84adff}#ni-app.tema-tmave .t020-month-state{border-color:#344054}#ni-app.tema-tmave .t020-month-state>span{background:#18212d;border-color:#528bff}#ni-app.tema-tmave .t020-month-metric{background:#141b25;border-color:#344054}#ni-app.tema-tmave .t020-month-metric p{color:#98a2b3}#ni-app.tema-tmave .t020-month-equation{background:linear-gradient(90deg,#102d29,#172c46);color:#b3bac6}#ni-app.tema-tmave .t020-month-equation b{color:#75e0a7}#ni-app.tema-tmave .t020-calendar-card,#ni-app.tema-tmave .t020-history-card{background:transparent}#ni-app.tema-tmave .t020-calendar-card .legenda{border-color:#344054}#ni-app.tema-tmave .t020-rent-calendar .pl-tabs button.on{border-bottom-color:#b54708;color:#fec84b}
@media(max-width:1450px){.t020-calendar-card .ni-kal{grid-template-columns:repeat(6,minmax(100px,1fr))}}
@media(max-width:1050px){.t020-month-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.t020-calendar-card .ni-kal{grid-template-columns:repeat(4,minmax(100px,1fr))}.t020-month-state{min-width:190px}}
@media(max-width:720px){.t020-rent-section .t020-section-title{padding:10px 13px}.t020-rent-status-body{align-items:flex-start;flex-wrap:wrap;padding:15px}.t020-rent-health{margin-left:72px}.t020-month-head{align-items:flex-start;flex-wrap:wrap;margin:0 14px}.t020-month-state{order:4;width:100%;min-width:0;padding:12px 0 0;border-top:1px solid #e4e7ec;border-left:0}.t020-month-head>.ni-btn{margin-left:auto}.t020-month-metrics{padding:14px;grid-template-columns:1fr}.t020-month-equation{align-items:flex-start;flex-wrap:wrap;margin:0 14px 14px}.t020-rent-month .pl-month-payments{margin:0 14px 14px}.t020-rent-calendar .pl-tabs{margin:0 14px 12px}.t020-calendar-card,.t020-history-card{margin:0 14px 14px!important}.t020-calendar-card .ni-kal{grid-template-columns:repeat(2,minmax(0,1fr))}.t020-calendar-card .ni-mes{min-height:82px}.t020-rent-calendar>.pl-empty{margin:0 14px 14px}}
@media(max-width:430px){.t020-rent-main-icon{width:46px;height:46px;border-width:4px}.t020-rent-health{width:100%;margin-left:0;justify-content:center}.t020-month-calendar{width:46px;height:46px}.t020-month-title h3{font-size:1.05rem}.t020-month-metric{padding:12px}.t020-month-equation i{display:none}.t020-month-equation span{width:100%;white-space:normal}.t020-calendar-card .ni-kal{grid-template-columns:1fr 1fr}}

/* ===================== T-021: design system dle grafického návrhu ===================== */
/* Breadcrumb s domečkem */
.ds-bc{display:flex;align-items:center;gap:8px;margin:0 0 10px;color:var(--text2);font-size:.85rem}
.ds-bc-home{display:grid;place-items:center;width:30px;height:30px;border:0;background:none;color:#0f766e;cursor:pointer;border-radius:8px}
.ds-bc-home:hover{background:var(--ak-svetla)}
.ds-bc-home svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.9}
.ds-bc strong{color:#0f766e;font-weight:600}

/* Stat karty (řada nahoře, klikací filtry) */
.ds-stats .ds-stat{flex:1 1 180px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--karta);border:1px solid var(--ram);border-top:4px solid #98a2b3;border-radius:12px;padding:.85rem 1rem;cursor:pointer;box-shadow:var(--stin);font:inherit;text-align:left;min-height:64px;transition:box-shadow .15s,transform .15s}
.ds-stats .ds-stat:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,24,40,.10)}
.ds-stats .ds-stat.on{outline:2px solid #0f766e;outline-offset:-1px}
.ds-stat.ds-mod{border-top-color:#175cd3}.ds-stat.ds-zel{border-top-color:#0f766e}.ds-stat.ds-cer{border-top-color:#b42318}.ds-stat.ds-oranz{border-top-color:#b54708}.ds-stat.ds-seda{border-top-color:#98a2b3}
.ds-stat-info{display:flex;flex-direction:column;gap:3px;min-width:0}
.ds-stat-info b{font-size:.9rem;letter-spacing:-.01em}
.ds-stat-badge{align-self:flex-start;background:#eff8ff;color:#175cd3;border:1px solid #b2ddff;border-radius:6px;font-size:.7rem;font-weight:600;padding:.06rem .4rem}
.ds-stat-sub{font-size:.8rem;font-weight:600}
.ds-stat.ds-zel .ds-stat-sub{color:#0f766e}.ds-stat.ds-cer .ds-stat-sub{color:#b42318}
.ds-stat-num{flex:none;display:grid;place-items:center;min-width:42px;height:42px;border-radius:50%;background:#f2f4f7;font-weight:700;font-size:1.05rem}
.ds-stat.ds-zel .ds-stat-num{background:#ecfdf3;color:#0f766e}.ds-stat.ds-cer .ds-stat-num{background:#fef3f2;color:#b42318}.ds-stat.ds-mod .ds-stat-num{background:#eff8ff;color:#175cd3}.ds-stat.ds-oranz .ds-stat-num{background:#fffaeb;color:#93370d}

/* Toolbar hledání + počet */
.ds-toolbar{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin:0 0 10px}
.ds-count-filter{color:#b54708;font-weight:600}

/* Řádkové karty s levým stavovým proužkem */
.t005-invest-list{padding:6px 8px;display:grid;gap:10px;background:transparent;border:0;box-shadow:none}
.ds-row{position:relative;background:var(--karta);border:1px solid var(--ram);border-radius:12px;box-shadow:var(--stin);overflow:hidden}
.ds-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#98a2b3}
.ds-row.ds-mod:before{background:#175cd3}.ds-row.ds-zel:before{background:#0f766e}.ds-row.ds-cer:before{background:#b42318}.ds-row.ds-oranz:before{background:#b54708}
.ds-row.ma-nove{margin:0;background:#fffdf5;box-shadow:var(--stin)}
.ds-row-date{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.ds-row-date b{font-size:.8rem;font-variant-numeric:tabular-nums}
.ds-row-cal{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#eff8ff;color:#175cd3}
.ds-row-cal svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8}
.ds-nove{background:#eff8ff;color:#175cd3;border:1px solid #b2ddff;border-radius:6px;font-size:.7rem;font-weight:700;padding:.05rem .4rem;letter-spacing:.03em}
.ds-row-main b{font-size:.95rem}

/* Poznámkový box */
.ds-note{display:flex;gap:8px;align-items:flex-start;border-radius:10px;padding:.55rem .7rem;font-size:.8rem;min-width:0}
.ds-note-ic{flex:none;display:grid;place-items:center;width:24px;height:24px;border-radius:6px}
.ds-note-ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.ds-note-zel{background:#ecfdf3;border:1px solid #abefc6;color:#054f31}.ds-note-zel .ds-note-ic{background:#d1fadf;color:#0f766e}
.ds-note-cer{background:#fef3f2;border:1px solid #fecdca;color:#7a271a}.ds-note-cer .ds-note-ic{background:#fee4e2;color:#b42318}
.ds-note-seda{background:#f9fafb;border:1px solid var(--ram);color:#475467}.ds-note-seda .ds-note-ic{background:#f2f4f7;color:#667085}
.ds-note .t006-invest-comments{margin-top:0}
.ds-note .t006-invest-comments p{background:none;border:0;padding:0}

/* Akce s ikonami + kebab */
.t006-invest-actions .ni-btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;vertical-align:-2px;margin-right:2px}
.ds-kebab{position:relative}
.ds-kebab summary{list-style:none;cursor:pointer;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;color:#667085;font-size:1.05rem;font-weight:700}
.ds-kebab summary::-webkit-details-marker{display:none}
.ds-kebab summary:hover{background:#f2f4f7}
.ds-kebab[open] div{position:absolute;right:0;top:34px;z-index:40;background:var(--karta);border:1px solid var(--ram);border-radius:10px;box-shadow:0 10px 26px rgba(16,24,40,.14);padding:6px;display:grid;gap:4px;min-width:130px}

/* Dům – rozcestník ve stejném jazyce */
.ni-hub-card{border-radius:12px;box-shadow:var(--stin);position:relative;overflow:hidden}
.ni-hub-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f766e}
/* Dokumenty – rozcestník */
.dok-section{position:relative;overflow:hidden;border-radius:12px;box-shadow:var(--stin)}
.dok-section:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#0f766e}
/* Tabulky (historie plateb, ostatní dokumenty) – sjednocení */
.ni-tab-wrap{border-radius:12px;box-shadow:var(--stin)}

/* Tmavý režim */
#ni-app.tema-tmave .ds-stats .ds-stat{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ds-stat-num{background:#141a26;color:#c8cfdd}
#ni-app.tema-tmave .ds-row{background:#18212d;border-color:#2a394b}
#ni-app.tema-tmave .ds-row.ma-nove{background:#1e2231}
#ni-app.tema-tmave .ds-note-seda{background:#141a26;border-color:#33405a;color:#98a2b3}
#ni-app.tema-tmave .ds-note-zel{background:#0e3a2a;border-color:#1d6f4c;color:#a6f4c5}
#ni-app.tema-tmave .ds-note-cer{background:#3a1e1e;border-color:#7f3838;color:#fecaca}
#ni-app.tema-tmave .ds-bc-home:hover{background:#1e2736}
#ni-app.tema-tmave .ds-kebab summary:hover{background:#26304a}

/* Mobil: řádky se skládají, stat karty 2 do řady */
@media(max-width:900px){.ds-stats .ds-stat{flex:1 1 44%}}
@media(max-width:520px){.ds-stats .ds-stat{flex:1 1 100%}}

/* ===================== T-022: JEDNOTNÝ TYPOGRAFICKÝ SYSTÉM =====================
 * ETALON = sekce Dnes. Jedna rodina písma, 9stupňová škála, 5 tučností (400/500/600/700/800),
 * jednotné barvy textu. Výjimky (záměrné): smlouva = serif „listina",
 * porovnání verzí = monospace. Vrstva je poslední → sjednocuje historické rozdíly. */
:root{
  --ni-font:Inter,"Segoe UI",system-ui,-apple-system,sans-serif;
  --ni-mono:ui-monospace,Consolas,monospace;
  --ni-serif:Georgia,"Times New Roman",serif;
  /* FÁZE 1: centrální povrchy. Starší názvy níže zůstávají jako kompatibilní aliasy. */
  --surface-app:#f5f7f8;
  --surface-card:#ffffff;
  --surface-inset:#f4f6f8;
  --surface-highlight:#e8f5f2;
  --surface-hover:#f0f4f5;
  --surface-form:#ffffff;
  --surface-table-head:#f7f9fa;
  --surface-table-alt:#fafbfc;
  --surface-document-workspace:#e9edf1;
  --surface-document-paper:#ffffff;
  /* Text */
  --text-primary:#101828;
  --text-secondary:#475467;
  --text-muted:#667085;
  --text-link:#0f766e;
  --text-on-color:#ffffff;
  --text-danger:#b42318;
  --text-disabled:#98a2b3;
  /* Okraje */
  --border-default:#dfe4e8;
  --border-subtle:#edf0f2;
  --border-strong:#98a2b3;
  --border-focus:#14b8a6;
  --focus-ring:rgba(20,184,166,.28);
  --danger-ring:rgba(180,35,24,.16);
  --border-table:#e4e7ec;
  --border-document:#d0d5dd;
  /* Radiusy */
  --radius-card:16px;
  --radius-inner:12px;
  --radius-control:10px;
  --radius-badge:7px;
  --radius-pill:999px;
  /* Stíny */
  --shadow-subtle:0 1px 2px rgba(16,24,40,.04);
  --shadow-card:0 1px 2px rgba(16,24,40,.035),0 10px 26px -12px rgba(16,24,40,.12);
  --shadow-hover:0 12px 30px -14px rgba(16,24,40,.22);
  --shadow-document:0 18px 50px -24px rgba(16,24,40,.28);
  /* Mezery */
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;
  --space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;
  /* Stavové barvy */
  --success:#067647;--success-bg:#ecfdf3;--success-border:#abefc6;--success-text:#05603a;
  --warning:#b54708;--warning-bg:#fffaeb;--warning-border:#fedf89;--warning-text:#93370d;
  --danger:#b42318;--danger-bg:#fef3f2;--danger-border:#fecdca;--danger-text:#912018;
  --info:#175cd3;--info-bg:#eff8ff;--info-border:#b2ddff;--info-text:#1849a9;
  --neutral:#475467;--neutral-bg:#f2f4f7;--neutral-border:#d0d5dd;--neutral-text:#344054;
  --fs-chip:.7rem;    /* štítky, badge, eyebrow */
  --fs-label:.76rem;  /* formulářové popisky, hlavičky tabulek, drobné meta */
  --fs-meta:.8rem;    /* poznámky, sekundární popisy */
  --fs-sub:.85rem;    /* menší text, tlačítka malá */
  --fs-text:.9rem;    /* základní text, tlačítka */
  --fs-h3:.9rem;
  --fs-h2:1.05rem;
  --fs-num:1.15rem;   /* zvýrazněná čísla */
  --fs-h1:clamp(1.55rem,2.4vw,2rem); /* etalon = sekce Dnes */
  /* Gradienty: vždy dvě blízké barvy stejné významové rodiny. */
  --gradient-primary:linear-gradient(135deg,#14b8a6,#0f766e);
  --gradient-success:linear-gradient(135deg,#34d399,#067647);
  --gradient-info:linear-gradient(135deg,#60a5fa,#175cd3);
  --gradient-warning:linear-gradient(135deg,#fbbf24,#b54708);
  --gradient-danger:linear-gradient(135deg,#fb7185,#b42318);
  --gradient-purple:linear-gradient(135deg,#a78bfa,#6d28d9);
  --gradient-heating:linear-gradient(135deg,#d99555,#8a4b22);
  --gradient-neutral:linear-gradient(135deg,#475467,#1d2939);
  --grad-mod:var(--gradient-info);
  --grad-zel:var(--gradient-success);
  --grad-cer:var(--gradient-danger);
  --grad-zlu:var(--gradient-warning);
  --grad-slate:var(--gradient-neutral);
  --grad-teal:var(--gradient-primary);
  --grad-akcent:linear-gradient(180deg,#22d3ee,#8b5cf6);
  /* Stabilní barvy datových řad. */
  --chart-1:#0f766e;--chart-2:#175cd3;--chart-3:#b54708;--chart-4:#6d28d9;--chart-5:#b42318;
  /* Kompatibilita se stávajícími komponentami. */
  --pozadi:var(--surface-app);--karta:var(--surface-card);
  --text:var(--text-primary);--text2:var(--text-muted);--ram:var(--border-default);
  --r:var(--radius-card);--stin:var(--shadow-card);
  --ak:var(--text-link);--ak-svetla:var(--surface-highlight);--ak-tm:#115e59;
  --zelena:var(--success);--zelena-bg:var(--success-bg);--zelena-ram:var(--success-border);
  --modra:var(--info);--modra-bg:var(--info-bg);--modra-ram:var(--info-border);
  --zluta:var(--warning-text);--zluta-bg:var(--warning-bg);--zluta-ram:var(--warning-border);
  --cervena:var(--danger);--cervena-bg:var(--danger-bg);
}
#ni-app.tema-tmave,body.ni-tema-tmave{
  --surface-app:#0b1220;--surface-card:#162131;--surface-inset:#111b29;
  --surface-highlight:#103631;--surface-hover:#1c2a3b;--surface-form:#101a28;
  --surface-table-head:#101a28;--surface-table-alt:#182536;
  --surface-document-workspace:#0e1724;--surface-document-paper:#ffffff;
  --text-primary:#f2f4f7;--text-secondary:#d0d5dd;--text-muted:#aab2c1;
  --text-link:#5eead4;--text-disabled:#667085;
  --border-default:#2b3b4f;--border-subtle:#223044;--border-strong:#52637a;
  --border-focus:#5eead4;--border-table:#2b3b4f;--border-document:#475467;
  --focus-ring:rgba(94,234,212,.28);--danger-ring:rgba(254,202,202,.18);
  --shadow-subtle:0 1px 0 rgba(255,255,255,.025);
  --shadow-card:0 1px 0 rgba(255,255,255,.025);
  --shadow-hover:0 0 0 1px rgba(94,234,212,.16);
  --shadow-document:0 20px 56px -24px rgba(0,0,0,.7);
  --success-bg:#0e3528;--success-border:#1d6f4c;--success-text:#a6f4c5;
  --warning-bg:#3a2e12;--warning-border:#7a5d18;--warning-text:#fbdba7;
  --danger-bg:#3a1e1e;--danger-border:#7f3838;--danger-text:#fecaca;
  --info-bg:#102a56;--info-border:#28518a;--info-text:#b2ccff;
  --neutral-bg:#253246;--neutral-border:#3c4b61;--neutral-text:#d0d5dd;
  color-scheme:dark;
}
body,#ni-app,.ni-login-shell,.ni-modal,#ni-print{font-family:var(--ni-font)}
body{background:var(--surface-app);color:var(--text-primary)}
#ni-app{background:var(--surface-app);color:var(--text-primary)}
#ni-app button,#ni-app input,#ni-app select,#ni-app textarea,.ni-modal button,.ni-modal input,.ni-modal select,.ni-modal textarea{font-family:inherit}
/* Nadpisy a jednotná hlavička stránky */
#ni-app h1{font-size:var(--fs-h1);font-weight:700;letter-spacing:-.035em;line-height:1.15;color:var(--text-primary)}
#ni-app h2,.ni-modal h2{font-size:var(--fs-h2);font-weight:600;letter-spacing:-.02em;color:var(--text-primary)}
#ni-app h3,.ni-modal h3{font-size:var(--fs-h3);font-weight:600;color:var(--text-primary)}
#ni-app .ni-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);margin:0 0 var(--space-6)}
#ni-app .ni-page-head>div{min-width:0}
#ni-app .ni-page-head p{max-width:720px;margin:var(--space-2) 0 0;color:var(--text-muted);font-size:var(--fs-text)}
@media(max-width:860px){#ni-app h1{font-size:clamp(1.4rem,6.8vw,1.75rem)}#ni-app .ni-page-head{align-items:stretch;flex-direction:column;margin-bottom:var(--space-5)}}
/* Sekundární texty */
#ni-app .ni-pozn,.ni-modal .ni-pozn{font-size:var(--fs-meta);color:var(--text-muted)}
#ni-app .ni-eyebrow{margin:0 0 var(--space-2);font-size:var(--fs-chip);font-weight:700;letter-spacing:.12em;color:var(--text-link);text-transform:uppercase}
/* Sdílené povrchy a varianty karet */
#ni-app .ni-karta{background:var(--surface-card);border-color:var(--border-default);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-5) var(--space-6);margin-bottom:var(--space-6)}
#ni-app .ni-karta-vnitrni{background:var(--surface-inset);border:1px solid var(--border-subtle);border-radius:var(--radius-inner);padding:var(--space-4)}
#ni-app .ni-dl{background:var(--surface-card);border-color:var(--border-default);border-radius:var(--radius-inner);box-shadow:var(--shadow-subtle);padding:var(--space-4)}
#ni-app .ni-dl .l{color:var(--text-muted);font-size:var(--fs-chip);letter-spacing:.07em}
#ni-app .ni-dl .v{color:var(--text-primary);font-size:clamp(1.35rem,2vw,1.75rem)}
#ni-app .ni-karta-prioritni,#ni-app .ni-dl.ni-hlavni{background:var(--gradient-primary);border-color:transparent;color:var(--text-on-color);box-shadow:var(--shadow-hover)}
#ni-app .ni-karta-prioritni :is(h2,h3,p),#ni-app .ni-dl.ni-hlavni :is(.l,.v,.ni-pozn){color:var(--text-on-color)}
#ni-app .ni-karta-interaktivni{cursor:pointer;transition:border-color .16s,box-shadow .16s,transform .16s}
#ni-app .ni-karta-interaktivni:hover{border-color:var(--border-focus);box-shadow:var(--shadow-hover);transform:translateY(-1px)}
#ni-app .ni-karta-uzamcena{background:var(--surface-inset);border-style:dashed;color:var(--text-muted)}
#ni-app .ni-dokument-workspace{background:var(--surface-document-workspace);border-radius:var(--radius-card);padding:var(--space-6)}
#ni-app .ni-dokument-papir{background:var(--surface-document-paper);color:#101828;border:1px solid var(--border-document);box-shadow:var(--shadow-document)}
/* Štítky a chipy — jedna geometrie a pět stavových variant */
#ni-app .ni-st,#ni-app .chip,#ni-app .dok-chip,#ni-app .opr-chip,#ni-app .ds-nove,#ni-app .ds-stat-badge,#ni-app .t018-new-pill,.ni-modal .ni-st,.ni-modal .chip{font-size:var(--fs-chip);font-weight:600;border-radius:var(--radius-badge)}
#ni-app :is(.st-schvaleno,.st-prijate,.ni-st.success){background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}
#ni-app :is(.st-ceka,.st-resi,.ni-st.warning){background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}
#ni-app :is(.st-zamitnuto,.ni-st.danger){background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}
#ni-app :is(.st-info,.st-nove,.ni-st.info){background:var(--info-bg);border-color:var(--info-border);color:var(--info-text)}
#ni-app :is(.st-seda,.ni-st.neutral){background:var(--neutral-bg);border-color:var(--neutral-border);color:var(--neutral-text)}
/* Tlačítka */
#ni-app .ni-btn,.ni-modal .ni-btn{min-height:44px;padding:10px 16px;border-radius:var(--radius-control);font-size:var(--fs-text);font-weight:600;line-height:1.2;background:var(--gradient-primary);color:var(--text-on-color);box-shadow:var(--shadow-subtle);transition:filter .15s,box-shadow .15s,transform .15s,border-color .15s}
#ni-app .ni-btn:hover,.ni-modal .ni-btn:hover{filter:brightness(.96);box-shadow:var(--shadow-hover);transform:translateY(-1px)}
#ni-app .ni-btn:active,.ni-modal .ni-btn:active{filter:brightness(.9);box-shadow:var(--shadow-subtle);transform:translateY(0)}
#ni-app .ni-btn.sek,.ni-modal .ni-btn.sek{background:var(--surface-form);color:var(--text-secondary);border:1px solid var(--border-default);box-shadow:var(--shadow-subtle)}
#ni-app .ni-btn.sek:hover,.ni-modal .ni-btn.sek:hover{background:var(--surface-hover);border-color:var(--border-strong);color:var(--text-primary)}
#ni-app .ni-btn.zel,.ni-modal .ni-btn.zel{background:var(--gradient-success);color:var(--text-on-color)}
#ni-app .ni-btn.cer,.ni-modal .ni-btn.cer{background:var(--gradient-danger);color:var(--text-on-color)}
#ni-app .ni-btn.text,.ni-modal .ni-btn.text{min-height:36px;padding:6px 4px;background:transparent;color:var(--text-link);border:0;box-shadow:none}
#ni-app .ni-btn.maly,.ni-modal .ni-btn.maly{min-height:36px;padding:7px 11px;border-radius:var(--radius-control);font-size:var(--fs-meta)}
#ni-app .ni-btn:disabled,#ni-app .ni-btn[aria-disabled=true],.ni-modal .ni-btn:disabled,.ni-modal .ni-btn[aria-disabled=true]{cursor:not-allowed;background:var(--neutral-bg);border-color:var(--neutral-border);color:var(--text-disabled);box-shadow:none;filter:none;transform:none}
#ni-app :is(button,a,[role=button],input,select,textarea):focus-visible,.ni-modal :is(button,a,[role=button],input,select,textarea):focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
/* Formuláře */
#ni-app .ni-form label,.ni-modal .ni-form label{font-size:var(--fs-label);font-weight:600;color:var(--text-secondary)}
#ni-app .ni-form :is(input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],select,textarea),.ni-modal .ni-form :is(input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],select,textarea){min-height:44px;border:1px solid var(--border-default);border-radius:var(--radius-control);background:var(--surface-form);color:var(--text-primary);box-shadow:var(--shadow-subtle)}
#ni-app .ni-form :is(input,select,textarea)::placeholder,.ni-modal .ni-form :is(input,select,textarea)::placeholder{color:var(--text-disabled)}
#ni-app .ni-form :is(input,select,textarea):focus,.ni-modal .ni-form :is(input,select,textarea):focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px var(--focus-ring)}
#ni-app .ni-form :is(input,select,textarea)[aria-invalid=true],.ni-modal .ni-form :is(input,select,textarea)[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-ring)}
#ni-app .ni-form :is(input,select,textarea):disabled,.ni-modal .ni-form :is(input,select,textarea):disabled{background:var(--neutral-bg);color:var(--text-disabled);cursor:not-allowed}
#ni-app .ni-form .hint,.ni-modal .ni-form .hint{color:var(--text-muted);font-size:var(--fs-meta)}
/* Tabulky */
#ni-app .ni-tab-wrap{overflow-x:auto;border:1px solid var(--border-default);border-radius:var(--radius-inner);box-shadow:var(--shadow-subtle)}
#ni-app table.ni-tab{background:var(--surface-card);color:var(--text-primary);font-size:var(--fs-sub)}
#ni-app .ni-tab th{background:var(--surface-table-head);color:var(--text-muted);border-color:var(--border-table);font-size:var(--fs-label);font-weight:600;padding:11px 12px}
#ni-app .ni-tab td{border-color:var(--border-table);font-size:var(--fs-sub);padding:11px 12px}
#ni-app .ni-tab tbody tr:nth-child(even){background:var(--surface-table-alt)}
#ni-app .ni-tab tbody tr:hover td{background:var(--surface-hover)}
#ni-app .ni-tab td.num,#ni-app .ni-tab th.num{text-align:right;font-variant-numeric:tabular-nums}
/* Taby */
#ni-app :is(.pl-tabs,.ni-tabs){display:flex;gap:var(--space-1);overflow-x:auto;border-bottom:1px solid var(--border-default);scrollbar-width:thin}
#ni-app :is(.pl-tabs,.ni-tabs) button{min-height:44px;padding:10px 14px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--text-muted);font-size:var(--fs-sub);font-weight:600;white-space:nowrap}
#ni-app :is(.pl-tabs,.ni-tabs) button:hover{background:var(--surface-hover);color:var(--text-primary)}
#ni-app :is(.pl-tabs,.ni-tabs) button:is(.on,.akt,[aria-selected=true]){border-bottom-color:var(--border-focus);color:var(--text-link)}
/* Grafy a legendy */
#ni-app .ni-legenda{color:var(--text-muted);font-size:var(--fs-meta);gap:var(--space-3)}
#ni-app .ni-legenda i{border-color:var(--border-default)}
#ni-app .ni-karta svg text:not([fill]){fill:var(--text-muted)}
/* Záměrné výjimky */
#ni-app .ni-diff{font-family:var(--ni-mono)}
#ni-app .t010-contract-paper,#ni-app .t012-contract-editor,#ni-app .t012-editor-stack pre,#ni-app .t012-editor-stack textarea{font-family:var(--ni-serif)}
/* Tmavý režim: barvy textu řeší stávající tokeny — beze změny */

/* ===================== T-023: levé menu — Tmavé prémiové (varianta B) =====================
 * Platí pro obě role, desktop i mobilní spodní lištu. */
.ni-sidebar{background:linear-gradient(180deg,#0e1626,#101c30)}
@media(min-width:861px){
#ni-app{padding-left:264px}
.ni-sidebar{position:fixed;z-index:100;left:0;top:0;bottom:0;height:auto;box-sizing:border-box;overflow-y:auto;overscroll-behavior:contain;border-right:1px solid rgba(255,255,255,.05)}
body.admin-bar #ni-app .ni-sidebar{top:32px}
.ni-logo-mark{background:linear-gradient(135deg,#14b8a6,#0d9488);color:#04211d;box-shadow:0 4px 14px rgba(20,184,166,.35),inset 0 0 0 1px rgba(255,255,255,.18)}
.ni-nav button{min-height:46px;padding:7px 8px;border-radius:var(--radius-control);color:#aab4c4;gap:.6rem}
.ni-nav button:hover{background:rgba(255,255,255,.05);color:#fff;transform:none}
.ni-nav-icon{width:30px;height:30px;padding:5.5px;box-sizing:border-box;border-radius:8px;background:rgba(255,255,255,.06);color:#8b96a8;flex:none}
.ni-nav button:hover .ni-nav-icon{color:#c8d2e0}
.ni-nav button.akt{background:linear-gradient(90deg,rgba(20,184,166,.22),rgba(20,184,166,.08));color:#5eead4;font-weight:600;box-shadow:inset 3px 0 0 #2dd4bf;transform:none}
.ni-nav button.akt .ni-nav-icon{background:#14b8a6;color:#04211d}
.ni-badge{background:#b42318;box-shadow:none}
/* Patička: přepínač režimu + uživatelská karta */
.ni-tema button{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:#aab4c4;border-radius:var(--radius-control);padding:.5rem .7rem;font-size:var(--fs-meta);font-weight:500;cursor:pointer}
.ni-tema button svg{width:18px;height:18px;flex:none}
.ni-tema button:hover{background:rgba(255,255,255,.09);color:#fff}
.ni-user-card{display:flex;align-items:center;gap:9px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-inner);padding:.55rem .6rem;margin-top:.55rem}
.ni-user-av{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:rgba(20,184,166,.2);color:#5eead4;flex:none}
.ni-user-av svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8}
.ni-user-info{min-width:0}
.ni-user-info b{display:block;color:#f2f4f7;font-size:var(--fs-meta);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ni-user-info small{display:block;color:#7f8a9b;font-size:var(--fs-chip)}
.ni-user-logout{margin-left:auto;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#aab4c4;cursor:pointer;flex:none}
.ni-user-logout:hover{background:rgba(217,45,32,.18);border-color:rgba(217,45,32,.4);color:#fda29b}
.ni-user-logout svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8}
}
@media print{#ni-app{padding-left:0}}
/* Mobil: varianta B i pro spodní lištu — gradient, aktivní teal pilulka s vyplněnou ikonou */
@media(max-width:860px){
.ni-sidebar{background:linear-gradient(0deg,#0e1626,#101c30);border-top:1px solid rgba(255,255,255,.08)}
.ni-nav button{color:#aab4c4}
.ni-nav button.akt{background:linear-gradient(180deg,rgba(20,184,166,.24),rgba(20,184,166,.08));color:#5eead4;box-shadow:inset 0 2px 0 #2dd4bf}
.ni-nav button.akt .ni-nav-icon{background:#14b8a6;color:#04211d;border-radius:7px;padding:3.5px;width:26px;height:26px;box-sizing:border-box}
.ni-user-card{align-items:center}.ni-user-logout{margin-left:auto}
}

/* ===================== T-024: Zápočty — KPI dlaždice ve stylu Dnes ===================== */
.ds-stats .ds-stat.kpi{position:relative;overflow:hidden;flex-direction:row;align-items:center;justify-content:flex-start;gap:11px;border:0;border-top:0;border-radius:11px;padding:.45rem .8rem;min-height:54px;background:var(--grad-zel);color:#fff;box-shadow:0 6px 14px -7px rgba(16,24,40,.35)}
.ds-stat.kpi.ds-mod{background:var(--grad-mod)}.ds-stat.kpi.ds-zel{background:var(--grad-zel)}.ds-stat.kpi.ds-cer{background:var(--grad-cer)}.ds-stat.kpi.ds-zlu{background:var(--grad-zlu)}.ds-stat.kpi.ds-slate{background:var(--grad-slate)}
.ds-stat.kpi:hover{transform:translateY(-2px);box-shadow:0 14px 30px -8px rgba(16,24,40,.45)}
.ds-stat.kpi.on{outline:3px solid rgba(255,255,255,.85);outline-offset:-3px}
.ds-stat.kpi .l{position:relative;z-index:1;font-size:var(--fs-chip);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.92)}
.ds-stat.kpi .kpi-row{position:relative;z-index:1;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.ds-stat.kpi .v{font-size:1.1rem;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:#fff;line-height:1.1}
.ds-stat.kpi .kpi-sum{font-style:normal;font-size:1.02rem;font-weight:700;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.ds-stat.kpi .kpi-unit{font-size:var(--fs-chip);color:rgba(255,255,255,.75);margin-left:-3px}
.ds-stat.kpi .kpi-pct{font-style:normal;font-size:var(--fs-chip);font-weight:600;color:rgba(255,255,255,.85);background:rgba(255,255,255,.16);border-radius:6px;padding:.02rem .35rem;margin-left:7px;letter-spacing:0;text-transform:none}
.kpi-pozn{position:relative;z-index:1;font-size:var(--fs-chip);color:rgba(255,255,255,.8)}
.kpi-badge{display:inline-block;background:rgba(255,255,255,.92);color:#175CD3;border-radius:6px;font-size:var(--fs-chip);font-weight:600;padding:.05rem .4rem}
.ds-stat.kpi .kpi-ic{flex:none;display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:rgba(255,255,255,.18);color:#fff}
.ds-stat.kpi .kpi-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.ds-stat.kpi .kpi-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
/* Řádkové karty — doladění do stylu bílých karet z Dnes */
.ds-row{border-radius:14px}
#ni-app.tema-tmave .ds-stat.kpi{box-shadow:0 10px 24px -8px rgba(0,0,0,.5)}
@media(max-width:900px){.ds-stats .ds-stat.kpi{min-height:46px;padding:.38rem .65rem;border-radius:10px;gap:9px}.ds-stat.kpi .kpi-ic{width:28px;height:28px}.ds-stat.kpi .kpi-ic svg{width:16px;height:16px}.ds-stat.kpi .kpi-sum{font-size:.92rem}.ds-stat.kpi .l{font-size:.62rem;letter-spacing:.06em}}

/* ===================== T-025: gradienty napříč aplikací + kompaktní hledání ===================== */
/* Levý stavový proužek karet = zaoblený gradient se září (jako v Dnes) */
.ds-row:before{left:7px;top:12%;bottom:12%;width:4px;border-radius:99px;background:var(--grad-akcent)}
.ds-row.ds-mod:before{background:var(--grad-mod);box-shadow:0 0 10px rgba(96,165,250,.55)}
.ds-row.ds-zel:before{background:var(--grad-zel);box-shadow:0 0 10px rgba(52,211,153,.55)}
.ds-row.ds-cer:before{background:var(--grad-cer);box-shadow:0 0 10px rgba(248,113,113,.55)}
.ds-row.ds-oranz:before{background:var(--grad-zlu);box-shadow:0 0 10px rgba(251,191,36,.55)}
.ds-row{padding-left:6px}
/* Stejný jazyk pro karty Dnes, rozcestníky Domu a Dokumentů */
.dnes-karta{border-left:1px solid var(--ram)}
.dnes-karta:before{content:"";position:absolute;left:7px;top:12%;bottom:12%;width:4px;border-radius:99px;background:var(--grad-akcent)}
.dnes-karta{position:relative;padding-left:1.5rem}
.dnes-karta.cer:before{background:var(--grad-cer);box-shadow:0 0 10px rgba(248,113,113,.55)}
.dnes-karta.zlu:before{background:var(--grad-zlu);box-shadow:0 0 10px rgba(251,191,36,.55)}
.dnes-karta.mod:before{background:var(--grad-mod);box-shadow:0 0 10px rgba(96,165,250,.55)}
.dnes-karta.zel:before{background:var(--grad-zel);box-shadow:0 0 10px rgba(52,211,153,.55)}
.ni-hub-card:before,.dok-section:before{left:7px;top:12%;bottom:12%;width:4px;border-radius:99px;background:var(--grad-teal);box-shadow:0 0 10px rgba(45,212,191,.5)}
/* Opravy: sjednotit stávající gradientové proužky na sdílené tokeny */
.ni-zkarta.ceka:before{background:var(--grad-zlu)}
.ni-zkarta.schvaleno:before{background:var(--grad-zel)}
.ni-zkarta.zamitnuto:before{background:var(--grad-cer)}
.ni-zkarta.resi:before{background:var(--grad-mod)}
/* Kompaktní hledání — bez bílého boxu přes celý řádek */
.t006-invest-toolbar.ds-toolbar{background:none;border:0;box-shadow:none;padding:0;margin:0 0 10px;display:flex;justify-content:flex-end;align-items:center;gap:10px}
.ds-toolbar .t006-invest-search{flex:0 1 240px;min-width:170px;max-width:240px;margin-left:0}
.ds-toolbar .t006-invest-search input{min-height:38px;border-radius:9px}
#ni-app.tema-tmave .ds-toolbar .t006-invest-search input{background:#141a26;border-color:#33405a;color:#d6dbe6}

/* ===================== T-028: Dům — rozcestník v jednotném stylu ===================== */
.ni-hub-grid{grid-template-columns:1fr;max-width:860px;gap:.8rem}
.ni-hub-card{display:grid;grid-template-columns:52px 1fr auto;grid-template-areas:"ic title arrow" "ic copy arrow" "ic meta arrow";column-gap:16px;row-gap:3px;align-items:center;min-height:0;padding:1rem 1.15rem 1rem 1.45rem;border-radius:14px}
.ni-hub-card .ni-hub-vz{grid-area:ic;position:static;opacity:1;pointer-events:none;display:grid;place-items:center;width:52px;height:52px;border-radius:13px;align-self:center}
.ni-hub-card .ni-hub-vz svg{width:26px;height:26px}
.ni-hub-title{grid-area:title;margin:0;font-size:var(--fs-h2);font-weight:700;letter-spacing:-.015em}
.ni-hub-copy{grid-area:copy;max-width:none;line-height:1.45;font-size:var(--fs-meta)}
.ni-hub-meta{grid-area:meta;margin:4px 0 0;justify-self:start;background:#e8f5f2;color:#0f766e;border:1px solid #b8e5de;border-radius:999px;padding:.14rem .6rem;font-size:var(--fs-chip);font-weight:600;letter-spacing:.04em}
.ni-hub-arrow{grid-area:arrow;position:static;align-self:center;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f2f4f7;color:#475467;font-size:1rem;transition:background .15s,color .15s,transform .15s}
.ni-hub-card:hover .ni-hub-arrow{background:#0f766e;color:#fff;transform:translateX(2px)}
.ni-hub-badge{position:absolute;right:52px;top:50%;transform:translateY(-50%);margin:0}
/* barevné proužky dle sekce (gradienty) */
.ni-hubcol-amber.ni-hub-card:before{background:var(--grad-zlu);box-shadow:0 0 10px rgba(251,191,36,.5)}
.ni-hubcol-blue.ni-hub-card:before{background:var(--grad-mod);box-shadow:0 0 10px rgba(96,165,250,.5)}
.ni-hubcol-purple.ni-hub-card:before{background:linear-gradient(135deg,#a78bfa,#6d28d9);box-shadow:0 0 10px rgba(167,139,250,.5)}
#ni-app.tema-tmave .ni-hub-meta{background:#0e3a35;color:#5eead4;border-color:#1d6f5c}
#ni-app.tema-tmave .ni-hub-arrow{background:#26304a;color:#c8cfdd}
@media(max-width:520px){.ni-hub-card{grid-template-columns:44px 1fr auto;padding:.85rem .9rem .85rem 1.2rem}.ni-hub-card .ni-hub-vz{width:44px;height:44px}.ni-hub-badge{right:46px}}

/* ===================== T-029: Provoz a energie — ikonové komoditní karty ===================== */
.t008-energy-tabs .ni-kom-karta{display:grid;grid-template-columns:40px 1fr;column-gap:12px;align-items:center;text-align:left}
.kom-ic{grid-row:span 3;display:grid;place-items:center;width:40px;height:40px;border-radius:10px;align-self:center}
.kom-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.kom-txt{display:flex;flex-direction:column;gap:2px;min-width:0}
#ni-app.tema-tmave .kom-ic{filter:saturate(1.1) brightness(1.05)}
@media(max-width:900px){.t008-energy-tabs .ni-kom-karta{grid-template-columns:34px 1fr;column-gap:9px}.kom-ic{width:34px;height:34px}.kom-ic svg{width:17px;height:17px}}

/* ===================== T-030: Dokumenty, Opravy, menu — sjednocení ===================== */
/* Dokumenty — rozcestník ve stylu karet Domu */
.dok-section{grid-template-columns:46px minmax(0,1fr) 34px;padding:1rem 1rem 1rem 1.35rem;overflow:hidden}
.dok-section .dok-section-icon{width:46px;height:46px;border-radius:12px}
.dok-section[data-doktab=protokol] .dok-section-icon{background:#eff8ff;color:#175cd3}
.dok-section[data-doktab=ostatni] .dok-section-icon{background:#f4f3ff;color:#5925dc}
.dok-section[data-doktab=smlouva]:before{background:var(--grad-teal);box-shadow:0 0 10px rgba(45,212,191,.5)}
.dok-section[data-doktab=protokol]:before{background:var(--grad-mod);box-shadow:0 0 10px rgba(96,165,250,.5)}
.dok-section[data-doktab=ostatni]:before{background:linear-gradient(135deg,#a78bfa,#6d28d9);box-shadow:0 0 10px rgba(167,139,250,.5)}
.dok-section-arrow{grid-column:3;grid-row:1;justify-self:end;align-self:center;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f2f4f7;color:#475467;font-size:1rem;font-weight:600;text-transform:none;letter-spacing:0;transition:background .15s,color .15s,transform .15s}
.dok-section:hover .dok-section-arrow{background:#0f766e;color:#fff;transform:translateX(2px)}
.dok-section>span:nth-of-type(2) b{font-size:var(--fs-h3);font-weight:700}
.dok-section-copy{display:block;min-width:0;align-self:center}
.dok-section-copy small{display:block;margin-top:7px;color:var(--text2);font-size:var(--fs-text);font-weight:400;line-height:1.45}
#ni-app.tema-tmave .dok-section[data-doktab=protokol] .dok-section-icon{background:#102a56;color:#84adff}
#ni-app.tema-tmave .dok-section[data-doktab=ostatni] .dok-section-icon{background:#2a1d5c;color:#c3b5fd}
#ni-app.tema-tmave .dok-section-arrow{background:#26304a;color:#c8cfdd}
/* Smlouva — aktivní verze v seznamu s gradientovým proužkem */
.t009-contract-screen .t009-version{position:relative;overflow:hidden;border-radius:10px}
.t009-contract-screen .t009-version.on:before{content:"";position:absolute;left:0;top:12%;bottom:12%;width:4px;border-radius:99px;background:var(--grad-teal);box-shadow:0 0 10px rgba(45,212,191,.55)}
/* Opravy — gradientové linky sloupců + laděné počty */
.t012-repair-column{position:relative;border-radius:14px;overflow:hidden}
.t012-repair-column:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad-slate)}
.t012-repair-column.nove:before{background:var(--grad-mod)}
.t012-repair-column.schvaleno:before{background:var(--grad-zel)}
.t012-repair-column.hotovo:before{background:var(--grad-slate)}
.t012-repair-column.nove header b{background:#eff8ff;color:#175cd3}
.t012-repair-column.schvaleno header b{background:#ecfdf3;color:#0f766e}
#ni-app.tema-tmave .t012-repair-column.nove header b{background:#102a56;color:#84adff}
#ni-app.tema-tmave .t012-repair-column.schvaleno header b{background:#0e3a2a;color:#6ee7b7}
/* Menu — patička oddělená od položek (desktop) */
@media(min-width:861px){
.ni-tema{margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.08)}
.ni-role{margin-top:.8rem}
.ni-user-card{margin-top:.8rem;margin-bottom:.35rem}
}

/* ===================== T-031: PASTELOVÉ TÓNY (celá aplikace) =====================
 * Plné barevné plochy -> klidné pastely s tmavším barevným textem a sytým
 * ikonovým čipem. Gradienty zůstávají jen jako tenké akcentní proužky. */
/* — KPI dlaždice Zápočtů — */
.ds-stats .ds-stat.kpi{background:linear-gradient(135deg,#f2f4f8,#e2e7ee);color:#1d2939;box-shadow:0 2px 8px rgba(16,24,40,.06)}
.ds-stat.kpi.ds-mod{background:linear-gradient(135deg,#eef4fe,#d9e6fb)}.ds-stat.kpi.ds-zel{background:linear-gradient(135deg,#e9faf0,#d3f2e0)}.ds-stat.kpi.ds-cer{background:linear-gradient(135deg,#fdf0ef,#f9dbd7)}.ds-stat.kpi.ds-zlu{background:linear-gradient(135deg,#fdf6e9,#f8e7c6)}.ds-stat.kpi.ds-slate{background:linear-gradient(135deg,#f2f4f8,#e2e7ee)}
.ds-stat.kpi .l{color:#475467}
.ds-stat.kpi.ds-mod .l{color:#175cd3}.ds-stat.kpi.ds-zel .l{color:#12805c}.ds-stat.kpi.ds-cer .l{color:#b42318}.ds-stat.kpi.ds-zlu .l{color:#b54708}
.ds-stat.kpi .kpi-sum{color:#1d2939}
.ds-stat.kpi.ds-zel .kpi-sum{color:#054f31}.ds-stat.kpi.ds-cer .kpi-sum{color:#7a271a}.ds-stat.kpi.ds-mod .kpi-sum{color:#174ea6}.ds-stat.kpi.ds-zlu .kpi-sum{color:#93370d}
.ds-stat.kpi .kpi-ic{background:none;color:#475467;width:30px;height:30px}
.ds-stat.kpi .kpi-ic svg{width:22px;height:22px}
.ds-stat.kpi.ds-mod .kpi-ic{color:#175cd3}.ds-stat.kpi.ds-zel .kpi-ic{color:#0f766e}.ds-stat.kpi.ds-cer .kpi-ic{color:#b42318}.ds-stat.kpi.ds-zlu .kpi-ic{color:#b54708}
.ds-stat.kpi:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(16,24,40,.1)}
.ds-stat.kpi.on{outline:2px solid #0f766e;outline-offset:-2px}
.kpi-badge{background:#175cd3;color:#fff}
/* — Tmavý režim: tlumené tmavé tóny místo pastelů — */
#ni-app.tema-tmave .ds-stats .ds-stat.kpi{background:#232d3f;color:#e6e9ef;box-shadow:none}
#ni-app.tema-tmave .ds-stat.kpi.ds-mod{background:#16243d}#ni-app.tema-tmave .ds-stat.kpi.ds-zel{background:#0e3a2a}#ni-app.tema-tmave .ds-stat.kpi.ds-cer{background:#3a1e1e}#ni-app.tema-tmave .ds-stat.kpi.ds-zlu{background:#3a2e12}
#ni-app.tema-tmave .ds-stat.kpi .l{color:#98a2b3}
#ni-app.tema-tmave .ds-stat.kpi.ds-mod .l{color:#84adff}#ni-app.tema-tmave .ds-stat.kpi.ds-zel .l{color:#6ee7b7}#ni-app.tema-tmave .ds-stat.kpi.ds-cer .l{color:#fda29b}#ni-app.tema-tmave .ds-stat.kpi.ds-zlu .l{color:#fdb022}
#ni-app.tema-tmave .ds-stat.kpi .kpi-sum{color:#f2f4f7}
#ni-app.tema-tmave .ds-stat.kpi.on{outline-color:#2dd4bf}

/* ===================== T-032: syté dlaždice dle Dnes + ikony bez podkladů ===================== */
/* KPI dlaždice Zápočtů = barvy z Dnes (plné, bílý text, ikona bez podkladu) */
.ds-stats .ds-stat.kpi{background:#344054;color:#fff;box-shadow:0 6px 14px -7px rgba(16,24,40,.35)}
.ds-stat.kpi.ds-slate{background:#344054}.ds-stat.kpi.ds-mod{background:#175cd3}.ds-stat.kpi.ds-zel{background:#0f766e}.ds-stat.kpi.ds-cer{background:#b42318}.ds-stat.kpi.ds-zlu{background:#b54708}
.ds-stat.kpi .l,.ds-stat.kpi.ds-mod .l,.ds-stat.kpi.ds-zel .l,.ds-stat.kpi.ds-cer .l,.ds-stat.kpi.ds-zlu .l{color:rgba(255,255,255,.92)}
.ds-stat.kpi .kpi-sum,.ds-stat.kpi.ds-mod .kpi-sum,.ds-stat.kpi.ds-zel .kpi-sum,.ds-stat.kpi.ds-cer .kpi-sum,.ds-stat.kpi.ds-zlu .kpi-sum{color:#fff}
.ds-stat.kpi .kpi-ic,.ds-stat.kpi.ds-mod .kpi-ic,.ds-stat.kpi.ds-zel .kpi-ic,.ds-stat.kpi.ds-cer .kpi-ic,.ds-stat.kpi.ds-zlu .kpi-ic{color:#fff;background:none}
.ds-stat.kpi.on{outline:3px solid rgba(255,255,255,.85);outline-offset:-3px}
.kpi-badge{background:rgba(255,255,255,.92);color:#175cd3}
/* Ikony bez barevných podkladů — napříč aplikací (hlavní stavové kruhy a menu zůstávají) */
.dnes-karta:not(.is-urgent) .dnes-ic,.dnes-empty-ic,.ds-row-cal,.ds-note-ic,.dok-section-icon,.dok-ficon,.ni-hub-card .ni-hub-vz,.kom-ic,.t009-contract-alert-icon,.t020-metric-icon,.t020-month-calendar{background:none!important;box-shadow:none!important;border:0!important}
.ds-row-cal{color:#175cd3}
.dnes-empty-ic{color:#0f766e}
/* Doplněné ikony */
.dnes-chip{display:inline-flex;align-items:center;gap:6px}
.dnes-chip svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;color:#0f766e;flex:none}
.t012-repair-column header{display:flex;align-items:center;gap:9px}
.t012-repair-column header>div{flex:1}
.opr-col-ic{flex:none;display:grid;place-items:center;width:24px;height:24px;color:#475467}
.opr-col-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}
.t012-repair-column.nove .opr-col-ic{color:#175cd3}
.t012-repair-column.schvaleno .opr-col-ic{color:#0f766e}
.nv-mini{position:absolute;right:8px;top:50%;transform:translateY(-50%);opacity:.2;pointer-events:none;line-height:0}
.nv-mini svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:1.6}
#ni-app.tema-tmave .ds-row-cal{color:#84adff}
#ni-app.tema-tmave .dnes-chip svg{color:#5eead4}

.nv-mini{color:#98a2b3}

/* ===================== T-033: opravy tmavého režimu (Zápočty) ===================== */
/* Dlaždice stejně syté jako ve světlém režimu (paleta Dnes), bílý aktivní rámeček */
#ni-app.tema-tmave .ds-stats .ds-stat.kpi{background:#344054;color:#fff;box-shadow:0 6px 14px -7px rgba(0,0,0,.5)}
#ni-app.tema-tmave .ds-stat.kpi.ds-slate{background:#344054}
#ni-app.tema-tmave .ds-stat.kpi.ds-mod{background:#175cd3}
#ni-app.tema-tmave .ds-stat.kpi.ds-zel{background:#0f766e}
#ni-app.tema-tmave .ds-stat.kpi.ds-cer{background:#b42318}
#ni-app.tema-tmave .ds-stat.kpi.ds-zlu{background:#b54708}
#ni-app.tema-tmave .ds-stat.kpi .l,#ni-app.tema-tmave .ds-stat.kpi.ds-mod .l,#ni-app.tema-tmave .ds-stat.kpi.ds-zel .l,#ni-app.tema-tmave .ds-stat.kpi.ds-cer .l,#ni-app.tema-tmave .ds-stat.kpi.ds-zlu .l{color:rgba(255,255,255,.92)}
#ni-app.tema-tmave .ds-stat.kpi .kpi-sum{color:#fff}
#ni-app.tema-tmave .ds-stat.kpi .kpi-ic{color:#fff;background:none}
#ni-app.tema-tmave .ds-stat.kpi.on{outline:3px solid rgba(255,255,255,.85);outline-offset:-3px}
/* Poznámkový box: žádný „box v boxu" */
#ni-app.tema-tmave .ds-note .t006-invest-comments p{background:none;border:0;padding:0}
/* Toolbar hledání bez tmavého pásu */
#ni-app.tema-tmave .t006-invest-toolbar.ds-toolbar{background:none;border:0;box-shadow:none}

/* ===================== T-035: Nájem ve stylu Dnes ===================== */
/* Eyebrow hlavičky místo číslovaných rámů */
.t021-eyehead{padding:15px 18px 0}
.t021-eyehead .ni-eyebrow{margin:0}
/* Sekce = čisté bílé karty (pryč barevné rámy a tónované hlavičky) */
.t020-rent-section{border:1px solid var(--ram)!important;border-radius:14px;background:var(--karta)}
/* 1) Stav nájmu = hero pruh jako „Hlavní finanční stav" v Dnes */
.t020-rent-status{background:linear-gradient(115deg,#0b4f49,#128071)!important;border:0!important;color:#fff}
.t020-rent-status .t021-eyehead .ni-eyebrow{color:#7ce3d3}
.t020-rent-status .t020-rent-status-copy strong{color:#fff}
.t020-rent-status .t020-rent-status-copy small{color:rgba(255,255,255,.85)}
.t020-rent-status .t020-rent-main-icon{background:rgba(255,255,255,.16)!important;color:#fff}
.t020-rent-status .t020-rent-health{background:rgba(255,255,255,.94);color:#0b5d56}
/* 2) Detail měsíce: čtyři hodnoty jako syté dlaždice palety */
.t020-month-metric{border-radius:12px;padding:.8rem .9rem;color:#fff;border:0;box-shadow:0 6px 14px -7px rgba(16,24,40,.35)}
.t020-month-metric.prescribed{background:#344054}
.t020-month-metric.offsets{background:#0f766e}
.t020-month-metric.cash{background:#175cd3}
.t020-month-metric.remaining{background:#0f766e}
.t020-rent-month.warn .t020-month-metric.remaining{background:#b42318}
.t020-month-metric small{color:rgba(255,255,255,.85)}
.t020-month-metric strong{color:#fff}
.t020-month-metric p{color:rgba(255,255,255,.75)}
.t020-month-metric .t020-metric-icon{color:#fff!important}
/* 3) Kalendář a historie: záložky v teal */
.t020-rent-calendar .pl-tabs button.on{color:#0f766e;border-bottom-color:#0f766e}
/* Tmavý režim */
#ni-app.tema-tmave .t020-rent-section{background:#18212d;border-color:#2a394b!important}
#ni-app.tema-tmave .t020-rent-status{background:linear-gradient(115deg,#0b4f49,#128071)!important}
#ni-app.tema-tmave .t021-eyehead .ni-eyebrow{color:#5eead4}

/* T-036: tmavy rezim – zalozky kalendare v teal */
#ni-app.tema-tmave .t020-rent-calendar .pl-tabs button.on{color:#2dd4bf;border-bottom-color:#2dd4bf}

/* T-036b: tmavy rezim – dlazdice detailu mesice syte jako ve svetlem */
#ni-app.tema-tmave .t020-month-metric.prescribed{background:#344054;border-color:transparent}
#ni-app.tema-tmave .t020-month-metric.offsets{background:#0f766e;border-color:transparent}
#ni-app.tema-tmave .t020-month-metric.cash{background:#175cd3;border-color:transparent}
#ni-app.tema-tmave .t020-month-metric.remaining{background:#0f766e;border-color:transparent}
#ni-app.tema-tmave .t020-rent-month.warn .t020-month-metric.remaining{background:#b42318}
#ni-app.tema-tmave .t020-month-metric small,#ni-app.tema-tmave .t020-month-metric p{color:rgba(255,255,255,.8)}
#ni-app.tema-tmave .t020-month-metric strong{color:#fff}

/* ===================== T-037: Dům — rozcestník v řádcích pod sebou ===================== */
.t006-house-grid.tenant,.t006-house-grid.owner{grid-template-columns:1fr;max-width:860px}
.ni-hub-card{padding-top:1.15rem;padding-bottom:1.15rem}
.ni-hub-meta.pozor{background:#fffaeb;color:#b54708;border-color:#fedf89}
#ni-app.tema-tmave .ni-hub-meta.pozor{background:#3a2914;color:#fdb022;border-color:#7a4a12}
#ni-app.tema-tmave .ni-hub-card[class*=ni-hubcol]{background:#18212d;border-color:#2b3a4d}
#ni-app.tema-tmave .ni-hub-card[class*=ni-hubcol]:hover{border-color:#2b6f66;box-shadow:0 12px 30px rgba(0,0,0,.35)}
#ni-app .ni-hub-card[class*=ni-hubcol]{min-height:0;padding:1.05rem 1.25rem 1.05rem 1.45rem;align-content:center}
@media(max-width:520px){#ni-app .ni-hub-card[class*=ni-hubcol]{padding:.85rem .9rem .85rem 1.2rem}}

/* ===================== T-038: rozcestníky — užší řádky, decentní šipky, Dokumenty pod sebou ===================== */
.t006-house-grid.tenant,.t006-house-grid.owner,.ni-hub-grid{max-width:720px}
.dok-sections{grid-template-columns:1fr;max-width:720px;gap:.8rem}
.dok-section{grid-template-columns:46px minmax(0,1fr) auto}
.ni-hub-arrow,.dok-section-arrow{width:auto;height:auto;background:none;border-radius:0;color:#98a2b3;font-size:1.2rem}
.ni-hub-card:hover .ni-hub-arrow,.dok-section:hover .dok-section-arrow{background:none;color:#0f766e;transform:translateX(3px)}
#ni-app.tema-tmave .ni-hub-arrow,#ni-app.tema-tmave .dok-section-arrow{background:none;color:#8896ab}
#ni-app.tema-tmave .ni-hub-card:hover .ni-hub-arrow,#ni-app.tema-tmave .dok-section:hover .dok-section-arrow{color:#5eead4}

/* ===================== T-039: rozcestníky sjednoceny — bez šipek, štítek vpravo ===================== */
.ni-hub-arrow,.dok-section-arrow{display:none!important}
.ni-hub-card{grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"ic title meta" "ic copy meta"}
.ni-hub-card .ni-hub-vz{width:48px;height:48px}
.ni-hub-card .ni-hub-vz svg{width:25px;height:25px}
.ni-hub-title{font-size:var(--fs-h3)}
.ni-hub-meta{grid-area:meta;justify-self:end;align-self:center;margin:0;white-space:nowrap}
.dok-section{grid-template-columns:48px minmax(0,1fr) auto;gap:16px;padding:1.05rem 1.25rem 1.05rem 1.45rem;border-radius:14px}
.dok-section .dok-section-icon{width:48px;height:48px;border-radius:13px}
.dok-section .dok-section-icon svg{width:25px;height:25px}
.dok-section>span:nth-of-type(2) b{font-size:var(--fs-h3)}
.dok-section-meta{grid-column:3;justify-self:end;align-self:center;background:#e8f5f2;color:#0f766e;border:1px solid #b8e5de;border-radius:999px;padding:.14rem .6rem;font-size:var(--fs-chip);font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
#ni-app.tema-tmave .dok-section-meta{background:#0e3a35;color:#5eead4;border-color:#1d6f5c}
#ni-app.tema-tmave .ni-hub-card[class*=ni-hubcol] .ni-hub-meta{color:#5eead4}
#ni-app.tema-tmave .ni-hub-card[class*=ni-hubcol] .ni-hub-meta.pozor{color:#fdb022}
@media(max-width:700px){
.ni-hub-card{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"ic title" "ic copy" "ic meta"}
.ni-hub-meta{justify-self:start;margin-top:4px;white-space:normal}
.dok-section{grid-template-columns:44px minmax(0,1fr)}
.dok-section-meta{grid-column:2;justify-self:start;margin-top:2px;white-space:normal}
}

/* ===================== T-055: shodna vyska rozcestniku + viewport pod WordPress listou ===================== */
/* Na sirokem rozlozeni maji Dum a Dokumenty stejnou geometrii. Na uzsim
   displeji zustava vyska prirozena, aby se delsi stavovy stitek mohl zalomit. */
@media(min-width:701px){
#ni-app[data-view=dum] .ni-hub-card,
#ni-app[data-view=smlouva] .dok-section{height:120px;min-height:120px}
}

/* T-094: Dům a Dokumenty používají totožnou kartu rozcestníku. */
#ni-app[data-view=dum] .ni-hub-card,
#ni-app[data-view=smlouva] .dok-section{display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"ic title meta" "ic copy meta";column-gap:16px;row-gap:3px;align-items:center;padding:1.05rem 1.25rem 1.05rem 1.45rem;border-radius:14px;text-align:left}
#ni-app[data-view=dum] .ni-hub-title,#ni-app[data-view=smlouva] .ni-hub-title{grid-area:title;margin:0;color:var(--text);font-size:var(--fs-h3);font-weight:700;line-height:1.3;letter-spacing:-.015em}
#ni-app[data-view=dum] .ni-hub-copy,#ni-app[data-view=smlouva] .ni-hub-copy{grid-area:copy;margin:0;max-width:none;color:var(--text2);font-size:var(--fs-meta);font-weight:400;line-height:1.45}
#ni-app[data-view=dum] .ni-hub-meta,#ni-app[data-view=smlouva] .ni-hub-meta{grid-area:meta;justify-self:end;align-self:center;margin:0;white-space:nowrap}
#ni-app[data-view=dum] .ni-hub-vz,#ni-app[data-view=smlouva] .ni-hub-vz{grid-area:ic;position:static;display:grid;place-items:center;align-self:center;width:48px;height:48px;margin:0}
#ni-app[data-view=dum] .ni-hub-vz svg,#ni-app[data-view=smlouva] .ni-hub-vz svg{width:25px;height:25px}
@media(max-width:700px){#ni-app[data-view=dum] .ni-hub-card,#ni-app[data-view=smlouva] .dok-section{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"ic title" "ic copy" "ic meta"}#ni-app[data-view=dum] .ni-hub-meta,#ni-app[data-view=smlouva] .ni-hub-meta{justify-self:start;margin-top:4px;white-space:normal}}
/* WordPress admin bar je mimo aplikaci. Bez odectu by 100vh aplikace spolu
   s listou vzdy vytvorilo zbytecny svisly posun i na kratke strance. */
body.admin-bar #ni-app{min-height:calc(100vh - 32px);min-height:calc(100dvh - 32px)}
@media(max-width:782px){
body.admin-bar #ni-app{min-height:calc(100vh - 46px);min-height:calc(100dvh - 46px)}
}
/* Na detailu uz aktualni polozka breadcrumbu nese nazev stranky. Druhy stejny
   nadpis, eyebrow i podnadpis proto skryjeme i v pripade, ze je hlavicka
   zanorena v obalu obrazovky (Vybaveni, Galerie). Ovladani hlavicky zustava. */
#ni-app .ni-breadcrumb{font-size:.9rem}
#ni-main:has(.ni-breadcrumb) .ni-page-head h1,
#ni-main:has(.ni-breadcrumb) .ni-page-head .ni-eyebrow,
#ni-main:has(.ni-breadcrumb) .ni-page-head>div>p{display:none}
#ni-main:has(.ni-breadcrumb) .ni-page-head:not(:has(>:nth-child(2))){display:none}
#ni-main:has(.ni-breadcrumb) .gal-det-head h2{display:none}

/* Smlouva ma vlastni posun textu. Vnejsi stranka proto nepotrebuje velkou
   spodni rezervu a panel verzi se pohybuje prirozene spolu s rozlozenim. */
@media(min-width:981px){
#ni-main:has(.t009-contract-screen){padding-bottom:1rem}
}

/* Celoplošná pracovní plocha smlouvy: verze vlevo, dokument a změny vpravo. */
.t009-contract-screen:fullscreen{display:flex;flex-direction:column;width:100vw;height:100dvh;padding:18px;overflow:hidden;background:var(--pozadi);color:var(--text)}
.t009-contract-screen:fullscreen>.ni-breadcrumb,.t009-contract-screen:fullscreen>.ni-page-head{display:none}
.t009-contract-screen:fullscreen>.t009-contract-alert,.t009-contract-screen:fullscreen>.t018-contract-unseen{flex:none}
.t009-contract-screen:fullscreen .t009-contract-layout{flex:1;min-height:0;grid-template-columns:minmax(280px,320px) minmax(0,1fr)}
.t009-contract-screen:fullscreen .t009-contract-sidebar{align-self:stretch;height:100%;max-height:none}
.t009-contract-screen:fullscreen .t009-contract-document{display:flex;flex-direction:column;height:100%;min-height:0}
.t009-contract-screen:fullscreen .t010-contract-scroll-shell{flex:1;min-height:0}
.t009-contract-screen:fullscreen .t010-contract-viewport{height:100%;max-height:none}
.t091-document-controls{display:grid;justify-items:end;gap:10px;min-width:0}
.t091-document-utilities{display:flex;justify-content:flex-end;gap:6px}
.t091-icon-action{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid var(--ram);border-radius:9px;background:var(--karta);color:#667085;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.t091-icon-action:hover{border-color:#99d5cc;background:#f0fdfa;color:#0f766e}
.t091-icon-action svg{width:18px;height:18px}
.t091-changes-guide{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 18px;border-bottom:1px solid #b2ccff;background:#f5f8ff;color:#102a56}
.t091-changes-guide>div{min-width:0}.t091-changes-guide b,.t091-changes-guide span{display:block}.t091-changes-guide b{font-size:.82rem}.t091-changes-guide>div>span{margin-top:2px;color:#475467;font-size:.73rem;line-height:1.4}
.t091-changes-guide .t014-view-toggle{flex:none;border-color:#84adff;background:#fff;color:#1849a9}
.t091-changes-guide .t014-view-toggle:hover,.t091-changes-guide .t014-view-toggle.on{border-color:#175cd3;background:#eff4ff;color:#175cd3}
#ni-app.tema-tmave .t091-icon-action{background:#18212d;border-color:#344054;color:#b3bac6}
#ni-app.tema-tmave .t091-changes-guide{border-color:#2e69a5;background:#172c46;color:#d1e9ff}
#ni-app.tema-tmave .t091-changes-guide>div>span{color:#b2ccff}
#ni-app.tema-tmave .t091-changes-guide .t014-view-toggle{background:#18212d;border-color:#528bff;color:#b2ccff}
.t014-diff-block.t092-first-change{border-radius:5px;outline:3px solid rgba(23,92,211,.38);outline-offset:4px;animation:t092-change-focus 1.6s ease-out}
@keyframes t092-change-focus{0%,35%{background:rgba(132,173,255,.28)}100%{background:transparent}}
@media(prefers-reduced-motion:reduce){.t014-diff-block.t092-first-change{animation:none}}
.ni-protocol-money{display:inline-block;white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:980px){
.t009-contract-screen:fullscreen{padding:10px;overflow-y:auto}
.t009-contract-screen:fullscreen .t009-contract-layout{display:grid;grid-template-columns:1fr;flex:none}
.t009-contract-screen:fullscreen .t009-contract-sidebar{height:auto}
.t009-contract-screen:fullscreen .t010-contract-viewport{height:70dvh}
}
@media(max-width:680px){
.t091-document-controls{width:100%;justify-items:stretch}.t091-document-utilities{order:2}.t091-document-utilities .t091-icon-action{width:40px}
.t091-changes-guide{align-items:stretch;flex-direction:column}.t091-changes-guide .t014-view-toggle{width:100%;justify-content:center}
}

/* ===================== T-040: Provoz a energie — viditelné ikony v dlaždicích + gradientové záložky ===================== */
/* Ikony v bublinách (dřív skoro neviditelný vodoznak) jako čistá ikona vpravo nahoře */
.ni-panel-cast .ni-dl,.t007-energy-summary .ni-dl,.ni-souhrn-flex .ni-dl{position:relative;overflow:hidden}
.ni-panel-cast .nv-mini,.t007-energy-summary .nv-mini,.ni-souhrn-flex .nv-mini{opacity:.9;right:12px;top:12px;transform:none}
.ni-panel-cast .nv-mini svg,.t007-energy-summary .nv-mini svg,.ni-souhrn-flex .nv-mini svg{width:22px;height:22px}
.ni-panel-cast .ni-dl .l,.t007-energy-summary .ni-dl .l,.ni-souhrn-flex .ni-dl .l{padding-right:30px}
/* Horní záložky komodit — gradientový proužek nahoře, jemné označení výběru */
.t008-energy-tabs .ni-kom-karta{position:relative;overflow:hidden;border-top-width:1px}
.t008-energy-tabs .ni-kom-karta:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--kom-bar)}
.t008-energy-tabs .ni-kom-karta.on{background:var(--kom-grad);box-shadow:inset 0 0 0 1px var(--kom-barva)}
#ni-app.tema-tmave .t008-energy-tabs .ni-kom-karta.on{background:#1c2836}

/* ===================== T-041: vodoznak nesmí utéct z dlaždice (oprava plovoucí ikony v tmavém režimu) ===================== */
#ni-app .ni-dl{position:relative}

/* ===================== T-042: sjednocení výšky dlaždic v přehledech spotřeby ===================== */
.t007-energy-summary .ni-souhrn-flex{align-items:stretch}
.t007-energy-summary .ni-souhrn-flex .ni-dl{display:flex;flex-direction:column}
.t007-energy-summary .ni-souhrn-flex .ni-dl .ni-pozn{margin-top:auto}

/* ===================== T-043: viditelné ikony i v sekci Zálohy a plánované platby ===================== */
.t008-energy-finance-row .ni-dl{position:relative;overflow:hidden}
.t008-energy-finance-row .nv-mini{opacity:.9;right:12px;top:12px;transform:none}
.t008-energy-finance-row .nv-mini svg{width:22px;height:22px}
.t008-energy-finance-row .ni-dl .l{padding-right:30px}

/* ===================== T-044: jemnější světlé pozadí — šedý gradient místo bílé (karty zůstávají bílé) ===================== */
#ni-app:not(.tema-tmave){--pozadi:#e8eaee}
#ni-app:not(.tema-tmave) .ni-main{background:linear-gradient(180deg,#eef0f3 0%,#e5e8ec 100%);background-attachment:fixed}

/* ===================== T-045: Vybavení — viditelné ikony v souhrnných dlaždicích ===================== */
.t013-vyb-tiles .ni-dl{position:relative;overflow:hidden}
.t013-vyb-tiles .nv-mini{opacity:.9;right:12px;top:12px;transform:none}
.t013-vyb-tiles .nv-mini svg{width:22px;height:22px}
.t013-vyb-tiles .ni-dl .l{padding-right:30px}

/* Vybavení: lokální kompaktní tabulka na desktopu a čitelné karty na mobilu. */
.ni-equipment-screen{min-width:0}
.ni-equipment-screen .ni-equipment-help{margin:0 0 14px;padding:10px 12px;border:1px solid var(--ram);border-radius:11px;background:var(--karta)}
.ni-equipment-screen .ni-equipment-help summary{cursor:pointer;color:var(--text2);font-size:.78rem;font-weight:700}
.ni-equipment-screen .ni-equipment-help p{margin:8px 0 0;color:var(--text2);font-size:.76rem;line-height:1.5}
.ni-equipment-screen .t013-vyb-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ni-equipment-screen .t013-vyb-tiles .ni-dl{box-sizing:border-box;min-height:96px;padding:13px 14px}
.ni-equipment-screen .t013-vyb-tiles .vf-tile::after{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:var(--vf-line)}
.ni-equipment-screen .t013-vyb-tiles .vf-tile:nth-child(1){--vf-line:linear-gradient(90deg,#0f766e,#5eead4)}
.ni-equipment-screen .t013-vyb-tiles .vf-tile:nth-child(2){--vf-line:linear-gradient(90deg,#175cd3,#60a5fa)}
.ni-equipment-screen .t013-vyb-tiles .vf-tile:nth-child(3){--vf-line:linear-gradient(90deg,#7f56d9,#a78bfa)}
.ni-equipment-screen .t013-vyb-tiles .vf-tile:nth-child(n+4){--vf-line:linear-gradient(90deg,#475467,#98a2b3)}
.ni-equipment-screen .t007-section-head{align-items:center;margin-top:16px}
.ni-equipment-screen .ni-equipment-table-card{padding:0;overflow:hidden}
.ni-equipment-screen .ni-equipment-table-card .ni-tab-wrap{border:0;border-radius:0}
.ni-equipment-screen .ni-equipment-table-card th,.ni-equipment-screen .ni-equipment-table-card td{padding:10px 11px;vertical-align:middle}
.ni-equipment-screen .ni-equipment-table-card th:nth-child(2){width:34%}
.ni-equipment-screen .ni-equipment-table-card td:last-child{white-space:nowrap}
.ni-equipment-screen .ni-equipment-table-card .ni-btn.cer{padding:5px 8px}
.ni-equipment-screen .t015-equipment-photo{display:inline-flex;width:38px;height:38px;overflow:hidden;border:1px solid var(--ram);border-radius:8px;background:var(--pozadi)}
.ni-equipment-screen .t015-equipment-photo img{display:block;width:100%;height:100%;object-fit:cover}
.ni-equipment-mobile-list{display:none}
.ni-equipment-mobile-card{padding:14px;border:1px solid var(--ram);border-radius:13px;background:var(--karta);box-shadow:var(--stin)}
.ni-equipment-mobile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ni-equipment-mobile-head h2{margin:0;font-size:.95rem}.ni-equipment-mobile-head b{white-space:nowrap}
.ni-equipment-mobile-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}.ni-equipment-mobile-card dt{color:var(--text2);font-size:.68rem;text-transform:uppercase}.ni-equipment-mobile-card dd{margin:2px 0 0;font-size:.8rem}
.ni-equipment-mobile-card>p{margin:0 0 10px;color:var(--text2);font-size:.78rem}.ni-equipment-mobile-file{margin-bottom:12px}.ni-equipment-mobile-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.ni-equipment-list-footer{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 4px 16px}

/* Galerie domu: stabilní mřížka a karty se stejnou geometrií. */
.ni-gallery-screen{min-width:0}
.ni-gallery-screen .gal-head{align-items:flex-start;margin-bottom:10px}
.ni-gallery-screen .gal-room-group{margin:0 0 25px}
.ni-gallery-screen .gal-sek-nadpis{margin:0 2px 9px}
.ni-gallery-screen .gal-rooms{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.ni-gallery-screen .gal-rc{display:flex;min-width:0;height:100%;flex-direction:column;transform:none;transition:border-color .16s,box-shadow .16s}
.ni-gallery-screen .gal-rc:hover{transform:none;border-color:var(--ak);box-shadow:0 10px 24px rgba(16,24,40,.12)}
.ni-gallery-screen .gal-rc:focus-visible{outline:2px solid var(--ak);outline-offset:3px}
.ni-gallery-screen .gal-cover{height:auto;aspect-ratio:16/9;overflow:hidden}
.ni-gallery-screen .gal-cover img{transition:transform .18s ease}
.ni-gallery-screen .gal-rc:hover .gal-cover img{transform:scale(1.035)}
.ni-gallery-screen .gal-rc-body{display:flex;min-height:70px;flex:1;flex-direction:column}
.ni-gallery-screen .gal-rc-nm{display:-webkit-box;min-height:2.35em;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.ni-gallery-screen .gal-rc-mt{margin-top:auto}
.ni-gallery-screen .gal-overview-empty{padding:38px 22px;border:1px dashed var(--ram);border-radius:15px;background:var(--karta);text-align:center}.ni-gallery-screen .gal-overview-empty h2{margin:0 0 6px;font-size:1.05rem}.ni-gallery-screen .gal-overview-empty p{margin:0 0 16px;color:var(--text2)}

@media(max-width:1100px){.ni-gallery-screen .gal-rooms{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.ni-equipment-screen .t013-vyb-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.ni-gallery-screen .gal-rooms{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .ni-equipment-screen .t013-vyb-tiles{grid-template-columns:1fr}.ni-equipment-screen .t007-section-head{align-items:stretch;flex-direction:column}.ni-equipment-screen .t007-section-head .ni-btn{width:100%}.ni-equipment-screen .ni-equipment-table-card{display:none}.ni-equipment-mobile-list{display:grid;gap:10px}.ni-equipment-mobile-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.ni-equipment-mobile-actions .ni-btn{flex:1 1 auto}
  .ni-gallery-screen .gal-head{align-items:stretch;flex-direction:column}.ni-gallery-screen .gal-head .ni-btn{width:100%}.ni-gallery-screen .gal-rooms{grid-template-columns:1fr}.ni-gallery-screen .gal-room-group{margin-bottom:20px}
}

/* ===================== T-046: Vybavení — dlaždice jako filtr podle plátce ===================== */
.vf-tile{cursor:pointer;transition:border-color .14s,box-shadow .14s,transform .14s}
.vf-tile:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,24,40,.08)}
.vf-tile.vf-on{border-color:var(--ak);box-shadow:0 0 0 1px var(--ak),var(--stin)}
.vf-tile.vf-on .l{color:var(--ak)}
.vf-tile:focus-visible{outline:2px solid var(--ak);outline-offset:2px}

/* ===================== T-047: Galerie — nadpisy kategorií jako teal eyebrow + ikona u počtu fotek ===================== */
.gal-sek-nadpis{color:var(--ak);letter-spacing:.12em;font-size:.7rem}
#ni-app.tema-tmave .gal-sek-nadpis{color:#5eead4}
.gal-rc-mt{display:flex;align-items:center;gap:5px}
.gal-rc-ic{display:inline-flex;color:var(--text2);line-height:0}
.gal-rc-ic svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.gal-rc{box-shadow:var(--stin)}

/* ===================== T-048: tři lokálně vyladěné obrazovky ===================== */
/* Dokumenty → Předávací protokol: pracovní plocha a bílý papír v obou tématech. */
.ni-protocol-screen{min-width:0}
.ni-protocol-screen .ni-protocol-workspace{box-sizing:border-box;padding:clamp(14px,2.5vw,32px);border:1px solid var(--ram);border-radius:16px;background:#dfe3e8}
.ni-protocol-screen .ni-protocol-paper{box-sizing:border-box;width:100%;max-width:980px;margin:0 auto;padding:clamp(24px,4.5vw,58px);border:1px solid #cfd4dc;border-radius:4px;background:#fff;color:#1d2939;box-shadow:0 18px 42px rgba(16,24,40,.15);color-scheme:light}
.ni-protocol-screen .ni-protocol-paper-head{align-items:flex-start;margin:0 0 28px;padding:0 0 20px;border-bottom:2px solid #d8e8e5}
.ni-protocol-screen .ni-protocol-paper-head h2{margin:3px 0 5px;color:#101828;font-size:clamp(1.35rem,2.4vw,1.85rem);letter-spacing:-.025em}
.ni-protocol-screen .ni-protocol-kicker{margin:0;color:#0f766e;font-size:.68rem;font-weight:800;letter-spacing:.13em}
.ni-protocol-screen .dok-meta,.ni-protocol-screen .ni-pozn{color:#667085}
.ni-protocol-screen .ni-protocol-content{font-family:Georgia,"Times New Roman",serif;font-size:.92rem;line-height:1.58}
.ni-protocol-screen .ni-protocol-section{margin:0 0 28px;padding:0 0 25px;border-bottom:1px solid #e4e7ec}
.ni-protocol-screen .ni-protocol-section>h2,.ni-protocol-screen .t009-protocol-belongings-head h2{margin:0 0 12px;color:#1d2939;font:700 1.02rem/1.35 var(--ni-font);letter-spacing:-.01em}
.ni-protocol-screen .ni-protocol-section>h2:before,.ni-protocol-screen .t009-protocol-belongings-head h2:before{content:"";display:inline-block;width:4px;height:1em;margin-right:9px;border-radius:99px;background:#0f766e;vertical-align:-.12em}
.ni-protocol-screen .ni-protocol-section>p{margin:0;color:#344054}
.ni-protocol-screen .ni-tab-wrap{overflow:visible;border:0;border-radius:0}
.ni-protocol-screen table.ni-tab{background:#fff;color:#1d2939;border-collapse:collapse}
.ni-protocol-screen .ni-tab th{padding:9px 10px;border-color:#d0d5dd;background:#f2f4f7;color:#475467;font-family:var(--ni-font);font-size:.7rem;letter-spacing:.04em;text-transform:uppercase}
.ni-protocol-screen .ni-tab td{padding:10px;border-color:#e4e7ec;color:#1d2939;background:#fff}
.ni-protocol-screen .ni-tab tbody tr:nth-child(even) td{background:#fafbfc}
.ni-protocol-screen .ni-tab tbody tr:hover td{background:#f4faf9}
.ni-protocol-screen .t009-protocol-belongings{margin:0 0 28px;padding:0 0 25px;border:0;border-bottom:1px solid #e4e7ec;border-radius:0;background:#fff}
.ni-protocol-screen .t009-protocol-belongings-head p{color:#667085}
.ni-protocol-screen .t009-protocol-belonging{border-color:#e4e7ec;background:#fafbfc;color:#1d2939;box-shadow:none}
.ni-protocol-screen .t009-protocol-belonging small{color:#667085}
.ni-protocol-screen .t009-protocol-belonging>span,.ni-protocol-screen .t009-protocol-belongings-head>span{background:#edf7f5;color:#115e59}
.ni-protocol-screen .ni-protocol-place{display:flex;justify-content:space-between;gap:24px;margin-top:34px;color:#344054;font-size:.86rem}
.ni-protocol-screen .ni-podpis{border-color:#344054;color:#344054}
#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-workspace{border-color:#344054;background:#101720}
#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper{border-color:#667085;background:#fff;color:#1d2939;box-shadow:0 22px 54px rgba(0,0,0,.38)}
#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper h2,#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper h3,#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper b{color:#1d2939}
#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper .dok-meta,#ni-app.tema-tmave .ni-protocol-screen .ni-protocol-paper .ni-pozn,#ni-app.tema-tmave .ni-protocol-screen .t009-protocol-belongings-head p{color:#667085}
#ni-app.tema-tmave .ni-protocol-screen table.ni-tab{background:#fff;color:#1d2939}#ni-app.tema-tmave .ni-protocol-screen .ni-tab th{border-color:#d0d5dd;background:#f2f4f7;color:#475467}#ni-app.tema-tmave .ni-protocol-screen .ni-tab td,#ni-app.tema-tmave .ni-protocol-screen .ni-tab tbody tr:nth-child(even) td{border-color:#e4e7ec;background:#fff;color:#1d2939}
#ni-app.tema-tmave .ni-protocol-screen .t009-protocol-belongings,#ni-app.tema-tmave .ni-protocol-screen .t009-protocol-belonging{border-color:#e4e7ec;background:#fafbfc;color:#1d2939}#ni-app.tema-tmave .ni-protocol-screen .t009-protocol-belonging>span{background:#edf7f5;color:#115e59}
#ni-app.tema-tmave .ni-protocol-screen .ux-protocol-item{border-color:#e4e7ec;background:#fff;color:#1d2939}#ni-app.tema-tmave .ni-protocol-screen .ux-protocol-item h3{color:#1d2939}#ni-app.tema-tmave .ni-protocol-screen .ux-protocol-fact{background:#f2f4f7}#ni-app.tema-tmave .ni-protocol-screen .ux-protocol-fact small{color:#667085}#ni-app.tema-tmave .ni-protocol-screen .ux-protocol-fact b{color:#1d2939}

/* Dokumenty → Ostatní dokumenty: tabulka na desktopu a karty na mobilu. */
.ni-doc-library-screen{min-width:0}
.ni-doc-library-screen .dok-controls{display:flex;align-items:stretch;gap:10px;margin-bottom:14px}
.ni-doc-library-screen .dok-controls input[type=search],.ni-doc-library-screen .dok-controls select{box-sizing:border-box;height:42px;min-height:42px;margin:0;border:1px solid var(--ram);border-radius:10px;background:var(--karta);color:var(--text);font:inherit}
.ni-doc-library-screen .dok-controls input[type=search]{flex:1 1 auto;min-width:180px;padding:8px 12px}
.ni-doc-library-screen .dok-controls select{flex:0 0 220px;width:220px;padding:8px 11px}
.ni-doc-library-screen .dok-controls>.ni-btn{min-height:42px}
.ni-doc-table-wrap{overflow:hidden;border-radius:14px}
.ni-doc-library-screen .ni-doc-table{table-layout:fixed}.ni-doc-library-screen .ni-doc-table.is-tenant th:nth-child(1){width:55%}.ni-doc-library-screen .ni-doc-table.is-tenant th:nth-child(2){width:22%}.ni-doc-library-screen .ni-doc-table.is-tenant th:nth-child(3){width:15%}.ni-doc-library-screen .ni-doc-table.is-tenant th:nth-child(4){width:8%;padding-right:18px;text-align:right}.ni-doc-library-screen .ni-doc-table.is-owner th:nth-child(1){width:60%}.ni-doc-library-screen .ni-doc-table.is-owner th:nth-child(2){width:25%}.ni-doc-library-screen .ni-doc-table.is-owner th:nth-child(3){width:15%}
.ni-doc-library-screen .ni-doc-table th{padding:10px 12px;background:transparent;color:var(--text2);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase}
.ni-doc-library-screen .ni-doc-table td{padding:13px 12px;border-color:var(--ram);vertical-align:middle}
.ni-doc-library-screen .ni-doc-table tbody tr{cursor:pointer;transition:background .14s}.ni-doc-library-screen .ni-doc-table tbody tr:hover td{background:#f4faf9}.ni-doc-library-screen .ni-doc-table tbody tr:focus-visible{outline:0}.ni-doc-library-screen .ni-doc-table tbody tr:focus-visible td{background:#eef9f7}.ni-doc-library-screen .ni-doc-table tbody tr:focus-visible td:first-child{box-shadow:inset 3px 0 #0f9f92}
.ni-doc-name{display:flex;align-items:center;gap:10px;min-width:0}.ni-doc-name b{overflow-wrap:anywhere;color:var(--text);font-size:.88rem}
.ni-doc-type{display:inline-flex;padding:3px 8px;border:1px solid var(--ram);border-radius:999px;background:#f2f4f7;color:#475467;font-size:.7rem;font-weight:700;line-height:1.35}
.ni-doc-date{color:var(--text2);white-space:nowrap}
.ni-doc-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;white-space:nowrap}
.ni-doc-delete{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;padding:0;border:1px solid #f3b3ad;border-radius:8px;background:#fff7f6;color:#b42318;cursor:pointer}.ni-doc-delete svg{width:14px;height:14px}.ni-doc-delete span{display:none}.ni-doc-delete:hover{border-color:#e47a70;background:#fff0ee}.ni-doc-delete:focus-visible{outline:2px solid #b42318;outline-offset:3px}
.ni-doc-mobile-list{display:none}
.ni-doc-empty{padding:34px 20px;border:1px dashed var(--ram);border-radius:14px;background:var(--karta);text-align:center}.ni-doc-empty h2{margin:0 0 6px;font-size:1rem}.ni-doc-empty p{margin:0;color:var(--text2);font-size:.82rem}
#ni-app.tema-tmave .ni-doc-library-screen .dok-controls input[type=search],#ni-app.tema-tmave .ni-doc-library-screen .dok-controls select,#ni-app.tema-tmave .ni-doc-table-card,#ni-app.tema-tmave .ni-doc-empty{border-color:#344054;background:#18212d;color:#eef1f6}
#ni-app.tema-tmave .ni-doc-library-screen .ni-doc-table th{background:transparent;color:#b3bac6}#ni-app.tema-tmave .ni-doc-library-screen .ni-doc-table td{border-color:#344054;color:#d6dbe6}#ni-app.tema-tmave .ni-doc-library-screen .ni-doc-table tbody tr:nth-child(even) td{background:#1a2533}#ni-app.tema-tmave .ni-doc-library-screen .ni-doc-table tbody tr:hover td{background:#203443}
#ni-app.tema-tmave .ni-doc-name b{color:#f2f4f7}#ni-app.tema-tmave .ni-doc-type{border-color:#475467;background:#263244;color:#d0d5dd}#ni-app.tema-tmave .ni-doc-delete{border-color:#7a2e2a;background:#351b1c;color:#fda29b}#ni-app.tema-tmave .ni-doc-date{color:#b3bac6}

/* Opravy a žádosti: vyrovnané sloupce a čitelná dokončená karta. */
.ni-repairs-screen{min-width:0}
.ni-repairs-screen .t012-repair-board{align-items:start}
.ni-repairs-screen .t012-repair-active{grid-template-columns:repeat(2,minmax(0,1fr))}
.ni-repairs-screen .t012-repair-column{display:flex;flex-direction:column;padding:11px;border-radius:15px;background:#f5f7f8}
.ni-repairs-screen .t012-repair-column>header{box-sizing:border-box;min-height:62px;padding:5px 4px 10px;align-items:flex-start}
.ni-repairs-screen .t012-repair-column>header>b{margin-left:auto}
.ni-repairs-screen .t012-repair-list{display:grid;grid-auto-rows:auto;align-content:start;gap:10px}
.ni-repairs-screen .ni-zkarta{display:flex;flex-direction:column;min-height:0;padding:13px 14px 12px;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s}
.ni-repairs-screen .ni-zkarta:hover{transform:translateY(-1px);border-color:#98a2b3;box-shadow:0 7px 18px rgba(16,24,40,.09)}
.ni-repairs-screen .ni-zkarta:active{transform:none}
.ni-repairs-screen .ni-zkarta:focus-visible{transform:none;outline:2px solid #0f766e;outline-offset:2px;box-shadow:none}
.ni-repairs-screen .zk-hlava{align-items:center;margin-bottom:7px}.ni-repairs-screen .zk-datum{margin-top:2px;color:var(--text2);font-size:.72rem;text-align:left}
.ni-repairs-screen .ni-zkarta h3{margin:0 0 5px;color:var(--text);line-height:1.35}
.ni-repairs-screen .opr-card-kind{margin:0 0 8px;line-height:1.4}
.ni-repairs-screen .zk-popis{-webkit-line-clamp:2;margin:0 0 9px;line-height:1.4}
.ni-repairs-screen .zk-pata{margin-top:auto;padding-top:10px;border-top:1px solid var(--ram)}
.ni-repairs-screen .opr-next-role{background:#eef2ff;color:#3730a3}.ni-repairs-screen .zk-pata-meta{color:var(--text2);font-size:.7rem;font-weight:700}
.t012-repair-all-done{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding:14px 16px;border:1px solid #99d5cc;border-radius:14px;background:#f2fbf9;color:#115e59}.t012-repair-all-done>svg{flex:none;width:24px;height:24px}.t012-repair-all-done b,.t012-repair-all-done span{display:block}.t012-repair-all-done span{margin-top:2px;color:#475467;font-size:.76rem}
.t012-repair-archive{position:relative;margin-top:14px;padding:14px;border:1px solid var(--ram);border-radius:15px;background:#f5f7f8;overflow:hidden}.t012-repair-archive:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad-slate)}
.t012-repair-archive>header{display:flex;align-items:center;gap:9px;padding:3px}.t012-repair-archive>header .opr-col-ic{color:#667085}.t012-repair-archive>header>div{flex:1;min-width:0}.t012-repair-archive>header h2{margin:0;color:#344054;font-size:.95rem}.t012-repair-archive>header p{margin:3px 0 0;color:#667085;font-size:.7rem}.t012-repair-archive>header>b{display:grid;place-items:center;flex:none;min-width:27px;height:27px;padding:0 7px;border-radius:999px;background:#e4e7ec;color:#344054;font-size:.76rem}.t012-repair-archive-toggle{flex:none;padding:7px 10px;border:1px solid #cbd2dc;border-radius:9px;background:#fff;color:#475467;font:inherit;font-size:.72rem;font-weight:750;cursor:pointer}.t012-repair-archive-toggle:hover{border-color:#98a2b3;background:#f9fafb}.t012-repair-archive.is-open>header{padding-bottom:12px}
.t012-repair-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.ni-repairs-screen .t012-repair-archive .ni-zkarta{min-height:180px;background:#f2f4f7;border-color:#cbd2dc;color:#667085;box-shadow:none}.ni-repairs-screen .t012-repair-archive .ni-zkarta:before{background:linear-gradient(180deg,#667085,#98a2b3)!important}.ni-repairs-screen .t012-repair-archive .ni-zkarta h3{color:#344054}.ni-repairs-screen .t012-repair-archive .ni-zkarta .opr-card-kind,.ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-popis,.ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-datum,.ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-pata-meta{color:#667085}.ni-repairs-screen .t012-repair-archive .ni-zkarta .ni-st,.ni-repairs-screen .t012-repair-archive .ni-zkarta .chip{border-color:#d0d5dd;background:#e4e7ec;color:#475467}.ni-repairs-screen .t012-repair-archive .ni-zkarta:hover,.ni-repairs-screen .t012-repair-archive .ni-zkarta:focus-visible{transform:translateY(-1px);border-color:#98a2b3;box-shadow:0 5px 14px rgba(16,24,40,.06)}.ni-repairs-screen .t012-repair-archive .zk-popis{-webkit-line-clamp:2}.t012-repair-archive>footer{display:flex;align-items:center;justify-content:center;gap:10px;padding-top:14px}.t012-repair-archive>footer span{color:var(--text2);font-size:.72rem}
#ni-app.tema-tmave .ni-repairs-screen .t012-repair-column{border-color:#344054;background:#141a26}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-column>header p{color:#b3bac6}
#ni-app.tema-tmave .ni-repairs-screen .ni-zkarta{border-color:#344054;background:#18212d;color:#d6dbe6}#ni-app.tema-tmave .ni-repairs-screen .ni-zkarta h3{color:#f2f4f7}#ni-app.tema-tmave .ni-repairs-screen .opr-card-kind,#ni-app.tema-tmave .ni-repairs-screen .zk-popis,#ni-app.tema-tmave .ni-repairs-screen .zk-datum{color:#b3bac6}#ni-app.tema-tmave .ni-repairs-screen .zk-pata{border-color:#344054}#ni-app.tema-tmave .ni-repairs-screen .opr-next-role{background:#242957;color:#c7d2fe}#ni-app.tema-tmave .ni-repairs-screen .zk-pata-meta{color:#98a2b3}
#ni-app.tema-tmave .t012-repair-all-done{border-color:#207e72;background:#15352f;color:#99f6e4}#ni-app.tema-tmave .t012-repair-all-done span{color:#b3bac6}#ni-app.tema-tmave .t012-repair-archive{border-color:#344054;background:#141a26}#ni-app.tema-tmave .t012-repair-archive>header>b{background:#263244;color:#d6dbe6}#ni-app.tema-tmave .t012-repair-archive>header p{color:#b3bac6}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta{border-color:#475467;background:#202b3a;color:#98a2b3}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta:before{background:linear-gradient(180deg,#667085,#475467)!important}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta h3{color:#d0d5dd}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .opr-card-kind,#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-popis,#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-datum,#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .zk-pata-meta{color:#98a2b3}#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .ni-st,#ni-app.tema-tmave .ni-repairs-screen .t012-repair-archive .ni-zkarta .chip{border-color:#475467;background:#344054;color:#b3bac6}

.ni-repairs-screen .t012-repair-archive .ni-zkarta{min-height:0}
#ni-app.tema-tmave .t012-repair-archive-toggle{border-color:#475467;background:#202b3a;color:#d0d5dd}#ni-app.tema-tmave .t012-repair-archive-toggle:hover{border-color:#667085;background:#263244}

/* T-093: CRM pracovní přehled oprav – rozhodnutí je oddělené od fáze práce. */
.t093-control-panel,.t093-worklist{position:relative;margin-bottom:14px;border:1px solid var(--ram);border-radius:15px;background:var(--karta);box-shadow:var(--stin);overflow:hidden}
.t093-control-panel:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#0f766e,#2dd4bf)}
.t093-control-panel>header{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 18px 13px}.t093-control-panel>header h2{margin:2px 0 0;font-size:1.02rem}.t093-control-panel>header p{max-width:520px;margin:0;color:var(--text2);font-size:.76rem;text-align:right}
.t093-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--ram)}
.t093-metric{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2px 10px;min-height:82px;padding:13px 15px;border:0;border-right:1px solid var(--ram);background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.t093-metric:last-child{border-right:0}.t093-metric:before{content:"";position:absolute;top:0;right:12px;left:12px;height:3px;border-radius:0 0 3px 3px;background:#98a2b3;opacity:.65}.t093-metric.is-decision:before{background:#3b82f6}.t093-metric.is-unplanned:before{background:#f59e0b}.t093-metric.is-overdue:before{background:#ef4444}.t093-metric.is-progress:before{background:#10b981}.t093-metric:hover{background:#f8fafc}.t093-metric.is-active{background:#f0fdfa}.t093-metric span{align-self:end;font-size:.76rem;font-weight:760}.t093-metric b{grid-row:1/3;grid-column:2;align-self:center;font-size:1.45rem;line-height:1;font-variant-numeric:tabular-nums}.t093-metric small{color:var(--text2);font-size:.66rem;line-height:1.25}
.t093-worklist>header{padding:0 16px 12px}.t093-worklist>header nav{display:flex;align-items:center;gap:4px;min-height:49px;border-bottom:1px solid var(--ram)}.t093-tab{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--text2);font:inherit;font-size:.75rem;font-weight:720;cursor:pointer}.t093-tab:hover{background:#f2f4f7;color:var(--text)}.t093-tab.is-active{background:#e8f7f4;color:#0f766e}.t093-tab span{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:rgba(15,118,110,.1);font-size:.64rem}.t093-worklist>header>div{display:flex;align-items:center;justify-content:space-between;padding-top:12px}.t093-worklist>header h2{margin:0;font-size:.92rem}.t093-worklist>header>div>span{color:var(--text2);font-size:.7rem}
.t093-list{display:grid;gap:8px;padding:0 16px 16px}.t093-repair-row{position:relative;display:grid;grid-template-columns:minmax(240px,1.35fr) minmax(220px,1fr) minmax(170px,.68fr) 22px;align-items:center;gap:16px;min-height:92px;padding:12px 14px 12px 18px;border:1px solid var(--ram);border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(16,24,40,.035);cursor:pointer;overflow:hidden;transition:border-color .14s,box-shadow .14s,transform .14s}.t093-repair-row:before{content:"";position:absolute;top:10px;bottom:10px;left:0;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#3b82f6,#60a5fa)}.t093-repair-row.is-unplanned:before{background:linear-gradient(180deg,#f59e0b,#fbbf24)}.t093-repair-row.is-overdue:before{background:linear-gradient(180deg,#ef4444,#fb7185)}.t093-repair-row.is-progress:before{background:linear-gradient(180deg,#059669,#34d399)}.t093-repair-row.is-done{border-color:#d0d5dd;background:#f2f4f7;color:#667085;box-shadow:none}.t093-repair-row.is-done:before{background:linear-gradient(180deg,#667085,#98a2b3)}.t093-repair-row:hover{transform:translateY(-1px);border-color:#98a2b3;box-shadow:0 6px 16px rgba(16,24,40,.07)}.t093-repair-row:focus-visible{outline:2px solid #0f766e;outline-offset:2px}.t093-row-main,.t093-next,.t093-row-meta{min-width:0}.t093-row-tags{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin-bottom:5px}.t093-tag{display:inline-flex;align-items:center;min-height:20px;padding:2px 7px;border:1px solid #d0d5dd;border-radius:999px;background:#f2f4f7;color:#475467;font-size:.62rem;font-weight:760;line-height:1.1}.t093-tag.is-waiting{border-color:#b2ddff;background:#eff8ff;color:#175cd3}.t093-tag.is-approved,.t093-tag.is-progress{border-color:#a6f4c5;background:#ecfdf3;color:#027a48}.t093-tag.is-unplanned,.t093-tag.is-urgent{border-color:#fedf89;background:#fffaeb;color:#b54708}.t093-tag.is-overdue,.t093-tag.is-danger,.t093-tag.is-rejected{border-color:#fecdca;background:#fef3f2;color:#b42318}.t093-tag.is-done{border-color:#d0d5dd;background:#e4e7ec;color:#475467}.t093-row-main h3{margin:0 0 3px;font-size:.88rem;line-height:1.3}.t093-row-kind{margin:0;color:var(--text2);font-size:.68rem}.t093-next span,.t093-row-meta span{display:block;margin-bottom:3px;color:var(--text2);font-size:.62rem;text-transform:uppercase;letter-spacing:.055em}.t093-next b{display:-webkit-box;color:#344054;font-size:.74rem;line-height:1.35;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.t093-row-meta{display:grid;gap:2px}.t093-row-meta>span{margin:0;text-transform:none;letter-spacing:0}.t093-row-meta>b{color:#475467;font-size:.7rem}.t093-row-meta>b.is-overdue{color:#b42318}.t093-row-meta small{color:var(--text2);font-size:.65rem}.t093-row-arrow{color:#0f766e;font-size:1rem;font-weight:800}.t093-repair-row.is-done .t093-row-main h3,.t093-repair-row.is-done .t093-next b{color:#475467}
.t093-empty{display:flex;align-items:center;justify-content:center;min-height:110px;padding:22px;border:1px dashed #d0d5dd;border-radius:12px;color:var(--text2);text-align:center}.t093-empty.is-ok{justify-content:flex-start;gap:12px;border-color:#a6d8ce;background:#f2fbf9;color:#115e59;text-align:left}.t093-empty.is-ok svg{flex:none;width:24px;height:24px}.t093-empty b,.t093-empty span{display:block}.t093-empty span{margin-top:3px;color:#667085;font-size:.72rem}
.t093-control-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.t093-all-filter{display:inline-flex;align-items:center;gap:7px;min-height:34px;padding:6px 10px;border:1px solid var(--ram);border-radius:9px;background:var(--karta);color:var(--text2);font:inherit;font-size:.72rem;font-weight:740;cursor:pointer}.t093-all-filter:hover{border-color:#99d5cc;background:#f4fbfa;color:#0f766e}.t093-all-filter.is-active{border-color:#99d5cc;background:#e8f7f4;color:#0f766e}.t093-all-filter span{display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:rgba(15,118,110,.1);font-size:.64rem}.t093-overdue-count{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border:1px solid #fecdca;border-radius:999px;background:#fef3f2;color:#b42318;font-size:.68rem;font-weight:720}.t093-metric.is-approved:before{background:#0f9f92}.t093-metric.is-done:before{background:#667085}.t093-worklist>header{padding:14px 16px 12px}.t093-worklist>header>div{padding-top:0}.t093-worklist>header>div>span{margin-left:auto}
.opr-decision-notice{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:4px 0 12px;padding:9px 11px;border:1px solid #b2ddff;border-radius:9px;background:#eff8ff;color:#175cd3}.opr-decision-notice b{font-size:.76rem}.opr-decision-notice span{color:#475467;font-size:.72rem}
#ni-app.tema-tmave .t093-control-panel,#ni-app.tema-tmave .t093-worklist{border-color:#344054;background:#141a26}#ni-app.tema-tmave .t093-metrics,#ni-app.tema-tmave .t093-metric,#ni-app.tema-tmave .t093-worklist>header nav{border-color:#344054}#ni-app.tema-tmave .t093-metric:hover,#ni-app.tema-tmave .t093-metric.is-active,#ni-app.tema-tmave .t093-tab:hover{background:#202b3a}#ni-app.tema-tmave .t093-tab.is-active{background:#15352f;color:#5eead4}#ni-app.tema-tmave .t093-repair-row{border-color:#344054;background:#18212d;color:#d6dbe6}#ni-app.tema-tmave .t093-repair-row.is-done{border-color:#475467;background:#202b3a;color:#98a2b3}#ni-app.tema-tmave .t093-row-main h3,#ni-app.tema-tmave .t093-next b{color:#f2f4f7}#ni-app.tema-tmave .t093-repair-row.is-done .t093-row-main h3,#ni-app.tema-tmave .t093-repair-row.is-done .t093-next b{color:#d0d5dd}#ni-app.tema-tmave .t093-empty{border-color:#475467}#ni-app.tema-tmave .t093-empty.is-ok{border-color:#207e72;background:#15352f;color:#99f6e4}
#ni-app.tema-tmave .t093-all-filter{border-color:#475467;background:#18212d;color:#b3bac6}#ni-app.tema-tmave .t093-all-filter:hover,#ni-app.tema-tmave .t093-all-filter.is-active{border-color:#207e72;background:#15352f;color:#99f6e4}#ni-app.tema-tmave .t093-overdue-count{border-color:#912018;background:#3b1f24;color:#fda29b}
#ni-app.tema-tmave .opr-decision-notice{border-color:#2e69a5;background:#172c46;color:#b2ddff}#ni-app.tema-tmave .opr-decision-notice span{color:#d1e9ff}

@media(max-width:1050px){.t093-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.t093-metric:nth-child(2){border-right:0}.t093-metric:nth-child(-n+2){border-bottom:1px solid var(--ram)}.t093-repair-row{grid-template-columns:minmax(230px,1.2fr) minmax(200px,1fr) minmax(145px,.65fr) 20px;gap:12px}}
@media(max-width:820px){
  .ni-protocol-screen .ni-protocol-workspace{padding:12px}.ni-protocol-screen .ni-protocol-paper{padding:28px 22px}
  .ni-doc-library-screen .dok-controls{flex-wrap:wrap}.ni-doc-library-screen .dok-controls input[type=search]{flex-basis:100%}.ni-doc-library-screen .dok-controls select{flex:1 1 190px;width:auto}.ni-doc-library-screen .dok-controls>.ni-btn{flex:1 1 auto}
}
@media(max-width:1050px){.t012-repair-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .ni-protocol-screen .ni-protocol-workspace{margin:0 -5px;padding:7px;border-radius:11px}.ni-protocol-screen .ni-protocol-paper{padding:24px 16px}.ni-protocol-screen .ni-protocol-paper-head{align-items:stretch;flex-direction:column}.ni-protocol-screen .ni-protocol-place{flex-direction:column;gap:10px}.ni-protocol-screen .ni-podpisy{grid-template-columns:1fr;gap:44px;margin-top:54px}
  .ni-doc-library-screen .dok-controls{display:grid;grid-template-columns:1fr}.ni-doc-library-screen .dok-controls input[type=search],.ni-doc-library-screen .dok-controls select,.ni-doc-library-screen .dok-controls>.ni-btn{width:100%;min-width:0}.ni-doc-table-wrap{display:none}.ni-doc-mobile-list{display:grid;gap:10px}.ni-doc-mobile-card{display:grid;grid-template-columns:32px minmax(0,1fr);gap:11px;padding:14px;border:1px solid var(--ram);border-radius:13px;background:var(--karta);box-shadow:var(--stin);cursor:pointer}.ni-doc-mobile-card>.dok-ficon{width:32px;height:32px}.ni-doc-mobile-card>div{min-width:0}.ni-doc-mobile-card h2{margin:1px 0 7px;font-size:.95rem;overflow-wrap:anywhere}.ni-doc-mobile-card p{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:0 0 12px;color:var(--text2);font-size:.75rem}.ni-doc-mobile-card .ni-doc-actions{justify-content:flex-start}.ni-doc-mobile-card .ni-doc-delete{width:auto;padding:0 11px;gap:6px}.ni-doc-mobile-card .ni-doc-delete span{display:inline}
  #ni-app.tema-tmave .ni-doc-mobile-card{border-color:#344054;background:#18212d}#ni-app.tema-tmave .ni-doc-mobile-card h2{color:#f2f4f7}
  .ni-repairs-screen .t012-repair-column>header{min-height:0}.ni-repairs-screen .ni-zkarta{min-height:0}.ni-repairs-screen .zk-hlava{gap:6px}.ni-repairs-screen .zk-pata{align-items:flex-start}.ni-repairs-screen .zk-otevrit{margin-left:auto}
}
@media(max-width:700px){.ni-repairs-screen .t012-repair-active,.t012-repair-archive-grid{grid-template-columns:1fr}.t012-repair-archive>header{flex-wrap:wrap}.t012-repair-archive>header>div{min-width:170px}.t012-repair-archive-toggle{margin-left:33px}.t012-repair-archive>footer{align-items:stretch;flex-direction:column}.t012-repair-archive>footer .ni-btn{width:100%;justify-content:center}.t093-control-panel>header{align-items:flex-start;flex-direction:column;padding:16px 14px 12px}.t093-control-panel>header p{text-align:left}.t093-metrics{grid-template-columns:1fr 1fr}.t093-metric{min-height:78px;padding:12px}.t093-worklist>header{padding-right:12px;padding-left:12px}.t093-worklist>header nav{overflow-x:auto}.t093-tab{flex:none}.t093-list{padding-right:12px;padding-left:12px}.t093-repair-row{grid-template-columns:minmax(0,1fr) 18px;gap:10px;min-height:0;padding:13px 12px 13px 17px}.t093-next,.t093-row-meta{grid-column:1}.t093-next{padding-top:5px;border-top:1px solid var(--ram)}.t093-row-arrow{grid-column:2;grid-row:1/4;align-self:center}.t093-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:5px 12px}.t093-row-meta>span{display:inline}.t093-empty{min-height:96px}}
@media print{
  #ni-print .ni-protocol-section{margin:0 0 6mm;padding:0 0 5mm;border-bottom:1px solid #bbb;break-inside:avoid}
  #ni-print .ni-protocol-section h2,#ni-print .t009-protocol-belongings h2{font-size:12pt;color:#000}
  #ni-print .ni-tab{width:100%;border-collapse:collapse}#ni-print .ni-tab th,#ni-print .ni-tab td{padding:2mm;border-bottom:1px solid #ccc;color:#000;background:#fff}
  #ni-print .t009-protocol-belongings{border:0;background:#fff;break-inside:avoid}#ni-print .t009-protocol-belongings-grid{grid-template-columns:repeat(3,1fr)}#ni-print .t009-protocol-belonging{border:1px solid #ddd;background:#fff;box-shadow:none}
  #ni-print .ni-protocol-place{display:flex;justify-content:space-between;gap:10mm;margin-top:10mm}.ni-podpisy{break-inside:avoid}
}

/* ===================== T-050: Přehled — hierarchie, hustota a podrobný rozpad ===================== */
#ni-app[data-view=dnes] .t028-overview-top,#ni-app[data-view=dnes] .t028-overview{width:100%;max-width:1360px;margin-right:auto;margin-left:auto}
#ni-app[data-view=dnes] .t028-overview-top{margin-bottom:0}
#ni-app[data-view=dnes] .t028-overview-top .ni-breadcrumb{margin-bottom:14px;color:var(--text2)}
#ni-app[data-view=dnes] .t028-overview-top .ni-breadcrumb span:first-child{display:grid;place-items:center;color:var(--ak)}
#ni-app[data-view=dnes] .t028-overview-top .ni-breadcrumb svg{width:17px;height:17px}
#ni-app[data-view=dnes] .t028-overview-top .ni-page-head{margin-bottom:16px}
#ni-app[data-view=dnes] .t069-priority-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(390px,1fr);gap:14px;align-items:start}
#ni-app[data-view=dnes] .t069-primary-slot{display:grid;align-self:start;align-content:start;gap:0;min-width:0;overflow:hidden;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:var(--stin)}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer{box-sizing:border-box;width:100%;min-height:188px;margin:0;padding:22px 24px;border:0;border-radius:13px 13px 0 0;background:linear-gradient(125deg,#0f766e 0%,#0f8f83 55%,#155e75 100%);box-shadow:none}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer span{color:#ccfbf1}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer span{font-size:.66rem;font-weight:800;line-height:1.3;letter-spacing:.1em}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer strong{margin:6px 0 5px;color:#fff;font-size:clamp(1.55rem,2.1vw,1.95rem);font-weight:780;line-height:1.12;letter-spacing:-.025em}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer small{max-width:720px;color:#e0f2fe;font-size:.75rem;line-height:1.48}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer .ni-btn.sek{border-color:rgba(255,255,255,.72);background:#fff;color:#134e4a}
#ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer .ni-btn.sek:hover{background:#f0fdfa;color:#115e59}
#ni-app[data-view=dnes] .t069-action-panel{position:relative;display:flex;align-self:start;flex-direction:column;box-sizing:border-box;width:100%;min-width:0;padding:15px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);box-shadow:var(--stin)}
#ni-app[data-view=dnes] .t069-action-panel.is-scrollable{max-height:420px;overflow:hidden}
#ni-app[data-view=dnes] .t069-action-panel:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#f59e0b,#ef4444)}
#ni-app[data-view=dnes] .t028-action-heading{margin:2px 0 10px;font-size:.94rem;font-weight:760;line-height:1.3}
#ni-app[data-view=dnes] .t069-action-panel.is-scrollable .dnes-akce{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-color:#98a2b3 transparent;scrollbar-width:thin}
#ni-app[data-view=dnes] .t069-action-panel.is-scrollable .dnes-akce::-webkit-scrollbar{width:6px}
#ni-app[data-view=dnes] .t069-action-panel.is-scrollable .dnes-akce::-webkit-scrollbar-thumb{border-radius:999px;background:#98a2b3}
#ni-app[data-view=dnes] .dnes-akce{gap:8px;margin-bottom:0}
#ni-app[data-view=dnes] .dnes-karta{min-height:58px;padding:10px 11px;border-radius:10px;background:#f8fafc;box-shadow:none}
#ni-app[data-view=dnes] .dnes-ic{width:32px;height:32px;border-radius:8px}
#ni-app[data-view=dnes] .dnes-karta.is-urgent .dnes-ic{width:22px;height:22px;border:0;border-radius:0;background:transparent;color:#d92d20;box-shadow:none}
#ni-app[data-view=dnes] .dnes-karta.is-urgent .dnes-ic svg{width:19px;height:19px;stroke-width:2.2}
#ni-app[data-view=dnes] .dnes-nadpis{font-size:.86rem;font-weight:760;line-height:1.32}
#ni-app[data-view=dnes] .dnes-meta{display:-webkit-box;overflow:hidden;margin-top:2px;font-size:.71rem;line-height:1.42;-webkit-box-orient:vertical;-webkit-line-clamp:2}
#ni-app[data-view=dnes] .t069-action-panel .dnes-next{display:none}
#ni-app[data-view=dnes] .dnes-akce-btn{min-height:34px;padding:7px 10px;font-size:.72rem}
#ni-app[data-view=dnes] .ni-btn.dnes-akce-btn.is-urgent{border:1px solid #d92d20;background:linear-gradient(135deg,#d92d20,#f04438);color:#fff;box-shadow:0 5px 12px rgba(180,35,24,.18);filter:none}
#ni-app[data-view=dnes] .ni-btn.dnes-akce-btn.is-urgent:hover{border-color:#b42318;background:linear-gradient(135deg,#b42318,#d92d20);color:#fff;box-shadow:0 6px 14px rgba(180,35,24,.24);filter:none}
#ni-app[data-view=dnes] .ni-btn.dnes-akce-btn.is-warning{border:1px solid #f79009;background:#fffaeb;color:#93370d;box-shadow:none;filter:none}
#ni-app[data-view=dnes] .ni-btn.dnes-akce-btn.is-warning:hover{border-color:#dc6803;background:#fef0c7;color:#7a2e0e;box-shadow:none;filter:none}
#ni-app[data-view=dnes] .dnes-meta-row{display:flex;align-items:center;gap:7px 15px;flex-wrap:wrap;margin:9px 0 0;padding:9px 2px 0;border-top:1px solid var(--ram);color:var(--text2);font-size:.69rem;line-height:1.35}
#ni-app[data-view=dnes] .dnes-meta-item{display:inline-flex;align-items:center;gap:5px;min-width:0}
#ni-app[data-view=dnes] .dnes-meta-item svg{width:13px;height:13px;color:var(--ak)}
#ni-app[data-view=dnes] .dnes-meta-item b{color:var(--text);font-weight:650}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-summary{margin:0;padding:13px 15px 11px;border:0;border-radius:0 0 13px 13px;box-shadow:none}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-summary h2{margin-bottom:7px;font-size:.86rem;font-weight:740}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-values{gap:0}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value{overflow:visible;padding:5px 16px 7px;border:0;border-radius:0;background:transparent}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:first-child{padding-left:0}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:not(:first-child){border-left:1px solid var(--ram)}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:before{display:none}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value span{font-size:.62rem;line-height:1.3}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value strong{margin-top:3px;font-size:clamp(1.08rem,1.5vw,1.3rem);line-height:1.12}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value small{margin-top:3px;font-size:.65rem;line-height:1.3}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value.is-remaining span{color:#0f766e}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value.is-remaining strong{color:#0f766e;font-size:clamp(1.28rem,1.8vw,1.55rem);font-weight:800}
#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-statuses{margin-top:4px;padding-top:8px}
#ni-app[data-view=dnes] .t028-overview{margin-top:14px;padding:0}
#ni-app[data-view=dnes] .t028-overview .ni-rent-carousel{margin-bottom:14px;padding:12px 13px 10px;border-radius:14px}
#ni-app[data-view=dnes] .t028-overview .ni-rent-carousel-head{margin-bottom:8px}
#ni-app[data-view=dnes] .t028-overview .ni-rent-track{grid-auto-columns:calc((100% - 63px)/8)}
#ni-app[data-view=dnes] .t028-overview .ni-rent-month{min-height:78px;padding:.44rem .5rem}
#ni-app[data-view=dnes] .t028-overview .ni-rent-month .n{font-weight:700;line-height:1.25}
#ni-app[data-view=dnes] .t028-overview .ni-rent-month .c{font-weight:450;line-height:1.35}
#ni-app[data-view=dnes] .t028-overview .ni-rent-month .s{font-weight:700;line-height:1.3}
#ni-app[data-view=dnes] .t028-overview .ni-rent-focus{outline:0;box-shadow:none}
#ni-app[data-view=dnes] .t028-overview .ni-rent-current{border-color:var(--ak);outline:2px solid var(--ak);outline-offset:-2px;box-shadow:none}
#ni-app[data-view=dnes] .t028-overview .ni-rent-carousel-foot{gap:7px 14px;margin-top:7px;color:var(--text);font-size:.68rem}
#ni-app[data-view=dnes] .t028-overview .ni-rent-carousel-foot small{color:var(--text2)}

#ni-app[data-view=dnes] .t060-financial-summary{box-sizing:border-box;min-width:0;margin-bottom:18px;padding:14px 16px 12px;border:1px solid var(--ram);border-radius:15px;background:var(--karta);color:var(--text);box-shadow:var(--stin)}
#ni-app[data-view=dnes] .t060-financial-summary h2{margin:0 0 10px;color:var(--text);font-size:1rem}
#ni-app[data-view=dnes] .t060-financial-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}
#ni-app[data-view=dnes] .t060-financial-value{position:relative;overflow:hidden;min-width:0;padding:13px 14px 12px;border:1px solid var(--ram);border-radius:12px;background:var(--karta)}
#ni-app[data-view=dnes] .t060-financial-value:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#0f766e,#5eead4)}
#ni-app[data-view=dnes] .t060-financial-value:nth-child(2):before{background:linear-gradient(90deg,#175cd3,#60a5fa)}
#ni-app[data-view=dnes] .t060-financial-value:nth-child(3):before{background:linear-gradient(90deg,#475467,#98a2b3)}
#ni-app[data-view=dnes] .t060-financial-value.is-remaining:before{background:linear-gradient(90deg,#0f766e,#5eead4)}
#ni-app[data-view=dnes] .t060-financial-value span{display:block;color:var(--text2);font-size:.66rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
#ni-app[data-view=dnes] .t060-financial-value strong{display:block;margin-top:4px;color:var(--text);font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.15}
#ni-app[data-view=dnes] .t060-financial-value small{display:block;margin-top:4px;color:var(--text2);font-size:.7rem;line-height:1.3}
#ni-app[data-view=dnes] .t060-financial-value.is-remaining{border-color:#99e4d8;background:linear-gradient(135deg,#f0fdfa,#fff)}
#ni-app[data-view=dnes] .t060-financial-value.is-remaining strong{color:#0f766e;font-size:clamp(1.32rem,2vw,1.65rem);font-weight:800}
#ni-app[data-view=dnes] .t060-last-activity .v{font-size:.88rem;line-height:1.35;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
#ni-app.tema-tmave[data-view=dnes] .t060-financial-value.is-remaining{border-color:#207a6d;background:linear-gradient(135deg,#123b38,#18212d)}
#ni-app.tema-tmave[data-view=dnes] .t060-financial-value.is-remaining span,#ni-app.tema-tmave[data-view=dnes] .t060-financial-value.is-remaining strong{color:#5eead4}
#ni-app[data-view=dnes] .t060-financial-statuses{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;margin-top:7px;padding-top:9px;border-top:1px solid var(--ram)}
#ni-app[data-view=dnes] .t060-financial-status{display:inline-flex;align-items:center;gap:7px;min-width:0;padding:5px 9px;border:0;border-radius:999px;background:var(--ak-svetla);color:var(--text);font:inherit;text-align:left}
#ni-app[data-view=dnes] button.t060-financial-status{cursor:pointer}
#ni-app[data-view=dnes] button.t060-financial-status:hover{box-shadow:inset 0 0 0 1px var(--ak)}
#ni-app[data-view=dnes] button.t060-financial-status:focus-visible{outline:2px solid var(--ak);outline-offset:2px}
#ni-app[data-view=dnes] .t060-financial-status span{color:var(--text2);font-size:.68rem}
#ni-app[data-view=dnes] .t060-financial-status strong{font-size:.72rem}
#ni-app[data-view=dnes] .t060-financial-status.is-success strong{color:#087a62}
#ni-app[data-view=dnes] .t060-financial-status.is-warning{background:#fff7e6}#ni-app[data-view=dnes] .t060-financial-status.is-warning strong{color:#9a6700}
#ni-app[data-view=dnes] .t060-financial-status.is-danger{background:#fff0ee}#ni-app[data-view=dnes] .t060-financial-status.is-danger strong{color:#b42318}
#ni-app[data-view=dnes].tema-tmave .t060-financial-status.is-success strong{color:#6ee7b7}
#ni-app[data-view=dnes].tema-tmave .t060-financial-status.is-warning{background:#3a2f10}#ni-app[data-view=dnes].tema-tmave .t060-financial-status.is-warning strong{color:#fde68a}
#ni-app[data-view=dnes].tema-tmave .t060-financial-status.is-danger{background:#3b1f24}#ni-app[data-view=dnes].tema-tmave .t060-financial-status.is-danger strong{color:#fda4af}

#ni-app[data-view=dnes] .t028-invest-summary{box-sizing:border-box;min-width:0;padding:15px;border:1px solid var(--ram);border-radius:14px;background:var(--karta);color:var(--text);box-shadow:var(--stin)}
#ni-app[data-view=dnes] .t028-invest-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:11px}
#ni-app[data-view=dnes] .t028-section-kicker{display:block;margin-bottom:3px;color:var(--ak);font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
#ni-app[data-view=dnes] .t028-invest-heading h2{margin:0;font-size:.94rem;line-height:1.3}
#ni-app[data-view=dnes] .t028-invest-heading p{margin:3px 0 0;color:var(--text2);font-size:.72rem;line-height:1.4}
#ni-app[data-view=dnes] .t028-invest-count{flex:none;padding:4px 8px;border-radius:999px;background:var(--ak-svetla);color:var(--ak);font-size:.68rem;font-weight:800}
#ni-app[data-view=dnes] .t028-invest-main-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;min-width:0}
#ni-app[data-view=dnes] .t028-invest-secondary-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;margin-bottom:10px}
#ni-app[data-view=dnes] .t028-invest-metric{position:relative;overflow:hidden;min-width:0;padding:11px 12px 10px;border:1px solid var(--ram);border-radius:10px;background:var(--karta);color:var(--text);box-shadow:none}
#ni-app[data-view=dnes] .t028-invest-metric:before{content:"";position:absolute;top:0;right:0;left:0;height:4px;background:linear-gradient(90deg,#475467,#98a2b3)}
#ni-app[data-view=dnes] .t028-invest-metric.is-primary:before{background:linear-gradient(90deg,#175cd3,#60a5fa)}
#ni-app[data-view=dnes] .t028-invest-metric.is-success:before{background:linear-gradient(90deg,#0f766e,#5eead4)}
#ni-app[data-view=dnes] .t028-invest-metric.is-warning:before{background:linear-gradient(90deg,#b54708,#fdb022)}
#ni-app[data-view=dnes] .t028-invest-metric.is-primary .l{color:#175cd3}
#ni-app[data-view=dnes] .t028-invest-metric.is-success .l{color:#087a62}
#ni-app[data-view=dnes] .t028-invest-metric.is-warning .l{color:#9a6700}
#ni-app[data-view=dnes] .t028-invest-metric .l{color:var(--text2);font-size:.66rem}
#ni-app[data-view=dnes] .t028-invest-metric .v{margin-top:5px;background:none;background-clip:border-box;-webkit-background-clip:border-box;-webkit-text-fill-color:currentColor;color:var(--text);font-size:1.08rem;font-weight:700;line-height:1.2;letter-spacing:-.012em}
#ni-app[data-view=dnes] .t028-invest-metric .ni-pozn{margin-top:3px;color:var(--text2);font-size:.64rem;line-height:1.35}
#ni-app[data-view=dnes] .t028-progress-summary{margin:11px 0 10px;padding-top:10px;border-top:1px solid var(--ram)}
#ni-app[data-view=dnes] .t028-progress-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:.82rem}
#ni-app[data-view=dnes] .t028-progress-label span{color:var(--ak);font-weight:800}
#ni-app[data-view=dnes] .t028-progress-summary .ni-progress{height:12px;margin:0}
#ni-app[data-view=dnes] .t028-progress-summary .ni-progress>div{background:linear-gradient(90deg,#14b8a6,#0f766e);color:#fff}
#ni-app[data-view=dnes] .t028-progress-summary p{margin:7px 0 0;color:var(--text2);font-size:.72rem}
#ni-app[data-view=dnes] .t028-invest-toggle{min-height:34px;padding:7px 11px;font-size:.74rem}
#ni-app[data-view=dnes] .t028-invest-detail{min-width:0;margin-top:14px;padding-top:14px;border-top:1px solid var(--ram)}
#ni-app[data-view=dnes] .t028-invest-explanation{margin:8px 0 10px;line-height:1.4}
#ni-app[data-view=dnes] .t028-invest-tabs{display:flex;gap:4px;overflow-x:auto;margin:14px 0 12px;border-bottom:1px solid var(--ram)}
#ni-app[data-view=dnes] .t028-invest-tabs button{min-height:40px;padding:8px 12px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--text2);font:700 .78rem var(--ni-font);white-space:nowrap;cursor:pointer}
#ni-app[data-view=dnes] .t028-invest-tabs button[aria-selected=true]{border-bottom-color:var(--ak);color:var(--ak)}
#ni-app[data-view=dnes] .t028-invest-tabs button:focus-visible{outline:2px solid var(--ak);outline-offset:-2px}
#ni-app[data-view=dnes] .t028-invest-tabpanel[hidden],#ni-app[data-view=dnes] .t028-invest-detail[hidden]{display:none}
#ni-app[data-view=dnes] .t028-tab-note{margin:0 0 9px}
#ni-app[data-view=dnes] .t028-overview>.ni-rozbal{margin-top:10px}
#ni-app[data-view=dnes].tema-tmave .t069-action-panel{border-color:#344054;background:#18212d}
#ni-app[data-view=dnes].tema-tmave .t069-action-panel .dnes-karta{border-color:#344054;background:#141a26}

/* 1.57.74 — dvouřádková dashboardová skladba: finance + kalendář, úkoly + umoření. */
#ni-app[data-view=dnes] .t070-dashboard-grid{grid-template-columns:minmax(0,1.45fr) minmax(360px,1fr);grid-template-areas:"finance calendar" "actions invest";align-items:start}
#ni-app[data-view=dnes] .t070-dashboard-grid .t069-primary-slot{grid-area:finance;grid-template-rows:1fr auto;align-self:stretch;height:100%}
#ni-app[data-view=dnes] .t070-calendar-slot{display:flex;grid-area:calendar;align-self:stretch;min-width:0;height:100%}
#ni-app[data-view=dnes] .t070-dashboard-grid .t069-action-panel{grid-area:actions}
#ni-app[data-view=dnes] .t070-invest-slot{grid-area:invest;min-width:0}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-carousel{box-sizing:border-box;width:100%;height:100%;margin:0;padding:14px;border-radius:14px;box-shadow:var(--stin)}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-carousel-head{margin-bottom:9px}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-track{grid-template-rows:repeat(3,minmax(62px,1fr));grid-auto-flow:column;grid-auto-columns:calc((100% - 8px)/2);gap:8px;max-height:216px;padding:1px 1px 3px}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-month{box-sizing:border-box;min-height:62px;padding:7px 8px}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-month .n{font-size:.7rem;line-height:1.2}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-month .c{margin-top:2px;font-size:.64rem;line-height:1.25}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-month .s{font-size:.55rem;line-height:1.2}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-carousel-foot{gap:7px 12px;margin-top:8px;color:var(--text);font-size:.7rem;line-height:1.3}
#ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-carousel-foot small{flex-basis:100%;margin-left:0;text-align:right}
#ni-app[data-view=dnes] .t070-invest-slot .t028-invest-summary{height:100%;padding:15px;margin:0}
#ni-app[data-view=dnes] .t070-invest-slot .t028-progress-summary{margin:4px 0 10px;padding-top:9px}
#ni-app[data-view=dnes] .t070-invest-slot.is-expanded{grid-area:auto;grid-column:1/-1}
#ni-app[data-view=dnes] .t070-invest-slot.is-expanded .t028-invest-main-metrics{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu{grid-template-areas:"finance calendar" "invest invest"}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t070-invest-slot{grid-area:invest;grid-column:1/-1}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-summary{display:grid;grid-template-columns:minmax(170px,.7fr) minmax(220px,1fr) minmax(360px,1.35fr) auto;gap:14px;align-items:center}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-heading{margin:0}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-progress-summary{margin:0;padding:0;border-top:0}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-secondary-metrics{margin:0}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-toggle{white-space:nowrap}
#ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-detail{grid-column:1/-1;width:100%}

@media(max-width:1100px){
  #ni-app[data-view=dnes] .t069-priority-grid{grid-template-columns:1fr}
  #ni-app[data-view=dnes] .t070-dashboard-grid{grid-template-areas:"finance" "calendar" "actions" "invest"}
  #ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-track{grid-template-rows:none;grid-auto-columns:calc((100% - 45px)/6);max-height:none}
  #ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-month{min-height:78px}
  #ni-app[data-view=dnes] .t070-invest-slot.is-expanded{grid-column:1}
  #ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu{grid-template-areas:"finance" "calendar" "invest"}
  #ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t070-invest-slot{grid-column:1}
  #ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-summary{grid-template-columns:1fr}
  #ni-app[data-view=dnes] .t070-dashboard-grid.bez-ukolu .t028-invest-toggle{width:max-content;white-space:normal}
  #ni-app[data-view=dnes] .t069-action-panel.is-scrollable{max-height:none;overflow:visible}
  #ni-app[data-view=dnes] .t069-action-panel.is-scrollable .dnes-akce{overflow:visible;padding-right:0}
  #ni-app[data-view=dnes] .t028-overview .ni-rent-track{grid-auto-columns:calc((100% - 45px)/6)}
  #ni-app[data-view=dnes] .t028-invest-main-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  #ni-app[data-view=dnes] .t028-overview-top .ni-page-head{margin-bottom:14px}
  #ni-app[data-view=dnes] .t069-action-panel{padding:14px}
  #ni-app[data-view=dnes] .t069-primary-slot .ux-finance-answer{min-height:0;padding:17px}
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value,#ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:first-child{padding:8px 0;border-left:0;border-top:1px solid var(--ram)}
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:first-child{padding-top:2px;border-top:0}
  #ni-app[data-view=dnes] .t028-overview{margin-top:12px}
  #ni-app[data-view=dnes] .t028-overview .ni-rent-track{grid-auto-columns:calc((100% - 12px)/2.15)}
  #ni-app[data-view=dnes] .t070-calendar-slot .ni-rent-track{grid-auto-columns:calc((100% - 12px)/2.15)}
  #ni-app[data-view=dnes] .t028-overview .ni-rent-carousel-foot small{flex-basis:100%;margin-left:0}
  #ni-app[data-view=dnes] .t060-financial-values,#ni-app[data-view=dnes] .t028-invest-main-metrics,#ni-app[data-view=dnes] .t028-invest-secondary-metrics{grid-template-columns:1fr}
  #ni-app[data-view=dnes] .t028-invest-heading{flex-direction:column;gap:8px}
  #ni-app[data-view=dnes] .t028-invest-count{align-self:flex-start}
  #ni-app[data-view=dnes] .t028-invest-toggle{width:100%;justify-content:center}
  #ni-app[data-view=dnes] .t028-invest-breakdown{overflow:visible;border:0;box-shadow:none}
  #ni-app[data-view=dnes] .t028-invest-breakdown table,#ni-app[data-view=dnes] .t028-invest-breakdown tbody{display:block;width:100%}
  #ni-app[data-view=dnes] .t028-invest-breakdown thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  #ni-app[data-view=dnes] .t028-invest-breakdown tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-bottom:9px;padding:11px 12px;border:1px solid var(--ram);border-radius:11px;background:var(--karta)}
  #ni-app[data-view=dnes] .t028-invest-breakdown td,#ni-app[data-view=dnes] .t028-invest-breakdown td.num{display:block;padding:0;border:0;text-align:left;white-space:normal}
  #ni-app[data-view=dnes] .t028-invest-breakdown td:first-child{grid-column:1/-1;padding:0;font-weight:750}
  #ni-app[data-view=dnes] .t028-invest-breakdown td:before{content:attr(data-label);display:block;margin-bottom:2px;color:var(--text2);font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
  #ni-app[data-view=dnes] .t028-invest-breakdown .t028-category-row{margin-left:12px;background:var(--pozadi)}
  #ni-app[data-view=dnes] .t028-invest-breakdown .mezisoucet{border-color:#99e4d8;background:var(--ak-svetla)}
  #ni-app[data-view=dnes] .t028-invest-breakdown .celkem{border-color:var(--ak);background:var(--ak-svetla)}
}
@media(max-width:520px){
  #ni-app[data-view=dnes] .dnes-meta-row{align-items:flex-start;flex-direction:column;gap:6px}
  #ni-app[data-view=dnes] .dnes-meta-item{align-items:flex-start}
  #ni-app[data-view=dnes] .t028-overview .ni-rent-carousel-foot{gap:7px 10px}
}

/* ===================== T-051: cílená skladba Zápočtů, Nájemného a Provozu ===================== */
#ni-app[data-view=investice] .t006-invest-toolbar.ds-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto;gap:10px;align-items:end}
#ni-app[data-view=investice] .t006-invest-search{max-width:none;width:100%}
#ni-app[data-view=investice] .t051-invest-sort{display:grid;gap:4px;color:var(--text2);font-size:.66rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}
#ni-app[data-view=investice] .t051-invest-sort select{min-height:38px;padding:7px 34px 7px 10px;border:1px solid var(--ram);border-radius:9px;background:var(--karta);color:var(--text);font:600 .78rem var(--ni-font)}
#ni-app[data-view=investice] .t005-invest-row{min-height:76px;padding-top:10px;padding-bottom:10px}
#ni-app[data-view=investice] .t051-list-footer,#ni-app[data-view=naklady] .ni-vic-wrap{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 4px 0}

/* 1.59.11 — řádek zápočtu je hlavní cesta do detailu; zamítnuté částky ustupují. */
#ni-app[data-view=investice] [data-row-detail]{cursor:pointer;transition:border-color .14s,box-shadow .14s,transform .14s}
#ni-app[data-view=investice] [data-row-detail]:hover{transform:translateY(-1px);border-color:#98a2b3;box-shadow:0 6px 16px rgba(16,24,40,.07)}
#ni-app[data-view=investice] [data-row-detail]:focus-visible{outline:2px solid var(--ak);outline-offset:2px}
#ni-app[data-view=investice] .t005-invest-amount.is-rejected,
#ni-app[data-view=investice] .ux-record-facts b.is-rejected{color:#98a2b3;text-decoration:line-through;text-decoration-thickness:1px;text-decoration-color:#667085}
#ni-app[data-view=investice] .t005-invest-row.is-rejected .t005-invest-name>small,
#ni-app[data-view=investice] .ux-record-card.is-rejected .ux-record-head p{color:#98a2b3}
#ni-app[data-view=investice] .t095-no-cost{border-color:#d0d5dd;background:#f2f4f7;color:#475467}
#ni-app[data-view=investice] .t006-invest-actions.mobile{grid-template-columns:1fr}

#ni-app[data-view=platby] .t020-rent-status{padding-bottom:12px}
#ni-app[data-view=platby] .t020-rent-status-body{min-height:76px;padding-top:8px;padding-bottom:8px}
#ni-app[data-view=platby] .t020-rent-main-icon{display:none}
#ni-app[data-view=platby] .t020-rent-status-copy strong{font-size:clamp(1.2rem,2vw,1.65rem)}
#ni-app[data-view=platby] .t020-month-head{min-height:68px;padding-top:8px;padding-bottom:8px}
#ni-app[data-view=platby] .t020-month-calendar{display:none}
#ni-app[data-view=platby] .t020-month-state{border-left:0;padding-left:12px}
#ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
#ni-app[data-view=platby] .t020-month-metric{min-height:88px}
#ni-app[data-view=platby] .t051-rent-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;height:auto;min-height:0;max-height:none;margin:0 18px 16px;padding:0 0 12px;border-bottom:1px solid var(--ram);overflow:visible}
#ni-app[data-view=platby] .t051-rent-nav .pl-tabs{flex:0 1 auto;width:auto;min-width:0;height:auto;min-height:0;max-height:none;margin:0;padding:0;border:0;overflow:visible;scrollbar-width:auto}
#ni-app[data-view=platby] .t051-rent-nav .pl-yearbar{flex-shrink:0;margin:0 0 0 auto;padding:4px}
#ni-app[data-view=platby] .t051-rent-nav .pl-y{display:grid;place-items:center;min-width:58px;height:38px;padding:0 10px;border-radius:8px;background:#0f766e;color:#fff;font-size:.82rem;font-weight:700;line-height:1}
#ni-app[data-view=platby] .t020-calendar-card{max-height:none;overflow:visible}
#ni-app[data-view=platby] .ni-kal{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
#ni-app[data-view=platby] .ni-mes{min-width:0;min-height:84px}
.t051-rent-payment-cards,.t051-payment-cards,.t051-reading-cards,.t051-cost-cards{display:none}

#ni-app[data-view=naklady] .t008-energy-tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
#ni-app[data-view=naklady] .ni-kom-karta{min-width:0}
#ni-app[data-view=naklady] .t007-energy-hero{grid-template-columns:minmax(0,2.05fr) minmax(280px,1fr);align-items:stretch}
#ni-app[data-view=naklady] .t007-energy-chart,#ni-app[data-view=naklady] .t007-energy-summary{display:flex;min-width:0}
#ni-app[data-view=naklady] .t007-energy-chart>.ni-karta,#ni-app[data-view=naklady] .t007-energy-summary>.ni-karta{flex:1;min-width:0;height:100%}
#ni-app[data-view=naklady] .t007-energy-hero .ni-karta{padding-bottom:14px}
#ni-app[data-view=naklady] .t051-usage-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start}
#ni-app[data-view=naklady] .t051-usage-metrics .ni-dl{max-width:none;min-width:0;margin:0;min-height:94px}
#ni-app[data-view=naklady] .t051-usage-metrics .ni-hlavni{grid-column:1/-1;min-height:112px}
#ni-app[data-view=naklady] .t009-electric-breakdown-chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:8px}
#ni-app[data-view=naklady] .t009-electric-breakdown-chips span{display:flex;justify-content:space-between;gap:6px;min-width:0;padding:6px 9px;font-size:.7rem}
#ni-app[data-view=naklady] .t008-energy-finance-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px}
#ni-app[data-view=naklady] .t008-energy-finance-row .ni-dl{display:flex;flex-direction:column;min-height:104px}
#ni-app[data-view=naklady] .t008-energy-finance-row .ni-pozn{margin-top:auto}
#ni-app[data-view=naklady] .t051-finance-coal{grid-template-columns:repeat(3,minmax(0,1fr))}
#ni-app[data-view=naklady] .t051-finance-coal .t051-finance-primary{grid-column:auto;grid-row:auto;min-height:104px;order:1}
#ni-app[data-view=naklady] .t051-finance-coal .t051-finance-paid{grid-row:auto;order:2}
#ni-app[data-view=naklady] .t051-finance-coal .t052-saldo{order:3}
#ni-app[data-view=naklady] .t051-payment-table td:last-child{min-width:220px}
.t051-payment-actions,.t051-cost-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.t051-cost-actions{flex-wrap:nowrap}
.t051-delete-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;padding:0;border:1px solid #f3b3ad;border-radius:9px;background:#fff7f6;color:#b42318;box-shadow:none;cursor:pointer}.t051-delete-icon svg{width:15px;height:15px}.t051-delete-icon:hover{border-color:#e47a70;background:#fff0ee}.t051-delete-icon:focus-visible{outline:2px solid #b42318;outline-offset:2px}
#ni-app.tema-tmave .t051-delete-icon{border-color:#7a2e2a;background:#351b1c;color:#fda29b}
.t051-payment-table tr.is-overdue td:first-child{box-shadow:inset 4px 0 0 #ef4444}
.t051-empty-state{display:grid;gap:5px;margin-top:10px;padding:16px;border:1px dashed var(--ram);border-radius:11px;background:var(--pozadi);color:var(--text)}
.t051-empty-state span{color:var(--text2);font-size:.78rem}
.t051-water-context,.t051-tab-help{padding:10px 12px;border:1px solid #b7e4da;border-radius:10px;background:#edf9f6;color:#31564f;font-size:.78rem;line-height:1.45}
.t051-water-context{margin-bottom:12px}
#ni-app[data-view=naklady] .t051-tab-help{margin:12px 0 14px}
#ni-app.tema-tmave .t051-water-context,#ni-app.tema-tmave .t051-tab-help{border-color:#176b61;background:#103e39;color:#c9eee8}
.t051-readings-table .t012-reading-photo img{width:42px;height:42px;object-fit:cover}
.t051-readings-table td:nth-child(6){width:36%;min-width:220px}.t051-readings-table td{vertical-align:middle}
.t051-delete{padding:6px 9px;box-shadow:none;opacity:.88}
.t051-document-link{display:grid;gap:2px}.t051-document-link small{color:var(--text2);font-size:.65rem;overflow-wrap:anywhere}
.t051-cost-table td:nth-child(3){width:30%}.t051-cost-table td:last-child{min-width:140px}
.t051-category-card{padding-top:0}.t051-category-card .t024-category-summary{margin:12px 18px 16px}
#ni-app[data-view=naklady] .t024-other-costs .t024-cost-stats .ni-souhrn-flex{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#ni-app[data-view=naklady] .t024-other-costs .t024-cost-stats .ni-dl{max-width:none;min-width:0}
#ni-app[data-view=naklady] .ni-panel-2{display:grid;grid-template-columns:minmax(0,2.05fr) minmax(280px,1fr);gap:16px;align-items:stretch}
#ni-app[data-view=naklady] .ni-panel-cast{min-width:0}
#ni-app[data-view=naklady] .t051-total-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#ni-app[data-view=naklady] .t051-total-primary{grid-column:1/-1;grid-row:1;min-height:112px}
#ni-app[data-view=naklady] .t052-largest-cost{display:flex;flex-direction:column}
#ni-app[data-view=naklady] .t052-largest-cost .ux-largest-cost{margin-top:auto;color:var(--text-muted);font-size:var(--fs-meta);font-weight:400;line-height:1.35;white-space:normal;overflow-wrap:anywhere}
#ni-app[data-view=naklady] .t052-saldo{border-left-width:3px}
#ni-app[data-view=naklady] .t052-saldo-danger{background:var(--danger-bg);border-color:var(--danger-border);border-left-color:var(--danger)}
#ni-app[data-view=naklady] .t052-saldo-danger :is(.v,.ux-saldo-breakdown){color:var(--danger-text)}
#ni-app[data-view=naklady] .t052-saldo-success{background:var(--success-bg);border-color:var(--success-border);border-left-color:var(--success)}
#ni-app[data-view=naklady] .t052-saldo-success :is(.v,.ux-saldo-breakdown){color:var(--success-text)}
#ni-app[data-view=naklady] .t052-saldo-neutral{background:var(--surface-card);border-color:var(--border-default);border-left-color:var(--border-strong)}
#ni-app[data-view=naklady] .t052-saldo-neutral :is(.v,.ux-saldo-breakdown){color:var(--text-primary)}
#ni-app[data-view=naklady] .t051-overview-chart{display:block;width:100%;max-width:640px;height:180px;margin:0 auto}
#ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-nazev{font-size:clamp(.62rem,.6vw,.73rem);line-height:1.15;white-space:nowrap}
#ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-castka{font-size:clamp(.96rem,1.12vw,1.16rem);line-height:1.15;white-space:nowrap;overflow-wrap:normal;font-variant-numeric:tabular-nums}
#ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-letos{gap:.28rem;font-size:clamp(.59rem,.52vw,.68rem);line-height:1.2;white-space:nowrap}
#ni-app[data-view=naklady] :is(.t051-usage-metrics,.t008-energy-finance-row,.t051-total-metrics,.t024-cost-stats,.t007-energy-summary .ni-souhrn-flex) .ni-dl .l{font-size:clamp(.62rem,.55vw,.71rem);line-height:1.2;white-space:nowrap}
#ni-app[data-view=naklady] :is(.t051-usage-metrics,.t008-energy-finance-row,.t051-total-metrics,.t024-cost-stats,.t007-energy-summary .ni-souhrn-flex) .ni-dl .v{font-size:clamp(.98rem,1.2vw,1.3rem);line-height:1.15;white-space:nowrap;overflow:visible;text-overflow:clip;overflow-wrap:normal;font-variant-numeric:tabular-nums}
#ni-app[data-view=naklady] :is(.t051-usage-metrics,.t008-energy-finance-row,.t051-total-metrics,.t024-cost-stats,.t007-energy-summary .ni-souhrn-flex) .ni-dl .ni-pozn{font-size:clamp(.57rem,.49vw,.65rem);line-height:1.25;white-space:nowrap;overflow:visible;text-overflow:clip}
#ni-app[data-view=naklady] :is(.t008-energy-finance-row,.t051-total-metrics) .ni-dl .ni-pozn.ux-saldo-breakdown{white-space:normal;overflow-wrap:anywhere}
.t051-method{margin-top:8px;padding-top:8px;border-top:1px solid var(--ram)}.t051-method summary{cursor:pointer;color:var(--ak);font-size:.76rem;font-weight:700}.t051-method p{margin:8px 0 0}
@media(max-width:620px){#ni-app[data-view=naklady] .t051-overview-chart{height:145px}}

/* Zápočty: kompaktní samostatné filtry s bočním akcentem. */
#ni-app[data-view=investice] .t064-invest-segments{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;
  min-width:0;margin:0 0 14px;border:0;border-radius:0;overflow:visible;
  background:transparent;box-shadow:none;scrollbar-width:auto
}
#ni-app[data-view=investice] .t064-invest-segments.has-new{grid-template-columns:repeat(4,minmax(0,1fr))}
#ni-app[data-view=investice] .t064-invest-segment{
  position:relative;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;gap:9px;
  min-width:0;height:54px;min-height:54px;padding:8px 14px 8px 23px;border:1px solid var(--border-default);border-radius:12px;
  background:var(--surface-card);color:var(--text-primary);box-shadow:var(--shadow-subtle);
  font:600 var(--fs-text)/1.2 var(--ni-font);white-space:nowrap;cursor:pointer;
  transform:none
}
#ni-app[data-view=investice] .t064-invest-segment::before{content:"";position:absolute;top:8px;bottom:8px;left:8px;width:4px;border-radius:999px;background:var(--t064-segment-line)}
#ni-app[data-view=investice] .t064-slate{--t064-segment-line:linear-gradient(180deg,#0f766e,#5eead4)}
#ni-app[data-view=investice] .t064-mod{--t064-segment-line:linear-gradient(180deg,#175cd3,#60a5fa)}
#ni-app[data-view=investice] .t064-zel{--t064-segment-line:linear-gradient(180deg,#0f766e,#34d399)}
#ni-app[data-view=investice] .t064-zlu{--t064-segment-line:linear-gradient(180deg,#b54708,#fbbf24)}
#ni-app[data-view=investice] .t064-cer{--t064-segment-line:linear-gradient(180deg,#b42318,#fb7185)}
#ni-app[data-view=investice] .t064-invest-segment:hover{border-color:#b7d7d2;background:#fafcfb;color:var(--text-primary);box-shadow:0 3px 9px -8px rgba(16,24,40,.28);transform:none}
#ni-app[data-view=investice] .t064-segment-icon{display:grid;place-items:center;flex:0 0 16px;width:16px;height:16px;line-height:0;color:var(--text-muted)}
#ni-app[data-view=investice] .t064-segment-icon svg{display:block;width:16px;height:16px}
#ni-app[data-view=investice] .t064-segment-label{min-width:0;overflow:hidden;text-overflow:ellipsis}
#ni-app[data-view=investice] .t064-segment-sum{flex:0 0 auto;margin-left:auto;color:currentColor;font-size:var(--fs-text);font-weight:750}
#ni-app[data-view=investice] .t064-slate .t064-segment-icon{color:var(--info)}
#ni-app[data-view=investice] .t064-mod .t064-segment-icon{color:var(--info)}
#ni-app[data-view=investice] .t064-zel .t064-segment-icon{color:var(--success)}
#ni-app[data-view=investice] .t064-zlu .t064-segment-icon{color:var(--warning)}
#ni-app[data-view=investice] .t064-cer .t064-segment-icon{color:var(--danger)}
#ni-app[data-view=investice] .t064-slate.on,#ni-app[data-view=investice] .t064-mod.on{border-color:#9fd7cf;background:#f3faf8;color:var(--text-primary);box-shadow:none}
#ni-app[data-view=investice] .t064-zel.on{border-color:#a9dfc1;background:#f4fbf7;color:var(--text-primary);box-shadow:none}
#ni-app[data-view=investice] .t064-zlu.on{border-color:#efd59d;background:#fffcf5;color:var(--text-primary);box-shadow:none}
#ni-app[data-view=investice] .t064-cer.on{border-color:#f0c4c1;background:#fff8f7;color:var(--text-primary);box-shadow:none}
#ni-app[data-view=investice] .t064-invest-segment.on:hover{box-shadow:none;filter:none}
#ni-app[data-view=investice] .t064-invest-segment.on .t064-segment-icon{color:currentColor}
#ni-app.tema-tmave[data-view=investice] .t064-invest-segment:hover{border-color:#42645f;background:#1b2930;box-shadow:none}
#ni-app.tema-tmave[data-view=investice] .t064-slate.on,#ni-app.tema-tmave[data-view=investice] .t064-mod.on{border-color:#256f66;background:#15332f;color:var(--text-primary)}
#ni-app.tema-tmave[data-view=investice] .t064-zel.on{border-color:#287557;background:#153326;color:var(--text-primary)}
#ni-app.tema-tmave[data-view=investice] .t064-zlu.on{border-color:#755b2b;background:#332b1b;color:var(--text-primary)}
#ni-app.tema-tmave[data-view=investice] .t064-cer.on{border-color:#78413d;background:#351f1e;color:var(--text-primary)}

@media(max-width:1050px){
  #ni-app[data-view=naklady] .t008-energy-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
  #ni-app[data-view=naklady] .t007-energy-hero,#ni-app[data-view=naklady] .ni-panel-2{grid-template-columns:1fr}
  #ni-app[data-view=platby] .ni-kal{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
  #ni-app[data-view=investice] .t006-invest-toolbar.ds-toolbar{grid-template-columns:1fr 1fr}
  #ni-app[data-view=investice] .t006-invest-count{grid-column:1/-1}
  #ni-app[data-view=investice] .t064-invest-segments{grid-template-columns:repeat(3,minmax(160px,1fr));overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}
  #ni-app[data-view=investice] .t064-invest-segments.has-new{grid-template-columns:repeat(4,minmax(160px,1fr))}
  #ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  #ni-app[data-view=platby] .ni-kal{grid-template-columns:repeat(3,minmax(0,1fr))}
  #ni-app[data-view=naklady] .t008-energy-finance-row{grid-template-columns:1fr}
  #ni-app[data-view=naklady] .t051-finance-coal{grid-template-columns:repeat(2,minmax(0,1fr))}
  #ni-app[data-view=platby] .t051-rent-nav{flex-wrap:wrap;align-items:center;gap:10px 16px}
  #ni-app[data-view=platby] .t051-rent-nav .pl-tabs{flex-basis:100%}
  #ni-app[data-view=platby] .t051-rent-nav .pl-yearbar{margin-left:auto}
}
@media(max-width:620px){
  #ni-app[data-view=investice] .t006-invest-toolbar.ds-toolbar{grid-template-columns:1fr}
  #ni-app[data-view=investice] .t051-invest-sort{width:100%}
  #ni-app[data-view=investice] .t064-invest-segments{grid-template-columns:repeat(3,minmax(160px,1fr))}
  #ni-app[data-view=investice] .t064-invest-segments.has-new{grid-template-columns:repeat(4,minmax(160px,1fr))}
  #ni-app[data-view=platby] .t051-rent-nav{margin-right:14px;margin-left:14px}
  #ni-app[data-view=platby] .t051-rent-nav .pl-yearbar{justify-content:center;width:100%;margin-left:0}
  #ni-app[data-view=platby] .ni-kal{grid-template-columns:repeat(2,minmax(0,1fr))}
  #ni-app[data-view=platby] .t020-month-head{display:grid;grid-template-columns:1fr;gap:8px}
  #ni-app[data-view=platby] .t020-month-state{padding:0}
  .t051-rent-history-table,.t051-payment-table,.t051-readings-table,.t051-cost-table{display:none}
  .t051-rent-payment-cards,.t051-payment-cards,.t051-reading-cards,.t051-cost-cards{display:grid;gap:10px}
  .t051-rent-payment-card,.t051-payment-card,.t051-reading-card,.t051-cost-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px;border:1px solid var(--ram);border-radius:11px;background:var(--karta);color:var(--text)}
  .t051-rent-payment-card>div,.t051-payment-card>div,.t051-reading-card>div,.t051-cost-card>div{display:grid;gap:3px;min-width:0}
  .t051-rent-payment-card span,.t051-payment-card span,.t051-reading-card span,.t051-cost-card span{color:var(--text2);font-size:.64rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
  .t051-rent-payment-card b,.t051-payment-card b,.t051-reading-card b,.t051-cost-card b{overflow-wrap:anywhere;font-size:.78rem}
  .t051-rent-payment-card .wide,.t051-reading-card .note,.t051-cost-card .wide,.t051-payment-card>p,.t051-payment-actions,.t051-cost-actions{grid-column:1/-1}
  .t051-payment-card.is-overdue{box-shadow:inset 4px 0 0 #ef4444}
  .t051-payment-actions{display:grid;grid-template-columns:1fr;gap:7px}.t051-payment-actions .ni-btn{width:100%;justify-content:center}.t051-payment-actions.mobile-actions{display:flex;align-items:center;gap:8px;margin-top:2px;padding-top:10px;border-top:1px solid var(--ram)}.t051-payment-actions.mobile-actions .t051-payment-primary{flex:1;width:auto}.t051-payment-more{position:relative;margin-left:auto}.t051-payment-more summary{display:flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid var(--ram);border-radius:9px;background:var(--karta);color:var(--text2);font-weight:800;letter-spacing:1px;line-height:1;list-style:none;cursor:pointer}.t051-payment-more summary::-webkit-details-marker{display:none}.t051-payment-more[open] summary{color:#0f766e;border-color:#5eead4;background:#f0fdfa}.t051-payment-more>div{position:absolute;right:0;bottom:46px;z-index:3;display:grid;gap:6px;min-width:128px;padding:7px;border:1px solid var(--ram);border-radius:10px;background:var(--karta);box-shadow:var(--stin)}.t051-payment-more>div .ni-btn{width:100%;min-height:34px;padding:6px 9px;font-size:.74rem}.t051-cost-actions{display:flex;justify-content:flex-start}.t051-cost-actions .ni-btn{width:auto}.t051-cost-actions .t051-delete-icon{justify-self:start}
  .t051-reading-card .photo .t012-reading-photo img{width:64px;height:64px;object-fit:cover}
  #ni-app[data-view=naklady] .t008-energy-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  #ni-app[data-view=naklady] .t051-finance-coal{grid-template-columns:1fr}
  #ni-app[data-view=naklady] .t051-usage-metrics,#ni-app[data-view=naklady] .t009-electric-breakdown-chips,#ni-app[data-view=naklady] .t051-total-metrics{grid-template-columns:1fr}
  #ni-app[data-view=naklady] .t051-usage-metrics .ni-hlavni,#ni-app[data-view=naklady] .t051-total-primary{grid-column:auto}
}
@media(max-width:360px){#ni-app[data-view=platby] .ni-kal{grid-template-columns:1fr}}

/* ===================== T-049: kompaktní a jednotné tiskové výstupy ===================== */
@media print{
  @page{size:A4 portrait;margin:12mm 14mm}
  html,body{width:auto!important;min-width:0!important;margin:0!important;padding:0!important;background:#fff!important}
  body.ni-tiskne #ni-print.ni-print-document{display:block!important;box-sizing:border-box;width:100%;max-width:none;margin:0;padding:0;background:#fff;color:#111;font:9.5pt/1.4 Arial,Helvetica,sans-serif;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  #ni-print.ni-print-document *,#ni-print.ni-print-document *:before,#ni-print.ni-print-document *:after{box-sizing:border-box;box-shadow:none;text-shadow:none}
  #ni-print.ni-print-document h1{margin:0 0 2.5mm;color:#000!important;font-size:15pt;line-height:1.2;break-after:avoid-page}
  #ni-print.ni-print-document h2{margin:0 0 2mm;color:#111;font-size:11pt;line-height:1.25;break-after:avoid-page}
  #ni-print.ni-print-document h3{break-after:avoid-page}
  #ni-print.ni-print-document p{margin:0 0 2.5mm;orphans:3;widows:3}
  #ni-print.ni-print-document .tp{margin:0 0 5mm;color:#555;font-size:8pt;line-height:1.35}
  #ni-print.ni-print-document .ts{margin:5mm 0 0;font-size:8.5pt;line-height:1.35}
  #ni-print.ni-print-document a{color:#111;text-decoration:none}
  #ni-print.ni-print-document img{max-width:100%}
  #ni-print.ni-print-document table{width:100%;border-collapse:collapse;font-size:8.5pt}
  #ni-print.ni-print-document thead{display:table-header-group}
  #ni-print.ni-print-document tr,#ni-print.ni-print-document img,#ni-print.ni-print-document figure{break-inside:avoid-page}
  #ni-print.ni-print-document th,#ni-print.ni-print-document td{padding:1.5mm 2mm;border-bottom:.25mm solid #d7d7d7;text-align:left;vertical-align:top}
  #ni-print.ni-print-document .num{text-align:right;white-space:nowrap}

  /* Smlouva: kompaktní text, ale bez zmenšení pod bezpečnou čitelnost. */
  #ni-print.ni-print-contract .tt{font:9.5pt/1.38 Georgia,"Times New Roman",serif;overflow-wrap:anywhere}
  #ni-print.ni-print-contract .tt-line{min-height:1.38em;white-space:pre-wrap;orphans:3;widows:3}
  #ni-print.ni-print-contract .tt-gap{height:2.2mm}
  #ni-print.ni-print-contract .tcontract-confirm{margin:5mm 0 4mm;padding:2.5mm 3mm;border:.25mm solid #d7d7d7;background:#f6f7f8;break-inside:avoid-page}
  #ni-print.ni-print-contract .tcontract-signatures{margin-top:4mm;padding-top:3mm;border-top:.4mm solid #777;break-inside:avoid-page;page-break-inside:avoid;font:9pt/1.35 Georgia,"Times New Roman",serif}
  #ni-print.ni-print-contract .tcontract-sign-date{margin-bottom:4mm;font-weight:700}
  #ni-print.ni-print-contract .tcontract-party-grid{display:grid;grid-template-columns:1fr 1fr;gap:16mm}
  #ni-print.ni-print-contract .tcontract-party-grid>div{min-width:0;break-inside:avoid-page}
  #ni-print.ni-print-contract .tcontract-signatures .tt-gap{height:1.8mm}
  #ni-print.ni-print-contract .tpod{margin-top:18mm;border-spacing:14mm 0;border-collapse:separate;break-inside:avoid-page}
  #ni-print.ni-print-contract .tpod td{width:50%;padding-top:2mm;border-top:.3mm solid #222;border-bottom:0;text-align:center;font-size:8.5pt}

  /* Protokol: tabulky mohou pokračovat na další straně bez velkých mezer. */
  #ni-print.ni-print-protocol .ts{margin:0 0 5mm}
  #ni-print.ni-print-protocol .ni-protocol-section{margin:0 0 4mm;padding:0 0 3.5mm;border-bottom:.25mm solid #c8c8c8;break-inside:auto}
  #ni-print.ni-print-protocol .ni-protocol-section h2,#ni-print.ni-print-protocol .t009-protocol-belongings h2{font-size:10.5pt}
  #ni-print.ni-print-protocol .ux-protocol-desktop{display:block!important}
  #ni-print.ni-print-protocol .ux-protocol-mobile{display:none!important}
  #ni-print.ni-print-protocol .ni-tab th,#ni-print.ni-print-protocol .ni-tab td{padding:1.35mm 1.6mm;background:#fff!important;color:#111!important}
  #ni-print.ni-print-protocol .t009-protocol-belongings{margin:0 0 4mm;padding:0 0 3.5mm;border:0;border-bottom:.25mm solid #c8c8c8;background:#fff;break-inside:auto}
  #ni-print.ni-print-protocol .t009-protocol-belongings-head{margin-bottom:2.5mm}
  #ni-print.ni-print-protocol .t009-protocol-belongings-head p{margin:0;font-size:8pt}
  #ni-print.ni-print-protocol .t009-protocol-belongings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1mm}
  #ni-print.ni-print-protocol .t009-protocol-belonging{min-width:0;padding:1.1mm 1.4mm;border:.25mm solid #ddd;border-radius:0;background:#fff;break-inside:avoid-page}
  #ni-print.ni-print-protocol .t009-protocol-belonging b{font-size:7.7pt;line-height:1.2}#ni-print.ni-print-protocol .t009-protocol-belonging small{font-size:7pt;line-height:1.2}#ni-print.ni-print-protocol .t009-protocol-belonging>span{padding:.4mm 1mm;font-size:7pt}
  #ni-print.ni-print-protocol .ni-protocol-signoff{margin-top:5mm;break-inside:avoid-page;page-break-inside:avoid}
  #ni-print.ni-print-protocol .ni-protocol-place{display:flex;justify-content:space-between;gap:10mm;margin:0;font-size:8.2pt}
  #ni-print.ni-print-protocol .ni-podpisy{grid-template-columns:1fr 1fr;gap:18mm;margin-top:7mm;break-inside:avoid-page}
  #ni-print.ni-print-protocol .ni-podpis{padding-top:1.5mm;border-top:.3mm solid #222;font-size:8.5pt}

  /* Oprava/žádost: samostatný čistý výpis místo tisku modalu a aplikace. */
  #ni-print.ni-print-repair .tpr-document>header{margin-bottom:5mm;padding-bottom:3mm;border-bottom:.5mm solid #0f766e}
  #ni-print.ni-print-repair .tpr-kicker{margin:0 0 1mm;color:#0f766e;font-size:7.5pt;font-weight:700;letter-spacing:.12em}
  #ni-print.ni-print-repair .tpr-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2mm;margin:0 0 5mm}
  #ni-print.ni-print-repair .tpr-meta>div{padding:2mm;border:.25mm solid #d7d7d7;background:#f6f7f8;break-inside:avoid-page}
  #ni-print.ni-print-repair .tpr-meta span,#ni-print.ni-print-repair .tpr-meta b{display:block}#ni-print.ni-print-repair .tpr-meta span{color:#666;font-size:7.2pt;text-transform:uppercase}#ni-print.ni-print-repair .tpr-meta b{margin-top:.7mm;font-size:8.5pt}
  #ni-print.ni-print-repair .tpr-section{margin:0 0 4mm;padding:0 0 3mm;border-bottom:.25mm solid #ddd;break-inside:auto}
  #ni-print.ni-print-repair .tpr-section>p{margin:0}#ni-print.ni-print-repair .tpr-pre{white-space:pre-wrap}
  #ni-print.ni-print-repair dl{display:grid;grid-template-columns:38mm minmax(0,1fr);gap:1.5mm 4mm;margin:0}#ni-print.ni-print-repair dt{color:#666;font-size:8pt}#ni-print.ni-print-repair dd{margin:0}
  #ni-print.ni-print-repair .tpr-message{display:grid;grid-template-columns:1fr auto;gap:0 4mm;margin:0 0 2mm;padding:2mm;border:.25mm solid #ddd;break-inside:avoid-page}#ni-print.ni-print-repair .tpr-message span{color:#666;font-size:7.5pt}#ni-print.ni-print-repair .tpr-message p{grid-column:1/-1;margin:1mm 0 0;white-space:pre-wrap}

  /* Fotokronika: měsíce už nevynucují prázdné nové stránky, fotografie jsou po třech. */
  #ni-print.ni-print-gallery .tk-obalka{min-height:250mm;padding:8mm;page-break-after:always}
  #ni-print.ni-print-gallery .tg-mesic{padding-top:2mm;page-break-before:auto;break-before:auto}
  #ni-print.ni-print-gallery .tg-mesic h2{margin:3mm 0 2mm;padding-bottom:1.5mm;border-bottom:.25mm solid #999;font-size:13pt}
  #ni-print.ni-print-gallery .tg-foto{display:inline-block;width:31%;margin:1%;vertical-align:top;text-align:center;break-inside:avoid-page}
  #ni-print.ni-print-gallery .tg-foto img{width:100%;max-height:52mm;object-fit:contain}
  #ni-print.ni-print-gallery .tk-pop{margin-top:1mm;font-size:7.8pt;line-height:1.25}#ni-print.ni-print-gallery .tk-pop div{font-size:7.2pt}
}

/* T-052 final cascade: compact white rent metrics with semantic side accents. */
#ni-app[data-view=platby] .t020-rent-health:not(.warn){display:none}
#ni-app[data-view=platby] .t020-rent-status{padding-bottom:8px}
#ni-app[data-view=platby] .t020-rent-status-body{min-height:64px;padding:5px 18px 10px}
#ni-app[data-view=platby] .t020-rent-month .t021-eyehead{padding-top:12px}
#ni-app[data-view=platby] .t020-month-head{min-height:52px;margin:0 16px;padding:5px 0 8px}
#ni-app[data-view=platby] .t020-month-state{min-width:0;padding:6px 10px;border:1px solid #a6f4c5;border-radius:999px;background:#ecfdf3;color:#067647}
#ni-app[data-view=platby] .t020-month-state.bad{border-color:#fecdca;background:#fef3f2;color:#b42318}
#ni-app[data-view=platby] .t020-month-state.part{border-color:#fedf89;background:#fffaeb;color:#b54708}
#ni-app[data-view=platby] .t020-month-state>span,#ni-app[data-view=platby] .t020-month-state small{display:none}
#ni-app[data-view=platby] .t020-month-state b{font-size:.75rem;line-height:1.15;white-space:nowrap}
#ni-app[data-view=platby] .t020-month-metrics{padding:10px 16px 14px;gap:9px}
#ni-app[data-view=platby] .t020-month-metric{--rent-accent:#667085;position:relative;min-height:74px;padding:10px 11px 9px 48px;overflow:hidden;border:1px solid var(--ram);border-radius:11px;background:var(--karta);color:var(--text);box-shadow:0 4px 12px -9px rgba(16,24,40,.35)}
#ni-app[data-view=platby] .t020-month-metric:before{content:"";position:absolute;left:7px;top:9px;bottom:9px;width:4px;border-radius:999px;background:var(--rent-accent)}
#ni-app[data-view=platby] .t020-month-metric.prescribed{--rent-accent:#667085;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.offsets{--rent-accent:#0f9f8f;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.cash{--rent-accent:#2e70e8;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric.remaining{--rent-accent:#0f9f8f;background:var(--karta)}
#ni-app[data-view=platby] .t020-rent-month.warn .t020-month-metric.remaining,#ni-app[data-view=platby] .t020-month-metric.remaining.due{--rent-accent:#ef4444;background:var(--karta)}
#ni-app[data-view=platby] .t020-month-metric .t020-metric-icon{position:absolute;left:17px;top:50%;width:22px;height:22px;transform:translateY(-50%);background:transparent;color:var(--rent-accent)!important}
#ni-app[data-view=platby] .t020-month-metric .t020-metric-icon svg{width:19px;height:19px}
#ni-app[data-view=platby] .t020-month-metric small,#ni-app[data-view=platby] .t020-month-metric p{color:var(--text2)}
#ni-app[data-view=platby] .t020-month-metric strong{margin-top:2px;color:var(--text);font-size:1.08rem;line-height:1.15}
#ni-app[data-view=platby] .t020-month-metric p{margin-top:3px;font-size:.66rem;line-height:1.25}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric.prescribed,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.offsets,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.cash,#ni-app.tema-tmave[data-view=platby] .t020-month-metric.remaining,#ni-app.tema-tmave[data-view=platby] .t020-rent-month.warn .t020-month-metric.remaining{background:var(--karta);border-color:var(--ram)}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric small,#ni-app.tema-tmave[data-view=platby] .t020-month-metric p{color:var(--text2)}
#ni-app.tema-tmave[data-view=platby] .t020-month-metric strong{color:var(--text)}
#ni-app.tema-tmave[data-view=platby] .t020-month-state{border-color:#176b61;background:#103e39;color:#5eead4}
#ni-app.tema-tmave[data-view=platby] .t020-month-state.bad{border-color:#7a271a;background:#3b1715;color:#fda29b}
#ni-app.tema-tmave[data-view=platby] .t020-month-state.part{border-color:#7a4a12;background:#3a2914;color:#fdb022}
@media(max-width:900px){#ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#ni-app[data-view=platby] .t020-month-head{align-items:flex-start;flex-wrap:wrap}#ni-app[data-view=platby] .t020-month-state{margin-left:0}#ni-app[data-view=platby] .t020-month-metrics{grid-template-columns:1fr}}

/* T-054: hlavni sekce pouzivaji cistou kompaktní hlavicku bez breadcrumbu. */
#ni-app .ni-page-head{margin-bottom:var(--space-5)}
#ni-app .ni-page-head h1{margin:0}
#ni-app .ni-page-head p{margin-top:6px}
@media(max-width:860px){#ni-app .ni-page-head{margin-bottom:var(--space-4)}}

/* T-055: jednotný systém popupů — hlavička, pracovní plocha a pevné akce. */
.ni-overlay{align-items:center;padding:20px;background:rgba(15,23,42,.48);overflow:hidden}
.ni-modal.ni-modal-system{--modal-accent:#0f766e;--modal-soft:#e8f5f2;--modal-line:linear-gradient(90deg,#0f766e,#5eead4);position:relative;display:flex;flex-direction:column;width:min(100%,820px);max-width:820px;max-height:calc(100dvh - 40px);margin:0;padding:0;overflow:hidden;border:1px solid var(--border-default);border-radius:18px!important;background:var(--surface-card);box-shadow:0 28px 90px rgba(15,23,42,.28)!important}
.ni-modal.ni-modal-system.is-detail{max-width:900px}.ni-modal.ni-modal-system.is-compact{max-width:600px}
.ni-modal.ni-modal-system:before{content:"";position:absolute;z-index:3;left:0;right:0;top:0;height:4px;background:var(--modal-line)}
.ni-modal.ni-modal-tone-blue{--modal-accent:#175cd3;--modal-soft:#eff8ff;--modal-line:linear-gradient(90deg,#175cd3,#60a5fa)}
.ni-modal.ni-modal-tone-amber{--modal-accent:#b54708;--modal-soft:#fffaeb;--modal-line:linear-gradient(90deg,#f59e0b,#fcd34d)}
.ni-modal.ni-modal-tone-brown{--modal-accent:#92400e;--modal-soft:#fdf0e7;--modal-line:linear-gradient(90deg,#92400e,#c2703a)}
.ni-modal.ni-modal-tone-purple{--modal-accent:#6938ef;--modal-soft:#f4f3ff;--modal-line:linear-gradient(90deg,#7f56d9,#a78bfa)}
.ni-modal.ni-modal-tone-red{--modal-accent:#b42318;--modal-soft:#fef3f2;--modal-line:linear-gradient(90deg,#b42318,#f97066)}
.ni-modal-head{position:relative;z-index:2;display:grid;grid-template-columns:42px minmax(0,1fr) 38px;align-items:center;gap:13px;flex:none;padding:18px 20px 15px;border-bottom:1px solid var(--border-default);background:var(--surface-card)}
.ni-modal-head-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--modal-soft);color:var(--modal-accent)}
.ni-modal-head-icon svg{width:21px;height:21px}.ni-modal-head-copy{min-width:0}
.ni-modal-head .ni-modal-kicker{margin:0 0 3px;color:var(--modal-accent);font-size:.65rem;font-weight:700;line-height:1.15;letter-spacing:.105em;text-transform:uppercase}
.ni-modal-head h2{margin:0;color:var(--text-primary);font-size:clamp(1.05rem,1.7vw,1.3rem);font-weight:700;line-height:1.22;letter-spacing:-.025em;overflow-wrap:anywhere}
.ni-modal-head .zavrit-x{float:none;align-self:start;display:grid;place-items:center;width:38px;min-width:38px;height:38px;min-height:38px;margin:0;padding:0;border:1px solid transparent;border-radius:10px;background:var(--neutral-bg);color:var(--text-muted);font-size:1.15rem;line-height:1}
.ni-modal-head .zavrit-x:hover{border-color:var(--border-default);background:var(--surface-hover);color:var(--text-primary)}
.ni-modal-body{min-height:0;flex:1 1 auto;padding:20px 22px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.ni-modal-body>:first-child{margin-top:0}.ni-modal-body>:last-child{margin-bottom:0}
.ni-modal-system .ni-form{margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.ni-modal-system .ni-form .radek{gap:12px 14px}.ni-modal-system .ni-form label{margin:12px 0 5px;font-size:.72rem;line-height:1.25}
.ni-modal-system .ni-form :is(input[type=text],input[type=number],input[type=date],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=url],select,textarea){min-height:44px;padding:9px 11px;border-radius:10px;font-size:.82rem;line-height:1.35}
.ni-modal-system .ni-form textarea{min-height:88px;resize:vertical}.ni-modal-system .ni-form input[type=file]{min-height:44px;padding:8px 10px;border-color:var(--border-default);background:var(--surface-form)}
.ni-modal-system .ni-form .hint{margin-top:5px;font-size:.68rem;line-height:1.4}
.ni-modal-system .ni-form h3,.ni-modal-body>h3{margin:20px 0 8px;padding-top:16px;border-top:1px solid var(--border-default);color:var(--modal-accent);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ni-modal-system .ni-detail{display:grid;grid-template-columns:minmax(120px,.38fr) minmax(0,1fr);gap:0 18px;margin:0}
.ni-modal-system .ni-detail dt,.ni-modal-system .ni-detail dd{margin:0;padding:9px 0;border-bottom:1px solid var(--border-default)}
.ni-modal-system .ni-detail dt{font-size:.66rem;line-height:1.35}.ni-modal-system .ni-detail dd{font-size:.8rem;line-height:1.45;overflow-wrap:anywhere}
.ni-modal-footer{position:relative;z-index:2;flex:none;padding:13px 20px calc(13px + env(safe-area-inset-bottom));border-top:1px solid var(--border-default);background:var(--surface-card)}
.ni-modal-footer .ni-akce{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0}.ni-modal-footer .ni-btn{min-width:116px}
.ni-modal-system .ni-chat{max-height:230px}.ni-modal-system .ux-detail-section{border-color:var(--border-default);box-shadow:none}
body.ni-tema-tmave .ni-modal-system,.tema-tmave .ni-modal-system{background:#18212d;border-color:#344054}
body.ni-tema-tmave .ni-modal-head,body.ni-tema-tmave .ni-modal-footer,.tema-tmave .ni-modal-head,.tema-tmave .ni-modal-footer{background:#18212d;border-color:#344054}
body.ni-tema-tmave .ni-modal-head-icon,.tema-tmave .ni-modal-head-icon{background:#253244}
body.ni-tema-tmave .ni-modal-system .ni-form,.tema-tmave .ni-modal-system .ni-form{background:transparent;border:0}
@media(max-width:700px){.ni-overlay{align-items:flex-end;padding:0}.ni-modal.ni-modal-system,.ni-modal.ni-modal-system.is-detail,.ni-modal.ni-modal-system.is-compact{width:100%;max-width:none;max-height:calc(100dvh - 12px);border-radius:18px 18px 0 0!important}.ni-modal-head{grid-template-columns:38px minmax(0,1fr) 36px;padding:16px 14px 13px}.ni-modal-head-icon{width:38px;height:38px}.ni-modal-body{padding:16px 14px}.ni-modal-footer{padding:11px 14px calc(11px + env(safe-area-inset-bottom))}.ni-modal-footer .ni-akce{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.ni-modal-footer .ni-btn{width:100%;min-width:0}.ni-modal-system .ni-form .radek{grid-template-columns:1fr}.ni-modal-system .ni-detail{grid-template-columns:1fr}.ni-modal-system .ni-detail dt{padding-bottom:2px;border-bottom:0}.ni-modal-system .ni-detail dd{padding-top:0}}
@media(max-width:420px){.ni-modal-footer .ni-akce{grid-template-columns:1fr}.ni-modal-head .ni-modal-kicker{font-size:.6rem}.ni-modal-head h2{font-size:1.02rem}}
/* Vytěžení dokladů: stejný jazyk jako zbytek aplikace, bez automatického zápisu. */
.ni-ai-extract{display:grid;gap:5px;margin-top:8px;padding:8px 9px;border:1px solid #cce9e3;border-radius:10px;background:#f4fcfa}.ni-ai-extract>div{display:flex;flex-wrap:wrap;gap:6px}.ni-ai-extract small{color:var(--text2);font-size:.68rem;line-height:1.35}.ni-ai-extract-state{color:#08766d;font-size:.68rem;font-weight:600;line-height:1.35}.ni-receipt-crop{display:grid;gap:8px;margin-top:9px;padding:11px;border:1px solid #b8e8df;border-radius:11px;background:#f8fffd}.ni-receipt-crop>b{font-size:.76rem;color:#08766d}.ni-receipt-crop>small{color:var(--text2);font-size:.68rem;line-height:1.35}.ni-receipt-crop canvas{display:block;max-width:100%;max-height:360px;margin:auto;border:1px solid #d7e5e1;border-radius:8px;background:#fff}.ni-receipt-crop-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.ni-receipt-crop-controls label{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;margin:0!important;color:var(--text2);font-size:.67rem!important}.ni-receipt-crop-controls input{min-height:20px!important;padding:0!important}.tema-tmave .ni-ai-extract,.tema-tmave .ni-receipt-crop{border-color:#21766b;background:#123a36}.tema-tmave .ni-receipt-crop canvas{border-color:#344054;background:#18212d}@media(max-width:520px){.ni-receipt-crop-controls{grid-template-columns:1fr}.ni-ai-extract .ni-btn{min-height:34px}}
.t051-reading-actions{display:flex;justify-content:flex-end;gap:7px;white-space:nowrap}.ni-ai-meter-warning{margin:0!important;padding:9px 10px;border:1px solid #fedf89;border-radius:9px;background:#fffaeb;color:#7a2e0e;font-size:.72rem;line-height:1.4}.tema-tmave .ni-ai-meter-warning{border-color:#7a4a12;background:#3a2914;color:#fdb022}@media(max-width:600px){.t051-reading-actions{justify-content:flex-start;flex-wrap:wrap}}
.ni-receipt{max-width:1040px}.ni-receipt-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.ni-receipt-head h2{margin:.15rem 0}.ni-receipt-targets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.ni-receipt-targets button{min-height:138px;padding:17px;border:1px solid var(--ni-line,#dce3ea);border-radius:14px;background:#fff;color:var(--ni-text,#071b39);text-align:left;display:flex;flex-direction:column;gap:7px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.ni-receipt-targets button span{width:33px;height:33px;border-radius:9px;display:grid;place-items:center;color:#008d83;background:#e8f8f5}.ni-receipt-targets button span svg{width:19px}.ni-receipt-targets button b{font-size:16px}.ni-receipt-targets button small{color:var(--ni-muted,#63738d);line-height:1.35}.ni-receipt-targets button.on{border-color:#19b9aa;background:#f1fbf9;box-shadow:0 0 0 2px rgba(25,185,170,.14)}.ni-receipt-upload{display:flex;align-items:end;gap:14px;padding:16px;border-radius:12px;background:#f5f8fa}.ni-receipt-upload label{display:grid;gap:4px;flex:1}.ni-receipt-upload label small{color:var(--ni-muted,#63738d)}.ni-receipt-upload>input{display:none}.ni-receipt-file-name{color:var(--text2);font-size:.72rem;font-weight:500;overflow-wrap:anywhere}.ni-receipt-source{display:flex;gap:8px;flex-wrap:wrap}.ni-receipt-upload>#ni-receipt-extract:disabled{opacity:.48;cursor:not-allowed;box-shadow:none}.ni-receipt-review{margin-top:18px}.ni-receipt-form{grid-template-columns:repeat(4,minmax(0,1fr))}.ni-receipt-form .ni-wide{grid-column:span 2}.ni-receipt-settings{margin-top:16px;max-width:1040px}.ni-receipt-settings summary{cursor:pointer;font-weight:700}.ni-receipt-settings input{min-width:250px}.ni-chip{white-space:nowrap;border-radius:999px;padding:6px 10px;background:#e7f7f3;color:#00766e;font-weight:700;font-size:12px}@media(max-width:850px){.ni-receipt-targets{grid-template-columns:repeat(2,minmax(0,1fr))}.ni-receipt-form{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.ni-receipt-targets,.ni-receipt-form{grid-template-columns:1fr}.ni-receipt-form .ni-wide{grid-column:auto}.ni-receipt-upload{align-items:stretch;flex-direction:column}}
/* Samostatná hlavní akce: není další sekcí navigace. */
@media(min-width:861px){.ni-nav-upload{margin:12px 4px 3px;padding-top:12px;border-top:1px solid rgba(148,163,184,.15)}.ni-nav .ni-upload-nav{min-height:48px;padding:8px 10px;background:linear-gradient(135deg,#16a394,#0d857a);color:#f2fffd;border:1px solid rgba(94,234,212,.28);box-shadow:0 7px 16px rgba(0,0,0,.18);font-weight:700}.ni-nav .ni-upload-nav:hover{background:linear-gradient(135deg,#19b5a4,#0f9286);color:#fff;box-shadow:0 9px 19px rgba(0,0,0,.24);transform:translateY(-1px)}.ni-nav .ni-upload-nav .ni-nav-icon{background:rgba(255,255,255,.18);color:#fff}.ni-nav .ni-upload-nav.akt{background:linear-gradient(135deg,#0f8b80,#08665f);color:#fff;box-shadow:inset 3px 0 0 #a7f3d0,0 7px 16px rgba(0,0,0,.18)}.ni-upload-nav-plus{margin-left:auto;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.2);font-size:18px;line-height:1}}
@media(max-width:860px){.ni-nav-upload{display:contents}.ni-nav .ni-upload-nav{background:rgba(20,184,166,.17);color:#8ff5e8;border:1px solid rgba(94,234,212,.22)}.ni-nav .ni-upload-nav .ni-nav-icon{color:#8ff5e8}.ni-upload-nav-plus{display:none}}
.ni-mobile-upload{display:none}.ni-receipt-source{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:860px){.ni-nav-upload{display:none}.ni-mobile-upload{display:grid;place-items:center;position:fixed;z-index:1002;left:50%;bottom:calc(52px + env(safe-area-inset-bottom));transform:translateX(-50%);width:58px;height:58px;border:4px solid #101722;border-radius:50%;background:linear-gradient(135deg,#18b5a5,#0b877c);color:#fff;box-shadow:0 8px 20px rgba(3,39,38,.42);cursor:pointer}.ni-mobile-upload svg{width:23px;height:23px;transform:translateY(1px)}.ni-mobile-upload span{position:absolute;right:7px;bottom:4px;width:17px;height:17px;border-radius:50%;display:grid;place-items:center;background:#e7fffa;color:#08776e;font:bold 17px/1 Arial}.ni-receipt-upload{align-items:stretch}.ni-receipt-upload>input{display:none}.ni-receipt-source{display:grid;grid-template-columns:1fr 1fr}.ni-receipt-source .ni-btn{min-height:48px}.ni-receipt-upload>#ni-receipt-extract{width:100%;min-height:50px}}

/* AI v opravách: vždy pouze návrh, který člověk zkontroluje a případně upraví. */
.ni-ai-inline{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:14px 0 0;padding:11px 12px;border:1px solid #b8e8df;border-radius:11px;background:#f0fbf8}.ni-ai-inline>div{min-width:0}.ni-ai-inline b{display:block;color:#08766d;font-size:.78rem}.ni-ai-inline small{display:block;margin-top:3px;color:var(--text2);font-size:.72rem;line-height:1.4}.ni-ai-inline .ni-btn{flex:none;white-space:nowrap}.ni-ai-note{display:grid;gap:3px;margin-top:8px;padding:9px 11px;border-left:3px solid #14b8a6;border-radius:0 8px 8px 0;background:#f6fffc;color:var(--text);font-size:.76rem;line-height:1.4}.ni-ai-note small{color:var(--text2);font-size:.7rem}.ni-ai-discussion-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-default)}.ni-ai-discussion-head h3{margin:0!important;padding:0!important;border:0!important}.ni-ai-summary{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:10px 0;padding:13px 14px;border:1px solid #b8e8df;border-radius:11px;background:#f0fbf8}.ni-ai-summary>div{min-width:0}.ni-ai-summary span{display:block;color:#08766d;font-size:.64rem;font-weight:700;letter-spacing:.08em}.ni-ai-summary p{margin:5px 0 9px;font-size:.8rem;font-weight:600;line-height:1.45}.ni-ai-summary dl{display:grid;grid-template-columns:92px minmax(0,1fr);gap:4px 10px;margin:0;font-size:.72rem;line-height:1.4}.ni-ai-summary dt{color:var(--text2)}.ni-ai-summary dd{margin:0;font-weight:600}.ni-ai-summary .ni-btn{flex:none;white-space:nowrap}@media(max-width:560px){.ni-ai-inline,.ni-ai-summary{align-items:stretch;flex-direction:column}.ni-ai-inline .ni-btn,.ni-ai-summary .ni-btn{width:100%}.ni-ai-summary dl{grid-template-columns:1fr}.ni-ai-summary dt{margin-top:4px}}

/* Stránkové AI přehledy: kompaktní, aby nesoutěžily s hlavním obsahem. */
.ni-ai-page-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;margin:14px 0;padding:12px 14px;border:1px solid #b8e8df;border-radius:12px;background:linear-gradient(135deg,#f6fffc,#edf8f6)}.ni-ai-page-panel>div:first-child{display:grid;gap:3px}.ni-ai-page-panel>div:first-child span{color:#08766d;font-size:.62rem;font-weight:700;letter-spacing:.1em}.ni-ai-page-panel>div:first-child b{font-size:.84rem}.ni-ai-page-panel>div:first-child small{color:var(--text2);font-size:.7rem;line-height:1.35}.ni-ai-page-panel>.ni-btn{white-space:nowrap}.ni-ai-page-result{grid-column:1/-1;padding-top:10px;border-top:1px solid #cdece6}.ni-ai-page-result>span{display:block;color:#08766d;font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ni-ai-page-result p{margin:5px 0 9px;font-size:.82rem;font-weight:600;line-height:1.45}.ni-ai-page-result dl{display:grid;grid-template-columns:92px minmax(0,1fr);gap:4px 10px;margin:0;font-size:.74rem;line-height:1.4}.ni-ai-page-result dt{color:var(--text2)}.ni-ai-page-result dd{margin:0;font-weight:600}.ni-ai-page-result>small{display:block;margin-top:8px;color:var(--text2);font-size:.67rem}.tema-tmave .ni-ai-page-panel{background:#123a36;border-color:#21766b}.tema-tmave .ni-ai-page-result{border-color:#21766b}@media(max-width:560px){.ni-ai-page-panel{grid-template-columns:1fr}.ni-ai-page-panel>.ni-btn{width:100%}.ni-ai-page-result dl{grid-template-columns:1fr}.ni-ai-page-result dt{margin-top:4px}}

/* Jediný plovoucí AI pomocník: nezasahuje do kompozice jednotlivých stránek. */
.ni-ai-chat{position:fixed;right:22px;bottom:22px;z-index:1200}.ni-ai-fab{display:flex;align-items:center;gap:8px;min-height:46px;padding:7px 14px 7px 7px;border:1px solid rgba(94,234,212,.45);border-radius:999px;background:linear-gradient(135deg,#0f8f84,#08766d);color:#fff;box-shadow:0 12px 26px rgba(4,78,73,.28);font:700 .78rem/1 inherit;cursor:pointer}.ni-ai-fab span{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#d9fffa;color:#08766d;font-size:.67rem;font-weight:800}.ni-ai-fab:hover{transform:translateY(-1px);box-shadow:0 15px 30px rgba(4,78,73,.34)}.ni-ai-window{position:absolute;right:0;bottom:58px;width:min(390px,calc(100vw - 28px));overflow:hidden;border:1px solid #c6e9e3;border-radius:16px;background:var(--karta,#fff);box-shadow:0 22px 56px rgba(15,23,42,.24)}.ni-ai-window header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border-bottom:1px solid #d9eee9;background:#effbf8}.ni-ai-window header div{display:grid;gap:2px}.ni-ai-window header span{color:#08766d;font-size:.6rem;font-weight:700;letter-spacing:.1em}.ni-ai-window header b{font-size:.86rem}.ni-ai-window header button{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:#667085;font-size:1.2rem;cursor:pointer}.ni-ai-chat-body{display:flex;flex-direction:column;gap:8px;max-height:250px;padding:13px;overflow:auto;background:var(--karta,#fff)}.ni-ai-bubble{align-self:flex-start;max-width:90%;margin:0;padding:9px 10px;border-radius:4px 12px 12px 12px;background:#eef8f6;color:var(--text);font-size:.76rem;line-height:1.42}.ni-ai-bubble b{display:block;margin-bottom:3px;color:#08766d}.ni-ai-bubble.moje{align-self:flex-end;border-radius:12px 4px 12px 12px;background:#eaf1ff}.ni-ai-bubble.chyba{background:#fff1f0;color:#b42318}.ni-ai-quick{display:flex;flex-wrap:wrap;gap:6px;padding:0 13px 11px;background:var(--karta,#fff)}.ni-ai-quick button{border:1px solid #cde9e4;border-radius:999px;background:#f7fffd;color:#08766d;padding:6px 8px;font:600 .67rem/1.2 inherit;cursor:pointer}.ni-ai-quick button:hover{background:#e7f8f4}.ni-ai-input{display:flex;gap:8px;padding:10px 12px;border-top:1px solid #dbe9e6;background:#f8fbfa}.ni-ai-input input{min-width:0;flex:1;border:1px solid #cedbd8;border-radius:9px;background:#fff;padding:9px 10px;color:var(--text);font:inherit;font-size:.76rem}.ni-ai-input button{display:grid;place-items:center;width:36px;border:0;border-radius:9px;background:#0f8f84;color:#fff;font-size:1rem;cursor:pointer}.tema-tmave .ni-ai-window,.tema-tmave .ni-ai-chat-body,.tema-tmave .ni-ai-quick{background:#18212d;border-color:#344054}.tema-tmave .ni-ai-window header,.tema-tmave .ni-ai-input{background:#203041;border-color:#344054}.tema-tmave .ni-ai-bubble{background:#183e3a;color:#edf5f3}.tema-tmave .ni-ai-bubble.moje{background:#203d67}.tema-tmave .ni-ai-quick button{background:#183e3a;border-color:#21766b;color:#8ff5e8}.tema-tmave .ni-ai-input input{background:#162534;border-color:#425466;color:#eef4ff}@media(max-width:860px){.ni-ai-chat{right:14px;bottom:calc(68px + env(safe-area-inset-bottom))}.ni-ai-window{bottom:56px}.ni-ai-fab b{display:none}.ni-ai-fab{width:48px;height:48px;padding:7px;justify-content:center}} 

/* Výsledek pracovního pomocníka: každá částka je z dat, položku lze otevřít. */
.ni-ai-result{align-self:stretch;border:1px solid #cde5df;border-radius:12px;background:#f8fbfa;padding:11px;color:#172033}.ni-ai-result>span{display:block;margin-bottom:5px;color:#08766d;font-size:.62rem;font-weight:800;letter-spacing:.09em}.ni-ai-result>p{margin:0 0 8px;font-size:.76rem;line-height:1.42}.ni-ai-result-row{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #e1ece9;padding:7px 0;font-size:.74rem}.ni-ai-result-row button{min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;text-decoration:underline;cursor:pointer}.ni-ai-result-row strong{white-space:nowrap}.ni-ai-result-total{display:flex;justify-content:space-between;gap:8px;margin-top:3px;padding-top:8px;border-top:2px solid #9ed7cc;color:#075e53;font-size:.78rem}.ni-ai-result-total strong{white-space:nowrap;font-size:.95rem}.ni-ai-result small{display:block;margin-top:6px;color:#667085;font-size:.66rem;line-height:1.35}.ni-ai-result-actions{margin-top:9px}.tema-tmave .ni-ai-result{border-color:#286f66;background:#173c39;color:#edf5f3}.tema-tmave .ni-ai-result-row{border-color:#285c58}.tema-tmave .ni-ai-result-total{border-color:#4aa99b;color:#9ff4e7}.tema-tmave .ni-ai-result small{color:#b6c9c7}
.ni-ai-result-row button small{display:block;margin:2px 0 0;font-size:.62rem;text-decoration:none}.ni-ai-plan>p b{color:#075e53}.ni-ai-plan .ni-ai-result-actions{display:flex;gap:7px;flex-wrap:wrap}.tema-tmave .ni-ai-plan>p b{color:#9ff4e7}

/* T-056: mobilní průchod — ovládání zůstává v dosahu, ale nepřekrývá obsah.
 * Pravidla jsou záměrně až na konci: sjednocují starší mobilní breakpointy. */
@media(max-width:860px){
  html{scroll-padding-bottom:calc(142px + env(safe-area-inset-bottom))}
  #ni-app{padding-bottom:calc(138px + env(safe-area-inset-bottom))}
  #ni-main{padding-bottom:calc(142px + env(safe-area-inset-bottom))}
  /* Hlavní upload je nad lištou, ne přes položky Nájem a Dům. */
  .ni-mobile-upload{bottom:calc(68px + env(safe-area-inset-bottom));width:56px;height:56px}
  .ni-ai-chat{bottom:calc(132px + env(safe-area-inset-bottom))}
  .ni-ai-window{max-height:calc(100dvh - 154px - env(safe-area-inset-bottom));display:flex;flex-direction:column}
  .ni-ai-window[hidden]{display:none!important}
  .ni-ai-chat-body{max-height:min(250px,calc(100dvh - 340px));min-height:0}
  .ni-hub-card{min-height:116px}
}

/* Mobilní aplikace má vlastní obsahový posuv. Spodní navigace proto neleží
   * nad dobíhajícím posunem celé stránky a reaguje hned při dotyku. */
@media(max-width:860px){
  html.ni-mobilni-scroll-kontejner,body.ni-mobilni-scroll-kontejner{height:100%;overflow:hidden}
  #ni-app{height:100vh;height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}
  #ni-main{box-sizing:border-box;width:100%;height:100%;max-width:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:auto;padding-bottom:calc(142px + env(safe-area-inset-bottom))}
  #ni-app:not(.tema-tmave) .ni-main{background-attachment:scroll}
  body.admin-bar #ni-app{height:calc(100vh - 32px);height:calc(100dvh - 32px);min-height:0}
}
@media(max-width:782px){
  body.admin-bar #ni-app{height:calc(100vh - 46px);height:calc(100dvh - 46px)}
}
@media(max-width:620px){
  /* Filtry zápočtů se nikdy neskrývají mimo obrazovku ani nezkracují text. */
  #ni-app[data-view=investice] .t064-invest-segments,
  #ni-app[data-view=investice] .t064-invest-segments.has-new{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:8px;padding:0}
  #ni-app[data-view=investice] .t064-invest-segment{height:auto;min-height:68px;padding:9px 10px 9px 21px;align-items:flex-start;flex-wrap:wrap;gap:5px 7px;white-space:normal}
  #ni-app[data-view=investice] .t064-invest-segment::before{top:10px;bottom:10px;left:7px}
  #ni-app[data-view=investice] .t064-segment-label{overflow:visible;text-overflow:clip;white-space:normal;font-size:.75rem;line-height:1.18}
  #ni-app[data-view=investice] .t064-segment-sum{width:100%;margin-left:23px;font-size:.82rem;line-height:1.15}
  /* Odečty na mobilu jsou samostatné karty včetně plnohodnotných akcí. */
  .t051-reading-card .t051-reading-actions{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:2px;padding-top:10px;border-top:1px solid var(--ram)}
  .t051-reading-card .t051-reading-actions .ni-btn{width:100%;justify-content:center;min-height:40px}
  .t051-reading-card .photo{grid-column:auto}.t051-reading-card .note{overflow-wrap:anywhere}
  /* Komodity, hodnoty a dlouhé názvy přirozeně zalomí řádek místo tří teček. */
  #ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-karta{min-height:74px;padding:10px;grid-template-columns:30px minmax(0,1fr);column-gap:8px}
  #ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-nazev,
  #ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-letos{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
  #ni-app[data-view=naklady] .t008-energy-tabs .ni-kom-castka{font-size:1rem;white-space:nowrap}
  #ni-app[data-view=naklady] :is(.t051-usage-metrics,.t008-energy-finance-row,.t051-total-metrics,.t024-cost-stats,.t007-energy-summary .ni-souhrn-flex) .ni-dl .l{white-space:normal}
  #ni-app[data-view=naklady] :is(.t051-usage-metrics,.t008-energy-finance-row,.t051-total-metrics,.t024-cost-stats,.t007-energy-summary .ni-souhrn-flex) .ni-dl .ni-pozn{white-space:normal;overflow-wrap:anywhere}
}

/* Mobil: karty používají plochu, akcent a stín — ne technické rámečky. */
@media(max-width:620px){
  #ni-app[data-view=investice] .t064-invest-segment,
  #ni-app[data-view=investice] .t064-invest-segment.on,
  #ni-app[data-view=investice] .t064-invest-segment:hover{border:0;box-shadow:0 5px 15px -12px rgba(16,24,40,.34)}
  #ni-app[data-view=investice] .t064-segment-label{font-size:.82rem;line-height:1.2}
  #ni-app[data-view=investice] .t064-segment-sum{font-size:.9rem;line-height:1.2}
  #ni-app[data-view=investice] .ux-record-card,
  #ni-app[data-view=investice] .ux-record-card.ma-nove{padding:14px;border:0;box-shadow:0 7px 18px -14px rgba(16,24,40,.32)}
  #ni-app[data-view=investice] .ux-record-head h3{font-size:1rem;line-height:1.3}
  #ni-app[data-view=investice] .ux-record-head p{font-size:.82rem}
  #ni-app[data-view=investice] .ux-record-facts{gap:14px;margin:10px 0 8px}
  #ni-app[data-view=investice] .ux-record-facts span{padding:0;border:0;border-radius:0;background:transparent}
  #ni-app[data-view=investice] .ux-record-facts small{font-size:.68rem}
  #ni-app[data-view=investice] .ux-record-facts b{font-size:.92rem}
  #ni-app[data-view=investice] .ux-next{margin:0;color:var(--text2);font-size:.82rem}
  .t051-reading-card{border:0;box-shadow:0 7px 18px -14px rgba(16,24,40,.3)}
  .t051-reading-card .t051-reading-actions{border-top:0;padding-top:4px}
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-summary{box-shadow:none}
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value,
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:first-child{border-top:0;background:transparent}
  #ni-app[data-view=dnes] .t060-financial-summary{border:0;box-shadow:0 7px 18px -14px rgba(16,24,40,.3)}
  #ni-app[data-view=dnes] .t060-financial-value,
  #ni-app[data-view=dnes] .t060-financial-value.is-remaining{border:0;background:transparent}
  #ni-app[data-view=dnes] .t060-financial-statuses{border-top:0}
}

/* Společný kompaktní rytmus seznamů na telefonu. */
@media(max-width:620px){
  /* Přehled: tři klíčové částky jsou srovnatelné na jednom řádku. */
  #ni-app[data-view=dnes] .t060-financial-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value,
  #ni-app[data-view=dnes] .t069-primary-slot .t060-financial-value:first-child{padding:4px 5px;border:0}
  #ni-app[data-view=dnes] .t060-financial-value span{font-size:.56rem;letter-spacing:.035em}
  #ni-app[data-view=dnes] .t060-financial-value strong,
  #ni-app[data-view=dnes] .t060-financial-value.is-remaining strong{font-size:clamp(.86rem,4vw,1.05rem);line-height:1.12}
  #ni-app[data-view=dnes] .t060-financial-value small{font-size:.6rem;line-height:1.18}

  /* Zápočty: gradientový proužek vrací charakter, ale řádek zůstává nízký. */
  #ni-app[data-view=investice] .t064-invest-segment{min-height:52px;padding:7px 9px 7px 20px;gap:4px 6px}
  #ni-app[data-view=investice] .t064-invest-segment::before{top:8px;bottom:8px;left:7px}
  #ni-app[data-view=investice] .t064-segment-label{font-size:.73rem}
  #ni-app[data-view=investice] .t064-segment-sum{font-size:.8rem}
  #ni-app[data-view=investice] .ux-record-card,
  #ni-app[data-view=investice] .ux-record-card.ma-nove{position:relative;padding:10px 11px 10px 15px;border:0;border-radius:11px;box-shadow:0 5px 14px -12px rgba(16,24,40,.36)}
  #ni-app[data-view=investice] .ux-record-card::before{content:"";position:absolute;top:10px;bottom:10px;left:0;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#0f9f92,#5eead4)}
  #ni-app[data-view=investice] .ux-record-card.is-pending::before{background:linear-gradient(180deg,#175cd3,#60a5fa)}
  #ni-app[data-view=investice] .ux-record-card.is-rejected::before{background:linear-gradient(180deg,#b42318,#fb7185)}
  #ni-app[data-view=investice] .ux-record-head h3{font-size:.88rem;line-height:1.25}
  #ni-app[data-view=investice] .ux-record-head p{margin-top:2px;font-size:.72rem}
  #ni-app[data-view=investice] .ux-record-card>.t006-invest-tags{margin:5px 0}
  #ni-app[data-view=investice] .ux-record-facts{gap:10px;margin:6px 0 4px}
  #ni-app[data-view=investice] .ux-record-facts small{font-size:.61rem}
  #ni-app[data-view=investice] .ux-record-facts b{font-size:.8rem}
  #ni-app[data-view=investice] .ux-next{font-size:.71rem}
  #ni-app[data-view=investice] .t006-invest-comments p{margin-top:6px;padding:6px 8px;font-size:.68rem;line-height:1.3}

  /* Platby a odečty: bez prázdných polí, s nízkým řádkem akcí. */
  .t051-payment-card,.t051-reading-card,.t051-cost-card{gap:7px;padding:10px;border-radius:10px}
  .t051-payment-card span,.t051-reading-card span,.t051-cost-card span{font-size:.59rem}
  .t051-payment-card b,.t051-reading-card b,.t051-cost-card b{font-size:.75rem}
  .t051-reading-card .t051-reading-actions{gap:6px;margin-top:0;padding-top:3px}
  .t051-reading-card .t051-reading-actions .ni-btn{min-height:32px;padding:5px 8px;font-size:.72rem}
  .t051-reading-card .photo .t012-reading-photo img{width:42px;height:42px}
  .t051-reading-card .note p{margin:0;font-size:.7rem;line-height:1.28}
  .t051-payment-actions.mobile-actions{margin-top:0;padding-top:6px}
  .t051-payment-actions.mobile-actions .ni-btn{min-height:32px;padding:5px 8px;font-size:.72rem}
  .t051-payment-more summary{width:32px;height:32px}

  /* Vybavení a dokumenty: jedna kompaktní položka namísto velké karty. */
  .ni-equipment-screen .t013-vyb-tiles .ni-dl{min-height:58px;padding:8px 10px}
  .ni-equipment-mobile-card{padding:10px 11px;border:0;border-radius:11px;box-shadow:0 5px 14px -12px rgba(16,24,40,.34)}
  .ni-equipment-mobile-head h2{font-size:.86rem;line-height:1.25}.ni-equipment-mobile-head strong{font-size:.82rem}
  .ni-equipment-mobile-card dl{gap:5px;margin:7px 0}.ni-equipment-mobile-card dt{font-size:.59rem}.ni-equipment-mobile-card dd{font-size:.72rem}
  .ni-equipment-mobile-card>p{margin:0 0 6px;font-size:.7rem}.ni-equipment-mobile-file{margin-bottom:6px}
  .ni-equipment-mobile-actions{gap:6px}.ni-equipment-mobile-actions .ni-btn{min-height:32px;padding:5px 8px;font-size:.72rem}
  .ni-doc-mobile-list{gap:7px}.ni-doc-mobile-card{position:relative;grid-template-columns:25px minmax(0,1fr);gap:8px;padding:10px 43px 10px 11px;border:0;border-radius:11px;box-shadow:0 5px 14px -12px rgba(16,24,40,.34)}
  .ni-doc-mobile-card>.dok-ficon{width:25px;height:25px}.ni-doc-mobile-card h2{margin:0 0 4px;font-size:.86rem;line-height:1.25}.ni-doc-mobile-card p{margin:0;color:var(--text2);font-size:.69rem}
  .ni-doc-mobile-card .ni-doc-actions{position:absolute;top:9px;right:9px}.ni-doc-mobile-card .ni-doc-delete{width:28px;height:28px;padding:0;border-radius:8px}.ni-doc-mobile-card .ni-doc-delete span{display:none}
}
@media(max-width:390px){
  #ni-app[data-view=investice] .t064-invest-segments,
  #ni-app[data-view=investice] .t064-invest-segments.has-new{grid-template-columns:1fr}
  .ni-main{padding-right:.75rem;padding-left:.75rem}
  .ni-hub-card{grid-template-columns:40px minmax(0,1fr) 30px;column-gap:10px;min-height:108px;padding:.8rem .75rem .8rem 1rem}
  .ni-hub-card .ni-hub-vz{width:40px;height:40px}.ni-hub-card .ni-hub-vz svg{width:21px;height:21px}
  .ni-hub-title{font-size:1rem}.ni-hub-copy{font-size:.75rem}.ni-hub-meta{font-size:.62rem}
  .ni-ai-chat{right:10px}.ni-ai-window{width:calc(100vw - 20px)}
}

/* T-057: iOS nepřibližuje formuláře při psaní; akce na Přehledu mají jeden rytmus. */
@media(max-width:860px){
  #ni-app :is(input:not([type=file]):not([type=checkbox]):not([type=radio]),select,textarea),
  .ni-overlay :is(input:not([type=file]):not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px!important}
  #ni-app[data-view=dnes] .t005-finance-answer>.ni-btn,
  #ni-app[data-view=dnes] .t028-invest-toggle{width:max-content;max-width:100%;min-height:40px;padding:8px 12px;font-size:.78rem;justify-self:start}
  #ni-app[data-view=dnes] .dnes-akce-btn{width:auto;min-height:40px;margin-top:0;padding:8px 11px;font-size:.74rem;line-height:1.2}
}
@media(max-width:390px){
  #ni-app[data-view=dnes] .dnes-karta{align-items:flex-start}
  #ni-app[data-view=dnes] .dnes-akce-btn{width:100%;justify-content:center}
}

/* Při psaní v AI chatu nenecháváme spodní navigaci skákat nad systémovou klávesnici. */
@media(max-width:860px){
  :is(body,html,#ni-app).ni-keyboard-open .ni-sidebar,
  :is(body,html,#ni-app).ni-keyboard-open .ni-mobile-upload,
  body:has(#ni-ai-text:focus) .ni-sidebar,
  body:has(#ni-ai-text:focus) .ni-mobile-upload{display:none!important}
}
