/* RealtyOS CRM — štýly administrácie (admin/index.php), vyčlenené z index.php
   (audit 15. 10. 2026, A1). Pravidlá s hodnotami zo servera (farby značky
   v :root, logo v pozadí .main::before) ostali v <style> v index.php, ktorý sa
   načíta PRED týmto súborom — poradie kaskády sa tým nezmenilo. */
*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%;background:
  /* Rovnaká dvojica ako na prihlasovacej obrazovke — fialová a tyrkysová napevno.
     Zo značky sa neberie: pri medovej alebo modrej značke by to bol iný gradient. */
  radial-gradient(900px at 28% 6%,rgba(167,139,250,.16),transparent 58%),
  radial-gradient(750px at 92% 68%,rgba(94,234,212,.10),transparent 60%),
  var(--v);background-attachment:fixed;color:var(--tx);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}.sy{font-family:'Syne',sans-serif}.mn{font-family:'Space Mono',monospace}input,select,textarea,button{font-family:inherit}
#lw{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(800px at 25% 35%,rgba(167,139,250,.13),transparent 60%),radial-gradient(600px at 80% 70%,rgba(94,234,212,.08),transparent 60%),var(--v)}
.lb{width:360px;background:rgba(10,11,18,.97);border:1px solid var(--ln2);border-radius:4px;padding:48px 40px;box-shadow:0 0 80px rgba(167,139,250,.12)}
.lb-lg{display:flex;align-items:center;gap:10px;margin-bottom:32px}.lb-em{width:36px;height:36px;border:1px solid var(--tg);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:11.5px;font-weight:700;color:var(--t)}
.lb h2{font-family:'Syne',sans-serif;font-size:22px;font-weight:700;margin-bottom:6px}.lb p{font-size:13px;color:var(--mt);margin-bottom:26px}
.lf{margin-bottom:14px}.lf label{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--m2);display:block;margin-bottom:7px}
.lf input{width:100%;background:var(--s1);border:1px solid var(--ln);color:var(--tx);padding:12px 14px;font-size:14px;border-radius:2px;outline:none;transition:border-color .3s,box-shadow .3s}
.lf input:focus{border-color:var(--t);box-shadow:0 0 0 3px rgba(94,234,212,.1)}
#lbtn{width:100%;background:var(--t);color:var(--t-on);font-weight:600;font-size:13px;padding:13px;border:none;border-radius:2px;cursor:pointer;margin-top:6px;transition:box-shadow .3s,transform .2s}
#lbtn:hover{box-shadow:0 0 28px rgba(94,234,212,.3);transform:translateY(-1px)}#lbtn:disabled{opacity:.6;cursor:wait;transform:none}
#lerr,#l2err{display:none;background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.3);color:var(--rd);font-family:'Space Mono',monospace;font-size:11px;padding:10px 12px;border-radius:2px;margin-top:10px}
.lb-hint{font-family:'Space Mono',monospace;font-size:10.5px;color:var(--m2);text-align:center;margin-top:16px;line-height:1.7}
#app{display:none;height:100vh;overflow:hidden}.lay{display:flex;height:100%}
.sb{width:var(--sb);flex-shrink:0;background:rgba(5,6,10,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-right:1px solid var(--ln);display:flex;flex-direction:column;height:100%;overflow-y:auto}
.sb-logo{padding:18px 14px;border-bottom:1px solid var(--ln);display:flex;align-items:center;gap:10px}
.sb-em{width:32px;height:32px;border:1px solid var(--tg);border-radius:2px;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:11px;font-weight:700;color:var(--t)}
/* ── Menu ──────────────────────────────────────────────────────────────────
   Každá skupina nesie svoju farbu v premennej --gc (a stlmenú --gcd). Nadpis,
   ikony aj pruh aktívnej položky ju dedia, takže farba hovorí, v ktorej časti
   systému maklér je. Farby sú napevno, nie zo značky: pri medovej alebo modrej
   značke by prvé dve skupiny splynuli. */
.sb-lbl{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;
  color:var(--gc,var(--t));font-weight:700;display:block;margin:18px 12px 8px;padding:0 0 8px;
  border-bottom:1px solid var(--ln)}
/* Rozbaľovacia podskupina („Texty webu") je podriadená nadpisu skupiny — bez linky a tesnejšie. */
.sb-lbl.sb-grp{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none;transition:color .2s;
  border-bottom:none;margin:4px 12px 4px;padding:2px 0;color:var(--mt)}
.sb-lbl.sb-grp:hover{color:var(--gc,var(--t))}
.sb-grp-ar{font-size:10.5px;transition:transform .2s;color:var(--m2)}
.sb-lbl.sb-grp.open{color:var(--gc,var(--t))}.sb-lbl.sb-grp.open .sb-grp-ar{transform:rotate(90deg);color:var(--gc,var(--t))}
.sbn{list-style:none;padding:0 8px}
.sbn a{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-sm);font-size:13.5px;
  color:var(--tx);cursor:pointer;transition:background .2s,color .2s,border-color .2s;
  border-left:2px solid transparent;white-space:nowrap;position:relative}
.sbn a:hover{background:var(--s1);border-left-color:var(--gc,var(--t))}
.sbn a.on{background:linear-gradient(90deg,var(--gcd,var(--td)),transparent 88%);
  color:#fff;font-weight:500;border-left-color:var(--gc,var(--t))}
.sbn a.on::after{content:'›';margin-left:auto;color:var(--gc,var(--t));font-size:16px;line-height:1;padding-left:4px}
/* Ikona nesie farbu skupiny; obrys, nie výplň — emoji sa na Windows kreslia inak než na Macu. */
.sbn a .si{width:17px;height:17px;flex-shrink:0;stroke:var(--gc,var(--t));fill:none;
  stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.sbn a.on .si,.sbn a:hover .si{opacity:1}
.sbn a .ic{width:15px;text-align:center;font-size:12.5px}
.sbn a .cnt{margin-left:auto;font-family:'Space Mono',monospace;font-size:10.5px;background:var(--vd);color:var(--vl);padding:1px 6px;border-radius:8px}
.sb-foot{margin-top:auto;padding:10px 5px;border-top:1px solid var(--ln)}
.sb-user{display:flex;align-items:center;gap:9px;padding:9px 10px}
.sb-av{width:28px;height:28px;border-radius:50%;background:linear-gradient(135deg,var(--t),var(--vl));display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;color:var(--t-on)}
.sb-lo{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:2px;font-size:12.5px;color:var(--rd);cursor:pointer;transition:background .2s}
.sb-lo:hover{background:rgba(248,113,113,.08)}
/* Pracovná plocha je priehľadná — gradient z <body> (fialová + tyrkysová ako na
   prihlasovacej obrazovke) tak presvitá cez celé CRM, nielen cez login. Panely majú vlastné sklo. */
.main{flex:1;overflow-y:auto;background:transparent;position:relative}
.pg{display:none;padding:28px 32px;position:relative;z-index:1}.pg.on{display:block}
.ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;flex-wrap:wrap;gap:10px}
.ph-t{font-family:'Syne',sans-serif;font-size:22px;font-weight:700;letter-spacing:-.5px}
.ph-s{font-family:'Space Mono',monospace;font-size:10.5px;color:var(--t);letter-spacing:1.5px;margin-top:3px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}
/* Štatistické karty — glass povrch s akcentným prúžkom hore (nový look) */
.sc{position:relative;border:1px solid var(--ln);border-radius:var(--r-md);padding:18px;overflow:hidden;
  background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-c)}
.sc::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--t),var(--vl));opacity:.65}
.sc-v{font-family:'Syne',sans-serif;font-size:24px;font-weight:700;margin-bottom:3px;background:linear-gradient(100deg,var(--t),var(--vl));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.sc-l{font-family:'Space Mono',monospace;font-size:11px;color:var(--lbl);letter-spacing:1.2px;text-transform:uppercase;display:inline-flex;align-items:center;gap:7px}
/* Oranžová kotva pred popiskom dlaždice: dáva oku pevný bod bez toho, aby
   sa zafarbil text — popisok tak ostane pokojný a hierarchia (číslo vedie)
   sa nerozbije. */
.sc-l::before{content:'';width:3px;height:11px;border-radius:2px;background:var(--am);box-shadow:0 0 8px rgba(251,191,36,.45);flex-shrink:0}
.sc-s{font-family:'Space Mono',monospace;font-size:11px;color:var(--t);margin-top:7px}
.sc-btn{cursor:pointer;transition:transform .15s,box-shadow .15s}
.sc-btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,0,0,.42),0 0 16px var(--td)}
/* ⚡ Vyžaduje pozornosť — akčný feed s farebným prúžkom podľa naliehavosti */
.att-row{display:flex;gap:10px;align-items:center;padding:10px 12px;margin:7px 0;background:var(--s1);border-radius:var(--r-sm);border-left:3px solid var(--t)}
.att-row.a0{border-left-color:var(--rd)}
.att-row.a1{border-left-color:var(--am)}
.att-ic{font-size:14px;flex-shrink:0}
.att-tx{flex:1;min-width:0;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* 📊 Obchod v číslach — pipeline lievik + stĺpcový graf provízií (čisté CSS) */
.fnl-row{display:flex;gap:10px;align-items:center;padding:3px 0;cursor:pointer}
.fnl-lbl{font-size:10.5px;color:var(--mt);width:86px;flex-shrink:0;letter-spacing:.5px;text-transform:uppercase}
.fnl-bar-w{flex:1;background:rgba(var(--ink),.05);border-radius:100px;height:14px;overflow:hidden}
.fnl-bar{height:100%;border-radius:100px;background:linear-gradient(90deg,var(--t),var(--vl));min-width:4px}
.fnl-n{font-size:11px;color:var(--t);width:22px;text-align:right;flex-shrink:0}
/* Schránka „Dnes" — riadok = jedna vec na vybavenie aj s akciou */
.dn-row{display:flex;gap:12px;align-items:center;padding:11px 13px;margin:8px 0;background:var(--s1);border-radius:var(--r-sm);
  border-left:3px solid var(--mt);flex-wrap:wrap;transition:background .15s}
.dn-row:hover{background:var(--s2)}
.dn-row.a0{border-left-color:var(--rd)}
.dn-row.a1{border-left-color:var(--am)}
.dn-row.a2{border-left-color:var(--t)}
.dn-ic{font-size:16px;flex-shrink:0;width:20px;text-align:center}
.dn-t{flex:1;min-width:180px}
.dn-h{font-size:13px;font-weight:500;color:var(--tx);line-height:1.35}
.dn-p{font-size:11px;color:var(--m2);margin-top:3px;letter-spacing:.2px}
.dn-a{display:flex;gap:6px;align-items:center;flex-wrap:wrap;flex-shrink:0}
.dn-odloz{opacity:.5}
.dn-row:hover .dn-odloz{opacity:1}
/* Ponuka posunu fázy podľa hotových krokov miestnosti (clFazaRender) */
.cl-faza{display:flex;gap:11px;align-items:center;flex-wrap:wrap;margin:10px 0 2px;padding:10px 13px;border-radius:var(--r-md);
  border:1px solid var(--tg);background:linear-gradient(115deg,var(--td),transparent 80%)}
.cl-faza-i{font-size:16px;flex-shrink:0}
.cl-faza b{font-size:13px}
.cl-faza .mn{font-size:11px;color:var(--m2);margin-top:2px}
/* ── Dashboard: dlaždice, dráha dňa, obchody, bloky na rozklik ── */
.dtile{position:relative;border:1px solid var(--ln);border-radius:var(--r-lg);background:var(--glass);backdrop-filter:blur(12px);
  box-shadow:var(--shadow-c);overflow:hidden;margin-bottom:13px}
.dtile::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--t),var(--vl));opacity:.5}
.dth{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;color:var(--lbl)}
.p16{padding:15px 17px}
.dgrid4{display:grid;grid-template-columns:1.3fr .9fr .9fr 1.1fr;gap:13px}
.dgrid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:13px;margin-bottom:13px}
.ddvoj{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(250px,1fr);gap:13px;margin-bottom:13px}
.dbig{font-family:'Syne',sans-serif;font-weight:800;background:linear-gradient(100deg,var(--t),var(--vl));-webkit-background-clip:text;
  background-clip:text;-webkit-text-fill-color:transparent;line-height:1}
.dos{padding:15px 20px 11px}
.dos-h{display:flex;justify-content:space-between;align-items:baseline}
.dos-t{font-family:'Syne',sans-serif;font-size:16px;font-weight:700;margin-top:2px}
.os{position:relative;height:92px;margin:10px 6px 0}
.os-line{position:absolute;left:0;right:0;top:56px;height:2px;background:linear-gradient(90deg,rgba(var(--ink),.05),rgba(var(--ink),.18),rgba(var(--ink),.05))}
.os-h{position:absolute;top:62px;transform:translateX(-50%);font-family:'Space Mono',monospace;font-size:10px;color:var(--m2)}
.os-tick{position:absolute;top:50px;width:1px;height:8px;background:rgba(var(--ink),.14)}
.ev{position:absolute;top:4px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer}
.ev-b{display:flex;gap:8px;align-items:center;padding:6px 10px;border-radius:12px;border:1px solid var(--tg);
  background:linear-gradient(120deg,var(--td),var(--vd));white-space:nowrap;max-width:230px}
.ev-b img{width:26px;height:26px;border-radius:7px;object-fit:cover;flex-shrink:0}
.ev-b b{font-size:11.5px;font-weight:600;display:block;overflow:hidden;text-overflow:ellipsis}
.ev-b span{font-family:'Space Mono',monospace;font-size:10px;color:var(--mt)}
.ev-d{width:9px;height:9px;border-radius:50%;background:var(--t);box-shadow:0 0 0 4px var(--td)}
.teraz{position:absolute;top:0;bottom:24px;width:2px;background:linear-gradient(180deg,transparent,var(--vl));border-radius:2px}
.teraz b{position:absolute;top:-5px;left:50%;transform:translateX(-50%);font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:1px;
  color:#0a0c12;background:var(--vl);padding:2px 7px;border-radius:100px}
.bezcasu{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px;padding-top:10px;border-top:1px dashed var(--ln2);align-items:center}
.bc{display:flex;gap:6px;align-items:center;padding:5px 10px;border-radius:100px;background:var(--s1);border:1px solid var(--ln);font-size:11.5px;cursor:pointer}
.bc:hover{border-color:var(--tg)}
.bc span{font-family:'Space Mono',monospace;font-size:10px;color:var(--m2)}
.dstack{display:flex;height:9px;border-radius:5px;overflow:hidden;margin:11px 0 7px;background:rgba(var(--ink),.05)}
.dspark{display:flex;align-items:flex-end;gap:3px;height:38px;margin-top:10px}
.dspark i{flex:1;border-radius:2px 2px 0 0;background:linear-gradient(180deg,var(--t),var(--vl));opacity:.75}
.drr{position:relative;width:92px;height:92px;margin:2px auto 0}
.drt{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.obch{display:flex;gap:12px;overflow-x:auto;padding:13px 16px 15px}
.ob{min-width:212px;max-width:212px;border-radius:13px;border:1px solid var(--ln);background:var(--s1);overflow:hidden;flex-shrink:0;cursor:pointer}
.ob:hover{border-color:var(--tg)}
.ob-f{position:relative;height:94px;background:linear-gradient(135deg,var(--td),var(--vd))}
.ob-f img{width:100%;height:100%;object-fit:cover;display:block}
.ob-f .ov{position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(5,6,8,.92));display:flex;align-items:flex-end;
  justify-content:space-between;padding:8px 10px}
.ob-c{font-family:'Syne',sans-serif;font-size:12.5px;font-weight:700;color:var(--t)}
.ob-b{padding:10px 12px}
.ob-b b{font-size:13px;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ob-b span{font-family:'Space Mono',monospace;font-size:10px;color:var(--m2)}
.dfazy{display:flex;gap:3px;margin:9px 0}
.dfazy i{flex:1;height:4px;border-radius:2px;background:rgba(var(--ink),.08)}
.dfazy i.on{background:linear-gradient(90deg,var(--t),var(--vl))}
.ob-k{font-size:11.5px;color:var(--t);border-top:1px solid var(--ln);padding-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr{display:flex;gap:11px;align-items:center;padding:10px 0;border-bottom:1px solid var(--ln)}
.pr:last-child{border-bottom:none}
.pr-i{width:26px;height:26px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:12.5px;background:var(--s2);
  border:1px solid var(--ln);flex-shrink:0}
.pr-i.a0{border-color:var(--rd);background:rgba(248,113,113,.12)}
.pr-i.a1{border-color:var(--am);background:rgba(251,191,36,.12)}
.pr-t{flex:1;min-width:0}
.pr-t b{font-size:12.5px;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr-t span{font-family:'Space Mono',monospace;font-size:10px;color:var(--m2)}
.zero{padding:16px;text-align:center;cursor:pointer}
.zero-orb{width:68px;height:68px;border-radius:50%;margin:2px auto 10px;background:radial-gradient(circle at 34% 30%,#fff,var(--t) 32%,var(--vl) 78%);
  box-shadow:0 0 38px var(--tg),inset 0 0 20px rgba(255,255,255,.35)}
.dli{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--ln)}
.dli:last-child{border-bottom:none}
.dli b{font-size:12.5px;font-weight:500;display:block}
.dli span{font-family:'Space Mono',monospace;font-size:10px;color:var(--m2)}
.dav{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:11px;
  font-weight:800;color:#0a0c12;background:linear-gradient(135deg,var(--t),var(--vl));flex-shrink:0}
.dblok{border:1px solid var(--ln);border-radius:var(--r-md);background:rgba(var(--ink),.012);overflow:hidden;margin-bottom:13px}
.dblok[open]{border-color:var(--ln2)}
.dblok>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;padding:11px 14px;background:var(--head-bg);
  user-select:none;-webkit-user-select:none}
.dblok>summary::-webkit-details-marker{display:none}
.dblok>summary::after{content:'›';margin-left:auto;font-size:15px;color:var(--mt);transition:transform .18s}
.dblok[open]>summary::after{transform:rotate(90deg)}
.dblok[open]>summary{border-bottom:1px solid var(--ln)}
.dblok-b{padding:12px 16px}
@media(max-width:900px){.dgrid4{grid-template-columns:1fr 1fr}.ddvoj{grid-template-columns:1fr}}
.pvc{display:flex;gap:4px;align-items:flex-end;height:74px;cursor:pointer}
.pvc-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:3px}
.pvc-bar{width:100%;border-radius:3px 3px 0 0;background:linear-gradient(180deg,var(--vl),var(--t));min-height:3px;opacity:.85}
.pvc-col:hover .pvc-bar{opacity:1}
.pvc-m{font-size:9.5px;color:var(--m2)}
/* Panely — glass povrch s jemným akcentným prúžkom hore (nový look) */
.panel{position:relative;border:1px solid var(--ln);border-radius:var(--r-md);overflow:hidden;margin-bottom:18px;
  background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:var(--shadow-c)}
.panel::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--t),var(--vl));opacity:.65;z-index:2}
/* Privítanie — jediná karta s plným gradientovým pozadím, tmavý text */
.dash-hello{position:relative;overflow:hidden;background:linear-gradient(115deg,var(--t),var(--vl));border-radius:var(--r-lg);padding:22px 26px;margin-bottom:18px;box-shadow:0 20px 50px -20px rgba(94,234,212,.4)}
.dash-hello h2{font-family:'Syne',sans-serif;font-size:21px;font-weight:700;margin-bottom:6px;color:#0a0c12}
.dash-hello p{font-size:13.5px;color:rgba(10,12,18,.82);line-height:1.65;max-width:900px}
.dash-hello .warn{color:#571206;font-weight:600}
.ph2{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--ln);background:var(--head-bg)}
.pt{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--mt)}
.pb{padding:18px}.g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.g3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}
table{width:100%;border-collapse:collapse}th{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--m2);padding:8px 12px;border-bottom:1px solid var(--ln);text-align:left}
td{padding:10px 12px;border-bottom:1px solid rgba(var(--ink),.04);font-size:13px;vertical-align:middle}tr:last-child td{border-bottom:none}tr:hover td{background:rgba(var(--ink),.02)}
.badge{font-family:'Space Mono',monospace;font-size:10.5px;padding:3px 9px;border-radius:7px;letter-spacing:.5px;display:inline-block}
.bt{color:var(--t);background:var(--td);border:1px solid rgba(94,234,212,.2)}.bv{color:var(--vl);background:var(--vd);border:1px solid rgba(167,139,250,.2)}
.ba{color:var(--am);background:rgba(251,191,36,.1);border:1px solid rgba(251,191,36,.2)}.br{color:var(--rd);background:rgba(248,113,113,.1);border:1px solid rgba(248,113,113,.2)}
.bg{color:var(--gn);background:rgba(74,222,128,.1);border:1px solid rgba(74,222,128,.2)}
.btn{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;padding:8px 14px;border-radius:var(--r-sm);cursor:pointer;border:none;font-weight:500;transition:all .2s}
.btn-p{background:var(--t);color:var(--t-on)}.btn-p:hover{box-shadow:0 0 20px var(--tg);transform:translateY(-1px)}
.btn-s{background:var(--s2);color:var(--tx);border:1px solid var(--ln)}.btn-s:hover{border-color:var(--ln2)}
.btn-d{background:rgba(248,113,113,.12);color:var(--rd);border:1px solid rgba(248,113,113,.2)}.btn-d:hover{background:rgba(248,113,113,.22)}
.btn-sm{padding:4px 9px;font-size:11.5px}
.ff{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}
.fl{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lbl)}
.fi{background:var(--s2);border:1px solid var(--ln);color:var(--tx);padding:9px 12px;font-size:13px;border-radius:var(--r-sm);outline:none;width:100%;transition:border-color .3s,box-shadow .3s}
.fi:focus{border-color:var(--t);box-shadow:0 0 0 2px rgba(94,234,212,.1)}.fi::placeholder{color:var(--m2)}
textarea.fi{resize:vertical;min-height:70px}select.fi{appearance:none;cursor:pointer}
.fn{font-family:'Space Mono',monospace;font-size:10.5px;color:var(--m2);margin-top:2px}
.fi-wrap{position:relative}.fi-wrap .fi{padding-right:74px}
.fi-sfx{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-family:'Space Mono',monospace;font-size:11px;color:var(--t);letter-spacing:.5px;pointer-events:none}
.card-group{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}
.card-box{background:var(--s2);border:1px solid var(--ln);border-radius:var(--r-sm);padding:15px;overflow:hidden}
.card-box h4{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin:-15px -15px 12px;padding:10px 15px;border-bottom:1px solid var(--ln);background:var(--head-bg);color:var(--mt)}
.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.row4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.row5{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.tog{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.tog-t{width:36px;height:20px;background:var(--s3);border:1px solid var(--ln);border-radius:10px;position:relative;transition:all .3s}
.tog-t.on{background:rgba(94,234,212,.25);border-color:var(--t)}
.tog-th{width:14px;height:14px;background:var(--m2);border-radius:50%;position:absolute;top:2px;left:2px;transition:all .3s}
.tog-t.on .tog-th{background:var(--t);left:18px}
/* ── výberové čipy (kritériá dopytu klienta) ── */
.wchips{display:flex;flex-wrap:wrap;gap:5px}
.wchip{font-size:11.5px;padding:4px 10px;border:1px solid var(--ln);border-radius:12px;background:var(--s3);color:var(--mt);cursor:pointer;user-select:none;transition:all .18s;white-space:nowrap}
.wchip:hover{border-color:var(--t);color:var(--tx)}
.wchip.on{background:var(--td);border-color:var(--t);color:var(--t)}
.wchip-g{margin-bottom:6px}
.wchip-gt{font-family:'Space Mono',monospace;font-size:10px;color:var(--m2);letter-spacing:1px;margin-bottom:3px}
/* ── výsledok párovania ── */
.cl-krok{display:flex;gap:10px;align-items:center;flex-wrap:wrap;min-height:44px;padding:4px 0;border-bottom:1px solid rgba(var(--ink),.05)}
.cl-krok:last-child{border-bottom:none}
.cl-krok.hotovo .cl-nazov{color:var(--m2);text-decoration:line-through}
.cl-krok.prebieha .cl-nazov{color:var(--tl)}
.cl-nazov{font-size:13px}
.cl-stav{width:96px;flex:none;font-size:11.5px;padding:4px 6px;border-radius:5px;
  background:var(--s2,#12151c);color:var(--tx);border:1px solid var(--ln,#2a2f3a)}
.cl-kto{width:118px;flex:none;font-size:11.5px;padding:4px 6px;border-radius:5px;
  background:var(--s2,#12151c);color:var(--tx);border:1px solid var(--ln,#2a2f3a)}
.cl-kedy{width:130px;flex:none;font-size:11.5px;padding:4px 6px;border-radius:5px;
  background:var(--s2,#12151c);color:var(--tx);border:1px solid var(--ln,#2a2f3a)}
@media(max-width:700px){.cl-krok{flex-wrap:wrap}.cl-kto,.cl-kedy{width:auto;flex:1}}
/* ── Sekcie formulárov — jedno zvýraznenie pre kartu klienta, nehnuteľnosti aj
   prípadu. Dlhý formulár bez viditeľných predelov sa číta ako jedna šedá stena;
   pásik s farbou a pozadím z neho robí kapitoly. ── */
.fsek{font-family:'Space Mono',monospace;font-size:11px;color:var(--tl,#5eead4);letter-spacing:1.8px;
  margin:18px 0 10px;padding:8px 12px;background:linear-gradient(90deg,rgba(94,234,212,.08),transparent 70%);
  border-left:3px solid var(--tl,#5eead4);border-radius:0 6px 6px 0;text-transform:uppercase}
.fsek:first-child{margin-top:0}
/* ── Karta obchodného prípadu: dva stĺpce a sekcie ako karty ────────────────
   Karta bola 540 px široká a osem sekcií pod sebou — k zmluvám ani k denníku
   sa maklér nedorolľoval. Vľavo je teraz PRÍPAD (kto, čo, peniaze, kataster),
   vpravo PRIEBEH (kroky, zápisnica, zmluvy, denník). Pod 1100 px sa stĺpce
   zložia pod seba, takže na notebooku aj tablete to ostane použiteľné. */
.dg-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:18px;align-items:start}
@media(max-width:1100px){.dg-grid{grid-template-columns:1fr}}
.dg-stlpec{display:flex;flex-direction:column;gap:14px;min-width:0}
.dg-sek{background:var(--s2);border:1px solid var(--ln);border-radius:var(--r-md);padding:14px 16px}
.dg-sek-h{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1.6px;text-transform:uppercase;
  color:var(--m2);margin-bottom:11px;padding-bottom:8px;border-bottom:1px solid var(--ln)}
/* Dve sekcie, ktoré vidí aj klient alebo na ktorých stojí obchod, majú farebnú
   hranu — oko ich nájde bez čítania nadpisov. */
.dg-sek-miestnost{border-left:3px solid var(--tl,#5eead4)}
.dg-sek-zmluvy{border-left:3px solid var(--am)}
/* Nahrávanie zmluvy bolo drobné sivé tlačidlo na konci dlhého stĺpca. */
.dg-drop{margin-top:10px;border:1.5px dashed var(--ln2);border-radius:var(--r-md);padding:18px 14px;
  display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;cursor:pointer;
  background:rgba(var(--ink),.02);transition:border-color .2s,background .2s,transform .2s}
.dg-drop:hover{border-color:var(--am);background:rgba(251,191,36,.07)}
/* Kým maklér drží súbor nad plochou, musí byť jasné, že ho pustiť MÔŽE. */
.dg-drop.nad{border-color:var(--am);background:rgba(251,191,36,.14);transform:scale(1.01)}
.dg-drop-ik{font-size:21px;line-height:1}
.dg-drop b{font-size:13px;color:var(--tx)}
.dg-drop-p{font-size:11px;color:var(--m2)}
/* ── Vyúčtovanie energií — celá strana (Peter 26. 10. 2026: návrh B „Váhy"
   + účtenka z návrhu C). Farby len z --t/--vl (white-label), papier účtenky
   je zámerne svetlý — vyzerá ako dokument, ktorý nájomca dostane. ── */
/* Neaktívne tlačidlo musí vyzerať neaktívne — inak maklér klikne a nič sa nedeje. */
.btn[disabled]{opacity:.4;cursor:not-allowed;filter:grayscale(.5)}
.vy-plus{color:var(--gn)!important}.vy-minus{color:var(--rd)!important}
.mo-b.vh{padding:0;background:radial-gradient(1100px 620px at 30% 0%,color-mix(in srgb,var(--t) 11%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 40%,color-mix(in srgb,var(--vl) 14%,transparent),transparent 62%),#070b14}
.vh-in{position:relative;max-width:1320px;margin:0 auto;padding:22px 28px 34px;display:flex;flex-direction:column;gap:18px;
  background-image:radial-gradient(rgba(var(--ink),.06) 1px,transparent 1.2px);background-size:26px 26px}
.vh-hlav{display:flex;gap:12px 14px;flex-wrap:wrap;align-items:flex-end}
.vh-in>details.info-box{margin:0!important}
.vh-lbl{font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lbl)}
.vh-pozn{font-size:12px;color:var(--m2);line-height:1.5;margin:0}
.vh-kar,.vh-bil,.vh-krok,.vh-det{background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--t) 18%,rgba(var(--ink),.06));border-radius:20px;box-shadow:0 1px 0 rgba(var(--ink),.06) inset,0 24px 50px -30px rgba(0,0,0,.8);box-sizing:border-box;min-width:0}
/* Váhy: minuté ↔ výsledok ↔ zaplatené, dve žily do stredu */
.vh-bil{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 260px minmax(0,1fr);align-items:center;padding:8px}
.vh-bil-z{position:absolute;top:50%;width:7%;height:3px;margin-top:-1.5px;border-radius:3px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 14px color-mix(in srgb,var(--t) 45%,transparent);overflow:hidden;pointer-events:none}
.vh-bil-z.l{left:37%}.vh-bil-z.r{right:37%}
.vh-bil-z::after{content:'';position:absolute;top:-4px;width:40px;height:11px;border-radius:11px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:klTokH 2.6s linear infinite}
.vh-bil-z.r::after{animation-direction:reverse}
.vh-misa{display:flex;flex-direction:column;gap:9px;padding:18px 20px}
.vh-misa-h{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.vh-misa-h b{font-family:'Space Mono',monospace;font-size:17px}
.vh-bp{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:4px 10px;align-items:center;font-size:13.5px}
.vh-bp b{font-family:'Space Mono',monospace;font-size:13px;color:var(--tx)}
.vh-bp-n{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vh-trub{grid-column:2/4;display:block;height:6px;border-radius:6px;background:rgba(var(--ink),.06);overflow:hidden}
.vh-trub i{display:block;height:100%;border-radius:6px;transition:width .3s}
.vh-stred{position:relative;z-index:1;width:240px;height:240px;margin:6px auto;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;
  background:radial-gradient(closest-side,var(--hlb) 80%,transparent 82%),conic-gradient(from 200deg,var(--vl),var(--t),var(--vl));box-shadow:0 0 60px -10px color-mix(in srgb,var(--t) 50%,transparent)}
.vh-stred.plus{background:radial-gradient(closest-side,var(--hlb) 80%,transparent 82%),conic-gradient(from 200deg,var(--vl),var(--t),var(--gn),var(--vl))}
.vh-stred.minus{background:radial-gradient(closest-side,var(--hlb) 80%,transparent 82%),conic-gradient(from 200deg,var(--vl),var(--rd),var(--vl));box-shadow:0 0 60px -10px rgba(248,113,113,.5)}
.vh-stred.chyby{background:radial-gradient(closest-side,var(--hlb) 80%,transparent 82%),conic-gradient(var(--am),var(--rd),var(--am));box-shadow:0 0 60px -10px rgba(251,191,36,.45)}
/* „1 234,56 €" sa musí zmestiť do kruhu — 30 px pretekalo už pri 370,27 €. */
.vh-stred b{font-family:'Syne',sans-serif;font-size:24px;font-weight:800;color:#fff;line-height:1.1;white-space:nowrap}
.vh-kto{font-size:12px;color:var(--mt);max-width:170px}
.vh-mes{font-family:'Space Mono',monospace;font-size:11px;color:var(--m2)}
/* Energie ako uzly */
.vh-taby-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:-6px}
.vh-taby{display:flex;gap:10px;flex-wrap:wrap}
.vh-tab{display:inline-flex;align-items:center;gap:9px;min-height:48px;padding:0 16px 0 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t) 22%,transparent);background:var(--hlb);color:var(--mt);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}
.vh-tab:hover{color:var(--tx);border-color:color-mix(in srgb,var(--t) 45%,transparent)}
.vh-tab.on{color:#fff;border:1.5px solid transparent;background:linear-gradient(var(--hlb),var(--hlb)) padding-box,linear-gradient(135deg,var(--t),var(--vl)) border-box;box-shadow:0 0 26px color-mix(in srgb,var(--t) 35%,transparent)}
.vh-tab small{font-family:'Space Mono',monospace;font-size:11.5px;font-weight:700}
.vh-tab:focus-visible,.vh-seg button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.vh-bod{width:10px;height:10px;border-radius:50%;flex:none;background:#33415c}
.vh-bod.ok{background:var(--gn);box-shadow:0 0 10px var(--gn)}
.vh-bod.chyba{background:var(--am);box-shadow:0 0 10px var(--am)}
/* Vybraná energia: tri kroky na žile */
.vh-det{padding:18px 20px;display:flex;flex-direction:column;gap:16px;border-color:color-mix(in srgb,var(--t) 35%,transparent)}
.vh-det-h{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vh-det-ik{font-size:26px}
.vh-nazov{flex:1 1 240px;max-width:420px;font-family:'Syne',sans-serif;font-size:18px!important;font-weight:700}
.vh-seg{display:inline-flex;padding:4px;border-radius:12px;background:var(--hlb);border:1px solid color-mix(in srgb,var(--t) 20%,transparent);gap:4px}
.vh-seg button{border:0;background:none;cursor:pointer;min-height:36px;padding:0 14px;border-radius:9px;font-family:inherit;font-size:13px;font-weight:600;color:var(--mt)}
.vh-seg button.on{background:linear-gradient(135deg,color-mix(in srgb,var(--t) 24%,transparent),color-mix(in srgb,var(--vl) 24%,transparent));color:#fff}
.vh-kroky{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.vh-kroky>.kl-zila-h{top:38px;left:16%;right:16%;margin-top:0}
.vh-krok{position:relative;z-index:1;padding:16px 18px;display:flex;flex-direction:column;gap:11px}
.vh-krok header{display:flex;align-items:center;gap:12px}
.vh-krok header b{font-family:'Syne',sans-serif;font-size:16px}
.vh-u{width:40px;height:40px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--t);box-shadow:0 0 16px color-mix(in srgb,var(--t) 45%,transparent);font-family:'Space Mono',monospace;font-size:14px;font-weight:700;color:var(--t);box-sizing:border-box}
.vh-pole{display:flex;flex-direction:column;gap:6px;min-width:0}
.vh-pole>span{font-family:'Space Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--lbl)}
.vh-pole .fi{font-family:'Space Mono',monospace}
.vh-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.vh-odo{display:flex;gap:3px;flex-wrap:wrap}
.vh-odo span{width:26px;height:38px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:#04070e;border:1px solid rgba(var(--ink),.1);font-family:'Space Mono',monospace;font-size:19px;font-weight:700;color:var(--tx-hi);box-shadow:0 6px 10px -6px rgba(0,0,0,.8) inset}
.vh-odo span.de{color:var(--rd)}
.vh-odo span.ci{width:10px;background:none;border:0;box-shadow:none;color:var(--m2)}
.vh-odo span.pr{color:#33415c}
.vh-spot{font-family:'Space Mono',monospace;font-size:13px;font-weight:700;color:var(--t)}
.vh-vzorec{padding:11px 13px;border-radius:12px;background:color-mix(in srgb,var(--t) 6%,transparent);border:1px solid color-mix(in srgb,var(--t) 18%,transparent);font-family:'Space Mono',monospace;font-size:12px;color:var(--tx);line-height:1.6;overflow-wrap:anywhere}
.vh-chyba{padding:10px 14px;border-radius:12px;background:rgba(251,191,36,.08);border:1px solid rgba(251,191,36,.35);color:var(--am);font-size:13px}
.vh-tri{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vh-tri>div{display:flex;flex-direction:column;gap:4px;padding:12px 16px;border-radius:14px;background:var(--hlb);border:1px solid rgba(var(--ink),.08)}
.vh-tri b{font-family:'Syne',sans-serif;font-size:21px;font-weight:700}
.vh-prazd{padding:20px;text-align:center;color:var(--mt);font-size:14px}
.vh-poz{margin:0}
.vh-uct-h{display:flex;justify-content:center;margin-top:6px}
/* Účtenka — náhľad dokumentu pre nájomcu (z návrhu C) */
.vh-papier{max-width:860px;margin:0 auto;background:#f7f5ef;color:#1a1f2b;border-radius:6px;padding:28px 30px 24px;display:flex;flex-direction:column;gap:14px;font-size:13px;min-width:0;overflow:hidden;
  box-shadow:0 0 0 1px color-mix(in srgb,var(--t) 35%,transparent),0 0 60px -12px color-mix(in srgb,var(--t) 45%,transparent),0 40px 80px -30px rgba(0,0,0,.9)}
.vh-pas{height:6px;border-radius:3px;background:linear-gradient(90deg,var(--t),var(--vl))}
.vh-p-h{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
.vh-p-h>div{min-width:0;flex:1 1 220px}
.vh-p-h h3{margin:2px 0;font-family:'Syne',sans-serif;font-size:21px;font-weight:800;color:#10131c}
.vh-p-m{color:#4b5568}
.vh-p-sl{font-family:'Space Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#4b5568}
.vh-pec{flex:none;font-family:'Space Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#0b5a3a;border:1.5px solid #0b5a3a;padding:5px 8px;border-radius:4px;transform:rotate(-4deg)}
.vh-pec.roz{color:#8a5a00;border-color:#8a5a00}
.vh-p-str{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.vh-p-str b{display:block;font-size:14px}
.vh-p-str i{font-weight:400;color:#8a5a00}
.vh-p-tab{overflow-x:auto}
.vh-p-tab table{width:100%;border-collapse:collapse;font-size:12.5px;min-width:560px}
.vh-p-tab th{text-align:left;padding:7px 6px;font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:#4b5568;border-bottom:1.5px solid #1a1f2b}
.vh-p-tab td{padding:7px 6px;border-bottom:1px solid #ddd8cc;vertical-align:top}
.vh-p-tab .r{text-align:right;white-space:nowrap}
.vh-p-tab td.p{color:#0b5a3a;font-weight:700}.vh-p-tab td.m{color:#9f1239;font-weight:700}
.vh-p-tab tr.sum td{border-bottom:0;border-top:1.5px solid #1a1f2b;font-weight:700}
.vh-p-v{color:#4b5568;font-size:11.5px}
.vh-p-chyba{color:#8a5a00}
.vh-vbox{border-radius:6px;padding:12px 14px;background:#eceae3;border:1px solid #cfcabd;display:flex;justify-content:space-between;align-items:center;gap:10px;font-weight:600}
.vh-vbox b{font-family:'Syne',sans-serif;font-size:21px;font-weight:800}
.vh-vbox.plus{background:#e7f7ef;border-color:#9bd8b8}.vh-vbox.plus b{color:#0b5a3a}
.vh-vbox.minus{background:#fdecef;border-color:#f3b4c0}.vh-vbox.minus b{color:#9f1239}
.vh-vbox.chyby{background:#fff6dd;border-color:#ecd28a;color:#8a5a00}
.vh-p-poz{margin:0;color:#4b5568;font-size:12px}
.vh-podp{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:8px}
.vh-podp div{border-top:1px solid #8a8577;padding-top:5px;font-size:11.5px;color:#4b5568}
@media(max-width:1100px){.vh-bil{grid-template-columns:minmax(0,1fr)}.vh-bil-z{display:none}.vh-kroky{grid-template-columns:minmax(0,1fr)}.vh-kroky>.kl-zila-h{display:none}}
@media(max-width:640px){.vh-in{padding:16px 16px 26px}.vh-tri{grid-template-columns:minmax(0,1fr)}.vh-stred{width:200px;height:200px}.vh-papier{padding:20px 16px}.vh-p-str,.vh-podp{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){.vh-bil-z::after{animation:none;display:none}}
/* Pomocník ceny (🧮) — návod je dlhý text, preto nie mono písmo info-boxu. */
.vc-kde{font-size:12.5px;line-height:1.65;color:var(--tx);background:var(--s2);border:1px solid var(--ln);
  border-radius:var(--r-md);padding:12px 14px;margin-bottom:12px}
.vc-kde ol{margin:6px 0 6px 18px;padding:0}
.vc-h{font-family:'Space Mono',monospace;font-size:9.5px;letter-spacing:1px;text-transform:uppercase;color:var(--m2);margin:14px 0 6px}
.vc-r{display:grid;grid-template-columns:1fr 140px 32px;gap:6px;margin-bottom:5px;align-items:center}
.vc-r .fi,.vc-pole .fi{padding:6px 8px;font-size:12px}
.vc-pole{display:flex;gap:10px 12px;flex-wrap:wrap;align-items:flex-end}
.vc-pole .ff{flex:1 1 150px}
.vc-chk{display:flex;gap:7px;align-items:center;font-size:12px;margin:12px 0 4px;cursor:pointer}
.vc-vysl{margin-top:16px;border-radius:var(--r-md);padding:12px 16px;font-size:13px;background:rgba(94,234,212,.06);border:1px solid var(--td)}
.vc-vysl b{font-family:'Syne',sans-serif;font-size:19px}
.vc-vysl.chyby{background:rgba(251,191,36,.07);border-color:rgba(251,191,36,.35);color:var(--am);font-size:12px}
.vc-rozpis{font-family:'Space Mono',monospace;font-size:11px;color:var(--mt);margin-top:6px;overflow-wrap:anywhere}
@media(max-width:600px){.vc-r{grid-template-columns:1fr 96px 32px}}
.fsek .fsek-pozn{text-transform:none;letter-spacing:0;color:var(--m2)}
/* Zbaliteľné sekcie karty klienta — ohraničený box, hlavičkou je .fsek.
   Zbalená sekcia = jeden riadok s názvom a stavom (.fsek-sum) a šípkou. */
.fsekc{border:1px solid var(--ln);border-radius:var(--r-md);margin:0 0 10px;overflow:hidden;background:rgba(var(--ink),.012)}
.fsekc[open]{border-color:var(--ln2)}
.fsekc>summary.fsek{margin:0;border-radius:0;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;
  user-select:none;-webkit-user-select:none;transition:background .15s}
.fsekc>summary::-webkit-details-marker{display:none}
.fsekc>summary:hover{background:linear-gradient(90deg,var(--td),transparent 75%)}
.fsekc>summary:focus-visible{outline:1px solid var(--t);outline-offset:-1px}
.fsekc>summary::after{content:'›';font-size:16px;line-height:1;color:var(--mt);transition:transform .18s;margin-left:4px}
.fsekc[open]>summary::after{transform:rotate(90deg)}
.fsekc[open]>summary{border-bottom:1px solid var(--ln)}
.fsek-sum{margin-left:auto;text-transform:none;letter-spacing:0;font-size:11.5px;color:var(--mt);white-space:nowrap}
.fsek-b{padding:14px 14px 6px}
/* Zbaliteľné sekcie formulára nehnuteľnosti — tá istá mechanika ako karta
   klienta. Formulár mal deväť oddielov pod sebou a nová nehnuteľnosť sa
   zadávala rolovaním cez polia, ktoré maklér práve nepotreboval. */
.psekc{border:1px solid var(--ln);border-radius:var(--r-md);margin:0 0 10px;overflow:hidden;
  background:rgba(var(--ink),.012);grid-column:span 2}
.psekc[open]{border-color:var(--ln2)}
.psekc>summary.fsek{margin:0;border-radius:0;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;
  user-select:none;-webkit-user-select:none;transition:background .15s}
.psekc>summary::-webkit-details-marker{display:none}
.psekc>summary:hover{background:linear-gradient(90deg,var(--td),transparent 75%)}
.psekc>summary:focus-visible{outline:1px solid var(--t);outline-offset:-1px}
.psekc>summary::after{content:'\203a';font-size:16px;line-height:1;color:var(--mt);transition:transform .18s;margin-left:4px}
.psekc[open]>summary::after{transform:rotate(90deg)}
.psekc[open]>summary{border-bottom:1px solid var(--ln)}
/* Vybavenie — zaškrtávacie dlaždice. Cieľ je dotykový: na mobile sa do nich
   musí dať trafiť prstom, preto celá dlaždica je <label>, nie len štvorček. */
.pvyb-mriezka{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px}
.pvyb{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid var(--ln);border-radius:var(--r-sm);
  cursor:pointer;font-size:13px;color:var(--tx);background:rgba(var(--ink),.015);transition:border-color .15s,background .15s}
.pvyb:hover{border-color:var(--ln2);background:rgba(var(--ink),.03)}
.pvyb input{width:16px;height:16px;flex-shrink:0;accent-color:var(--t);margin:0}
.pvyb:has(input:checked){border-color:var(--t);background:var(--td)}
@media(max-width:700px){.psekc>summary .fsek-pozn{display:none}.pvyb{padding:11px}}
/* Zbaliteľné skupiny v Nastaveniach — tá istá mechanika ako sekcie karty
   klienta (.fsekc), len obsahom nie sú polia, ale celé panely. Dôvod: dvadsať
   panelov pod sebou znamenalo, že maklér hľadal nastavenie rolovaním. */
.nsekc{border:1px solid var(--ln);border-radius:var(--r-md);margin:0 0 10px;overflow:hidden;background:rgba(var(--ink),.012)}
.nsekc[open]{border-color:var(--ln2)}
.nsekc>summary.fsek{margin:0;border-radius:0;cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;
  user-select:none;-webkit-user-select:none;transition:background .15s}
.nsecc>summary::-webkit-details-marker,.nsekc>summary::-webkit-details-marker{display:none}
.nsekc>summary:hover{background:linear-gradient(90deg,var(--td),transparent 75%)}
.nsekc>summary:focus-visible{outline:1px solid var(--t);outline-offset:-1px}
.nsekc>summary::after{content:'\203a';font-size:16px;line-height:1;color:var(--mt);transition:transform .18s;margin-left:4px}
.nsekc[open]>summary::after{transform:rotate(90deg)}
.nsekc[open]>summary{border-bottom:1px solid var(--ln)}
.nsek-b{padding:14px 14px 0}
/* Posledný panel v skupine nemá vlastný spodný odstup — inak sa pod ním
   otvorí prázdne miesto, ktoré vyzerá ako chyba vykreslenia. */
.nsek-b>.panel:last-child,.nsek-b>.g2:last-child{margin-bottom:14px}
@media(max-width:700px){.nsekc>summary .fsek-pozn{display:none}.nsek-b{padding:10px 10px 0}}
.fsek-lista{display:flex;justify-content:space-between;align-items:center;gap:8px 14px;flex-wrap:wrap;margin:-6px 0 8px}
.fsek-lista button{background:none;border:none;padding:0;font:inherit;font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--mt);cursor:pointer}
.fsek-lista button:hover{color:var(--t)}
.fsek-prep{display:flex;gap:14px;margin-left:auto}
/* Čo chýba na zmluvu — rovnaké pravidlo ako odznak v zozname (zmlPripravenost) */
.fsek-zml{font-size:11.5px;letter-spacing:.2px;text-transform:none;color:var(--am)}
.fsek-zml.ok{color:var(--gn)}
.fsek-dalej{display:flex;justify-content:flex-end;margin:2px 0 8px}
/* Rýchly štart nového klienta (cNovyModal) */
.cn-typy{display:flex;flex-wrap:wrap;gap:6px}
.cn-typ{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:.5px;padding:6px 11px;border-radius:100px;
  border:1px solid var(--ln2);background:transparent;color:var(--mt);cursor:pointer;transition:.15s}
.cn-typ:hover{border-color:var(--tg);color:var(--tx)}
.cn-typ.on{background:var(--td);border-color:var(--t);color:var(--t)}
.cn-info{margin-top:4px;padding:11px 13px;border:1px solid var(--tg);border-radius:var(--r-md);background:linear-gradient(115deg,var(--td),transparent 85%);
  font-size:12.5px;color:var(--mt);line-height:1.6}
.cn-info b{color:var(--tx);font-weight:600}
.cn-info.bez{border-color:var(--ln);border-style:dashed;background:transparent}
.cn-dup{margin:0 0 10px;padding:8px 11px;border-radius:8px;background:#3b2b06;border:1px solid #a16207;color:#fde68a;font-size:12px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fi.cn-chyba{border-color:var(--rd)}
@media(max-width:700px){.fsekc>summary .fsek-pozn{display:none}}
.nab-card{display:flex;gap:14px;align-items:flex-start;padding:13px 16px;border-bottom:1px solid var(--ln)}
.nab-card:last-child{border-bottom:none}
.nab-card:hover{background:rgba(var(--ink),.02)}
.nab-skore{flex:none;width:42px;height:42px;border-radius:50%;border:2px solid;display:flex;
  align-items:center;justify-content:center;font-family:var(--mono,monospace);font-size:13px;font-weight:700}
.nab-meno{font-size:13.5px;font-weight:600}
.nab-dovody{margin:5px 0 0;padding-left:16px;font-size:12px;color:var(--m2);line-height:1.65}
.nab-uvod{margin-top:8px;padding:9px 11px;border-radius:6px;background:rgba(94,234,212,.07);
  border:1px solid rgba(94,234,212,.2);font-size:12px;line-height:1.6}
.nab-akcie{display:flex;gap:6px;flex:none;flex-wrap:wrap;justify-content:flex-end;max-width:210px}
@media(max-width:700px){.nab-card{flex-wrap:wrap}.nab-akcie{max-width:none;width:100%}}
.mtch{display:flex;gap:10px;align-items:center;padding:9px;border:1px solid var(--ln);border-radius:var(--r-sm);margin-bottom:6px;background:var(--s2)}
.mtch img{width:52px;height:38px;object-fit:cover;border-radius:2px;flex-shrink:0}
.mtch-s{font-family:'Space Mono',monospace;font-size:10.5px;padding:2px 6px;border-radius:2px;flex-shrink:0}
.mtch-s.hi{background:rgba(94,234,212,.18);color:var(--t)}
.mtch-s.mid{background:rgba(251,191,36,.16);color:var(--am)}
.mo-ov{position:fixed;inset:0;background:rgba(0,0,0,.78);display:none;align-items:center;justify-content:center;z-index:500;backdrop-filter:blur(4px)}
.mo-ov.op{display:flex}.mo-bx{background:var(--s1);border:1px solid var(--ln2);border-radius:var(--r-lg);width:700px;max-width:95vw;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-c)}
.mo-h{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--ln);background:var(--head-bg);flex-shrink:0}
.mo-ht{font-family:'Syne',sans-serif;font-size:16px;font-weight:700}
.mo-x{background:none;border:none;color:var(--mt);cursor:pointer;font-size:18px;padding:2px 6px}.mo-x:hover{color:var(--tx)}
.mo-b{padding:20px;overflow-y:auto;flex:1}.mo-f{padding:12px 20px;border-top:1px solid var(--ln);display:flex;gap:8px;justify-content:flex-end}
/* detailné karty klienta a nehnuteľnosti (read-only prehľad) */
.det-badges{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 10px}
.det-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.det-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 26px;margin-bottom:6px}
.det-row{display:flex;gap:9px;align-items:baseline;padding:7px 0;border-bottom:1px solid rgba(var(--ink),.05);font-size:13px;min-width:0}
.det-row .ic{width:20px;text-align:center;flex-shrink:0}
.det-row .k{color:var(--m2);font-size:11.5px;width:104px;flex-shrink:0}
.det-row .v{font-weight:500;min-width:0;overflow-wrap:anywhere}
.det-sec{font-family:'Space Mono',monospace;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--mt);margin:16px 0 6px;display:flex;align-items:center;gap:8px}
/* Fotka sa orezávala na pevných 280 px cez celú šírku panela — z fotky 3:2
   zostal pás a fotky na výšku (z mobilu) prišli o hlavu aj pätu. Rám drží
   pomer strán a fotka sa doň zmestí CELÁ (contain); prázdno po stranách
   vypĺňa jej vlastná rozmazaná kópia, takže rám nepôsobí poloprázdno. */
.det-hero-wrap{position:relative;width:100%;aspect-ratio:3/2;max-height:420px;overflow:hidden;
  border-radius:var(--r-md);margin-bottom:8px;background:var(--s2)}
.det-hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;
  filter:blur(24px) saturate(.7) brightness(.45);transform:scale(1.15)}
.det-hero{position:relative;width:100%;height:100%;object-fit:contain;display:block}
.det-thumbs{display:flex;gap:6px;overflow-x:auto;margin-bottom:12px;padding-bottom:2px}
.det-thumbs img{height:52px;border-radius:8px;cursor:pointer;flex-shrink:0;opacity:.75}
.det-thumbs img:hover{opacity:1}
.det-desc{font-size:13px;line-height:1.7;color:var(--mt);white-space:pre-line;background:var(--s2);border:1px solid var(--ln);border-radius:4px;padding:12px 14px}
.det-item{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(var(--ink),.05);font-size:13px;min-width:0}
.det-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}
.det-chip{font-size:12px;padding:4px 11px;border:1px solid rgba(94,234,212,.25);border-radius:100px;color:var(--mt);background:var(--td)}
.det-todo{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:11px 14px;border:1px dashed var(--ln2);border-radius:var(--r-md);color:var(--m2);font-size:12.5px;margin-top:12px}
.det-todo b{color:var(--mt);font-weight:600}
.det-todo .add{font-family:'Space Mono',monospace;font-size:11px;padding:4px 10px;border-radius:100px;border:1px solid var(--tg);color:var(--t);cursor:pointer;transition:.15s}
.det-todo .add:hover{background:var(--td)}
/* Klientsky portál — hlavný prvok detailu klienta (showC): jedným klikom
   pozrieť, čo vidí klient; bez odkazu výrazná výzva ho vytvoriť. */
.det-portal{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:14px 16px;margin:0 0 14px;border-radius:var(--r-md);
  border:1px solid var(--tg);background:linear-gradient(115deg,var(--td),var(--vd));box-shadow:var(--shadow-c)}
.det-portal.bez{border-style:dashed;background:linear-gradient(115deg,var(--td),transparent 85%)}
.det-portal-ic{width:46px;height:46px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:21px;
  background:linear-gradient(135deg,var(--t),var(--vl));box-shadow:0 6px 18px rgba(0,0,0,.35)}
.det-portal-t{flex:1;min-width:200px}
.det-portal-n{font-family:'Syne',sans-serif;font-size:15px;font-weight:700;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.det-portal-s{font-size:12px;color:var(--mt);margin-top:4px;line-height:1.5}
.det-portal-a{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
/* Detail klienta / nehnuteľnosti — sekcie ako glass karty s akcentným prúžkom (jednotné s .panel) */
.det-card{position:relative;border:1px solid var(--ln);border-radius:var(--r-md);padding:15px 16px;margin:12px 0 0;overflow:hidden;
  background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:var(--shadow-c)}
.det-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--t),var(--vl));opacity:.55}
.det-card>.det-sec{margin:-15px -16px 13px;padding:11px 16px;border-bottom:1px solid var(--ln);background:var(--head-bg)}
.det-card .det-grid{margin-bottom:0}
.det-2col{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}
.det-2col .det-card{margin:0}
.det-head{display:flex;gap:15px;align-items:center;margin-bottom:12px}
.det-avatar{width:66px;height:66px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  font-family:'Syne',sans-serif;font-weight:800;font-size:23px;letter-spacing:.5px;color:#0a0c12;
  background:linear-gradient(135deg,var(--t),var(--vl));box-shadow:0 6px 18px rgba(0,0,0,.4)}
.det-head-n{font-family:'Syne',sans-serif;font-size:17px;font-weight:700;line-height:1.25}
.det-head-s{font-size:11px;color:var(--m2);margin-top:3px;letter-spacing:.5px}
/* Horná lišta detailov klienta/nehnuteľnosti — gradient ako nadpisy sekcií v menu */
#cDetModal .mo-h,#pDetModal .mo-h{background:linear-gradient(95deg,var(--t),var(--vl));border-bottom:1px solid var(--ln2);border-radius:3px 3px 0 0}
#cDetModal .mo-ht,#pDetModal .mo-ht{color:#0a0c12}
#cDetModal .mo-x,#pDetModal .mo-x{color:rgba(10,12,18,.72)}
#cDetModal .mo-x:hover,#pDetModal .mo-x:hover{color:#0a0c12}
@media(max-width:700px){.det-grid{grid-template-columns:1fr}.det-hero-wrap{max-height:260px}.det-2col{grid-template-columns:1fr}}
.mo-ov.mo-full{left:var(--sb);justify-content:stretch;align-items:stretch}
.mo-ov.mo-full .mo-bx{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0;border-width:0 0 0 1px}
.upa{border:2px dashed var(--ln2);border-radius:3px;padding:22px;text-align:center;cursor:pointer;transition:border-color .3s}
.upa:hover,.upa.drag{border-color:var(--t);background:var(--td)}
.upa p{font-family:'Space Mono',monospace;font-size:11px;color:var(--mt);margin-top:8px}
.pp{width:100%;max-height:160px;object-fit:cover;border-radius:2px;display:none;margin-top:8px}
.pgal{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-top:10px}
.pgal-item{position:relative;border-radius:2px;overflow:hidden;border:1px solid var(--ln);aspect-ratio:4/3;cursor:grab;background:var(--s2)}
.pgal-item:active{cursor:grabbing}
.pgal-item.drag-over{outline:2px solid var(--t);outline-offset:-2px}
.pgal-item img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.pgal-cover{position:absolute;top:4px;left:4px;background:var(--t);color:var(--t-on);font-family:'Space Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.5px;padding:2px 5px;border-radius:2px}
.pgal-actions{position:absolute;top:4px;right:4px;display:flex;gap:4px}
.pgal-btn{width:20px;height:20px;border-radius:2px;background:rgba(5,6,10,.75);border:1px solid var(--ln2);color:var(--tx);display:flex;align-items:center;justify-content:center;font-size:11.5px;cursor:pointer;line-height:1;padding:0}
.pgal-btn:hover{background:rgba(5,6,10,.95)}
.pgal-btn.star{color:var(--am)}
.pgal-btn.del:hover{color:var(--rd)}
.pgal-idx{position:absolute;bottom:4px;right:4px;background:rgba(5,6,10,.75);color:var(--mt);font-family:'Space Mono',monospace;font-size:9.5px;padding:1px 4px;border-radius:2px}
.tc{position:fixed;bottom:74px;right:20px;display:flex;flex-direction:column;gap:6px;z-index:9999}
/* Technická podpora — diskrétny odklik na e-mail dodávateľa (pravý dolný roh) */
.tsupport{position:fixed;bottom:18px;right:18px;z-index:400;display:flex;align-items:center;gap:8px;background:rgba(8,12,22,.92);border:1px solid var(--tg);border-radius:999px;padding:9px 14px 9px 12px;color:var(--mt);font-family:'Space Mono',monospace;font-size:11.5px;letter-spacing:.5px;text-decoration:none;box-shadow:0 10px 30px -8px rgba(0,0,0,.6);backdrop-filter:blur(8px);transition:border-color .18s,color .18s}
.tsupport:hover{border-color:var(--t);color:var(--tx)}
.tsupport .ts-dot{width:7px;height:7px;border-radius:50%;background:var(--gn);flex-shrink:0;box-shadow:0 0 6px rgba(74,222,128,.7)}
.tsupport .ts-ic{font-size:13px;line-height:1}
@media(max-width:640px){.tsupport .ts-tx{display:none}.tsupport{padding:11px;gap:6px}}
.toast{font-family:'Space Mono',monospace;font-size:11px;padding:11px 14px;border-radius:2px;min-width:200px;display:flex;align-items:center;gap:8px;animation:tIn .25s ease}
.toast.s{background:rgba(74,222,128,.15);border:1px solid rgba(74,222,128,.3);color:var(--gn)}
.toast.e{background:rgba(248,113,113,.15);border:1px solid rgba(248,113,113,.3);color:var(--rd)}
.toast.i{background:var(--td);border:1px solid rgba(94,234,212,.2);color:var(--t)}
@keyframes tIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:none}}
.empty{text-align:center;padding:36px 20px;color:var(--m2);font-family:'Space Mono',monospace;font-size:11px}
.sep{border:none;border-top:1px solid var(--ln);margin:14px 0}
.info-box{background:rgba(94,234,212,.05);border:1px solid var(--td);border-radius:2px;padding:10px 14px;font-family:'Space Mono',monospace;font-size:11px;color:var(--t);margin-bottom:14px;letter-spacing:.5px}
/* investičné portfólio */
.port-tbl td.r,.port-tbl th.r{text-align:right;white-space:nowrap}
.port-tbl td{font-size:13px}
.port-vyn{font-family:'Space Mono',monospace;font-size:11.5px;padding:3px 9px;border-radius:12px;display:inline-block}
.port-vyn.g{background:rgba(74,222,128,.14);color:var(--gn)}.port-vyn.a{background:rgba(251,191,36,.16);color:var(--am)}.port-vyn.r{background:rgba(248,113,113,.14);color:var(--rd)}.port-vyn.m{background:rgba(var(--ink),.06);color:var(--m2)}
.port-odp{border:1px solid var(--ln);border-radius:var(--r-md);padding:14px 16px;margin-bottom:10px;background:var(--s1)}
.port-odp.predat{border-color:rgba(251,191,36,.4);background:linear-gradient(135deg,rgba(251,191,36,.12),rgba(251,191,36,.03))}
.port-odp.sledovat{border-color:rgba(167,139,250,.3)}
.port-odp-t{font-family:'Syne',sans-serif;font-size:14px;font-weight:700;margin-bottom:6px}
.port-odp-x{font-size:12.5px;color:var(--mt);line-height:1.65}
.port-vyp{background:rgba(167,139,250,.06);border:1px dashed rgba(167,139,250,.35);border-radius:var(--r-sm);padding:8px 11px;font-family:'Space Mono',monospace;font-size:12.5px;color:var(--vl)}
.port-vyp.a{color:var(--am);border-color:rgba(251,191,36,.4);background:rgba(251,191,36,.06)}.port-vyp.g{color:var(--gn);border-color:rgba(74,222,128,.35);background:rgba(74,222,128,.06)}
.port-riadok-predat td{background:rgba(251,191,36,.05)}.port-riadok-predat td:first-child{border-left:3px solid var(--am)}
.tbl-fixed{table-layout:fixed}
.tbl-fixed td{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tbl-fixed .td-multi{white-space:normal}
.td-ttl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.client-lnk{color:var(--t);cursor:pointer}.client-lnk:hover{text-decoration:underline}
.row-link{padding:6px 0;font-size:13px;cursor:pointer;border-bottom:1px solid rgba(var(--ink),.05);transition:color .15s}
.row-link:last-child{border-bottom:none}.row-link:hover{color:var(--t)}
.sb-cal{margin:8px 8px 2px;padding:9px 8px 7px;background:var(--s1);border:1px solid var(--tg);border-radius:4px;box-shadow:0 0 16px rgba(94,234,212,.13),inset 0 0 22px rgba(94,234,212,.03)}
.sb-cal-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;padding:0 1px}
.sb-cal-t{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--t);text-shadow:0 0 8px rgba(94,234,212,.55)}
.sb-cal-nav{background:none;border:none;color:var(--mt);cursor:pointer;font-size:12.5px;padding:0 3px;line-height:1;transition:color .15s}
.sb-cal-nav:hover{color:var(--t)}
.sb-cal-wd{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:2px}
.sb-cal-wd span{text-align:center;font-size:9.5px;color:var(--m2);font-family:'Space Mono',monospace}
.sb-cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}
.sb-cal-d{position:relative;aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:10.5px;color:var(--mt);cursor:pointer;border-radius:2px;transition:all .15s}
.sb-cal-d:hover{background:var(--s2);color:var(--tx)}
.sb-cal-d.out{color:var(--m2);opacity:.3}
.sb-cal-d.today{background:var(--t);color:var(--t-on);font-weight:700;box-shadow:0 0 9px rgba(94,234,212,.65)}
.sb-cal-d.ev::after{content:'';position:absolute;bottom:1px;left:50%;transform:translateX(-50%);width:3px;height:3px;border-radius:50%;background:var(--vl);box-shadow:0 0 4px var(--vl)}
.sb-cal-d.today.ev::after{background:var(--t-on);box-shadow:none}
.dash-clock{background:var(--s1);border:1px solid var(--tg);border-radius:4px;padding:8px 20px;text-align:center;box-shadow:0 0 20px rgba(94,234,212,.16),inset 0 0 22px rgba(94,234,212,.03)}
.dash-clock-time{font-size:26px;font-weight:700;color:var(--t);letter-spacing:2px;text-shadow:0 0 14px rgba(94,234,212,.65);line-height:1.15}
.dash-clock-lbl{font-size:9.5px;color:var(--lbl);letter-spacing:2px;margin-top:2px}
.dash-weather{display:flex;align-items:center;gap:10px;background:var(--s1);border:1px solid var(--vd);border-radius:4px;padding:8px 18px;box-shadow:0 0 18px rgba(167,139,250,.13),inset 0 0 22px rgba(167,139,250,.03)}
.dash-weather-ic{font-size:30px;line-height:1;filter:drop-shadow(0 0 6px rgba(167,139,250,.4))}
.dash-weather-temp{font-size:20px;font-weight:700;color:var(--tx)}
.dash-weather-desc{font-size:9.5px;color:var(--vl);letter-spacing:1.5px;margin-top:2px}
/* ── Rádio streamer (dashboard widget) — tyrkysový glow ako hodiny ── */
.dash-radio{display:flex;align-items:center;gap:9px;background:var(--s1);border:1px solid var(--tg);border-radius:4px;padding:6px 12px;box-shadow:0 0 18px rgba(94,234,212,.13),inset 0 0 22px rgba(94,234,212,.03)}
.dr-play{width:30px;height:30px;flex-shrink:0;border:none;border-radius:50%;background:linear-gradient(135deg,#5eead4,#7ff0dd);color:#05121a;font-size:12.5px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 0 12px rgba(94,234,212,.4);transition:transform .15s}
.dr-play:hover{transform:scale(1.08)}
.dr-info{min-width:74px}
.dr-st{font-size:12.5px;font-weight:600;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:104px}
.dr-sub{display:flex;align-items:center;gap:6px;margin-top:2px;height:11px}
.dr-status{font-size:9.5px;color:var(--m2);letter-spacing:1px}
.dr-eq{display:none;gap:2px;align-items:flex-end;height:11px}
.dash-radio.playing .dr-eq{display:flex}
.dash-radio.playing .dr-status{color:var(--t)}
.dr-eq i{width:2.5px;background:#5eead4;border-radius:2px;height:4px;animation:drEq 1s infinite ease-in-out}
.dr-eq i:nth-child(2){animation-delay:.2s}.dr-eq i:nth-child(3){animation-delay:.4s}.dr-eq i:nth-child(4){animation-delay:.1s}
@keyframes drEq{0%,100%{height:3px}50%{height:11px}}
.dr-next{background:none;border:none;color:var(--m2);font-size:13px;cursor:pointer;padding:2px 0;line-height:1;transition:color .15s}
.dr-next:hover{color:var(--t)}
/* ── Meniny dnes/zajtra (dashboard widget) — jantárový glow ── */
.dash-meniny{display:flex;align-items:center;gap:10px;background:var(--s1);border:1px solid rgba(251,191,36,.3);border-radius:4px;padding:6px 14px;box-shadow:0 0 18px rgba(251,191,36,.11),inset 0 0 22px rgba(251,191,36,.03)}
.dm-ic{font-size:23px;line-height:1;filter:drop-shadow(0 0 5px rgba(251,191,36,.4))}
.dm-today{font-size:14px;font-weight:700;color:var(--am);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}
.dm-tmrw{font-size:9.5px;color:var(--m2);letter-spacing:1px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}
/* ── Euribor sadzby (dashboard widget) — zelený glow, ručná editácia ── */
.dash-euri{position:relative;background:var(--s1);border:1px solid rgba(74,222,128,.28);border-radius:4px;padding:5px 14px;box-shadow:0 0 16px rgba(74,222,128,.09),inset 0 0 22px rgba(74,222,128,.03)}
.de-hd{font-size:9.5px;color:var(--lbl);letter-spacing:1.5px;display:flex;align-items:center;gap:6px}
.de-edit{cursor:pointer;color:var(--m2);font-size:11px;transition:color .15s}
.de-edit:hover{color:var(--gn)}
.de-rows{display:flex;gap:14px;margin-top:3px}
.de-row{display:flex;align-items:baseline;gap:5px}
.de-row span{font-size:9.5px;color:var(--m2);letter-spacing:1px}
.de-row b{font-size:13px;font-weight:700;color:var(--gn)}
.kb{display:flex;gap:10px;overflow-x:auto;padding-bottom:8px;align-items:flex-start}
.kb-col{flex:1 0 196px;min-width:196px;background:var(--s1);border:1px solid var(--ln);border-radius:var(--r-md)}
/* Hlavičky fáz pipeline — gradientové pásy ako buttony, v jazyku nadpisov menu */
.kb-h{display:flex;align-items:center;justify-content:space-between;padding:8px 11px;
  background:linear-gradient(95deg,var(--t),var(--vl));border-bottom:1px solid var(--ln2);
  border-radius:5px 5px 0 0;box-shadow:0 4px 14px rgba(0,0,0,.3)}
.kb-t{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;color:#0a0c12;font-weight:700}
.kb-h .badge{background:rgba(10,12,18,.6);border-color:rgba(10,12,18,.3);color:#fff}
.kb-sum{font-family:'Space Mono',monospace;font-size:10.5px;color:var(--t);padding:5px 11px;border-bottom:1px solid var(--ln)}
.kb-b{padding:8px;display:flex;flex-direction:column;gap:8px;min-height:56px}
/* Karty obchodných prípadov (pipeline + evidencia) — výrazný gradientový obrys v brand farbách */
.kb-card{padding:10px;border:1.5px solid transparent;border-radius:6px;
  background:linear-gradient(var(--s2),var(--s2)) padding-box,linear-gradient(120deg,var(--t),var(--vl)) border-box;
  box-shadow:0 8px 22px rgba(0,0,0,.35)}
.kb-card:hover{box-shadow:0 10px 26px rgba(0,0,0,.45),0 0 18px var(--td)}
.ev-y{display:flex;align-items:baseline;gap:12px;margin:26px 0 12px}
.ev-y:first-child{margin-top:0}
.ev-yt{font-size:26px;font-weight:700;line-height:1}
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.ev-sec{margin-bottom:14px}
.ev-sec:last-child{margin-bottom:0}
.ev-sec-t{font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1.5px;color:var(--lbl);margin-bottom:8px;display:flex;align-items:center;gap:6px}
.ev-doc{display:flex;align-items:center;gap:6px;padding:5px 0;border-top:1px solid rgba(var(--ink),.05);font-size:11.5px}
.ev-doc-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Kto zmluvu vidí v portáli — zaškrtávanie strán (2026-10-18) */
.zml-vidi{display:inline-flex;align-items:center;gap:7px;flex-shrink:1;min-width:0;max-width:100%;flex-wrap:wrap;font-size:10.5px;color:var(--m2)}
.zml-vidi label{display:inline-flex;align-items:center;gap:4px;cursor:pointer;color:var(--mt);max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.zml-vidi input{margin:0}
.zml-lenk{color:var(--am)}
.zml-bez{margin-top:10px;padding:9px 11px;border:1px dashed var(--am);border-radius:6px}
.zml-bez .ev-doc:first-of-type{border-top:0}
.cbx{position:relative}
/* Lupa priamo v políčku — bez nej vyzeralo ako obyčajné pole na vypĺňanie
   a maklér nemal ako uhádnuť, že sa v ňom hľadá. */
.cbx::before{content:'🔍';position:absolute;left:11px;top:50%;transform:translateY(-50%);
  font-size:12px;opacity:.75;pointer-events:none;z-index:2;line-height:1}
.cbx .fi{padding-left:32px}
/* Kým nie je nikto vybraný, v poli je SIVÝ PREDPIS, nie skutočný text —
   niet čo mazať. Vybraný klient sa píše plnou farbou, aby bolo vidieť voľbu. */
.cbx .fi::placeholder{color:var(--m2);opacity:1}
.cbx .fi:focus{border-color:var(--t)}
/* Vybraná voľba v rozbalenom zozname — maklér vidí, na čom stojí. */
.cbx-op.vybrana{color:var(--t)}
.cbx-dd{position:absolute;top:calc(100% + 2px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--s2);border:1px solid var(--ln2);border-radius:3px;z-index:60;display:none;box-shadow:0 10px 30px rgba(0,0,0,.55)}
.cbx-op{padding:7px 10px;font-size:13px;cursor:pointer;border-bottom:1px solid rgba(var(--ink),.04)}
.cbx-op:last-child{border-bottom:none}
.cbx-op:hover,.cbx-op.on{background:var(--td);color:var(--t)}
.cbx-emp{padding:9px 10px;font-size:11px;color:var(--m2)}
/* Názov prípadu otvára kartu — trafiť ceruzku bolo zbytočne presné mierenie. */
.kb-nazov{font-size:13px;font-weight:600;margin-bottom:4px;display:flex;align-items:center;gap:6px;
  cursor:pointer;transition:color .2s}
.kb-nazov:hover{color:var(--t)}
.kbp{cursor:pointer;transition:color .2s}.kbp:hover{color:var(--t)!important}
.log-i{display:flex;gap:8px;padding:6px 0;border-bottom:1px solid rgba(var(--ink),.05);font-size:12.5px}
.log-i:last-child{border-bottom:none}
.log-d{font-family:'Space Mono',monospace;font-size:10.5px;color:var(--m2);white-space:nowrap;padding-top:3px}
.tk-done td{opacity:.45}.tk-done td:nth-child(2){text-decoration:line-through}
.cp-card{display:flex;gap:10px;align-items:center;background:var(--s2);border:1px solid var(--ln);border-radius:3px;padding:8px;margin-bottom:8px}
.cp-card.lnk{cursor:pointer;transition:border-color .2s}.cp-card.lnk:hover{border-color:var(--t)}
#pModal{z-index:510}
.cp-card img{width:64px;height:48px;object-fit:cover;border-radius:2px;flex-shrink:0}
.cp-noimg{width:64px;height:48px;background:var(--s3);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.pt-thumb{width:44px;height:33px;object-fit:cover;border-radius:2px;flex-shrink:0;background:var(--s3)}
.pt-noimg{width:44px;height:33px;background:var(--s3);border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--m2);flex-shrink:0}
.cp-dd{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--s1);border:1px solid var(--ln2);border-radius:3px;max-height:240px;overflow-y:auto;z-index:60;box-shadow:0 10px 30px rgba(0,0,0,.55)}
.cp-dd-i{display:flex;gap:9px;align-items:center;padding:8px 10px;cursor:pointer;border-bottom:1px solid rgba(var(--ink),.05)}
.cp-dd-i:last-child{border-bottom:none}.cp-dd-i:hover{background:var(--s2)}.cp-dd-i.on{background:var(--td)}
.cp-dd-i img{width:46px;height:34px;object-fit:cover;border-radius:2px;flex-shrink:0}
.doc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
/* Dokumenty a zmluvy — priečinky s gradientovým obrysom v brand farbách */
.doc-card{border:1.5px solid transparent;border-radius:6px;padding:22px 18px;cursor:pointer;transition:transform .2s,box-shadow .2s;
  background:linear-gradient(var(--s1),var(--s1)) padding-box,linear-gradient(120deg,var(--t),var(--vl)) border-box;
  box-shadow:0 8px 22px rgba(0,0,0,.3)}
.mkt-ic svg{width:28px;height:28px;display:block}
.mkt-ic-sm{display:inline-flex;vertical-align:-4px}
.mkt-ic-sm svg{width:16px;height:16px}
.doc-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.42),0 0 18px var(--td)}
@media(max-width:900px){.doc-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.doc-grid{grid-template-columns:1fr}}
.cpm{width:100px;cursor:pointer;background:var(--s2);border:1px solid var(--ln);border-radius:3px;overflow:hidden;flex-shrink:0;transition:border-color .2s,transform .2s}
.cpm:hover{border-color:var(--t);transform:translateY(-1px)}
.cpm img{width:100%;height:40px;object-fit:cover;display:block}
.cpm-ph{width:100%;height:40px;background:var(--s3);display:flex;align-items:center;justify-content:center;font-size:14px}
.cpm-a{font-family:'Space Mono',monospace;font-size:9px;color:var(--mt);padding:3px 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:900px){.stats{grid-template-columns:1fr 1fr}.g2,.g3{grid-template-columns:1fr}.card-group{grid-template-columns:1fr}.row3,.row4,.row5{grid-template-columns:1fr 1fr}}
/* ── mobil ──
   Sidebar sa na úzkej obrazovke nevojde, preto sa z neho stane vysúvací panel
   ovládaný tlačidlom ☰. Bez neho by sa maklér na telefóne nedostal do inej
   sekcie (appka sa dá nainštalovať na plochu, viď manifest.php). */
.mnav{display:none;position:fixed;top:10px;left:10px;z-index:460;width:40px;height:40px;align-items:center;justify-content:center;
  background:rgba(10,11,18,.94);border:1px solid var(--ln2);border-radius:4px;color:var(--tx);font-size:17px;cursor:pointer;backdrop-filter:blur(6px)}
.mnav-ov{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:440;backdrop-filter:blur(2px)}
body.mnav-on .mnav-ov{display:block}
@media(max-width:600px){
  :root{--sb:0px}
  .pg{padding:60px 14px 16px}
  .stats{grid-template-columns:1fr}
  .mnav{display:flex}
  /* Vysúvací panel musí byť nepriehľadný — sklo cez posunutý prvok iOS Safari
     nekreslí správne a menu by presvitalo obsahom pod ním. */
  .sb{position:fixed;top:0;left:0;bottom:0;width:270px;z-index:450;transform:translateX(-100%);transition:transform .24s ease;box-shadow:0 0 40px rgba(0,0,0,.6);
    background:rgba(5,6,10,.98);backdrop-filter:none;-webkit-backdrop-filter:none}
  body.mnav-on .sb{transform:translateX(0)}
  .row2,.row3,.row4,.row5{grid-template-columns:1fr}
  .mo-ov.mo-full{left:0}
  .tsupport{bottom:74px}
}
/* ── Dotykové zariadenia a telefóny (audit 15. 10. 2026, D7) ──
   - Pole s písmom pod 16 px iOS Safari pri ťuknutí priblíži a posunie stránku
     (v CRM je ~610 polí, portál to mal opravené už skôr).
   - Dotykové ciele: ✎/✕ (.btn-sm) mali ≈ 22 px, šípky kalendára ≈ 13 px.
     WCAG 2.2 žiada aspoň 24 px, prst potrebuje ~44 px.
   - 100vh v Safari zahŕňa aj lištu prehliadača → päta modalu s „Uložiť“
     bola pod ňou. dvh počíta len viditeľnú časť (starší prehliadač ostane na vh).
   - env(safe-area-inset-*) — appka na ploche (PWA) kreslí až do výrezu displeja.
   - Toasty a tlačidlo podpory boli na mobile obe na bottom:74px a prekrývali sa. */
/* ── Klávesnica (audit 15. 10. 2026, D2) ──
   Rámik poľa mal kontrast 1,20 : 1 a fokus 1,24 : 1 (WCAG 1.4.11 žiada 3 : 1).
   rgba(255,255,255,.36) na --s2 dáva ≈ 3,2 : 1. Fokus klávesnicou (nie myšou)
   dostane jasný obrys na každom ovládacom prvku. */
.fi{border-color:rgba(255,255,255,.36)}
.fi:focus{border-color:var(--t);box-shadow:0 0 0 2px rgba(94,234,212,.35)}
:focus-visible{outline:2px solid var(--t);outline-offset:2px}
.fi:focus-visible{outline:none}
.sbn a:focus-visible{outline-offset:-2px}
/* Chybové hlásenia a offline (audit 15. 10. 2026, D3) */
.toast-x{background:none;border:none;color:inherit;cursor:pointer;font-size:14px;padding:0 2px;margin-left:6px;min-width:24px;min-height:24px}
.fi.fi-chyba{border-color:var(--rd)!important;box-shadow:0 0 0 2px rgba(248,113,113,.25)}
.fi-chyba-tx{color:var(--rd);margin-top:4px}
.pg-offline{position:fixed;left:0;right:0;top:0;z-index:10001;background:#7a2e0e;color:#fff;text-align:center;font-size:13px;padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top,0px))}
/* Pre začiatočníka (audit 15. 10. 2026, D1) */
body.rezim-zac [data-pokrocile]{display:none!important}
.pg-prazdne{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px 12px}
.pk{margin-bottom:14px}
.pk-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}
.pk-l{margin:0;padding-left:20px;display:grid;gap:6px;font-size:13px}
.pk-l li.ok{color:var(--mt)}
.pk-b{background:none;border:none;color:var(--t);cursor:pointer;font:inherit;padding:4px 0;text-align:left}
.pk-b:hover{text-decoration:underline}
/* ── Dizajnové tokeny (audit 15. 10. 2026, D4) ──
   Doteraz 30 veľkostí písma, 52 tieňov a 23 rádiusov napevno. Nové a upravované
   pravidlá berú hodnoty odtiaľto; staré sa prepisujú postupne (s meraním
   zalomení pred a po). Typografia v rem, aby sa raz dala škálovať celá. */
:root{
  --fs-1:.6875rem;--fs-2:.75rem;--fs-3:.8125rem;--fs-4:.875rem;--fs-5:1rem;--fs-6:1.25rem;--fs-7:1.625rem;
  --r-1:4px;--r-2:8px;--r-3:16px;--r-pill:999px;
  --sh-1:0 1px 3px rgba(0,0,0,.35);--sh-2:0 8px 24px -10px rgba(0,0,0,.6);--sh-3:0 18px 44px -20px rgba(0,0,0,.72);
  --z-menu:450;--z-modal:500;--z-dialog:9000;--z-toast:9999;--z-lista:10001;
}
/* Väčšie písmo: px hodnoty v starom CSS sa remom neškálujú, preto zoom obsahu
   stránok a okien (menu ostáva rovnako široké). */
body.pismo-vacsie .pg,body.pismo-vacsie .mo-bx{zoom:1.12}
@supports(height:100dvh){
  #app{height:100dvh}
  .mo-bx{max-height:90dvh}
}
@media(pointer:coarse){
  .fi,input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea{font-size:16px}
  .btn{min-height:44px}
  .btn-sm{min-height:40px;min-width:40px;padding:8px 12px;justify-content:center}
  .mo-x{min-width:44px;min-height:44px;font-size:22px}
  .sb-cal-nav{min-width:36px;min-height:36px;font-size:16px}
}
@media(max-width:600px){
  .mnav{top:calc(10px + env(safe-area-inset-top,0px));left:calc(10px + env(safe-area-inset-left,0px))}
  .pg{padding-top:calc(60px + env(safe-area-inset-top,0px))}
  .sb{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
  .tsupport{bottom:calc(18px + env(safe-area-inset-bottom,0px));right:calc(14px + env(safe-area-inset-right,0px))}
  .tc{bottom:calc(76px + env(safe-area-inset-bottom,0px));left:12px;right:12px}
  .mo-f{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));flex-wrap:wrap}
}
@media print{
  body.printing-report{background:#fff}
  body.printing-report *{visibility:hidden!important}
  body.printing-report #pg-report,body.printing-report #pg-report *{visibility:visible!important}
  body.printing-report #pg-report{position:absolute;left:0;top:0;width:100%;padding:0;color:#000}
  body.printing-report #pg-report .btn,body.printing-report #pg-report #repAgentWrap{display:none!important}
  body.printing-report #pg-report .ph-t,body.printing-report #pg-report .sc-v{color:#000!important;background:none!important;-webkit-text-fill-color:#000!important}
}
/* ══ Sprievodca nájmom (2026-10-16) ══ */
.spr-bx{max-width:1120px;width:calc(100vw - 32px);height:min(820px,calc(100dvh - 32px));max-height:none;padding:0;display:flex;flex-direction:row;overflow:hidden}
.spr-rail{width:280px;flex:none;background:var(--d);border-right:1px solid var(--ln);display:flex;flex-direction:column;min-height:0}
.spr-hl{padding:18px 18px 14px;border-bottom:1px solid var(--ln);display:flex;flex-direction:column;gap:8px}
.spr-mn{font-size:10.5px;letter-spacing:1.5px;text-transform:uppercase}
.spr-nazov{font-weight:700;font-size:15px;line-height:1.35}
.spr-strany{color:var(--mt);line-height:1.55}
.spr-post{display:flex;align-items:center;gap:10px}
.spr-post .mn{font-size:11px;color:var(--tx)}
.spr-bar{flex:1;height:6px;border-radius:999px;background:var(--s3);overflow:hidden}
.spr-bar i{display:block;height:100%;background:var(--t)}
.spr-zoznam{flex:1;overflow-y:auto;padding:6px 10px 14px;display:flex;flex-direction:column;gap:1px}
.spr-faza{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--lbl);padding:12px 8px 4px}
.spr-k{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;min-height:38px;padding:6px 9px;border-radius:var(--r-sm);cursor:pointer;font-size:13.5px;color:var(--mt)}
.spr-k:hover{background:var(--s2);color:var(--tx)}
.spr-k:focus-visible{outline:2px solid var(--t);outline-offset:1px}
.spr-k.on{background:var(--s3);color:var(--tx)}
.spr-c{flex:none;width:22px;height:22px;border-radius:50%;border:1.5px solid;display:flex;align-items:center;justify-content:center;font-family:'Space Mono',monospace;font-size:11px}
.c-gn{color:var(--gn);border-color:var(--gn)}.spr-k.s-hotovo .spr-c{background:rgba(74,222,128,.12)}
.c-t{color:var(--t);border-color:var(--t)}.c-vl{color:var(--vl);border-color:var(--vl)}
.c-am{color:var(--am);border-color:var(--am)}.c-m2{color:var(--m2);border-color:var(--ln2)}
.spr-obsah{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}
.spr-top{display:flex;align-items:flex-start;gap:12px;padding:20px 24px 0}
.spr-kde{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--lbl)}
.spr-h{margin:6px 0 0;font-size:26px;line-height:1.15}
.spr-pill-s{display:inline-block;font-family:'Space Mono',monospace;font-size:10.5px;letter-spacing:1px;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid;white-space:nowrap;margin-top:4px}
.spr-telo{flex:1;min-height:0;overflow-y:auto;padding:16px 24px 20px;display:flex;flex-direction:column;gap:14px}
.spr-p{margin:0;font-size:14.5px;line-height:1.6;color:var(--tx)}
.spr-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.spr-box{background:var(--s2);border:1px solid var(--ln);border-radius:var(--r-md);padding:13px 15px;display:flex;flex-direction:column;gap:6px}
.spr-box p{margin:0;font-size:13px;line-height:1.55;color:var(--mt)}
.spr-meno{font-weight:700;font-size:14px}
.spr-r{display:flex;gap:9px;font-size:13px;line-height:1.5;color:var(--mt)}
.spr-r>span{width:16px;flex:none;text-align:center;font-weight:700}
.spr-r.ok{color:var(--tx)}.spr-r.ok>span{color:var(--gn)}
.spr-r.ck>span{color:var(--vl)}.spr-r.zl>span{color:var(--am)}.spr-r.zl{color:var(--tx)}
.spr-akcie{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:4px}
.spr-zoz{display:flex;flex-direction:column;gap:6px}
.spr-row{display:flex;align-items:center;gap:12px;padding:9px 11px;border:1px solid var(--ln);border-radius:var(--r-sm);background:var(--s1)}
.spr-ini{width:34px;height:34px;flex:none;border-radius:50%;background:var(--s3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12.5px;color:var(--t)}
.spr-vybrany{flex-direction:row;align-items:center;gap:12px;border-color:rgba(74,222,128,.35)}
.spr-pozor{border:1px solid rgba(251,191,36,.35);background:rgba(251,191,36,.07);color:var(--tx);border-radius:var(--r-sm);padding:9px 12px;font-size:13px;line-height:1.5}
.spr-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}
.spr-tog{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--tx);cursor:pointer;min-height:32px}
.spr-polia summary{cursor:pointer;color:var(--mt);padding:4px 0}
.spr-pata{display:flex;align-items:center;gap:10px;padding:12px 24px;border-top:1px solid var(--ln)}
.spr-pozn{flex:1;color:var(--m2)}
.spr-pil{position:fixed;right:18px;bottom:18px;z-index:900;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--t);background:var(--s1);color:var(--t);font-weight:700;font-size:14px;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.45)}
.spr-pil:hover{background:var(--td)}
.spr-dash{padding:14px 17px;margin-bottom:14px}
.spr-dash-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px}
.spr-dash-r{display:flex;align-items:center;gap:14px;padding:10px 0;border-top:1px solid var(--ln)}
.spr-dash-r .spr-bar{margin-top:6px;max-width:420px}
@media(max-width:760px){
  .spr-bx{flex-direction:column;height:calc(100dvh - 16px);width:calc(100vw - 16px)}
  .spr-rail{width:auto;max-height:34%;border-right:none;border-bottom:1px solid var(--ln)}
  .spr-2,.spr-form{grid-template-columns:minmax(0,1fr)}
  .spr-pozn{display:none}
  .spr-top,.spr-telo,.spr-pata{padding-left:16px;padding-right:16px}
}
/* Portál ↔ maklér v karte klienta (2026-10-18) */
.pk-z{display:flex;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid rgba(var(--ink),.05)}
.pk-z.hot{opacity:.72}
.pk-form{display:flex;flex-direction:column;gap:6px;margin-top:8px}
.pk-form .btn{align-self:flex-start}
.pk-vl{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:2px}
.pk-m{max-width:88%;padding:7px 10px;border-radius:9px;font-size:12.5px;line-height:1.5}
.pk-m.k{align-self:flex-start;background:var(--td);border:1px solid rgba(94,234,212,.25)}
.pk-m.m{align-self:flex-end;background:var(--vd);border:1px solid rgba(167,139,250,.25)}
.pk-mt{white-space:pre-wrap;word-wrap:break-word}
.pk-mk{color:var(--m2);margin-top:3px}
/* ══ Obchodný prípad ako stránka (2026-10-18) ══ štyri veľkosti písma (12/14/18/28),
   modrá = akcia, fialová = čaká na klienta, jantárová = termín, zelená = hotovo. */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dg-bx .mo-b{padding:20px 28px 28px}
.dg-strana{max-width:1320px;margin:0 auto;display:flex;flex-direction:column;gap:18px}
.dg-mo-h{gap:12px}.dg-mo-h .mo-ht{flex:1;min-width:0;font-size:14px;color:var(--mt)}
.dg-ulozene{font-size:12px;color:var(--m2)}.dg-ulozene.ok{color:var(--gn)}.dg-ulozene.zle{color:var(--rd)}
.dg-hl-riadok{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:flex-start}
.dg-hl{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:6px}
.dg-hl-druh{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-family:'Space Mono',monospace;font-size:12px;color:var(--mt)}
.dg-tag{padding:1px 8px;border-radius:6px;border:1px solid var(--tg);color:var(--t)}
.dg-tag.v{border-color:var(--vd);color:var(--vl)}
.dg-h1{margin:0;font-family:'Syne',sans-serif;font-size:28px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}
.dg-hl-sub{margin:0;color:var(--mt);font-size:14px}.dg-hl-sub b{color:var(--tx);font-weight:600}
.dg-hl-sub .mn{color:var(--tx)}
.dg-akcie-hl{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.dg-fazy{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.dg-faza{display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--mt)}
.dg-faza i{display:block;height:6px;border-radius:3px;background:var(--s3)}
.dg-faza.hot i{background:var(--t)}
.dg-faza.dg-teraz{color:var(--t);font-weight:600}
.dg-faza.dg-teraz i{background:linear-gradient(90deg,var(--t) var(--p,50%),var(--s3) var(--p,50%))}
.dg-fazy-prehra{grid-column:1/-1;font-size:12px;color:var(--rd)}
@media(max-width:700px){.dg-fazy{grid-template-columns:repeat(3,minmax(0,1fr))}.dg-bx .mo-b{padding:14px 12px 20px}.dg-h1{font-size:22px}}
.dg-udaje>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;margin:0}
.dg-udaje>summary::-webkit-details-marker{display:none}
.dg-udaje>summary::after{content:'▾';margin-left:auto;font-size:14px;color:var(--mt)}
.dg-udaje[open]>summary{margin-bottom:12px}.dg-udaje[open]>summary::after{content:'▴'}
.dg-sek-pozn{text-transform:none;letter-spacing:0;color:var(--m2)}
.dg-narade{border-color:var(--tg)}
.dg-narade h3{margin:0 0 4px;font-family:'Syne',sans-serif;font-size:18px;font-weight:700}
.dg-ul{list-style:none;margin:0;padding:0}
.dg-ul li{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--ln)}
.dg-ul li:first-child{border-top:none}
.dg-cislo{width:28px;height:28px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Space Mono',monospace;font-size:12px;font-weight:700;background:var(--td);color:var(--t)}
.dg-cislo.v{background:var(--vd);color:var(--vl)}.dg-cislo.am{background:rgba(251,191,36,.16);color:var(--am)}.dg-cislo.rd{background:rgba(248,113,113,.16);color:var(--rd)}
.dg-ul-t{flex:1 1 220px;min-width:0;display:flex;flex-direction:column}
.dg-ul-t b{font-size:14px;font-weight:600}.dg-ul-t span{font-size:12px;color:var(--mt)}
.dg-prazdne{font-size:14px;color:var(--mt);margin:0}
.cl-kruh{width:26px;height:26px;flex:none;border-radius:50%;border:2px solid var(--m2);background:transparent;color:var(--gn);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.cl-kruh:hover{border-color:var(--t)}
.cl-krok.hotovo .cl-kruh{border-color:var(--gn);background:rgba(74,222,128,.16)}
.cl-krok.prebieha .cl-kruh{border-color:var(--t);border-style:dashed}
.cl-telo{flex:1 1 200px;min-width:0}
.cl-rola{font-family:'Space Mono',monospace;font-size:12px;padding:2px 8px;border-radius:6px;background:var(--s3);color:var(--mt);flex:none}
.cl-datum{font-size:12px;color:var(--m2);flex:none}
.cl-uprav-btn{width:36px;height:36px;flex:none;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--mt);cursor:pointer;font-size:16px;line-height:1}
.cl-uprav-btn:hover,.cl-uprav-btn[aria-expanded=true]{border-color:var(--ln2);color:var(--tx)}
.cl-uprav-b{flex:1 1 100%;display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:4px 0 8px 36px}
.cl-hotove{border-bottom:1px solid rgba(var(--ink),.05)}
.cl-hotove>summary{cursor:pointer;list-style:none;display:flex;gap:10px;align-items:center;min-height:44px;color:var(--mt);font-size:14px}
.cl-hotove>summary::-webkit-details-marker{display:none}
.cl-hotove-ik{width:26px;height:26px;flex:none;border-radius:50%;background:rgba(74,222,128,.16);color:var(--gn);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}
.cl-hotove-t{flex:1;min-width:0}
.cl-hotove-z{font-size:12px;color:var(--t)}
.cl-hotove[open]>summary .cl-hotove-z{color:var(--mt)}
.dg-strany{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}
.dg-strana-k{background:var(--s1);border:1px solid var(--ln);border-radius:var(--r-md);padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.dg-strana-rola{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.1em;color:var(--mt);text-transform:uppercase}
.dg-strana-meno{font-family:'Syne',sans-serif;font-size:18px;font-weight:700;overflow-wrap:anywhere}
.dg-strana-r{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;font-size:12px}
.dg-strana-r .ok{color:var(--gn)}.dg-strana-r .am{color:var(--am)}.dg-strana-r .rd{color:var(--rd)}.dg-strana-r .mt{color:var(--mt)}
.dg-strana-a{display:flex;gap:8px;margin-top:4px}
.dg-ikb{width:40px;height:40px;flex:none;border-radius:10px;border:1px solid var(--ln2);display:flex;align-items:center;justify-content:center;color:var(--tx);text-decoration:none}
.dg-ikb:hover{border-color:var(--t);color:var(--t)}
.dg-strana-a .btn{flex:1;justify-content:center}
.dg-peniaze{margin:0 0 4px;display:grid;grid-template-columns:1fr auto;gap:6px 12px;font-size:14px}
.dg-peniaze dt{color:var(--mt)}.dg-peniaze dd{margin:0;font-family:'Space Mono',monospace;text-align:right}
.dg-peniaze .t{color:var(--t)}.dg-peniaze .am{color:var(--am)}.dg-peniaze .gn{color:var(--gn)}.dg-peniaze .rd{color:var(--rd)}
.dg-rozbal{cursor:pointer;font-size:12px;color:var(--t);list-style:none;padding:6px 0;display:inline-block}
.dg-rozbal::-webkit-details-marker{display:none}
details[open]>.dg-rozbal{margin-bottom:8px}
.dg-kat-suhrn{font-size:14px;margin-bottom:2px}
.dg-kat-suhrn span{display:block;font-size:12px;color:var(--mt)}
.dg-log-novy{display:flex;gap:8px;margin-bottom:10px}
.dg-neskor{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--m2);padding:2px 4px}
.dg-log-novy .btn{flex:none;white-space:nowrap}
/* Zmluvy v užšom pravom stĺpci prípadu aj v karte uzavretého obchodu (Evidencia):
   názov na celý riadok, údaje a tlačidlá pod ním. V karte Evidencie (~300 px)
   riadok nezalamoval a zaškrtávanie „portál:“ ho vytlačilo o ~210 px za okraj
   karty — názov ostal široký 0 px (2026-10-20). Názov súboru býva bez medzier
   („Zmluva_o_sprostredkovani_…docx“), preto overflow-wrap:anywhere. */
#dgContracts .ev-doc,.kb-card .ev-doc{flex-wrap:wrap;row-gap:6px}
#dgContracts .ev-doc-n,.kb-card .ev-doc-n{flex:1 1 100%;white-space:normal;overflow-wrap:anywhere}
/* ══ Obtiahnutia kariet a údajov v karte prípadu (2026-10-18) ══
   Karty mali okraj s kontrastom ~1,2 : 1 (rgba .07) a splývali s pozadím.
   Teraz: každá karta má viditeľný rám a tieň, hlavička karty oddeľovač a každý
   údaj (krok, úloha, riadok peňazí, zmluva, strana) vlastný obtiahnutý riadok.
   Farebné hrany (miestnosť, zmluvy, Teraz na rade) ostávajú. */
.dg-hl-karta{background:var(--s2);border:1px solid rgba(var(--ink),.16);border-radius:var(--r-lg);padding:18px 20px;display:flex;flex-direction:column;gap:16px;
  box-shadow:0 1px 0 rgba(var(--ink),.04) inset,0 14px 30px -20px rgba(0,0,0,.85)}
.dg-bx .dg-sek{border:1px solid rgba(var(--ink),.16);border-radius:var(--r-lg);padding:16px 18px;
  box-shadow:0 1px 0 rgba(var(--ink),.04) inset,0 14px 30px -20px rgba(0,0,0,.85)}
.dg-bx .dg-sek-miestnost{border-left:3px solid var(--tl)}
.dg-bx .dg-sek-zmluvy{border-left:3px solid var(--am)}
.dg-bx .dg-narade{border-color:var(--tg);border-left:3px solid var(--t)}
.dg-bx .dg-sek-h{color:var(--lbl);border-bottom:1px solid rgba(var(--ink),.12);padding-bottom:10px;margin-bottom:12px}
.dg-bx .dg-udaje:not([open])>summary{border-bottom:none;padding-bottom:0;margin-bottom:0}
/* údaje ako obtiahnuté riadky */
.dg-bx .dg-ul li{border:1px solid rgba(var(--ink),.12);border-radius:var(--r-sm);background:var(--s1);padding:10px 12px;margin-top:8px}
.dg-bx .dg-ul li:first-child{border-top:1px solid rgba(var(--ink),.12)}
.dg-bx .cl-krok{border:1px solid rgba(var(--ink),.12);border-radius:var(--r-sm);background:var(--s1);padding:4px 10px;margin-bottom:6px}
.dg-bx .cl-krok:last-child{border-bottom:1px solid rgba(var(--ink),.12)}
.dg-bx .cl-krok.hotovo{background:transparent;border-color:rgba(var(--ink),.08)}
.dg-bx .cl-hotove{border:1px solid rgba(74,222,128,.28);border-radius:var(--r-sm);background:rgba(74,222,128,.05);padding:0 10px;margin-bottom:8px}
.dg-bx .cl-hotove[open]{padding-bottom:6px}
.dg-bx .dg-peniaze{gap:0 12px;border:1px solid rgba(var(--ink),.12);border-radius:var(--r-sm);background:var(--s1);padding:2px 12px}
.dg-bx .dg-peniaze dt,.dg-bx .dg-peniaze dd{padding:7px 0;border-bottom:1px solid rgba(var(--ink),.08)}
.dg-bx .dg-peniaze dt:nth-last-of-type(1),.dg-bx .dg-peniaze dd:nth-last-of-type(1){border-bottom:none}
.dg-bx .dg-kat-suhrn{border:1px solid rgba(var(--ink),.12);border-radius:var(--r-sm);background:var(--s1);padding:10px 12px;margin-bottom:6px}
.dg-bx .dg-strana-k{border:1px solid rgba(var(--ink),.16)}
.dg-bx .dg-strana-rola{padding-bottom:6px;border-bottom:1px solid rgba(var(--ink),.1)}
.dg-bx #dgContracts .ev-doc{border:1px solid rgba(var(--ink),.12);border-radius:var(--r-sm);background:var(--s1);padding:8px 10px;margin-bottom:6px}
.dg-bx .log-i{border-bottom-color:rgba(var(--ink),.09)}
@media(max-width:700px){.dg-hl-karta{padding:14px}.dg-bx .dg-sek{padding:14px}}
/* ══ Výrazné hranice sekcií karty prípadu (2026-10-18, Peter: „aby bolo jasne
   vidieť, pokiaľ ktorá sekcia je“) ══ Rám 1,5 px s kontrastom ~3 : 1 voči
   pozadiu, hlavička sekcie ako svetlejší pás hore (jasný začiatok) a väčšia
   medzera medzi sekciami (jasný koniec). Farebné ľavé hrany ostávajú. */
.dg-bx .dg-strana{gap:22px}
.dg-bx .dg-grid{gap:22px}
.dg-bx .dg-stlpec{gap:22px}
.dg-hl-karta,.dg-bx .dg-sek{border:1.5px solid rgba(255,255,255,.3)}
.dg-bx .dg-sek-miestnost{border-left:4px solid var(--tl)}
.dg-bx .dg-sek-zmluvy{border-left:4px solid var(--am)}
.dg-bx .dg-narade{border-color:var(--t);border-left-width:4px}
.dg-bx .dg-sek>.dg-sek-h,.dg-bx .dg-udaje>summary.dg-sek-h{margin:-16px -18px 14px;padding:12px 18px 11px;background:rgba(var(--ink),.05);
  border-bottom:1.5px solid rgba(var(--ink),.18);border-radius:calc(var(--r-lg) - 2px) calc(var(--r-lg) - 2px) 0 0;color:var(--tx)}
.dg-bx .dg-udaje:not([open]){padding-bottom:0}
.dg-bx .dg-udaje:not([open])>summary.dg-sek-h{margin-bottom:0;border-bottom:none;border-radius:calc(var(--r-lg) - 2px)}
.dg-bx .dg-narade>h3{margin:-16px -18px 12px;padding:12px 18px 11px;background:rgba(var(--ink),.05);border-bottom:1.5px solid rgba(var(--ink),.18);
  border-radius:calc(var(--r-lg) - 2px) calc(var(--r-lg) - 2px) 0 0}
@media(max-width:700px){.dg-bx .dg-sek>.dg-sek-h,.dg-bx .dg-udaje>summary.dg-sek-h,.dg-bx .dg-narade>h3{margin:-14px -14px 12px;padding:11px 14px 10px}}
/* ══ Obchodný prípad — žila (2026-10-20, návrh A) ══════════════════════════════
   Zhora majiteľ → žila → nehnuteľnosť → žila → druhá strana, pod tým moduly
   a kroky 01–05 na jednej žile. Farby žily sú farby značky (white-label):
   --t hore pri majiteľovi, --vl dole pri druhej strane. Písmo len 12/14/16/18/22/28. */
.dg-bx .mo-b{background:radial-gradient(1100px 620px at 8% -8%,color-mix(in srgb,var(--t) 16%,transparent),transparent 60%),
  radial-gradient(900px 640px at 96% 6%,color-mix(in srgb,var(--vl) 18%,transparent),transparent 62%),
  radial-gradient(900px 900px at 50% 104%,rgba(74,222,128,.06),transparent 60%),var(--d)}
.pz{position:relative;max-width:1180px}
.pz::before{content:'';position:absolute;inset:-20px 0 0;background-image:radial-gradient(rgba(var(--ink),.06) 1px,transparent 1.2px);background-size:26px 26px;pointer-events:none;z-index:0;
  -webkit-mask-image:linear-gradient(#000 0,#000 70%,transparent);mask-image:linear-gradient(#000 0,#000 70%,transparent)}
.pz>*{position:relative;z-index:1}
.pz .dg-hl-karta,.pz .dg-sek,.pz-strana,.pz-nehn,.pz-moduly,.pz-zml{background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));
  border:1px solid color-mix(in srgb,var(--t) 18%,rgba(var(--ink),.08));border-radius:22px;box-shadow:0 1px 0 rgba(var(--ink),.07) inset,0 30px 70px -30px rgba(0,0,0,.8)}
.pz .dg-sek{padding:18px 20px}
.pz-lbl{font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lbl)}
.pz-pozn{margin:6px 0 0;font-size:12px;color:var(--mt);line-height:1.5}
.pz-ok{margin:4px 0;font-size:14px;color:var(--gn);font-weight:600}
.pz-btny{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:8px}
/* ďalšie osoby strany — spoluvlastník, manžel/ka, ďalší nájomca (2026-10-28) */
.pz-spolu{margin-top:14px;padding-top:14px;border-top:1px dashed var(--ln2);display:flex;flex-direction:column;gap:10px;align-items:flex-start}
.pz-spolu-z{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;width:100%}
.pz-spolu-r{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border-radius:14px;border:1px solid var(--ln);background:rgba(var(--ink),.025)}
.pz-spolu-av{width:36px;height:36px;border-radius:11px;flex:none;display:flex;align-items:center;justify-content:center;font:700 13px 'Syne',sans-serif;color:var(--t-on,var(--na-t));background:var(--t)}
.pz-s2 .pz-spolu-av{background:var(--vl)}
button.dg-ikb{background:transparent;cursor:pointer;font:inherit;font-size:14px}button.dg-ikb:hover{border-color:var(--rd);color:var(--rd)}
.pz-spolu-t{flex:1;min-width:140px;display:flex;flex-direction:column;gap:2px}.pz-spolu-t b{font-size:14px}.pz-spolu-t span{font-size:12px;color:var(--mt)}
.pz-chipy{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.pz-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:999px;font-size:12px;border:1px solid rgba(var(--ink),.1);background:rgba(var(--ink),.04);color:var(--tx);line-height:1.3}
.pz-chip::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--m2);flex:none}
.pz-chip.ok{color:#bbf7d0;border-color:rgba(74,222,128,.35)}.pz-chip.ok::before{background:var(--gn)}
.pz-chip.am{color:#fde68a;border-color:rgba(251,191,36,.4)}.pz-chip.am::before{background:var(--am)}
.pz-chip.rd{color:#fecaca;border-color:rgba(248,113,113,.4)}.pz-chip.rd::before{background:var(--rd)}
.pz-chip.t{color:var(--tx);border-color:color-mix(in srgb,var(--t) 45%,transparent)}.pz-chip.t::before{background:var(--t)}
.pz-chip.mt{color:var(--mt)}
/* strany */
.pz-strany{display:flex;flex-direction:column;align-items:center}
.pz-strany>#dgStrany{display:flex;flex-direction:column;align-items:center;width:100%}
.pz-strana{width:min(660px,100%);padding:22px 24px;box-sizing:border-box}
.pz-s1{border-color:color-mix(in srgb,var(--t) 50%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--t) 12%,transparent),0 0 60px -12px color-mix(in srgb,var(--t) 45%,transparent),0 30px 70px -30px rgba(0,0,0,.8)}
.pz-s2{border-color:color-mix(in srgb,var(--vl) 50%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--vl) 12%,transparent),0 0 60px -12px color-mix(in srgb,var(--vl) 45%,transparent),0 30px 70px -30px rgba(0,0,0,.8)}
.pz-prazdna{border-style:dashed;box-shadow:none;display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.pz-strana-hl{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.pz-avatar{width:60px;height:60px;border-radius:18px;flex:none;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:22px;font-weight:800;color:var(--t-on,var(--na-t));background:var(--t);box-shadow:0 0 30px color-mix(in srgb,var(--t) 55%,transparent)}
.pz-s2 .pz-avatar{background:var(--vl);box-shadow:0 0 30px color-mix(in srgb,var(--vl) 55%,transparent)}
.pz-strana-t{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:3px}
.pz-s1 .pz-lbl{color:var(--t)}.pz-s2 .pz-lbl{color:var(--vl)}
.pz-meno{font-family:'Syne',sans-serif;font-size:22px;font-weight:700;overflow-wrap:anywhere}
.pz-kontakt{font-size:12px;color:var(--mt);overflow-wrap:anywhere}
.pz-strana-a{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
/* žily */
.pz-spoj{position:relative;width:100%;min-height:118px;display:flex;justify-content:center}
.pz-ciara,.pz-zila{display:block;width:4px;border-radius:4px;margin:0 auto;background:linear-gradient(var(--t),var(--vl));
  box-shadow:0 0 14px color-mix(in srgb,var(--t) 55%,transparent),0 0 44px color-mix(in srgb,var(--vl) 35%,transparent);position:relative;overflow:hidden}
.pz-ciara{min-height:118px;flex:none}
.pz-z2 .pz-ciara{background:linear-gradient(var(--vl),color-mix(in srgb,var(--vl) 70%,#fff))}
.pz-ciara::after,.pz-zila::after{content:'';position:absolute;left:-4px;width:12px;height:46px;border-radius:12px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:pzTok 2.4s linear infinite}
@keyframes pzTok{from{top:-46px}to{top:100%}}
.pz-spoj-lbl{position:absolute;left:calc(50% + 24px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:6px;align-items:flex-start;max-width:calc(50% - 36px)}
.pz-spoj-lbl .pz-chip{white-space:normal}
/* nehnuteľnosť */
.pz-nehn{width:100%;display:flex;flex-wrap:wrap;overflow:hidden;box-sizing:border-box}
.pz-nehn-foto{flex:1 1 280px;min-height:240px;background:radial-gradient(400px 260px at 30% 20%,color-mix(in srgb,var(--t) 35%,transparent),transparent 70%),
  radial-gradient(360px 260px at 80% 90%,color-mix(in srgb,var(--vl) 40%,transparent),transparent 70%),#0c1426;background-size:cover;background-position:center;
  display:flex;align-items:center;justify-content:center;font-size:28px}
.pz-nehn-t{flex:2 1 440px;padding:22px 24px;display:flex;flex-direction:column;gap:10px;box-sizing:border-box;min-width:0}
.pz-nehn-t>.pz-lbl{color:var(--vl)}
.pz-nehn-n{font-family:'Syne',sans-serif;font-size:22px;font-weight:700;line-height:1.2;overflow-wrap:anywhere}
.pz-dlazdice{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.pz-dl{border:1px solid rgba(var(--ink),.08);background:rgba(var(--ink),.025);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:3px}
.pz-dl b{font-family:'Syne',sans-serif;font-size:16px;font-weight:700}
/* prepínač (moduly, kto vidí) */
.pz-prep{all:unset;box-sizing:border-box;flex:none;position:relative;width:52px;height:30px;border-radius:30px;cursor:pointer;border:1px solid rgba(var(--ink),.2);background:rgba(var(--ink),.06);transition:background .2s,box-shadow .2s}
.pz-prep span{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#64748b;transition:left .2s,background .2s}
.pz-prep[aria-checked="true"]{border-color:transparent;background:linear-gradient(135deg,var(--t),var(--vl));box-shadow:0 0 18px color-mix(in srgb,var(--t) 45%,transparent)}
.pz-prep[aria-checked="true"] span{left:25px;background:var(--na-t)}
.pz-prep:focus-visible{outline:2px solid #fff;outline-offset:3px}
.pz-prep[disabled]{opacity:.4;cursor:not-allowed}
/* moduly */
.pz-moduly{width:100%;padding:24px;box-sizing:border-box;margin-top:30px;border-color:rgba(var(--ink),.12)}
.pz-mod-hl{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;align-items:flex-end;margin-bottom:16px}
.pz-mod-hl h2{margin:4px 0;font-family:'Syne',sans-serif;font-size:22px;font-weight:700}
.pz-mod-hl p{margin:0;font-size:14px;color:var(--mt);max-width:640px;line-height:1.5}
.pz-mod-pocet{font-size:14px;color:var(--mt)}.pz-mod-pocet b{font-family:'Syne',sans-serif;font-size:28px;color:var(--tx);margin-right:4px}
.pz-mod-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
/* Riadok „Moduly · N z M zapnutých“ — len na mobile, moduly sú tam zbalené. */
.pz-mod-riadok{display:none}
@media(max-width:700px){
  .pz-moduly{padding:0;overflow:hidden}
  .pz-mod-riadok{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:10px;width:100%;min-height:52px;padding:12px 16px}
  .pz-mod-riadok b{flex:1;font-size:14px;font-weight:600;text-align:right}
  .pz-mod-riadok i{font-style:normal;font-size:14px;color:var(--mt);transition:transform .2s}
  .pz-moduly.otv .pz-mod-riadok i{transform:rotate(180deg)}
  .pz-mod-riadok:focus-visible{outline:2px solid #fff;outline-offset:-2px;border-radius:inherit}
  .pz-mod-obsah{display:none;padding:4px 16px 16px;border-top:1px solid rgba(var(--ink),.08)}
  .pz-moduly.otv .pz-mod-obsah{display:block}
}
.pz-mod{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:16px;border:1px solid rgba(var(--ink),.08);background:rgba(var(--ink),.015);opacity:.72}
.pz-mod.on{opacity:1;border-color:color-mix(in srgb,var(--t) 30%,transparent);background:color-mix(in srgb,var(--t) 6%,transparent)}
.pz-mod-t{display:flex;flex-direction:column;gap:2px;min-width:0}.pz-mod-t b{font-size:14px}.pz-mod-t span{font-size:12px;color:var(--mt);line-height:1.35}
/* kroky na žile */
.pz-krok{display:flex;flex-direction:column;align-items:center;width:100%}
.pz-zila{height:56px}
/* Žila kroku nadväzuje priamo na kartu nad sebou (Peter, 2026-10-20) — zjedá
   rozostup rodiča (.dg-bx .dg-strana{gap:22px}); od druhej strany ide jej farbou. */
.dg-bx .dg-strana>.pz-krok>.pz-zila{margin-top:-22px;height:78px}
/* Žily hornej časti: tri vedľa seba (názov → základ → moduly → teraz na rade),
   jedna k majiteľovi. Zjedajú rozostup rodiča nad aj pod sebou, takže sa
   dotýkajú oboch kariet; balíčky dát v troch žilách nebežia naraz. */
.pz-zh{display:flex;justify-content:center;gap:40px;height:56px;margin:-22px 0;flex:none}
/* tri žily od seba (Peter, 2026-10-20): vľavo kúsok od kraja, v strede, vpravo kúsok od kraja */
.pz-zh3{justify-content:space-between;padding:0 clamp(28px,7%,96px)}
.pz-zh>.pz-zila{margin:0;height:100%}
.pz-zh3>.pz-zila:nth-child(2)::after{animation-delay:-.7s}.pz-zh3>.pz-zila:nth-child(2)::before{animation-delay:-2.4s}
.pz-zh3>.pz-zila:nth-child(3)::after{animation-delay:-1.4s}.pz-zh3>.pz-zila:nth-child(3)::before{animation-delay:-.6s}
.pz-zh+.pz-moduly{margin-top:0}
.pz-strany+.pz-krok>.pz-zila{background:linear-gradient(var(--vl),var(--t))}
.pz-krok-h{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;margin:0 0 18px}
.pz-krok-h h2{margin:6px 0 0;font-family:'Syne',sans-serif;font-size:22px;font-weight:700}
.pz-krok-h p{margin:0;font-size:14px;color:var(--mt)}
.pz-uzol{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Syne',sans-serif;font-size:18px;font-weight:800;
  color:var(--na-t);background:linear-gradient(135deg,var(--t),var(--vl));box-shadow:0 0 0 9px color-mix(in srgb,var(--t) 8%,transparent),0 0 0 18px color-mix(in srgb,var(--vl) 5%,transparent),0 0 40px color-mix(in srgb,var(--t) 55%,transparent)}
.pz-krok-b{width:100%;display:flex;flex-direction:column;gap:14px}
.pz-off{display:none!important}
.pz-vyp-zoz:empty{display:none}
.pz-vyp-zoz{display:flex;flex-direction:column;gap:8px}
.pz-vyp{border:1.5px dashed rgba(var(--ink),.16);border-radius:18px;padding:12px 16px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;color:var(--mt);font-size:14px}
.pz-vyp b{color:var(--tx)}
.pz-seg{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}
.pz-seg-b{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-height:52px;padding:9px 14px;border-radius:14px;border:1px solid rgba(var(--ink),.12);background:rgba(var(--ink),.03)}
.pz-seg-b b{font-size:14px}.pz-seg-b span{font-size:12px;color:var(--mt)}
.pz-seg-b.on{background:linear-gradient(135deg,var(--t),var(--vl));border-color:transparent;color:var(--na-t)}.pz-seg-b.on span{color:var(--na-t);opacity:.8}
.pz-seg-b:focus-visible,.pz-volba:focus-visible{outline:2px solid #fff;outline-offset:2px}
/* zmluvy */
.pz-zml{display:block;padding:20px 22px;margin-bottom:14px;box-sizing:border-box}
.pz-zml.hot{border-color:rgba(74,222,128,.3)}
.pz-zml-prazdna{border-style:dashed;box-shadow:none;background:rgba(var(--ink),.02)}
.pz-zml-hl{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.pz-zml-ik{width:46px;height:46px;flex:none;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;
  background:linear-gradient(135deg,color-mix(in srgb,var(--t) 22%,transparent),color-mix(in srgb,var(--vl) 22%,transparent));border:1px solid color-mix(in srgb,var(--t) 35%,transparent)}
.pz-zml-n{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:2px}
.pz-zml-n b{font-family:'Syne',sans-serif;font-size:18px;font-weight:700}.pz-zml-n span{font-size:12px;color:var(--mt);overflow-wrap:anywhere}
.pz-zml-zbal>summary{list-style:none;cursor:pointer}.pz-zml-zbal>summary::-webkit-details-marker{display:none}
.pz-zml-zbal[open]>summary{margin-bottom:6px}
.pz-podnadpis{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--lbl);margin:10px 0 8px}
.pz-fazy{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pz-fazy li{padding:5px 12px;border-radius:999px;font-size:12px;border:1px solid rgba(var(--ink),.12);color:var(--mt)}
.pz-fazy li.hot{color:#bbf7d0;border-color:rgba(74,222,128,.35)}
.pz-fazy li.pz-teraz{color:var(--na-t);background:var(--t);border-color:var(--t);font-weight:700}
.pz-otazky{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:16px}
.pz-otaz{border:1px solid rgba(var(--ink),.08);background:rgba(var(--ink),.025);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px;min-width:0}
.pz-otaz>.pz-lbl{color:var(--t)}
.pz-otaz-zap{margin-top:10px}
.pz-kde{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--t) 10%,transparent);border:1px solid color-mix(in srgb,var(--t) 40%,transparent)}
.pz-kde b{font-size:14px}.pz-kde span{font-size:12px;color:var(--mt)}
.pz-riadok{display:flex;align-items:center;gap:10px;justify-content:space-between}
.pz-riadok-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pz-riadok-t b{font-size:14px}.pz-riadok-t span{font-size:12px;color:var(--mt)}
.pz-poradie{width:26px;height:26px;flex:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:var(--s3);color:var(--tx)}
.pz-poradie.ok{background:var(--gn);color:var(--na-t)}.pz-poradie.am{background:var(--am);color:var(--na-t)}
.pz-mini{display:flex;gap:6px;align-items:center;font-size:12px;color:var(--mt);cursor:pointer;margin-top:2px}
.pz-volby{display:flex;flex-direction:column;gap:6px}
.pz-volba{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:10px;align-items:center;min-height:48px;padding:8px 12px;border-radius:12px;border:1px solid rgba(var(--ink),.1);background:rgba(var(--ink),.03);color:var(--tx)}
.pz-volba i{flex:none;width:14px;height:14px;border-radius:50%;border:2px solid #64748b;box-sizing:border-box}
.pz-volba span{display:flex;flex-direction:column}.pz-volba b{font-size:14px}.pz-volba small{font-size:12px;opacity:.8}
.pz-volba.on{background:linear-gradient(135deg,var(--t),var(--vl));border-color:transparent;color:var(--na-t)}
.pz-volba.on i{border-color:var(--na-t);background:var(--na-t)}
.pz-volba[disabled]{opacity:.35;cursor:not-allowed}
.pz-podpisy{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--mt)}
.pz-podpisy b{color:var(--tx)}.pz-podpisy li.ok{color:#bbf7d0}.pz-podpisy li.am{color:#fde68a}
.pz-papier{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.pz-papier .fl{width:100%;margin:0}.pz-papier .fi{max-width:170px}
.pz-iny{margin-top:4px}
.pz-iny>summary{cursor:pointer;list-style:none}.pz-iny>summary::-webkit-details-marker{display:none}
.pz-iny:not([open])>summary{border-bottom:none;padding-bottom:0;margin-bottom:0}
/* cieľ */
.pz-ciel{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:4px 0 26px}
.pz-ciel:empty{display:none}
.pz-ciel::before{content:'';display:block;width:4px;height:56px;border-radius:4px;background:linear-gradient(var(--vl),var(--gn))}
.pz-uzol-ciel{background:linear-gradient(135deg,var(--gn),var(--t))}
.pz-ciel-b{min-height:50px;padding:0 24px;font-size:14px}
.pz-ciel-t{margin:0;font-size:16px;font-weight:600;color:var(--gn)}
@media(max-width:700px){
  .pz-spoj{flex-direction:column;align-items:center;min-height:0}
  .pz-spoj-lbl{position:static;transform:none;max-width:100%;align-items:center;margin:8px 0}
  .pz-ciara{min-height:40px}
}
@media(prefers-reduced-motion:reduce){.pz-ciara::after,.pz-zila::after{animation:none;display:none}}
.pz-zvyrazni{animation:pzZvyrazni 1.6s ease-out}
@keyframes pzZvyrazni{0%{box-shadow:0 0 0 3px var(--t),0 0 40px color-mix(in srgb,var(--t) 60%,transparent);border-radius:22px}100%{box-shadow:0 0 0 0 transparent}}
.pz-navrat{position:fixed;right:22px;bottom:84px;z-index:var(--z-dialog,9000);box-shadow:0 10px 30px rgba(0,0,0,.5);max-width:min(420px,calc(100vw - 44px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cf-ziadost{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;margin-right:auto}
.fsek-lista .cf-ziadost .btn{background:var(--t);color:var(--t-on,var(--na-t));border:none;padding:8px 14px;border-radius:var(--r-sm);font-family:inherit;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none}
.fsek-lista .cf-ziadost .btn:hover{color:var(--t-on,var(--na-t));filter:brightness(1.08)}
/* Pulzujúce dáta v žilách (Peter, 2026-10-20): po žile tečú balíčky dát
   v dvoch farbách značky s rôznym oneskorením, žila jemne „dýcha“ a uzly
   krokov vysielajú kruhy. Pri obmedzenom pohybe všetko stojí. */
.pz-ciara,.pz-zila{animation:pzDych 3.2s ease-in-out infinite}
.pz-ciara::before,.pz-zila::before{content:'';position:absolute;left:-3px;width:10px;height:24px;border-radius:10px;
  background:radial-gradient(closest-side,var(--vl),transparent);animation:pzTok 3.4s linear infinite;animation-delay:-1.4s}
.pz-zila::after{animation-duration:2s}
.pz-z2 .pz-ciara::before{background:radial-gradient(closest-side,var(--t),transparent);animation-duration:2.8s}
@keyframes pzDych{0%,100%{filter:brightness(1)}50%{filter:brightness(1.35)}}
.pz-uzol{position:relative}
.pz-uzol::after{content:'';position:absolute;inset:-4px;border-radius:50%;border:2px solid color-mix(in srgb,var(--t) 70%,transparent);animation:pzVlna 2.6s ease-out infinite;pointer-events:none}
@keyframes pzVlna{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.9);opacity:0}}
@media(prefers-reduced-motion:reduce){.pz-ciara,.pz-zila,.pz-ciara::before,.pz-zila::before,.pz-uzol::after{animation:none}.pz-ciara::before,.pz-zila::before{display:none}}
/* Nový obchod v žile + výber strán + Postup obchodu (2026-10-20) */
.pz-novy-hl{width:min(760px,100%);text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:22px}
.pz-novy-hl h2{margin:0;font-family:'Syne',sans-serif;font-size:28px;font-weight:700}
.pz-novy-kroky{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}
.pz-novy-kroky li{display:flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;border:1px solid rgba(var(--ink),.12);font-size:14px;color:var(--mt)}
.pz-novy-kroky b{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--s3);color:var(--tx);font-size:12px}
.pz-novy-kroky li.hot{color:#bbf7d0;border-color:rgba(74,222,128,.35)}.pz-novy-kroky li.hot b{background:var(--gn);color:var(--na-t)}
.pz-novy-kroky li.pz-teraz{color:var(--tx);border-color:var(--t);box-shadow:0 0 18px color-mix(in srgb,var(--t) 35%,transparent)}
.pz-novy-kroky li.pz-teraz b{background:linear-gradient(135deg,var(--t),var(--vl));color:var(--na-t)}
.pz-vyber{display:flex;flex-direction:column;gap:8px}
.pz-vyber .fl{margin:6px 0 0}
.pz-zoz{display:flex;flex-direction:column;gap:6px;max-height:340px;overflow-y:auto}
.pz-kand{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;border:1px solid rgba(var(--ink),.08);background:rgba(var(--ink),.025)}
.pz-kand-ini{width:36px;height:36px;flex:none;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;background:var(--s3);color:var(--tx)}
.pz-prazdna-n{border-style:dashed;box-shadow:none}
.pz-zaloz{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;margin-top:22px}
/* ══ Dashboard „Srdce kancelárie" (2026-10-20, návrh 1) ═══════════════════════
   Dráha dňa hore, z nej žila do JADRA (čas, pozdrav, Z.E.R.O); okolo jadra karty,
   z ktorých do neho tečú dáta. Farby značky (--t, --vl), pohyb stojí pri
   prefers-reduced-motion. Na úzkej obrazovke stĺpec so zvislými žilami. */
#pg-dash{background:radial-gradient(1100px 620px at 50% 30%,color-mix(in srgb,var(--t) 12%,transparent),transparent 60%),
  radial-gradient(900px 640px at 96% 4%,color-mix(in srgb,var(--vl) 16%,transparent),transparent 62%),
  radial-gradient(800px 600px at 0% 100%,rgba(74,222,128,.06),transparent 60%);min-height:100%}
#pg-dash::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(var(--ink),.05) 1px,transparent 1.2px);background-size:26px 26px;pointer-events:none;z-index:-1}
.srd{max-width:1400px;margin:0 auto}
.srd-hl{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;justify-content:space-between;margin-bottom:14px}
.srd-datum{font-size:12px;letter-spacing:.14em;color:var(--lbl)}
.srd-akcie{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.srd-widgety{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.srd-widgety>div{border-radius:999px!important;padding:5px 14px!important;box-shadow:none!important;background:rgba(var(--ink),.035)!important}
.srd .stats{margin-bottom:0}
.srd .sc{border-radius:18px;background:linear-gradient(180deg,rgba(var(--kar1),.85),rgba(var(--kar2),.88))}
.srd-k{position:relative;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--t) 20%,rgba(var(--ink),.08));
  border-radius:22px;box-shadow:0 1px 0 rgba(var(--ink),.07) inset,0 30px 70px -30px rgba(0,0,0,.8);padding:16px 18px;display:flex;flex-direction:column;gap:10px;min-width:0;box-sizing:border-box;backdrop-filter:blur(10px)}
.srd-k .dtile{background:rgba(var(--ink),.025);border:1px solid rgba(var(--ink),.07);border-radius:16px;backdrop-filter:none;box-shadow:none}
.srd-k-h{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.srd-podnadpis{margin-top:4px;padding-top:10px;border-top:1px solid rgba(var(--ink),.07)}
.srd-draha.dtile{padding:16px 20px 12px;margin-bottom:0}
.srd-mrz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);gap:56px;align-items:stretch}
.srd-tah{border-color:rgba(251,191,36,.32)}
.srd-tah #dashPrud{max-height:420px;overflow-y:auto}
.srd-peniaze{border-color:color-mix(in srgb,var(--vl) 35%,transparent)}
.srd-pen{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
/* dve dlaždice vedľa seba len vtedy, keď je karta široká (jeden stĺpec na tablete) */
@media(min-width:601px) and (max-width:1100px){.srd-pen{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* prúd v úzkej karte: text na celý riadok, tlačidlá pod ním */
.srd-tah .pr{flex-wrap:wrap;row-gap:6px}
.srd-tah .pr-t{flex:1 1 calc(100% - 40px)}
.srd-tah .pr-t+.btn{margin-left:37px}
.srd-pen #dashCiel{grid-column:1/-1}
.srd-obch .obch{display:flex;flex-direction:column;overflow:visible;padding:0;gap:8px;max-height:560px;overflow-y:auto}
.srd-obch .ob{min-width:0;max-width:none;flex-shrink:0;display:grid;grid-template-columns:96px minmax(0,1fr)}
.srd-obch .ob-f{height:auto;min-height:76px}
.srd-obch .ob-f .ov{padding:6px;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:3px}
.srd-obch .ob-c{font-size:12px;white-space:nowrap}
.srd-obch .ob-b{padding:8px 10px}
.srd-dalsie{margin-top:56px}
/* dopyty v úzkej karte: kritériá na jeden riadok (inak ostalo „€“ samo na riadku) */
.srd-dopyty .dli>div>span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
/* jadro — na celú výšku riadka, aby do neho stredná žila z dráhy dňa naozaj vtiekla */
.srd-jadro{position:relative;align-self:stretch;justify-content:center;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:26px 24px;border-radius:44px;
  background:radial-gradient(circle at 35% 25%,color-mix(in srgb,var(--t) 22%,transparent),transparent 60%),radial-gradient(circle at 70% 85%,color-mix(in srgb,var(--vl) 26%,transparent),transparent 60%),var(--hlb);
  border:1px solid color-mix(in srgb,var(--t) 45%,transparent);animation:srdJadro 3.6s ease-in-out infinite}
@keyframes srdJadro{0%,100%{box-shadow:0 0 0 10px color-mix(in srgb,var(--t) 6%,transparent),0 0 0 24px color-mix(in srgb,var(--vl) 4%,transparent),0 0 80px color-mix(in srgb,var(--t) 40%,transparent)}
  50%{box-shadow:0 0 0 14px color-mix(in srgb,var(--t) 9%,transparent),0 0 0 32px color-mix(in srgb,var(--vl) 5%,transparent),0 0 110px color-mix(in srgb,var(--t) 55%,transparent)}}
.srd-cas{width:13rem;height:13rem;border-radius:50%!important;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0!important;
  background:radial-gradient(circle,#0e1830 58%,transparent 60%),conic-gradient(var(--t),var(--vl),var(--t))!important;border:0!important;box-shadow:0 0 40px color-mix(in srgb,var(--t) 45%,transparent)!important}
.srd-cas .dash-clock-time{font-size:2.15rem;letter-spacing:1px}
.srd-jadro .dash-hello{background:none;box-shadow:none;padding:0;margin:0;border-radius:0}
.srd-jadro .dash-hello h2{color:var(--tx);font-size:22px;margin-bottom:6px}
.srd-jadro .dash-hello p{color:#d6deec;font-size:14px;line-height:1.6;max-width:420px}
.srd-jadro .dash-hello .warn{color:#fde68a}
.srd-zero{width:100%;max-width:340px;padding:12px 14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--t) 35%,transparent);background:rgba(var(--ink),.03);display:flex;flex-direction:column;align-items:center;gap:6px}
/* žily medzi kartami */
.srd-zv,.srd-zh{position:absolute;border-radius:4px;overflow:hidden;z-index:0;pointer-events:none;box-shadow:0 0 14px color-mix(in srgb,var(--t) 55%,transparent);animation:srdDych 3.2s ease-in-out infinite}
.srd-zv{width:4px;height:57px;left:50%;margin-left:-2px;background:linear-gradient(var(--t),var(--vl))}
.srd-zh{height:4px;width:57px;top:50%;margin-top:-2px;background:linear-gradient(90deg,var(--t),var(--vl))}
/* 57 px = 56 px medzera + 1 px rámik karty, z ktorej žila vychádza (meria sa od vnútra rámika) */
.srd-dole{bottom:-57px}.srd-hore{top:-57px}.srd-vpravo{right:-57px}.srd-vlavo{left:-57px}
.srd-zv::after,.srd-zh::after{content:'';position:absolute;border-radius:12px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0))}
.srd-zv::after{left:-4px;width:12px;height:28px;animation:srdDolu 2.2s linear infinite}
.srd-hore::after{animation-name:srdHore}
.srd-zh::after{top:-4px;height:12px;width:28px;animation:srdVpravo 2.2s linear infinite}
.srd-vlavo::after{animation-name:srdVlavo}
/* dáta tečú do jadra: zhora dolu, zľava doprava, sprava doľava, zdola hore */
@keyframes srdDolu{from{top:-28px}to{top:100%}}@keyframes srdHore{from{top:100%}to{top:-28px}}
@keyframes srdVpravo{from{left:-28px}to{left:100%}}@keyframes srdVlavo{from{left:100%}to{left:-28px}}
@keyframes srdDych{0%,100%{filter:brightness(1)}50%{filter:brightness(1.35)}}
/* Žily KPI → dráha dňa (4, podľa stĺpcov KPI) a dráha → stĺpce mriežky (3).
   Mriežky kopírujú stĺpce .stats a .srd-mrz, takže žila stojí v strede karty. */
.srd-zv4,.srd-zv3{display:grid;pointer-events:none}
.srd-zv4{grid-template-columns:repeat(4,1fr);gap:12px;height:44px}
.srd-zv3{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);gap:56px;height:56px}
.srd-zv4>i,.srd-zv3>i{justify-self:center;position:relative;width:4px;height:100%;border-radius:4px;overflow:hidden;background:linear-gradient(var(--t),var(--vl));
  box-shadow:0 0 14px color-mix(in srgb,var(--t) 55%,transparent);animation:srdDych 3.2s ease-in-out infinite}
.srd-zv4>i::after,.srd-zv3>i::after{content:'';position:absolute;left:-4px;width:12px;height:28px;border-radius:12px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:srdDolu 2.2s linear infinite}
.srd-zv4>i:nth-child(2)::after,.srd-zv3>i:nth-child(2)::after{animation-delay:-.6s}
.srd-zv4>i:nth-child(3)::after,.srd-zv3>i:nth-child(3)::after{animation-delay:-1.3s}
.srd-zv4>i:nth-child(4)::after{animation-delay:-1.8s}
@media(min-width:601px) and (max-width:900px){.srd-zv4{grid-template-columns:repeat(2,1fr)}.srd-zv4>i:nth-child(n+3){display:none}}
@media(max-width:600px){.srd-zv4{grid-template-columns:1fr;height:32px}.srd-zv4>i:nth-child(n+2){display:none}}
@media(max-width:1100px){
  .srd-mrz{grid-template-columns:minmax(0,1fr);gap:40px}
  .srd-jadro{order:-1}
  .srd-zv,.srd-zh{display:none}
  .srd-mrz>section:not(:first-child):not(.srd-jadro)::before,.srd-mrz>.srd-jadro::after{content:'';position:absolute;left:50%;margin-left:-2px;width:4px;height:40px;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 12px color-mix(in srgb,var(--t) 50%,transparent)}
  .srd-mrz>section:not(:first-child):not(.srd-jadro)::before{top:-40px}
  .srd-mrz>.srd-jadro::after{bottom:-40px}
  .srd-zv3{grid-template-columns:1fr;height:40px}
  .srd-zv3>i:nth-child(1),.srd-zv3>i:nth-child(3){display:none}
}
@media(max-width:600px){.srd-pen{grid-template-columns:minmax(0,1fr)}.srd-cas{width:11.5rem;height:11.5rem}.srd-cas .dash-clock-time{font-size:1.7rem}}
/* Cievna sústava (Peter, 2026-10-20): jemné cievy zo srdca do susedných kariet,
   viditeľné len po prvý dotyk s kartou; pulzujú v rytme jadra a tečú po nich dáta. SVG leží POD kartami (z-index:-1 vo
   vlastnom kontexte .srd). Rozmazanie pozadia kariet je tu vypnuté — pri 88 %
   krytí ho nebolo vidno a pod pohyblivými cievami by sa prepočítavalo každý snímok. */
.srd{position:relative;z-index:0}
.srd .srd-k,.srd .dtile,.srd .sc{backdrop-filter:none;-webkit-backdrop-filter:none}
.srd-cievy{position:absolute;left:0;top:0;width:100%;height:100%;z-index:-1;pointer-events:none;overflow:visible}
.srd-cievy .cv{fill:none;stroke-linecap:round;opacity:.22;animation:srdCvPulz 3.6s ease-in-out infinite}
.srd-cievy .cv-t{stroke:var(--t)}.srd-cievy .cv-v{stroke:var(--vl)}
.srd-cievy .tok{fill:none;stroke:#fff;stroke-linecap:round;stroke-dasharray:4 96;opacity:.6;animation:srdCvTok 3s linear infinite}
@keyframes srdCvPulz{0%,100%{opacity:.14}50%{opacity:.36}}
@keyframes srdCvTok{from{stroke-dashoffset:0}to{stroke-dashoffset:-100}}
@media(prefers-reduced-motion:reduce){.srd-cievy .cv{animation:none}.srd-cievy .tok{display:none}}
@media(prefers-reduced-motion:reduce){.srd-jadro,.srd-zv,.srd-zh,.srd-zv4>i,.srd-zv3>i{animation:none}.srd-zv::after,.srd-zh::after,.srd-zv4>i::after,.srd-zv3>i::after{display:none}}
/* ══ Klienti ako žila (Peter, 2026-10-20, návrh 1 z 3) ═══════════════════════
   Rozvod záložiek na svietiacej žile, pod ním kmeň s vetvami ku kartám klientov.
   Farby značky (--t, --vl), dopyty jantárové (--am). Na úzkej obrazovke karty
   pod sebou bez kmeňa; pri prefers-reduced-motion pohyb stojí. */
#pg-contacts{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 25%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.kl-hub{position:relative;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--t) 20%,rgba(var(--ink),.08));border-radius:22px;box-shadow:0 1px 0 rgba(var(--ink),.07) inset,0 30px 70px -30px rgba(0,0,0,.8);padding:18px 20px;display:flex;flex-direction:column;gap:16px;margin-bottom:18px}
.kl-hub-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.kl-pocet{padding:4px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t) 40%,transparent);color:var(--t);font-size:12px}
.kl-taby{position:relative;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}
.kl-zila-h{position:absolute;left:24px;right:24px;top:50%;height:3px;margin-top:-1.5px;border-radius:3px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 14px color-mix(in srgb,var(--t) 50%,transparent);overflow:hidden;pointer-events:none}
.kl-zila-h::after{content:'';position:absolute;top:-4px;width:40px;height:11px;border-radius:11px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:klTokH 2.6s linear infinite}
.kl-uzol{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:0 16px 0 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t) 22%,transparent);background:var(--hlb);color:var(--mt);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer}
.kl-uzol i{width:10px;height:10px;border-radius:50%;background:#33415c;flex:none}
.kl-uzol b{font-family:'Space Mono',monospace;font-size:12px;font-weight:600;color:var(--m2)}
.kl-uzol:hover{color:var(--tx);border-color:color-mix(in srgb,var(--t) 45%,transparent)}
.kl-uzol.on{color:#fff;border:1.5px solid transparent;background:linear-gradient(var(--hlb),var(--hlb)) padding-box,linear-gradient(135deg,var(--t),var(--vl)) border-box;box-shadow:0 0 26px color-mix(in srgb,var(--t) 35%,transparent)}
.kl-uzol.on i{background:var(--t);box-shadow:0 0 12px var(--t)}
.kl-uzol.on b{color:var(--t)}
.kl-uzol:focus-visible,.kl-meno-b:focus-visible{outline:2px solid #fff;outline-offset:2px}
.kl-filtre{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}
.kl-hladaj{position:relative;flex:1 1 280px;max-width:440px}
.kl-hladaj .fi{width:100%;min-height:44px;padding-left:42px;box-sizing:border-box}
.kl-lupa{position:absolute;left:14px;bottom:13px;width:18px;height:18px;color:var(--m2);pointer-events:none}
.kl-f{display:flex;flex-direction:column;gap:5px}
.kl-f .fi{min-width:180px;min-height:44px}
.kl-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.kl-vyber{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:12px 16px;margin-bottom:14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--vl) 50%,transparent);background:color-mix(in srgb,var(--vl) 10%,transparent);box-shadow:0 0 40px -12px color-mix(in srgb,var(--vl) 60%,transparent)}
.kl-vyber-a{display:flex;flex-wrap:wrap;gap:8px}
.kl-vsetci{display:inline-flex;align-items:center;gap:10px;margin:0 0 12px 56px;font-size:14px;color:var(--mt);cursor:pointer}
.kl-vsetci input{width:20px;height:20px;margin:0;accent-color:var(--vl)}
.kl-zoz{position:relative;padding-left:56px}
.kl-kmen{position:absolute;left:21px;top:0;bottom:24px;width:4px;border-radius:4px;background:linear-gradient(var(--t),var(--vl) 70%,color-mix(in srgb,var(--vl) 15%,transparent));box-shadow:0 0 14px color-mix(in srgb,var(--t) 45%,transparent);overflow:hidden;pointer-events:none}
.kl-kmen::after{content:'';position:absolute;left:-4px;width:12px;height:34px;border-radius:12px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:klTokV 3.2s linear infinite}
.kl-karty{display:flex;flex-direction:column;gap:14px}
.kl-karta{position:relative;display:grid;grid-template-columns:24px 52px minmax(180px,1.35fr) minmax(150px,1fr) 120px 72px minmax(130px,1fr) 176px;gap:14px;align-items:center;padding:16px 18px;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--t) 16%,rgba(var(--ink),.07));border-radius:20px;box-shadow:0 1px 0 rgba(var(--ink),.06) inset,0 24px 50px -30px rgba(0,0,0,.8)}
.kl-karta.vyb{border-color:color-mix(in srgb,var(--vl) 60%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--vl) 35%,transparent),0 0 40px -10px color-mix(in srgb,var(--vl) 55%,transparent)}
.kl-vetva{position:absolute;left:-35px;top:42px;width:35px;height:3px;background:linear-gradient(90deg,var(--t),color-mix(in srgb,var(--t) 35%,transparent));box-shadow:0 0 10px color-mix(in srgb,var(--t) 40%,transparent);pointer-events:none}
.kl-vetva::before{content:'';position:absolute;left:-5px;top:-4px;width:11px;height:11px;border-radius:50%;background:var(--hlb);border:2px solid var(--t);box-sizing:border-box}
.kl-karta>input.cSelBox{width:20px;height:20px;margin:0;cursor:pointer;accent-color:var(--vl)}
.kl-ava{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;color:var(--na-t)}
.kl-p .kl-ava{background:linear-gradient(135deg,var(--t),color-mix(in srgb,var(--t) 60%,#000));box-shadow:0 0 22px color-mix(in srgb,var(--t) 35%,transparent)}
.kl-k .kl-ava{background:linear-gradient(135deg,var(--vl),color-mix(in srgb,var(--vl) 60%,#000));box-shadow:0 0 22px color-mix(in srgb,var(--vl) 35%,transparent)}
.kl-d .kl-ava{background:linear-gradient(135deg,var(--am),#f59e0b);box-shadow:0 0 22px rgba(251,191,36,.3)}
.kl-i .kl-ava{background:#94a3b8}
.kl-meno{display:flex;flex-direction:column;gap:7px;min-width:0}
.kl-meno-r{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.kl-meno-b{all:unset;cursor:pointer;font-weight:700;font-size:16px;color:var(--tx-hi)}
.kl-meno-b:hover{color:var(--t)}
.kl-chipy{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.kl-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid rgba(var(--ink),.12);background:rgba(var(--ink),.04);color:var(--mt);white-space:nowrap}
.kl-p .kl-typ{color:var(--t);border-color:color-mix(in srgb,var(--t) 40%,transparent)}
.kl-k .kl-typ{color:color-mix(in srgb,var(--vl) 70%,#fff);border-color:color-mix(in srgb,var(--vl) 45%,transparent)}
.kl-d .kl-typ{color:var(--am);border-color:rgba(251,191,36,.4)}
.kl-st-lead{color:var(--am);border-color:rgba(251,191,36,.4)}
.kl-st-aktivny{color:var(--gn);border-color:rgba(74,222,128,.4)}
.kl-st-klient{color:var(--t);border-color:color-mix(in srgb,var(--t) 45%,transparent);background:color-mix(in srgb,var(--t) 10%,transparent)}
.kl-st-neaktivny{color:var(--m2)}
.kl-kontakt,.kl-stav,.kl-prip{display:flex;flex-direction:column;gap:4px;min-width:0}
.kl-kontakt{font-size:14px}
.kl-kontakt span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.kl-stav{align-items:flex-start}
.kl-mal{font-size:12px;color:var(--m2)}
.kl-prip b{font-size:22px;font-weight:700;color:var(--t);line-height:1}
.kl-prip b.nula{color:var(--m2)}
.kl-nehn{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0}
/* nehnuteľnosť ako štítok (malá fotka + adresa), nie veľký náhľad — karta ostane nízka */
.kl-nehn .cpm{width:auto;max-width:100%;display:flex;align-items:center;gap:8px;padding:3px 10px 3px 3px;border-radius:10px;border-color:rgba(var(--ink),.1);background:rgba(var(--ink),.03)}
.kl-nehn .cpm img,.kl-nehn .cpm-ph{width:30px;height:30px;border-radius:8px;flex:none;object-fit:cover}
.kl-nehn .cpm-a{padding:0;font-size:12px;color:var(--mt);min-width:0}
.kl-akcie{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
/* preklopenie dopytu na celý riadok nad ikonami — inak ostal „✕“ sám na druhom riadku */
.kl-akcie>.btn-p{flex:1 0 100%}
/* tlačidlá hlavičky sa zalomia (na mobile boli stlačené a posledné odrezané) */
#pg-contacts .ph>div:last-child{flex-wrap:wrap}
#pg-contacts .ph .btn{white-space:nowrap}
@keyframes klTokH{from{left:-40px}to{left:100%}}@keyframes klTokV{from{top:-34px}to{top:100%}}
@media(max-width:1180px){.kl-karta{grid-template-columns:24px 52px minmax(0,1fr)}.kl-karta>.kl-cel{grid-column:1/-1}.kl-akcie{justify-content:flex-start;flex-wrap:wrap}.kl-nehn{flex-direction:row;flex-wrap:wrap}}
@media(max-width:640px){.kl-kmen,.kl-vetva,.kl-zila-h{display:none}.kl-zoz{padding-left:0}.kl-vsetci{margin-left:0}.kl-taby{justify-content:flex-start}.kl-f,.kl-f .fi{width:100%}}
@media(prefers-reduced-motion:reduce){.kl-zila-h::after,.kl-kmen::after{animation:none;display:none}}
/* ══ Nehnuteľnosti ako žila (Peter, 2026-10-21, návrh 1 z 3) ═════════════════
   Rozvod (dve žily: stav a typ ponuky) a kmeň s kartami používajú triedy kl-*
   zo sekcie Klienti; tu je len to, čo je iné: fotka, cena, ★ a stav na webe. */
#pg-ponuka{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 25%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.nh-pocty{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.nh-hl{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;border-radius:999px;border:1px solid rgba(251,191,36,.4);color:var(--am);font-size:12px}
.nh-sloty{display:inline-flex;gap:4px}
.nh-sloty i{width:12px;height:12px;border-radius:50%;border:1.5px solid rgba(251,191,36,.55);box-sizing:border-box}
.nh-sloty i.on{background:var(--am);box-shadow:0 0 10px rgba(251,191,36,.7)}
.nh-rozvod{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px}
.nh-f{display:flex;flex-direction:column;gap:8px;min-width:0}
.nh-f .kl-taby{justify-content:flex-start;gap:14px}
.nh-info{margin:0;font-size:12px;color:var(--mt);line-height:1.6}
.nh-karta{grid-template-columns:168px minmax(200px,1.4fr) minmax(130px,.8fr) 140px 150px 176px}
.nh-karta .kl-vetva{top:56px}
.nh-foto{all:unset;cursor:pointer;position:relative;width:168px;height:112px;border-radius:14px;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--t) 30%,var(--hlb)),color-mix(in srgb,var(--vl) 30%,var(--hlb)));display:flex;align-items:center;justify-content:center}
.nh-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.nh-foto-ph{font-size:28px;opacity:.5}
.nh-foto:focus-visible{outline:2px solid #fff;outline-offset:2px}
.nh-pon{position:absolute;left:8px;bottom:8px;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:700;color:var(--na-t)}
.nh-pon.pre{background:var(--t)}.nh-pon.naj{background:var(--vl)}
.nh-nazov{display:flex;flex-direction:column;gap:6px;min-width:0}
.nh-vzor{color:var(--t);border-color:color-mix(in srgb,var(--t) 45%,transparent)}
.nh-klient,.nh-cena,.nh-stav{display:flex;flex-direction:column;gap:6px;min-width:0;align-items:flex-start}
.nh-majitel{cursor:pointer;font-family:inherit;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.nh-majitel:hover{color:var(--t);border-color:color-mix(in srgb,var(--t) 45%,transparent)}
.nh-cena b{font-size:18px;font-weight:700;color:var(--tx-hi);white-space:nowrap}
.nh-st-aktualne{color:var(--gn);border-color:rgba(74,222,128,.4)}
.nh-st-predane{color:var(--rd);border-color:rgba(248,113,113,.45)}
.nh-st-prenajate{color:var(--am);border-color:rgba(251,191,36,.45)}
.nh-web i,.nh-skryta i{width:8px;height:8px;border-radius:50%;background:var(--gn)}
.nh-web{color:var(--gn);border-color:rgba(74,222,128,.35)}
.nh-skryta{color:var(--m2)}.nh-skryta i{background:#475569}
.nh-hv{font-size:16px}
.nh-hv.on{color:var(--am);border-color:rgba(251,191,36,.55);background:rgba(251,191,36,.1);box-shadow:0 0 18px -6px rgba(251,191,36,.7)}
/* tlačidlá hlavičky sa na mobile zalomia (rovnako ako v Klientoch) */
#pg-ponuka .ph>div:last-child{flex-wrap:wrap}
#pg-ponuka .ph .btn{white-space:nowrap}
@media(max-width:1180px){.nh-karta{grid-template-columns:168px minmax(0,1fr)}.nh-karta>.kl-cel{grid-column:1/-1}}
@media(max-width:900px){.nh-rozvod{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.nh-karta{grid-template-columns:minmax(0,1fr)}.nh-foto{width:100%;height:160px}}
/* ══ Obchodné prípady ako žila (Peter, 2026-10-21) ════════════════════════════
   Čísla pustia žily do pipeline; fázy sú uzly na hlavnej žile (každý stĺpec nesie
   kúsok vodorovnej žily, takže je súvislá aj pri rolovaní do strany), z uzla
   zvislá žila k prípadom. Provízie ako stĺpce na žile. Rozvod = .kl-hub. */
#pg-deals{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.op-statsy{margin-bottom:40px}
.op-statsy .sc{position:relative;overflow:visible;border-radius:18px;background:linear-gradient(180deg,rgba(var(--kar1),.85),rgba(var(--kar2),.88))}
.op-statsy .sc::after{content:'';position:absolute;left:50%;bottom:-41px;width:4px;height:40px;margin-left:-2px;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 12px color-mix(in srgb,var(--t) 50%,transparent)}
.op-kb{gap:10px;padding:4px 2px 10px;align-items:stretch}
.op-col{position:relative;flex:1 0 190px;min-width:190px;background:transparent;border:0;border-radius:0;display:flex;flex-direction:column;align-items:stretch}
.op-col::before{content:'';position:absolute;left:0;right:-10px;top:28px;height:4px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 14px color-mix(in srgb,var(--t) 50%,transparent)}
.op-col:last-child::before{right:50%}.op-col:first-child::before{left:50%}
.op-uzol{position:relative;z-index:1;align-self:center;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;background:var(--hlb);border:2px solid color-mix(in srgb,var(--t) 65%,transparent);color:var(--tx-hi);box-shadow:0 0 0 6px color-mix(in srgb,var(--t) 7%,transparent),0 0 26px color-mix(in srgb,var(--t) 35%,transparent)}
.op-vyhrane .op-uzol{border-color:var(--gn);box-shadow:0 0 0 6px rgba(74,222,128,.07),0 0 26px rgba(74,222,128,.35)}
.op-prehrate .op-uzol{border-color:#64748b;box-shadow:none;color:var(--m2)}
.op-hl{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;margin:8px 0 10px}
.op-hl .kb-t{color:var(--tx);font-size:14px;letter-spacing:.06em}
.op-hl span{font-family:'Space Mono',monospace;font-size:12px;color:var(--t)}
.op-col .kb-b{position:relative;padding:0 0 0 24px;min-height:40px}
.op-col .kb-b::before{content:'';position:absolute;left:10px;top:-6px;bottom:8px;width:3px;border-radius:3px;background:linear-gradient(var(--t),color-mix(in srgb,var(--vl) 20%,transparent))}
.op-col .kb-card{position:relative;background:linear-gradient(180deg,rgba(var(--kar1),.92),rgba(var(--kar2),.94));border:1px solid color-mix(in srgb,var(--t) 18%,rgba(var(--ink),.07));border-radius:16px}
.op-col .kb-card::before{content:'';position:absolute;left:-14px;top:20px;width:14px;height:2px;background:var(--t);box-shadow:0 0 8px color-mix(in srgb,var(--t) 60%,transparent)}
.op-provizie{margin-top:18px}
.op-rok{font-size:14px;color:var(--t)}
.op-graf{display:flex;gap:8px;align-items:flex-end;height:220px;padding-bottom:4px;border-bottom:3px solid color-mix(in srgb,var(--t) 60%,transparent);box-shadow:0 12px 18px -14px color-mix(in srgb,var(--t) 80%,transparent)}
.op-stl{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}
.op-stl i{display:block;width:100%;max-width:44px;border-radius:8px 8px 3px 3px;background:linear-gradient(var(--vl),var(--t));box-shadow:0 0 18px -4px color-mix(in srgb,var(--t) 60%,transparent)}
.op-stl-v{font-size:12px;color:var(--tx);white-space:nowrap}
.op-stl-l{font-size:12px;color:var(--m2);white-space:nowrap}
@media(max-width:900px){.op-statsy .sc::after{display:none}.op-statsy{margin-bottom:18px}.op-stl-v{display:none}}
/* ══ Prehľad CRM ako žila (Peter, 2026-10-21) ═════════════════════════════════
   Každé zo štyroch čísel pustí žilu do svojho panela (rovnaké poradie stĺpcov);
   zmluvy čakajúce na váš podpis svietia navrchu. */
#pg-crm{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.pr-podpis{border-color:color-mix(in srgb,var(--vl) 55%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--vl) 25%,transparent),0 0 50px -14px color-mix(in srgb,var(--vl) 60%,transparent);border-radius:20px}
.pr-statsy{margin-bottom:48px}
.pr-statsy .sc{position:relative;overflow:visible;border-radius:18px;background:linear-gradient(180deg,rgba(var(--kar1),.85),rgba(var(--kar2),.88))}
.pr-statsy .sc::after{content:'';position:absolute;left:50%;bottom:-49px;width:4px;height:48px;margin-left:-2px;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 12px color-mix(in srgb,var(--t) 50%,transparent)}
.pr-styri{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:start}
.pr-pan{margin-bottom:0;min-width:0}
.pr-pan #crm-pipe>div{grid-template-columns:86px minmax(0,1fr) auto!important}
/* úzky panel: odznaky typu a stavu sa zalomia pod meno (inak vytŕčali za okraj) */
.pr-pan #crm-latest>div,.pr-pan #crm-tasks>div,.pr-pan #crm-leases>div{flex-wrap:wrap;row-gap:6px}
.pr-pan #crm-latest>div>div{min-width:0}
@media(max-width:1180px){.pr-styri{grid-template-columns:repeat(2,minmax(0,1fr))}.pr-statsy .sc::after{display:none}.pr-statsy{margin-bottom:18px}}
@media(max-width:640px){.pr-styri{grid-template-columns:minmax(0,1fr)}}
/* ══ Evidencia obchodov ako časová žila (Peter, 2026-10-21) ═══════════════════
   Čísla na vodorovnej žile; kmeň zhora nadol cez roky (uzol = rok, zbaliteľný),
   z neho vetvy mesiacov s kartami obchodov. Kmeň = .kl-kmen zo sekcie Klienti. */
#pg-evidence{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.ev-statsy{position:relative}
.ev-statsy::before{content:'';position:absolute;left:6%;right:6%;top:50%;height:3px;margin-top:-1.5px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 14px color-mix(in srgb,var(--t) 50%,transparent)}
.ev-statsy .sc{position:relative;border-radius:18px;background:linear-gradient(180deg,rgba(var(--kar1),.92),rgba(var(--kar2),.94))}
.ev-zoz{position:relative;padding-top:6px}
.ev-zoz>.kl-kmen{left:23px;top:30px}
.ev-rok-blok{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}
.ev-rok{all:unset;cursor:pointer;position:relative;display:flex;align-items:center;gap:16px;min-height:52px;margin:0}
.ev-rok:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:12px}
.ev-rok-uzol{width:50px;height:50px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--t);box-shadow:0 0 0 6px color-mix(in srgb,var(--t) 7%,transparent),0 0 24px color-mix(in srgb,var(--t) 40%,transparent);font-family:'Space Mono',monospace;font-size:18px;color:var(--t)}
.ev-rok .ev-yt{font-size:28px}
.ev-rok-s{font-size:12px;color:var(--m2)}
.ev-mes{position:relative;margin-left:66px}
.ev-mes::before{content:'';position:absolute;left:-43px;top:24px;width:43px;height:3px;background:linear-gradient(90deg,var(--t),color-mix(in srgb,var(--t) 30%,transparent));box-shadow:0 0 10px color-mix(in srgb,var(--t) 40%,transparent)}
.ev-mes>.panel{border-radius:20px;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border-color:color-mix(in srgb,var(--t) 18%,rgba(var(--ink),.07));margin-bottom:0}
.ev-mes .kb-card{border-radius:16px;background:linear-gradient(180deg,rgba(var(--kar1),.92),rgba(var(--kar2),.94));border:1px solid color-mix(in srgb,var(--t) 16%,rgba(var(--ink),.07))}
@media(max-width:640px){.ev-zoz>.kl-kmen,.ev-mes::before,.ev-statsy::before{display:none}.ev-mes{margin-left:0}#pg-evidence .ev-doc{flex-wrap:wrap;row-gap:6px}#pg-evidence .ev-doc-n{flex-basis:100%}}
/* ══ Úlohy a obhliadky ako dráha času (Peter, 2026-10-21) ════════════════════
   Filter = uzly na žile (červená → zelená ako čas), pod ním kmeň so zastávkami
   Po termíne · Dnes · Zajtra · Neskôr · Bez termínu · Hotové; úlohy sú karty
   na vetvách. Uzly, kmeň a karty = triedy kl-* zo sekcie Klienti. */
#pg-tasks{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.tk-zila{background:linear-gradient(90deg,var(--rd),var(--am) 35%,var(--t) 65%,var(--gn))}
.tk-zoz{position:relative;padding-left:56px;display:flex;flex-direction:column;gap:12px}
.tk-kmen{background:linear-gradient(var(--rd),var(--am) 30%,var(--t) 60%,var(--gn))}
.tk-zast{position:relative;margin:6px 0 0 -56px;display:flex;align-items:center;gap:16px;min-height:50px}
.tk-zast-u{width:48px;height:48px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--zf);color:var(--zf);font-family:'Space Mono',monospace;font-size:16px;box-shadow:0 0 0 6px rgba(var(--ink),.03),0 0 22px color-mix(in srgb,var(--zf) 45%,transparent)}
.tk-zast-t{display:flex;flex-direction:column;gap:2px}
.tk-zast-t b{font-size:18px;font-weight:700}
.tk-karta{grid-template-columns:auto minmax(0,1fr) auto}
.tk-karta .kl-vetva{top:50%;margin-top:-1.5px}
.tk-tog{all:unset;cursor:pointer;display:inline-flex;align-items:center}
.tk-tog:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:12px}
.tk-tog .tog-t{width:46px;height:26px;border-radius:13px}
.tk-tog .tog-th{width:20px;height:20px}
.tk-tog .tog-t.on .tog-th{left:22px}
.tk-obsah{display:flex;flex-direction:column;gap:5px;min-width:0}
.tk-tit{font-size:16px;color:var(--tx-hi)}
.tk-vazby{display:flex;flex-wrap:wrap;gap:14px}
.tk-hotova{opacity:.62}
.tk-hotova .tk-tit{text-decoration:line-through}
.tk-akcie{flex-wrap:nowrap}
@media(max-width:760px){.tk-karta{grid-template-columns:auto minmax(0,1fr)}.tk-karta>.tk-akcie{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:640px){.tk-zoz{padding-left:0}.tk-zast{margin-left:0}}
/* ══ Ďalších osem sekcií ako žila (Peter, 2026-10-21) ════════════════════════
   Cenová analýza, Realitný scanner, Investičné portfólio, Výkon, Financie,
   Dokumenty a zmluvy, Generátor zmlúv, Marketingové dokumenty. Rozvod, uzly,
   kmeň a vetvy = triedy kl-* zo sekcie Klienti; tu sú spoločné zl-* (kroky,
   zastávky na kmeni, strom knižnice, žily pod blokmi) a drobnosti sekcií. */
#pg-analyza,#pg-scanner,#pg-portfolio,#pg-report,#pg-financie,#pg-docs,#pg-gen,#pg-mktdocs{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.zl-hub{margin-bottom:26px}
.zl-hub .info-box{margin:0}
.zl-zv{position:absolute;left:var(--x,50%);bottom:-27px;width:4px;height:26px;margin-left:-2px;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 12px color-mix(in srgb,var(--t) 50%,transparent);overflow:hidden;pointer-events:none}
.zl-zv::after{content:'';position:absolute;left:-4px;width:12px;height:20px;border-radius:12px;background:radial-gradient(closest-side,#fff,rgba(var(--ink),0));animation:zlTokZ 2.2s linear infinite}
.zl-pozn{margin:0;font-size:12px;color:var(--mt);line-height:1.6}
.zl-kroky{position:relative;display:grid;grid-template-columns:repeat(var(--n,5),minmax(0,1fr));gap:12px;align-items:start}
.zl-kroky>.kl-zila-h{top:22px;margin-top:0;left:calc(50% / var(--n,5));right:calc(50% / var(--n,5))}
.zl-krok{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;min-width:0}
.zl-krok b{font-size:14px;color:var(--tx-hi);background:var(--hlb);padding:2px 8px;border-radius:8px}
.zl-krok>span:not(.zl-krok-u){font-size:12px;color:var(--m2);line-height:1.4;max-width:190px}
.zl-krok-u{width:44px;height:44px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--t);box-shadow:0 0 18px color-mix(in srgb,var(--t) 45%,transparent);font-family:'Space Mono',monospace;font-size:14px;color:var(--t);box-sizing:border-box}
.zl-krok.ok .zl-krok-u{border-color:var(--gn);color:var(--gn);background:color-mix(in srgb,var(--gn) 12%,var(--hlb));box-shadow:none}
.zl-krok.caka .zl-krok-u{border-color:#33415c;color:var(--m2);box-shadow:none}
.zl-krok.caka b{color:var(--mt)}
.zl-zoz{position:relative;padding-left:56px;display:flex;flex-direction:column;gap:12px;margin-bottom:18px}
.zl-zoz>.kl-kmen{top:24px;bottom:24px}
.zl-zast{position:relative;margin-left:-56px;display:flex;align-items:center;gap:16px;min-height:50px}
.zl-zast-u{width:48px;height:48px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--zf,var(--t));color:var(--zf,var(--t));font-family:'Space Mono',monospace;font-size:16px;box-shadow:0 0 0 6px rgba(var(--ink),.03),0 0 22px color-mix(in srgb,var(--zf,var(--t)) 45%,transparent);box-sizing:border-box}
.zl-zast-t{display:flex;flex-direction:column;gap:2px;min-width:0}
.zl-zast-t b{font-size:18px;font-weight:700;color:var(--tx-hi)}
.zl-mes{display:flex;align-items:center;gap:16px;margin:6px 0 0 -56px;min-height:28px}
.zl-mes i{width:14px;height:14px;margin-left:16px;border-radius:50%;flex:none;background:var(--hlb);border:3px solid var(--vl);box-shadow:0 0 12px var(--vl);box-sizing:border-box}
.zl-mes .pt{color:color-mix(in srgb,var(--vl) 70%,#fff)}
.zl-karty{display:flex;flex-direction:column;gap:12px}
.zl-karta{grid-template-columns:minmax(0,1fr) auto;padding:14px 18px}
.zl-karta .kl-vetva{top:50%;margin-top:-1.5px;background:linear-gradient(90deg,var(--vf,var(--t)),color-mix(in srgb,var(--vf,var(--t)) 35%,transparent))}
.zl-karta .kl-vetva::before{border-color:var(--vf,var(--t))}
.zl-obsah{display:flex;flex-direction:column;gap:6px;min-width:0;align-items:flex-start}
.zl-tit{font-size:16px;font-weight:700;color:var(--tx-hi);overflow-wrap:anywhere}
button.zl-tit:hover{color:var(--t)}
.zl-akcie{flex-wrap:nowrap}
.zl-dok{grid-template-columns:auto minmax(0,1fr) auto}
.zl-dok-ik{font-size:22px}
.zl-statsy{margin-bottom:30px}
.zl-statsy .sc{overflow:visible}
.zl-statsy .sc::after{content:'';position:absolute;left:50%;bottom:-31px;width:4px;height:30px;margin-left:-2px;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 12px color-mix(in srgb,var(--t) 50%,transparent);pointer-events:none}
.zl-sc-pozor{border-color:rgba(248,113,113,.5);background:linear-gradient(180deg,rgba(44,20,32,.9),rgba(18,12,22,.92));box-shadow:0 0 40px -16px rgba(248,113,113,.6)}
.zl-statsy .zl-sc-pozor::after{background:var(--rd);box-shadow:0 0 12px rgba(248,113,113,.6)}
.zl-panel,.zl-panel2{overflow:visible}
.zl-panel2{margin-bottom:26px}
.zl-panel{margin-bottom:0}
.zl-panel>.kl-vetva{top:40px}
.zl-panel2>.ph2,.zl-panel>.ph2{border-radius:20px 20px 0 0}
.zl-g2{align-items:start}
.zl-g2 .zl-panel2{margin-bottom:16px}
.zl-blok{display:flex;flex-direction:column;gap:12px}
.zl-pruh{display:block;height:10px;border-radius:10px;background:rgba(var(--ink),.07);overflow:hidden}
.zl-pruh i{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 10px color-mix(in srgb,var(--t) 40%,transparent)}
.zl-bar{display:grid;grid-template-columns:var(--lw,44px) minmax(0,1fr) 92px;gap:10px;align-items:center}
.zl-bar-l{font-size:12px;color:var(--m2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zl-bar-v{font-size:12px;color:var(--t);text-align:right;white-space:nowrap}
.zl-gen-h{margin:2px 0 12px}
/* Cenová analýza */
.an-karta .zl-akcie .btn{white-space:nowrap}
/* Realitný scanner */
.zl-src{position:relative;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--t) 22%,transparent);background:var(--hlb);color:var(--mt);font-size:14px;font-weight:600;cursor:pointer}
.zl-src input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.zl-src i{width:9px;height:9px;border-radius:50%;background:#33415c}
.zl-src:has(input:checked){border-color:var(--t);color:#fff;box-shadow:0 0 18px color-mix(in srgb,var(--t) 30%,transparent)}
.zl-src:has(input:checked) i{background:var(--t);box-shadow:0 0 10px var(--t)}
.zl-src:has(input:focus-visible){outline:2px solid #fff;outline-offset:2px}
.zl-cisla5{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.zl-cisla5>.kl-zila-h{left:10%;right:10%}
.zl-sc{z-index:1;padding:16px 18px;background:linear-gradient(180deg,#141c30,#0b1020)}
.zl-sc .sc-v{font-size:22px;line-height:1.2}
.zl-sc-p{font-family:'Space Mono',monospace;font-size:12px;color:var(--t);margin-top:6px}
.zl-ocen3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.zl-ocen{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border-radius:16px;border:1px solid rgba(74,222,128,.28);background:rgba(74,222,128,.05)}
.zl-ocen b{font-size:22px;font-weight:700;color:var(--tx-hi)}
.zl-porov{font-size:12px;margin-bottom:10px;border-color:rgba(251,191,36,.3)}
.zl-det summary{cursor:pointer;font-size:12px;color:var(--tl);min-height:36px;display:flex;align-items:center}
/* Investičné portfólio */
.port-karta{grid-template-columns:minmax(0,1.15fr) minmax(0,2fr) auto}
.port-cisla{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}
.port-cisla>span{display:flex;flex-direction:column;gap:2px;font-family:'Space Mono',monospace;font-size:14px;color:var(--tx-hi);min-width:0}
.port-cisla em{font-style:normal;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--m2)}
.port-cisla i{font-style:normal}
.port-cisla .port-vyn{width:max-content}
.port-vponuke{cursor:pointer;font-family:inherit}
.port-vponuke:hover{color:var(--t)}
.port-karta.port-riadok-predat{border-color:rgba(248,113,113,.5);box-shadow:0 0 0 1px rgba(248,113,113,.2),0 0 40px -16px rgba(248,113,113,.6)}
.port-akcie{flex-direction:column;align-items:flex-end}
.port-dole{margin-top:6px}
.port-odp-pan .pb{display:flex;flex-direction:column;gap:12px}
.port-odp-pan .port-odp{margin:0}
/* Výkon */
.zl-uzly4{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.zl-uzly4>.kl-zila-h{left:12%;right:12%}
.zl-mu{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0}
.zl-mu>b{width:54px;height:54px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--c);box-shadow:0 0 18px color-mix(in srgb,var(--c) 45%,transparent);font-size:18px;font-weight:700;color:var(--tx-hi);box-sizing:border-box}
.zl-mu>span{display:flex;flex-direction:column;background:var(--hlb);padding:4px 8px;border-radius:8px}
.zl-mu-l{font-size:14px;font-weight:600;color:var(--tx-hi)}
.zl-graf{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.zl-gm{display:flex;flex-direction:column;gap:8px;min-width:0}
.zl-gst{height:190px;display:flex;gap:5px;align-items:flex-end;justify-content:center;border-bottom:3px solid color-mix(in srgb,var(--t) 55%,transparent);box-shadow:0 12px 18px -14px color-mix(in srgb,var(--t) 80%,transparent)}
.zl-gs{position:relative;width:min(18px,28%);border-radius:6px 6px 2px 2px;background:var(--c);box-shadow:0 0 12px color-mix(in srgb,var(--c) 40%,transparent)}
.zl-gs em{position:absolute;top:-18px;left:50%;transform:translateX(-50%);font-size:12px;font-style:normal;color:var(--mt)}
.zl-gl{font-size:12px;color:var(--m2);text-align:center;white-space:nowrap}
#repSources{display:flex;flex-direction:column;gap:8px}
.zl-lev{position:relative;display:flex;flex-direction:column;gap:6px;padding-left:34px}
.zl-lev>.kl-kmen{left:11px;top:10px;bottom:10px}
.zl-lev-r{position:relative}
.zl-lev-r::before{content:'';position:absolute;left:-28px;top:50%;width:10px;height:10px;margin-top:-7px;border-radius:50%;background:var(--hlb);border:2px solid var(--t);box-shadow:0 0 8px var(--t)}
.zl-lev-r.nul::before{border-color:#33415c;box-shadow:none}
.zl-lej{display:flex;flex-direction:column;gap:6px;align-items:center}
.zl-lej>div{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:0 16px;border-radius:12px;border:1px solid color-mix(in srgb,var(--t) 30%,transparent);background:color-mix(in srgb,var(--t) 7%,transparent);box-sizing:border-box;font-size:14px}
.zl-lej b{font-size:12px;color:var(--t);white-space:nowrap}
.zl-rych{display:flex;align-items:center;gap:16px}
.zl-rych-u{width:72px;height:72px;font-size:22px}
/* Financie */
.fin-kmen{background:linear-gradient(var(--rd),var(--vl) 70%,color-mix(in srgb,var(--vl) 15%,transparent))}
.fin-karta{grid-template-columns:minmax(0,1fr) auto auto;gap:18px}
.fin-po{border-color:rgba(248,113,113,.45);background:linear-gradient(180deg,rgba(44,20,32,.9),rgba(18,12,22,.92))}
.fin-spl{font-size:12px;color:var(--tx)}
.fin-suma{font-size:16px;color:var(--tx-hi);white-space:nowrap}
.fin-vyh{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end}
.fin-vyh>.kl-zila-h{top:auto;bottom:33px;margin:0;left:6%;right:6%}
.fin-vm{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}
.fin-vs{font-size:12px;color:var(--tx-hi);white-space:nowrap}
.fin-stlp{width:34px;height:150px;display:flex;flex-direction:column-reverse;border-radius:8px;background:rgba(var(--ink),.05);overflow:hidden}
.fin-stlp i{display:block;flex:none}
.fin-bod{width:16px;height:16px;border-radius:50%;background:var(--hlb);border:3px solid var(--t);box-shadow:0 0 10px var(--t);box-sizing:border-box}
.fin-vl{font-size:12px;color:var(--m2);height:18px;line-height:18px;white-space:nowrap}
.fin-mk{display:flex;flex-direction:column;gap:8px;padding:10px 0;border-bottom:1px solid rgba(var(--ink),.07)}
.fin-mk:last-child{border-bottom:0}
.fin-mk-h{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.fin-mk-p{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;font-size:12px}
.fin-fazy{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:6px}
.fin-fazy>.kl-zila-h{top:22px;margin:0;left:10%;right:10%}
.fin-fz{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;min-width:0}
.fin-fz .fl{margin:0}
.fin-fz .fi-wrap{max-width:120px}
/* Dokumenty a zmluvy + Marketingové dokumenty — knižnica ako strom */
.zl-cesta{position:relative;display:flex;flex-wrap:wrap;align-items:center;row-gap:10px}
.zl-cesta-z{width:26px;height:3px;background:linear-gradient(90deg,var(--t),var(--vl));box-shadow:0 0 10px color-mix(in srgb,var(--t) 50%,transparent)}
.zl-cesta .mkt-ic-sm svg{width:16px;height:16px}
.zl-strom{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr);row-gap:14px;margin-bottom:22px}
.zl-strom>.kl-kmen{left:50%;margin-left:-2px;top:0;bottom:36px}
.zl-pr{all:unset;box-sizing:border-box;position:relative;cursor:pointer;display:flex;align-items:center;gap:14px;padding:14px 16px;min-height:72px;border-radius:18px;border:1px solid color-mix(in srgb,var(--t) 20%,rgba(var(--ink),.07));background:linear-gradient(180deg,rgba(var(--kar1),.9),rgba(var(--kar2),.92))}
.zl-pr:hover{border-color:color-mix(in srgb,var(--t) 55%,transparent);box-shadow:0 0 30px -10px color-mix(in srgb,var(--t) 55%,transparent)}
.zl-pr:focus-visible{outline:2px solid #fff;outline-offset:2px}
.zl-pr.l{grid-column:1}.zl-pr.r{grid-column:3}
.zl-pr.l::after,.zl-pr.r::before{content:'';position:absolute;top:50%;width:28px;height:3px;margin-top:-1.5px;background:var(--t);opacity:.75;box-shadow:0 0 8px var(--t)}
.zl-pr.l::after{right:-29px}.zl-pr.r::before{left:-29px}
.zl-pr.prazdny{opacity:.6}
.zl-pr-e{width:44px;height:44px;border-radius:14px;flex:none;display:flex;align-items:center;justify-content:center;font-size:22px;background:color-mix(in srgb,var(--t) 8%,transparent)}
.zl-pr-e.mkt-ic svg{width:26px;height:26px}
.zl-pr-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.zl-pr-t b{font-size:16px;color:var(--tx-hi)}
.zl-lista{display:flex;flex-direction:column;gap:12px;align-items:flex-start;margin-bottom:16px}
.zl-lista .info-box{margin:0;align-self:stretch}
/* Generátor zmlúv */
.gen-kat3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.gen-kat{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:18px;border:1px solid color-mix(in srgb,var(--t) 20%,rgba(var(--ink),.07));background:linear-gradient(180deg,rgba(var(--kar1),.9),rgba(var(--kar2),.92))}
.gen-kat:hover{border-color:color-mix(in srgb,var(--t) 50%,transparent)}
.gen-kat.on{border:1.5px solid var(--t);box-shadow:0 0 34px -8px color-mix(in srgb,var(--t) 60%,transparent)}
.gen-kat:focus-visible{outline:2px solid #fff;outline-offset:2px}
.gen-kat-e{font-size:28px}
.gen-zast{flex-wrap:wrap}
.gen-zast-a{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.gen-akt{border-color:color-mix(in srgb,var(--vl) 60%,transparent);box-shadow:0 0 30px -10px color-mix(in srgb,var(--vl) 70%,transparent)}
.gen-vypln{border-color:color-mix(in srgb,var(--vl) 50%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--vl) 20%,transparent),0 0 60px -20px color-mix(in srgb,var(--vl) 60%,transparent)}
.gen-zdr>.ff{position:relative}
.gen-zdr>.ff::after{content:'';position:absolute;left:50%;top:100%;width:3px;height:30px;margin-left:-1.5px;background:linear-gradient(var(--t),var(--vl));opacity:.7;pointer-events:none}
.gen-polia{position:relative;padding-top:12px;border-top:3px solid color-mix(in srgb,var(--t) 45%,transparent);box-shadow:0 -10px 20px -14px color-mix(in srgb,var(--t) 60%,transparent)}
.gen-polia .ff.pred .fi{border-color:rgba(74,222,128,.45);background:rgba(74,222,128,.06)}
/* Marketingové dokumenty */
.mk-siete{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.mk-siete>.kl-zila-h{top:26px;margin:0;left:10%;right:10%}
.mk-sc{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;min-width:0}
.mk-sc-ik{width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--c);box-shadow:0 0 18px color-mix(in srgb,var(--c) 50%,transparent);box-sizing:border-box}
.mk-sc-ik.mkt-ic svg{width:26px;height:26px}
.mk-sc:has(.fi:placeholder-shown) .mk-sc-ik{border-color:#33415c;box-shadow:none;filter:grayscale(.7)}
.mk-sc b{font-size:14px;color:var(--tx-hi)}
.mk-sc .fi{width:100%;font-size:12px}
.mk-tok{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.mk-tok>.kl-zila-h{top:15px;margin:0;left:15px;right:12%}
.mk-krok{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;min-width:0}
.mk-krok .fl,.mk-krok .ff{margin:0}
.mk-cis{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--t);color:var(--t);font-family:'Space Mono',monospace;font-size:12px;box-sizing:border-box;box-shadow:0 0 12px color-mix(in srgb,var(--t) 40%,transparent)}
.mk-vyber{display:flex;flex-wrap:wrap;gap:6px}
.mk-vyber .kl-uzol{min-height:38px;font-size:12px;padding:0 12px 0 10px}
.mk-vysl{padding:14px;border-radius:16px;border:1px solid color-mix(in srgb,var(--vl) 45%,transparent);background:color-mix(in srgb,var(--vl) 6%,transparent)}
.mk-post-t{font-size:14px;color:var(--mt);white-space:pre-line;max-height:66px;overflow:hidden}
@keyframes zlTokZ{from{top:-20px}to{top:100%}}
@media(max-width:1180px){.port-karta{grid-template-columns:minmax(0,1fr)}.port-akcie{flex-direction:row;align-items:center;justify-content:flex-start}}
@media(max-width:1100px){.zl-cisla5{grid-template-columns:repeat(3,minmax(0,1fr))}.zl-uzly4,.mk-tok{grid-template-columns:repeat(2,minmax(0,1fr))}.mk-siete{grid-template-columns:repeat(3,minmax(0,1fr))}.fin-fazy{grid-template-columns:repeat(3,minmax(0,1fr))}.zl-cisla5>.kl-zila-h,.zl-uzly4>.kl-zila-h,.mk-siete>.kl-zila-h,.mk-tok>.kl-zila-h,.fin-fazy>.kl-zila-h{display:none}}
@media(max-width:900px){.zl-statsy .sc::after{display:none}.zl-statsy{margin-bottom:18px}.gen-kat3{grid-template-columns:minmax(0,1fr)}.gen-zdr>.ff::after{display:none}}
@media(max-width:760px){.zl-kroky{grid-template-columns:minmax(0,1fr)}.zl-kroky>.kl-zila-h{display:none}.zl-krok{flex-direction:row;text-align:left}.zl-krok>span:not(.zl-krok-u){max-width:none}.zl-strom{grid-template-columns:minmax(0,1fr)}.zl-strom>.kl-kmen,.zl-pr::after,.zl-pr::before{display:none}.zl-pr.l,.zl-pr.r{grid-column:1}.fin-karta{grid-template-columns:minmax(0,1fr) auto}.fin-karta>.fin-spl{grid-column:1/-1;grid-row:2}}
@media(max-width:640px){.zl-zoz{padding-left:0}.zl-zast,.zl-mes{margin-left:0}.zl-zv{display:none}.zl-hub{margin-bottom:18px}.zl-cisla5,.zl-uzly4,.mk-tok,.mk-siete{grid-template-columns:minmax(0,1fr)}.zl-mu{justify-content:flex-start}.port-cisla{grid-template-columns:repeat(2,minmax(0,1fr))}.fin-fazy{grid-template-columns:repeat(2,minmax(0,1fr))}.fin-stlp{width:22px}.zl-graf{gap:6px}.zl-gl,.fin-vl{font-size:12px;overflow:hidden;text-overflow:ellipsis;max-width:100%}.zl-karta{grid-template-columns:minmax(0,1fr)}.zl-karta>.zl-akcie{justify-content:flex-start}.zl-dok{grid-template-columns:auto minmax(0,1fr)}.zl-dok>.zl-akcie{grid-column:1/-1}.zl-lev>.kl-kmen,.zl-lev-r::before{display:none}.zl-lev{padding-left:0}.zl-bar{grid-template-columns:var(--lw,44px) minmax(0,1fr) 80px}}
@media(prefers-reduced-motion:reduce){.zl-zv::after{animation:none;display:none}}
/* ══ Kartička prípadu „Mostík“ a kartička obchodu „Spis“ (Peter, 2026-10-21) ══
   Mostík: strany ako avatary spojené cez nehnuteľnosť, ľavý okraj = dni vo fáze,
   bodky fáz medzi ◀ ▶. Spis: šanón so záložkou mesiaca, zmluvy ako papierové
   listy s pečiatkou stavu podpisu, dole otvor na vloženie dokumentu. */
.op-most{display:flex;flex-direction:column;gap:8px;padding:14px 12px 12px 16px}
.op-most.mes{border-color:rgba(248,113,113,.55);box-shadow:0 0 0 1px rgba(248,113,113,.2),0 0 34px -12px rgba(248,113,113,.7)}
.op-dni{position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:4px;background:rgba(var(--ink),.06);overflow:hidden}
.op-dni i{position:absolute;left:0;bottom:0;width:100%;background:linear-gradient(var(--t),var(--vl));box-shadow:0 0 10px color-mix(in srgb,var(--t) 60%,transparent)}
.op-most.mes .op-dni i{background:linear-gradient(var(--rd),var(--am))}
.op-ag{position:absolute;right:10px;top:10px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:color-mix(in srgb,var(--vl) 70%,#fff);background:color-mix(in srgb,var(--vl) 18%,transparent);border:1px solid color-mix(in srgb,var(--vl) 60%,transparent)}
.op-most .kb-nazov{margin:0;padding-right:28px;font-size:14px;line-height:1.3}
.op-odz{display:flex;flex-wrap:wrap;gap:4px}
.op-odz .badge{font-size:12px;cursor:default}
.op-most-r{display:grid;grid-template-columns:auto minmax(8px,1fr) auto minmax(8px,1fr) auto;align-items:center}
.op-most-r>i{height:2px;background:linear-gradient(90deg,var(--t),var(--vl));opacity:.7}
.op-av{all:unset;box-sizing:border-box;cursor:pointer;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--na-t)}
.op-av.p{background:linear-gradient(135deg,var(--t),color-mix(in srgb,var(--t) 60%,#000))}
.op-av.k{background:linear-gradient(135deg,var(--vl),color-mix(in srgb,var(--vl) 60%,#000))}
.op-av-n{background:var(--hlb);border:1.5px solid color-mix(in srgb,var(--t) 50%,transparent);color:var(--t);font-size:16px}
.op-av-nic{cursor:default;background:transparent;border:1.5px dashed #475569;color:var(--m2)}
.op-av:focus-visible{outline:2px solid #fff;outline-offset:2px}
.op-most-m{display:flex;justify-content:space-between;gap:6px;font-size:12px;color:var(--mt);margin-top:-2px}
.op-most-m span{max-width:48%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.op-most-m span:last-child{text-align:right}
.op-nehn{font-size:12px;color:var(--m2)}
.op-cena{display:flex;align-items:baseline;justify-content:space-between;gap:6px;flex-wrap:wrap}
.op-cena b{font-size:18px;font-weight:700;color:var(--tx-hi)}
.op-prov{font-size:12px;padding:2px 8px;border-radius:999px;border:1px solid rgba(var(--ink),.12);color:var(--t);white-space:nowrap}
.op-fazy{display:flex;align-items:center;gap:6px}
.op-fazy .btn:disabled{opacity:.3;cursor:not-allowed}
.op-bodky{position:relative;flex:1;display:flex;justify-content:space-between;align-items:center}
.op-bodky::before{content:'';position:absolute;left:4px;right:4px;top:50%;height:2px;margin-top:-1px;background:color-mix(in srgb,var(--t) 25%,transparent)}
.op-bodky em{position:relative;width:8px;height:8px;border-radius:50%;background:#33415c}
.op-bodky em.ok{background:var(--t)}
.op-bodky em.on{width:12px;height:12px;background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--t) 45%,transparent),0 0 12px var(--t)}
.op-akcie{display:flex;justify-content:flex-end;gap:6px}
.ev-mes .kb-card{position:relative;margin-top:24px;border-radius:0 16px 16px 16px;padding:14px;display:flex;flex-direction:column;gap:10px}
.ev-zal{position:absolute;left:-1px;top:-24px;height:24px;padding:0 14px;border-radius:10px 10px 0 0;display:flex;align-items:center;font-size:12px;letter-spacing:.08em;color:var(--t);background:linear-gradient(180deg,#1b2744,#141d33);border:1px solid color-mix(in srgb,var(--t) 25%,transparent);border-bottom:0}
.ev-spis-h{display:flex;gap:6px;align-items:flex-start}
.ev-spis-h .kb-nazov{margin:0;font-size:16px;line-height:1.3}
.ev-strany{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--mt)}
.ev-strany .ev-nehn{color:var(--m2)}
.ev-cisla{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px 0;border-top:1px solid rgba(var(--ink),.07);border-bottom:1px solid rgba(var(--ink),.07)}
.ev-cisla span{display:flex;flex-direction:column;gap:2px;min-width:0;font-family:'Space Mono',monospace;font-size:14px;color:var(--tx-hi)}
.ev-cisla em{font-style:normal;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--m2)}
.ev-zarad{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:8px 10px;border-radius:12px;border:1px dashed rgba(251,191,36,.5);background:rgba(251,191,36,.05)}
.ev-zarad .mn{font-size:12px;color:var(--am)}
.ev-mes .kb-card .ev-sec-t{margin:0}
.ev-listy{display:flex;flex-direction:column}
.ev-listy .ev-doc{position:relative;margin-top:-4px;padding:10px 12px;border:0;border-radius:10px;background:linear-gradient(180deg,#f3efe4,#e8e2d2);color:#1d2433;box-shadow:0 6px 14px -8px rgba(0,0,0,.6)}
.ev-listy .ev-doc:first-child{margin-top:0}
.ev-listy .ev-doc-n{color:#1d2433;font-weight:600;padding-right:96px}
.ev-listy .ev-doc .mn{color:#5b6475!important}
.ev-listy .ev-doc .zml-vidi,.ev-listy .ev-doc .zml-vidi label{color:#3b4456}
.ev-listy .ev-doc .btn-s{background:#fff;color:#1d2433;border-color:#c9c1ad}
.ev-listy .ev-doc .btn-d{background:#fff;color:#b4233c;border-color:#e3b3bb}
.ev-pec{position:absolute;right:10px;top:8px;transform:rotate(-8deg);padding:1px 7px;border:2px solid #15803d;border-radius:6px;color:#15803d;background:rgba(255,255,255,.45);font-family:'Space Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.04em;white-space:nowrap;pointer-events:none}
.ev-pec-caka_makler,.ev-pec-caka_klient{border-color:#b45309;color:#b45309}
.ev-pec-nahradena{border-color:#64748b;color:#64748b}
.ev-pec-pripravena{border-color:#1d4ed8;color:#1d4ed8}
.ev-ziadne{font-size:12px;color:var(--m2);padding:4px 0}
.ev-otvor{display:flex;gap:6px;align-items:center;padding:8px;border-radius:12px;border:1.5px dashed color-mix(in srgb,var(--t) 40%,transparent);background:color-mix(in srgb,var(--t) 4%,transparent)}
.ev-otvor select{flex:1;min-width:0;min-height:34px;padding:4px 8px;font-size:12px}
.ev-otvor .btn{white-space:nowrap}
/* ══ Nastavenia ako žila (Peter, 2026-10-21) ═════════════════════════════════
   Rozvod s prepínačmi, pod ním kmeň so šiestimi skupinami (uzol + zhrnutie
   stavu z nsekSum). Otvorená skupina pustí lištu a panely visia v dvoch
   stĺpcoch; široké panely (tabuľky, značka, SMS) cez celú šírku. */
#pg-settings{background:radial-gradient(1000px 560px at 25% 0%,color-mix(in srgb,var(--t) 10%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 30%,color-mix(in srgb,var(--vl) 13%,transparent),transparent 62%)}
.ns-vsetky{display:flex;gap:8px}
.ns-prep{display:flex;flex-wrap:wrap;gap:14px 28px}
.ns-vz{border:0;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;min-width:0}
.ns-vz legend{display:flex;flex-direction:column;gap:2px;margin-bottom:6px;padding:0}
.ns-vz-sk{display:inline-grid;grid-template-columns:repeat(3,auto);gap:4px;padding:4px;border-radius:999px;border:1px solid var(--ln2);background:rgba(var(--ink),.04)}
.ns-vz-sk label{position:relative;cursor:pointer}
.ns-vz-sk input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.ns-vz-sk span{display:flex;align-items:center;min-height:36px;padding:0 14px;border-radius:999px;font-size:14px;font-weight:600;color:var(--mt)}
.ns-vz-sk input:checked+span{background:var(--t);color:var(--t-on)}
.ns-vz-sk input:focus-visible+span{outline:2px solid var(--t);outline-offset:2px}
.ns-sw{position:relative;display:flex;align-items:center;gap:12px;cursor:pointer;min-height:44px}
.ns-sw input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.ns-sw>i{position:relative;width:44px;height:26px;border-radius:999px;background:#1e293b;border:1px solid rgba(var(--ink),.14);flex:none;box-sizing:border-box}
.ns-sw>i::after{content:'';position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#94a3b8;transition:left .2s}
.ns-sw input:checked+i{background:color-mix(in srgb,var(--t) 22%,transparent);border-color:var(--t)}
.ns-sw input:checked+i::after{left:21px;background:var(--t);box-shadow:0 0 10px var(--t)}
.ns-sw input:focus-visible+i{outline:2px solid #fff;outline-offset:3px}
.ns-sw>span{display:flex;flex-direction:column;gap:2px}
.ns-sw b{font-size:14px;color:var(--tx-hi)}
.ns-zoz{position:relative;padding-left:56px;display:flex;flex-direction:column;gap:14px;margin-bottom:18px}
.ns-zoz>.kl-kmen{top:26px;bottom:26px}
.ns-zoz .nsekc{border:0;background:none;overflow:visible;margin:0;border-radius:0}
.ns-zoz .nsekc>summary.fsek{margin-left:-56px;display:grid;grid-template-columns:48px minmax(0,1fr) auto auto;gap:14px;align-items:center;min-height:56px;padding:4px 0;background:none;border:0;font-family:inherit;text-transform:none;letter-spacing:0;font-size:14px;color:var(--tx)}
.ns-zoz .nsekc>summary:hover{background:none}
.ns-zoz .nsekc>summary:hover .ns-t b{color:var(--t)}
.ns-zoz .nsekc>summary:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:14px}
.ns-zoz .nsekc[open]>summary{border-bottom:0}
.ns-u{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;background:var(--hlb);border:2px solid var(--c,var(--t));box-shadow:0 0 0 6px rgba(var(--ink),.03),0 0 22px color-mix(in srgb,var(--c,var(--t)) 40%,transparent);box-sizing:border-box}
.ns-zoz .nsekc:not([open]) .ns-u{border-color:#33415c;box-shadow:none}
.ns-t{display:flex;flex-direction:column;gap:4px;min-width:0}
.ns-t b{font-size:18px;font-weight:700;color:var(--tx-hi)}
.ns-t .fsek-pozn{font-size:12px;color:var(--m2)}
.ns-t .fsek-sum{margin-left:0;display:flex;flex-wrap:wrap;gap:6px;white-space:normal}
.ns-sum-ok{color:var(--gn);border-color:rgba(74,222,128,.4)}
.ns-sum-poz{color:var(--am);border-color:rgba(251,191,36,.45)}
.ns-sum-zle{color:var(--rd);border-color:rgba(248,113,113,.45)}
.ns-adm{font-family:'Space Mono',monospace;font-size:12px;letter-spacing:.06em;color:color-mix(in srgb,var(--vl) 70%,#fff);border:1px solid color-mix(in srgb,var(--vl) 45%,transparent);border-radius:999px;padding:2px 8px;white-space:nowrap}
.ns-zoz .nsek-b{position:relative;padding:22px 0 4px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}
.ns-zoz .nsek-b::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--c,var(--t)),color-mix(in srgb,var(--vl) 35%,transparent));box-shadow:0 0 12px color-mix(in srgb,var(--c,var(--t)) 45%,transparent)}
.ns-zoz .nsek-b::after{content:'';position:absolute;left:-33px;top:0;width:33px;height:3px;background:var(--c,var(--t));opacity:.8}
.ns-zoz .nsek-b>.g2{display:contents}
.ns-zoz .nsek-b .panel{margin:0!important;min-width:0}
.ns-zoz .nsek-b .panel:has(table),#usersPanel,#brandPanel,#contactPanel,#smsPanel,#ptNastPanel{grid-column:1/-1}
@media(max-width:900px){.ns-zoz .nsek-b{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.ns-zoz{padding-left:0}.ns-zoz .nsekc>summary.fsek{margin-left:0;grid-template-columns:40px minmax(0,1fr) auto}.ns-adm{display:none}.ns-u{width:40px;height:40px}.ns-zoz .nsek-b::after{display:none}}
@media(prefers-reduced-motion:reduce){.ns-sw>i::after{transition:none}}
/* ══ Formuláre Upraviť nehnuteľnosť a Upraviť klienta ako žila (Peter, 2026-10-21) ══
   Vľavo kmeň so sekciami: uzol zelený ✓ = hotová, jantárový = rozpracovaná,
   sivý = prázdna (pSekSum / cfZfStav); zbalená sekcia ukáže zhrnutie, otvorená
   poznámku. Vpravo bočný stĺpec (náhľad inzerátu / karta klienta, pripravenosť). */
.fz-lista{margin:0 0 14px}
.fz-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}
.fz-l{position:relative;padding-left:56px;display:flex;flex-direction:column;gap:12px;min-width:0}
.fz-l>.kl-kmen{top:26px;bottom:26px}
.fz-l>details.psekc,.fz-l>details.fsekc{--c:var(--t);border:0;background:none;overflow:visible;margin:0;border-radius:0}
.fz-l>details.fz-ok{--c:var(--gn)}.fz-l>details.fz-poz{--c:var(--am)}.fz-l>details.fz-nic{--c:#475569}
.fz-l>details>summary.fsek{margin-left:-56px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:54px;padding:2px 0;background:none;border:0;font-family:inherit;text-transform:none;letter-spacing:0;font-size:14px;color:var(--tx)}
.fz-l>details>summary.fsek:hover{background:none}
.fz-l>details>summary.fsek:hover .se-t b{color:var(--t)}
.fz-l>details>summary.fsek:focus-visible{outline:2px solid #fff;outline-offset:4px;border-radius:14px}
.fz-l>details[open]>summary.fsek{border-bottom:0}
.se-u{position:relative;z-index:1;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--hlb);border:2px solid var(--c);color:var(--c);font-family:'Space Mono',monospace;font-size:14px;font-weight:700;box-shadow:0 0 0 6px rgba(var(--ink),.03),0 0 18px color-mix(in srgb,var(--c) 40%,transparent);box-sizing:border-box}
.fz-nic .se-u{box-shadow:none}
.se-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.se-t b{font-size:16px;font-weight:700;color:var(--tx-hi)}
.se-t .se-sum,.se-t .fsek-sum{margin-left:0;font-size:12px;color:var(--mt);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:none;letter-spacing:0}
.se-t .fsek-pozn{font-size:12px;color:var(--m2)}
.fz-l>details:not([open]) .se-t .fsek-pozn{display:none}
.fz-l>details.psekc[open] .se-t .se-sum{display:none}
.fz-l>details>.fsek-b{position:relative;margin-top:8px;padding:16px 18px;border-radius:18px;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--c) 22%,rgba(var(--ink),.07))}
.fz-l>details>.fsek-b::before{content:'';position:absolute;left:-34px;top:26px;width:34px;height:3px;background:var(--c);opacity:.8;box-shadow:0 0 8px color-mix(in srgb,var(--c) 60%,transparent)}
/* ── Polia ako uzly na žilke (Peter 26. 10. 2026, návrh C „Uzol a žilka") ──
   Názov poľa bežným písmom (nie VEĽKÉ mono), povinné = *, „voliteľné", jednotka
   a krátka nápoveda ako jemné značky v riadku názvu (predtým v zátvorke).
   Pri každom poli uzol, ktorý farbí fzPoleStav (data-st): vyplnené / prázdne /
   povinné a chýba / chyba. Polia sú kapsuly; rámik ostáva .36 bielej
   (kontrast 3 : 1 z auditu 15. 10.), podklad je tmavší, takže kontrast rastie. */
/* Žilka ide od uzla dolu len po okraji vlastného poľa (pás padding-left) a do medzery
   pod ním, kde vybledne. Predtým jedna čiara cez celú výšku sekcie (Peter 28. 10.)
   prechádzala cez poznámky, zaškrtávačky a tlačidlá, ktoré uzol nemajú. */
.fz-l .ff[data-st]::after{content:'';position:absolute;left:10px;top:17px;bottom:-9px;width:2px;border-radius:2px;background:linear-gradient(color-mix(in srgb,var(--t) 50%,transparent),color-mix(in srgb,var(--vl) 30%,transparent) 70%,transparent);pointer-events:none;z-index:-1}
.fz-l .ff[data-st][style*="margin-bottom:0"]::after{bottom:0}
/* žilka pod poliami: vlastný kontext vrstiev, aby šla nad podkladom sekcie a pod uzlami */
.fz-l>details>.fsek-b{isolation:isolate}
.fz-l .ff[data-st]{position:relative;padding-left:30px}
.fz-l .ff[data-st]::before{content:'';position:absolute;left:4px;top:3px;width:14px;height:14px;border-radius:50%;box-sizing:border-box;background:var(--hlb);border:2px solid #475569;transition:background .2s,border-color .2s,box-shadow .2s}
.fz-l .ff[data-st=ok]::before{border-color:var(--t);background:var(--t);box-shadow:0 0 10px var(--t)}
.fz-l .ff[data-st=req]::before{border-color:var(--am);box-shadow:0 0 0 4px rgba(251,191,36,.15);animation:fzDych 2s ease-in-out infinite}
.fz-l .ff[data-st=chyba]::before{border-color:var(--rd);background:var(--rd);box-shadow:0 0 10px var(--rd)}
@keyframes fzDych{50%{box-shadow:0 0 0 7px rgba(251,191,36,.04)}}
.fz-l .fl.mn{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-family:inherit;font-size:14px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--tx);line-height:1.45}
.fz-l .ff[data-st=req]>.fl{color:var(--am)}
.fl-req{color:var(--t);font-weight:700}
.fz-l .ff[data-st=req] .fl-req{color:var(--am)}
.fl-vol,.fl-pozn{font-style:normal;font-weight:500;font-size:12px;color:var(--m2)}
.fl-jed{font-style:normal;font-family:'Space Mono',monospace;font-size:12px;font-weight:700;padding:1px 8px;border-radius:999px;color:var(--mt);background:color-mix(in srgb,var(--t) 8%,transparent);border:1px solid color-mix(in srgb,var(--t) 22%,transparent)}
.fz-l .ff input.fi:not([type=checkbox]):not([type=radio]):not([type=file]),.fz-l .ff select.fi{min-height:46px;border-radius:999px;padding:0 18px;background-color:var(--hlb);font-size:14px}
.fz-l .ff textarea.fi{border-radius:16px;padding:12px 16px;background-color:var(--hlb);font-size:14px;line-height:1.55}
.fz-l .ff .fi:focus{border-color:transparent;background:linear-gradient(var(--hlb),var(--hlb)) padding-box,linear-gradient(135deg,var(--t),var(--vl)) border-box;box-shadow:0 0 24px -6px color-mix(in srgb,var(--t) 60%,transparent)}
.fz-l .ff[data-st=req] .fi{border-style:dashed;border-color:rgba(251,191,36,.65)}
.fz-l .ff>.fn{font-family:inherit;font-size:12px;line-height:1.45;padding-left:18px;margin-top:4px}
/* Na telefóne polia pod sebou: dva stĺpce (inline grid sekcií) s uzlom nechali poľu ~130 px. */
@media(max-width:640px){.fz-l .ff[data-st]{padding-left:24px}
  .fz-l .fsek-b div[style*="grid-template-columns"],.fz-l .fsek-b .row2,.fz-l .fsek-b .row3{grid-template-columns:minmax(0,1fr)!important}
  .fz-l .fsek-b .ff{grid-column:1/-1!important}}
@media(prefers-reduced-motion:reduce){.fz-l .ff[data-st=req]::before{animation:none}}
.fz-r{position:sticky;top:0;display:flex;flex-direction:column;gap:14px;min-width:0}
.fz-r>.ff,.fz-nahlad,.fz-prip,.fz-karta,.fz-zml{margin:0;border-radius:20px;background:linear-gradient(180deg,rgba(var(--kar1),.88),rgba(var(--kar2),.9));border:1px solid color-mix(in srgb,var(--t) 18%,rgba(var(--ink),.07))}
.fz-r>.ff{padding:14px 16px}
.fz-nahlad{overflow:hidden}
.fz-nahlad-f{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,#3b5b7a,#6b4f8f 60%,#2a3550) center/cover no-repeat}
.fz-nahlad-f span{position:absolute;left:12px;bottom:12px;padding:3px 10px;border-radius:999px;background:var(--t);color:var(--na-t);font-size:12px;font-weight:700}
.fz-nahlad-b{padding:14px 16px;display:flex;flex-direction:column;gap:6px}
.fz-nahlad-b b{font-size:16px;color:var(--tx-hi);overflow-wrap:anywhere}
.fz-nahlad-b .fz-cena{font-size:22px;color:var(--t)}
.fz-prip{display:flex;gap:16px;align-items:center;padding:16px}
.fz-prsten{--p:0%;position:relative;width:88px;height:88px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;background:conic-gradient(var(--t) var(--p),rgba(var(--ink),.08) 0)}
.fz-prsten::after{content:'';position:absolute;inset:8px;border-radius:50%;background:var(--hlb)}
.fz-prsten b{position:relative;z-index:1;font-size:18px;font-weight:700;color:var(--tx-hi)}
.fz-prip-t{display:flex;flex-direction:column;gap:4px;min-width:0}
.fz-chyba{display:flex;gap:8px;align-items:flex-start;font-size:12px;color:var(--mt)}
.fz-chyba i{width:8px;height:8px;border-radius:50%;margin-top:5px;flex:none;background:#64748b}
.fz-chyba.ok i{background:var(--gn)}.fz-chyba.poz i{background:var(--am)}
.fz-karta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px 14px;align-items:center;padding:16px}
.fz-ava{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:var(--na-t);background:linear-gradient(135deg,var(--t),var(--vl));box-shadow:0 0 22px color-mix(in srgb,var(--t) 35%,transparent)}
.fz-karta-t{display:flex;flex-direction:column;gap:6px;min-width:0}
.fz-karta-t b{font-size:18px;color:var(--tx-hi);overflow-wrap:anywhere}
.fz-karta-k{grid-column:1/-1;overflow-wrap:anywhere}
.fz-zml{display:flex;flex-direction:column;gap:8px;padding:14px 16px}
.fz-zml .fsek-zml{font-size:12px;letter-spacing:0}
.fz-zml .cf-ziadost .btn{white-space:normal;text-align:left}
@media(max-width:1100px){.fz-grid{grid-template-columns:minmax(0,1fr)}.fz-r{position:static}}
@media(max-width:640px){#pOkolieRows>div{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}#pOkolieRows>div>input:first-child{grid-column:1/-1}.fz-l{padding-left:0}.fz-l>details>summary.fsek{margin-left:0;grid-template-columns:40px minmax(0,1fr) auto}.se-u{width:40px;height:40px}.fz-l>details>.fsek-b::before{display:none}.fz-l>details>.fsek-b{padding:14px 12px}}

/* ══ Svetlý vzhľad CRM — „Ranné sklo“ (Peter 28. 10. 2026, návrh C z plátna) ══
   Len vrstva farieb nad tým istým CRM: rozloženie, funkcie a postupy sú rovnaké.
   Zapína ho data-vzhlad="svetly" na <html> (Nastavenia → Vzhľad CRM; skript
   v hlavičke index.php). Premenné --ink / --hlb / --tx-hi / --kar1 / --kar2
   nahradili farby napevno — v tmavom režime majú pôvodné hodnoty.
   Farby značky kancelárie (--t-raw, --vl-raw) sú svetlé tóny pre tmavé
   pozadie; na svetlom sa do textu stmavia (color-mix), aby mali kontrast
   4,5 : 1 pri akejkoľvek palete kancelárie. */
html[data-vzhlad=svetly]{color-scheme:light;
  --v:#eef3fb;--d:#e8eef9;--s1:#ffffff;--s2:#f5f8fe;--s3:#e9eff9;
  --ln:rgba(15,23,42,.10);--ln2:rgba(15,23,42,.17);
  --t:color-mix(in oklab,var(--t-raw) 45%,#0b1530);--t-on:#ffffff;--tl:var(--t);
  --td:color-mix(in srgb,var(--t-raw) 24%,transparent);--tg:color-mix(in srgb,var(--t) 40%,transparent);
  --vl:color-mix(in oklab,var(--vl-raw) 50%,#1a0b33);--vd:color-mix(in srgb,var(--vl-raw) 24%,transparent);
  --rd:#dc2626;--am:#b45309;--gn:#15803d;
  --tx:#0f172a;--mt:#475569;--m2:#5b6678;--lbl:#475569;
  --glass:rgba(255,255,255,.62);--glass2:rgba(255,255,255,.5);
  --shadow-c:0 1px 0 rgba(255,255,255,.9) inset,0 18px 40px -22px rgba(76,29,149,.28);
  --head-bg:linear-gradient(90deg,rgba(56,189,248,.10),rgba(192,132,252,.08));
  --sh-1:0 1px 3px rgba(15,23,42,.10);--sh-2:0 8px 24px -12px rgba(15,23,42,.22);--sh-3:0 18px 44px -22px rgba(76,29,149,.3);
  --ink:15,23,42;--hlb:rgba(255,255,255,.85);--tx-hi:#0f172a;--kar1:255,255,255;--kar2:246,249,255;--na-t:#ffffff;--tx-am:#92400e;--tx-rd:#b91c1c;--tx-gn:#166534}
/* Kde prehliadač vie relatívne farby (oklch from …), stmaví sa značka so
   zachovaným odtieňom a vyššou sýtosťou — color-mix vyššie ju robil šedivou.
   Svetlosť 0,5 = biely text na výplni aj farebný text na bielom majú ≥ 4,5 : 1. */
@supports (color:oklch(from red l c h)){
  html[data-vzhlad=svetly]{--t:oklch(from var(--t-raw) min(l,.5) calc(c*1.5) h);--vl:oklch(from var(--vl-raw) min(l,.5) calc(c*1.3) h)}
}
/* Pastelové nebo namiesto nočnej oblohy */
html[data-vzhlad=svetly],html[data-vzhlad=svetly] body{background:
  radial-gradient(900px at 12% 4%,#cfeafd,transparent 60%),
  radial-gradient(800px at 92% 6%,#efe2ff,transparent 60%),
  radial-gradient(900px at 60% 100%,#fde2f1,transparent 62%),
  var(--v);background-attachment:fixed}
html[data-vzhlad=svetly] #lw{background:radial-gradient(800px at 25% 35%,#efe2ff,transparent 60%),radial-gradient(600px at 80% 70%,#cfeafd,transparent 60%),var(--v)}
html[data-vzhlad=svetly] .lb{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
/* Miesta, kde tmavá plocha alebo svetlý text nie sú v premenných (vyhľadané
   skriptom nad vykreslenými obrazovkami — dashboard, klienti, prípad, formuláre). */
html[data-vzhlad=svetly] .sb{background:rgba(255,255,255,.62);border-right:1px solid rgba(255,255,255,.9);box-shadow:8px 0 30px -24px rgba(76,29,149,.35)}
html[data-vzhlad=svetly] .pgal-btn{background:rgba(255,255,255,.85)}html[data-vzhlad=svetly] .pgal-btn:hover{background:#fff}
html[data-vzhlad=svetly] .cn-dup{background:#fffbeb;border-color:#f59e0b;color:#92400e}
html[data-vzhlad=svetly] .pz-chip.ok{color:#166534}html[data-vzhlad=svetly] .pz-chip.rd{color:#b91c1c}
html[data-vzhlad=svetly] .zl-krok b{border:1px solid var(--ln)}
html[data-vzhlad=svetly] .pz-prep[aria-checked="true"] span{background:#fff}
html[data-vzhlad=svetly] .zl-sc-pozor{background:linear-gradient(180deg,#fff1f2,#fff7f7)}
html[data-vzhlad=svetly] .mo-b.vh{background:radial-gradient(1100px 620px at 30% 0%,color-mix(in srgb,var(--t-raw) 22%,transparent),transparent 60%),radial-gradient(900px 640px at 100% 40%,color-mix(in srgb,var(--vl-raw) 24%,transparent),transparent 62%),#f4f7fd}
html[data-vzhlad=svetly] .vh-odo span{background:#fff;box-shadow:0 4px 8px -6px rgba(15,23,42,.35) inset}
html[data-vzhlad=svetly] .tsupport{background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 10px 30px -14px rgba(76,29,149,.35)}
html[data-vzhlad=svetly] .pz-nehn-foto{background-color:#eef3fb}
html[data-vzhlad=svetly] .srd-cas{background:radial-gradient(circle,#fff 58%,transparent 60%),conic-gradient(var(--t-raw),var(--vl-raw),var(--t-raw))!important;box-shadow:0 0 40px color-mix(in srgb,var(--t-raw) 55%,transparent)!important}
html[data-vzhlad=svetly] .srd-jadro .dash-hello p{color:var(--mt)}
html[data-vzhlad=svetly] .srd-jadro .dash-hello .warn{color:#92400e}
html[data-vzhlad=svetly] .zl-sc{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(246,249,255,.9))}
html[data-vzhlad=svetly] .ev-zal{background:linear-gradient(180deg,#fff,#f3f6fc)}
html[data-vzhlad=svetly] .ns-sw>i{background:#cbd5e1}html[data-vzhlad=svetly] .ns-sw>i::after{background:#fff;box-shadow:0 1px 3px rgba(15,23,42,.3)}
html[data-vzhlad=svetly] .fsek{color:var(--t)}
html[data-vzhlad=svetly] .sbn a.on{color:var(--tx);font-weight:600}
html[data-vzhlad=svetly] .sb-lbl{color:color-mix(in oklab,var(--gc,var(--t-raw)) 55%,#0b1530)}
html[data-vzhlad=svetly] .vh-stred b,html[data-vzhlad=svetly] .vh-tab.on,html[data-vzhlad=svetly] .vh-seg button.on,
html[data-vzhlad=svetly] .kl-uzol.on,html[data-vzhlad=svetly] .zl-src:has(input:checked){color:var(--tx-hi)}
html[data-vzhlad=svetly] .kb-h .badge{background:rgba(255,255,255,.85);border-color:var(--ln);color:var(--tx)}
html[data-vzhlad=svetly] .pz-chip.am{color:#92400e}
html[data-vzhlad=svetly] .pz-fazy li.hot{color:#166534}
html[data-vzhlad=svetly] .pz-podpisy li.ok{color:#166534}
html[data-vzhlad=svetly] .pz-podpisy li.am{color:#92400e}
html[data-vzhlad=svetly] .pz-novy-kroky li.hot{color:#166534}

/* Vodotlač loga kancelárie: logá do tmavého CRM mávajú tmavý podklad — na svetlom
   by bol vidieť sivý obdĺžnik. Negatív + multiply: tmavý podklad zbelie a zmizne,
   svetlá kresba loga ostane ako jemná tmavá vodotlač. */
html[data-vzhlad=svetly] .main::before{opacity:.07!important;filter:invert(1) grayscale(1);mix-blend-mode:multiply}
/* Rám polí: v tmavom biely .36 (kontrast 3 : 1 z auditu 15. 10.), na svetlom tmavý s rovnakým kontrastom. */
html[data-vzhlad=svetly] .fi{border-color:rgba(15,23,42,.32)}
html[data-vzhlad=svetly] .dg-hl-karta,html[data-vzhlad=svetly] .dg-bx .dg-sek{border-color:rgba(255,255,255,.95)}
html[data-vzhlad=svetly] .mnav{background:rgba(255,255,255,.9);color:var(--tx);border-color:var(--ln2)}
html[data-vzhlad=svetly] .fin-po{background:linear-gradient(180deg,#fff1f2,#fff7f7)}
/* Hlásenia: v tmavom stačí priesvitný farebný podklad, na svetlom by text splynul s obsahom pod ním. */
html[data-vzhlad=svetly] .toast{background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 30px -14px rgba(76,29,149,.35)}
html[data-vzhlad=svetly] .toast.s{border-color:rgba(21,128,61,.45)}html[data-vzhlad=svetly] .toast.e{border-color:rgba(220,38,38,.45)}
html[data-vzhlad=svetly] .toast.i{border-color:color-mix(in srgb,var(--t) 45%,transparent)}
