/* Accord e-žiadosti – štýly. Prvá časť je prevzatá z prototypu (docs/prototyp/head.html), fonty sú lokálne (@fontsource, bez CDN). */
@import url(/static/fonts/archivo-narrow/500.css);
@import url(/static/fonts/archivo-narrow/600.css);
@import url(/static/fonts/archivo-narrow/700.css);
@import url(/static/fonts/ibm-plex-mono/400.css);
@import url(/static/fonts/ibm-plex-mono/500.css);
@import url(/static/fonts/ibm-plex-mono/600.css);
@import url(/static/fonts/source-sans-3/400.css);
@import url(/static/fonts/source-sans-3/500.css);
@import url(/static/fonts/source-sans-3/600.css);
@import url(/static/fonts/source-sans-3/700.css);
body{margin:0}
[hidden]{display:none!important}
/* Layout: okolie aplikácie (karty 1 · 2 · 3, lišta dole) sa riadi témou; samotné tlačivá sú papier –
   biely list s čiernou tlačou ako formuláre EIC, hrebeňové políčka, údaje vpisované „modrým perom“. */
:root{
  /* okolie aplikácie */
  --bg:#e9ecf1; --surface:#ffffff; --sunk:#f4f6f9; --ink:#141a2b; --ink-2:#465066; --ink-3:#687288;
  --rule:#d3d9e3; --rule-2:#e4e8ef; --accent:#2442b4; --accent-2:#1b3394; --accent-soft:#e9edfb; --on-accent:#ffffff;
  --ok:#16764a; --ok-soft:#e1f3e9; --warn:#875300; --warn-soft:#fbf0d5; --err:#b3261e; --err-soft:#fdeceb;
  --shadow:rgba(20,26,43,.22);
  /* papier – rovnaký v svetlej aj tmavej téme */
  --p-paper:#ffffff; --p-ink:#141414; --p-ink-2:#4b4b4b; --p-pen:#1f3db0; --p-ro:#f0f0ec; --p-focus:#edf1ff;
  --p-err:#c0261c; --p-err-bg:#fdecea; --p-warn:#8a5600; --p-x-bg:#f4f6fb; --p-x-rule:#8f9bb8; --p-x-ink:#34436d;
  --f-label:"Archivo Narrow","Arial Narrow","Roboto Condensed",system-ui,sans-serif;
  --f-body:"Source Sans 3","Segoe UI",system-ui,-apple-system,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0e121c; --surface:#161c2a; --sunk:#121826; --ink:#e5e8f1; --ink-2:#adb5c8; --ink-3:#8a93a8;
    --rule:#2c3549; --rule-2:#232b3c; --accent:#97a9ff; --accent-2:#b6c3ff; --accent-soft:#1e2748; --on-accent:#0e121c;
    --ok:#62d39d; --ok-soft:#13301f; --warn:#f0c46b; --warn-soft:#352a10; --err:#ff8c82; --err-soft:#3c1715;
    --shadow:rgba(0,0,0,.6);
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#0e121c; --surface:#161c2a; --sunk:#121826; --ink:#e5e8f1; --ink-2:#adb5c8; --ink-3:#8a93a8;
  --rule:#2c3549; --rule-2:#232b3c; --accent:#97a9ff; --accent-2:#b6c3ff; --accent-soft:#1e2748; --on-accent:#0e121c;
  --ok:#62d39d; --ok-soft:#13301f; --warn:#f0c46b; --warn-soft:#352a10; --err:#ff8c82; --err-soft:#3c1715;
  --shadow:rgba(0,0,0,.6);
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:400 15px/1.5 var(--f-body);-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding-inline:clamp(16px,3vw,32px);padding-block:22px 40px}
h1,h2,h3,h4{margin:0;text-wrap:balance}
p{margin:0}
code{font-family:var(--f-mono);font-size:.92em}

/* ---------- okolie aplikácie ---------- */
.top{display:grid;gap:12px;margin-bottom:14px}
.top-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px}
.brand{min-width:0;max-width:70ch}
.eyebrow{font:600 12px/1 var(--f-label);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}
h1{font:700 clamp(28px,4vw,38px)/1.04 var(--f-label);color:var(--ink)}
.lede{margin-top:6px;color:var(--ink-2)}
.top-act{display:flex;flex-wrap:wrap;gap:8px}
.note{font-size:14px;line-height:1.45;padding:10px 12px;border-radius:6px;background:var(--accent-soft);color:var(--ink)}
.note.sample{border:1px dashed var(--accent)}
.note.warn{background:var(--warn-soft)}
.confirm{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;border:1px solid var(--warn);border-radius:6px;background:var(--warn-soft)}
.confirm p{flex:1 1 260px;font-weight:600}
.confirm-act{display:flex;gap:8px}
.tabs{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 18px;border-bottom:1px solid var(--rule)}
.tab{display:inline-flex;align-items:center;gap:9px;padding:10px 14px 11px;margin-bottom:-1px;border:1px solid transparent;border-bottom:0;border-radius:7px 7px 0 0;background:none;color:var(--ink-2);font:600 15px/1.2 var(--f-body);cursor:pointer}
.tab:hover{color:var(--ink)}
.tab[aria-selected="true"]{background:var(--surface);border-color:var(--rule);color:var(--ink)}
.tab .no{display:inline-grid;place-items:center;width:22px;height:22px;border:1.5px solid currentColor;border-radius:3px;font:600 12px/1 var(--f-mono)}
.tab .cnt{font-weight:500;color:var(--ink-3)}
.tab .st{font:600 12px/1 var(--f-mono);min-width:22px;height:22px;padding:0 6px;display:inline-grid;place-items:center;border-radius:11px}
.tab .st:empty{display:none}
.tab .st[data-st="bad"]{background:var(--err-soft);color:var(--err)}
.tab .st[data-st="ok"]{background:var(--ok-soft);color:var(--ok)}
.p-lead{margin:0 0 14px;color:var(--ink-2)}
.empty-card{padding:28px;border:1px dashed var(--rule);border-radius:8px;background:var(--surface);color:var(--ink-2);text-align:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:600 14.5px/1.1 var(--f-body);padding:10px 14px;min-height:40px;border-radius:5px;border:1px solid var(--rule);background:var(--surface);color:var(--ink);cursor:pointer;text-align:center}
.btn:hover:not(:disabled){border-color:var(--ink-3)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}
.btn.primary:hover:not(:disabled){background:var(--accent-2);border-color:var(--accent-2)}
.btn.ghost{background:transparent}
.btn.small{min-height:32px;padding:6px 10px;font-size:13.5px}
.btn:disabled{opacity:.45;cursor:not-allowed}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.bar{position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + 10px);z-index:5;display:flex;flex-wrap:wrap;align-items:center;gap:10px 10px;margin-top:22px;padding:10px 12px 10px 16px;background:var(--surface);border:1px solid var(--rule);border-radius:8px;box-shadow:0 8px 24px -10px var(--shadow)}
.bar-st{flex:1 1 200px;font-weight:600;color:var(--ink-2)}

/* ---------- papier ---------- */
.sheet{--cell:17px;position:relative;max-width:1000px;margin:0 auto;padding:34px 46px 38px 58px;color-scheme:light;
  background-color:var(--p-paper);color:var(--p-ink);font:500 12.5px/1.25 var(--f-label);
  background-image:linear-gradient(var(--p-ink),var(--p-ink)),linear-gradient(var(--p-ink),var(--p-ink)),linear-gradient(var(--p-ink),var(--p-ink)),linear-gradient(var(--p-ink),var(--p-ink));
  background-size:17px 17px;background-repeat:no-repeat;
  background-position:16px 16px,calc(100% - 16px) 16px,16px calc(100% - 16px),calc(100% - 16px) calc(100% - 16px);
  box-shadow:0 1px 3px var(--shadow),0 18px 40px -24px var(--shadow)}
.sheet+.sheet{margin-top:28px}
.s-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:0 4px 8px 26px;border-bottom:1.6px solid var(--p-ink);margin-bottom:10px}
.s-logo{display:grid;gap:3px;line-height:1;flex:none}
.s-logo b{font:700 23px/1 var(--f-label);letter-spacing:.16em;color:var(--p-ink)}
.s-logo span{font:600 9.5px/1 var(--f-label);letter-spacing:.34em;text-transform:uppercase;color:var(--p-ink-2)}
.s-title{font:700 clamp(19px,3.1vw,30px)/1 var(--f-label);text-transform:uppercase;text-align:right;color:var(--p-ink);padding-right:12px}
.s-top{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 16px;align-items:end;margin-bottom:4px}
.s-note{border:1.4px solid var(--p-ink);padding:4px 8px;font:500 10.5px/1.3 var(--f-label)}
.s-line{font:500 11.5px/1.3 var(--f-label);margin:2px 0 4px}
.s-line b{font-weight:700;text-transform:uppercase;font-size:12.5px}
.s-hint{font:500 11px/1.3 var(--f-label);color:var(--p-ink-2)}
.s-alert{margin:6px 0;padding:6px 10px;border:1.4px solid var(--p-warn);color:var(--p-warn);font:700 12px/1.3 var(--f-label)}
.s-foot{margin-top:16px;text-align:center;font:500 10.5px/1.3 var(--f-label);color:var(--p-ink-2)}
.blk{position:relative;border-top:1.4px solid var(--p-ink);padding-top:6px;margin-top:8px}
.rel{position:relative}
.side{position:absolute;top:8px;bottom:8px;left:-40px;width:18px;writing-mode:vertical-rl;transform:rotate(180deg);text-align:center;
  font:500 11px/18px var(--f-label);color:var(--p-ink-2);white-space:nowrap;overflow:hidden}
.side.r{left:auto;right:-40px;width:26px;white-space:normal;line-height:12px}
.bang{position:absolute;left:-48px;top:-8px;font:800 42px/1 var(--f-label);color:var(--p-ink)}
.row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:4px 16px;margin:6px 0}
.fl{display:flex;align-items:flex-end;gap:8px;min-width:0}
.fl.grow{flex:1 1 260px}
.fl.top{flex-direction:column;align-items:flex-start;gap:3px}
.lb{flex:none;width:var(--lw,auto);font:700 12.5px/1.05 var(--f-label);text-transform:uppercase;color:var(--p-ink);padding-bottom:5px}
.lb small{display:block;font:500 10.5px/1.15 var(--f-label);text-transform:none;color:var(--p-ink-2);margin-top:1px}
.fl.top .lb{padding-bottom:0}
.fi{display:flex;flex-direction:column;flex:1 1 auto;min-width:0}
.fl.top .fi,.fl:not(.grow) .fi{flex:0 1 auto}
.fi-row{display:flex;align-items:flex-end;gap:7px}
.unit{font:600 11.5px/1 var(--f-label);padding-bottom:7px;white-space:nowrap;text-transform:uppercase}
.cb{display:block;width:100%;min-width:0;height:28px;padding:6px 0 3px calc((var(--cell) - 1ch) / 2);margin:0;
  border:0;border-bottom:1.3px solid var(--p-ink);border-radius:0;background-color:transparent;
  background-image:linear-gradient(90deg,var(--p-ink) 1.3px,transparent 1.3px);background-size:var(--cell) 7px;background-position:0 100%;background-repeat:repeat-x;
  font:500 15px/19px var(--f-mono);letter-spacing:calc(var(--cell) - 1ch);color:var(--p-pen);white-space:pre;overflow:hidden;text-overflow:clip}
.cb.fix{width:calc(var(--n) * var(--cell) + 1.3px);flex:none}
.cb::placeholder{color:#b9b9b3}
.cb:focus{outline:none;background-color:var(--p-focus);box-shadow:inset 0 -2px 0 var(--p-pen)}
.cb.ro{color:var(--p-ink-2);background-color:var(--p-ro)}
.cb[aria-invalid="true"]{border-bottom-color:var(--p-err);background-color:var(--p-err-bg)}
.msg{font:600 11.5px/1.3 var(--f-body);color:var(--p-err);margin-top:2px;text-transform:none}
.msg.w{color:var(--p-warn)}
.msg:empty{display:none}
.ck{display:inline-flex;align-items:center;gap:7px;cursor:pointer;font:600 12px/1.15 var(--f-label);text-transform:uppercase;color:var(--p-ink);padding:2px 0}
.ck small{font:500 10.5px/1.15 var(--f-label);text-transform:none;color:var(--p-ink-2)}
.ck input,.ck i{appearance:none;-webkit-appearance:none;flex:none;width:15px;height:15px;margin:0;border:1.5px solid var(--p-ink);background:var(--p-paper);display:inline-grid;place-content:center;cursor:pointer}
.ck input[type=radio]{border-radius:50%}
.ck input::before,.ck i::before{content:"";width:9px;height:9px;transform:scale(0);background:var(--p-pen);clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0,43% 62%)}
.ck input[type=radio]::before{width:7px;height:7px;border-radius:50%;clip-path:none}
.ck input:checked::before,.ck i.on::before{transform:scale(1)}
.ck input:focus-visible{outline:2px solid var(--p-pen);outline-offset:2px}
.ck input[aria-invalid="true"]{border-color:var(--p-err);background:var(--p-err-bg)}
.ck.dck,.ck.dck i{cursor:default}
.ck.rev{flex-direction:row-reverse}
.gb{border:1.4px solid var(--p-ink);margin:0;padding:3px 10px 7px;min-width:0}
.gb>legend{font:700 12px/1.15 var(--f-label);text-transform:uppercase;padding:0 4px;margin-left:-6px;color:var(--p-ink)}
.gb>legend small{font:500 10.5px var(--f-label);text-transform:none;color:var(--p-ink-2)}
.opts{display:flex;flex-wrap:wrap;gap:3px 18px}
.opts.col{flex-direction:column;gap:3px}
.opts.g2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 12px}
.cond{display:grid;gap:4px;margin-top:4px}

/* časť 1 */
.r-ucty{align-items:flex-start}
.r-ucty>.lb{padding-top:8px}
.slots{display:flex;flex-wrap:wrap;gap:6px 18px;flex:1;min-width:0}
.slot{display:grid;gap:2px;align-content:start}
.slot-cb{display:flex;gap:3px}
.slot-name{font:600 10.5px/1.15 var(--f-label);color:var(--p-pen);min-height:12px}
.slot-name.muted{color:var(--p-ink-2);font-weight:500}
.k3{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);gap:6px 18px;margin:8px 0}
.kraj{display:grid;grid-template-columns:auto minmax(0,1fr);gap:2px 10px;align-items:start}
.kraj>.lb{padding-top:6px}
.kraj-l,.k3-c{display:grid;gap:5px;align-content:start}
.fl.sm .lb{--lw:112px;font-size:11.5px}
.fl.sm2 .lb{--lw:90px}
.r-pril{gap:5px 20px;align-items:center;border-top:1.4px solid var(--p-ink);padding-top:6px;margin-top:8px}
.r-pril>.lb{padding-bottom:0}
.disp+.disp{margin-top:8px;border-top:1px dashed #9a9a9a;padding-top:6px}
.tag{margin-left:10px;font:600 11px var(--f-label);text-transform:none;color:var(--p-warn)}
.s-bottom{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:10px 16px;margin-top:10px;border-top:1.4px solid var(--p-ink);padding-top:8px}
.vy{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:3px;font:500 10px/1.3 var(--f-label);text-transform:uppercase}
.vy li{display:grid;grid-template-columns:16px minmax(0,1fr)}
.vy b{font-weight:700}
.s-right{display:grid;gap:7px;align-content:start}
.gb2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:7px}
.podpisy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1.4px solid var(--p-ink)}
.podpisy.p3{grid-template-columns:repeat(3,minmax(0,1fr))}
.pod{min-height:76px;padding:4px 6px;display:flex;flex-direction:column;gap:6px;border:0 solid var(--p-ink)}
.podpisy:not(.p3) .pod:nth-child(odd){border-right-width:1.4px}
.podpisy:not(.p3) .pod:nth-child(-n+2){border-bottom-width:1.4px}
.podpisy.p3 .pod:not(:last-child){border-right-width:1.4px}
.pod span{font:600 10.5px/1.1 var(--f-label);text-transform:uppercase}
.pod em{margin:auto;font:italic 500 10.5px/1.2 var(--f-body);color:var(--p-ink-2);text-align:center}
.distr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;align-items:end}
.distr-l{display:grid;gap:4px}
.trh{display:grid;gap:2px;justify-items:end}
.trh>.lb{padding-bottom:2px}

/* časť 2 */
.ps{margin-top:4px}
.p2{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:10px 22px;margin:8px 0}
.p2.mt{margin-top:10px}
.p-h{font:700 17px/1.1 var(--f-label);text-transform:uppercase;margin:6px 0 4px;color:var(--p-ink)}
.p-h small{font:600 12px var(--f-label);text-transform:none}
.p-h3{font:700 12.5px/1.1 var(--f-label);text-transform:uppercase;text-decoration:underline;margin:6px 0 2px;color:var(--p-ink)}
.p-tr{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:6px 16px}
.p-foot{font:500 11px/1.3 var(--f-label);color:var(--p-ink-2);margin-top:2px}
.sum{font:600 11.5px/1 var(--f-mono)}
.sum[data-st="ok"]{color:#14703f}
.sum[data-st="bad"]{color:var(--p-err)}
.accf{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;border:1.4px solid var(--p-ink);padding:6px 8px;margin-bottom:6px}
.accf>.lb{padding-bottom:0}
.acc3{display:flex;gap:4px}
.tw{overflow-x:auto}
.pt{border-collapse:collapse;width:100%}
.pt th{font:700 11.5px/1.1 var(--f-label);text-transform:uppercase;text-align:left;padding:2px 8px 3px 0;white-space:nowrap;vertical-align:bottom;color:var(--p-ink)}
.pt th small{display:block;font:500 9.5px/1.1 var(--f-label);text-transform:none}
.pt td{padding:2px 8px 2px 0;vertical-align:bottom}
.pt td.rn{font:700 12px/28px var(--f-label);width:20px;text-align:right;padding-right:8px;vertical-align:top}
.pt .w-sym{min-width:130px}
.pt .calc,.pt .calc-h{font:500 11px/28px var(--f-mono);color:#7a7f8c;white-space:nowrap;text-transform:none;min-width:84px}
.pt .calc-h{font:500 10px/1 var(--f-mono)}
.pt.narrow{max-width:330px}
.pt.narrow2{max-width:420px}
.pt .sum-l{font:700 11px/1 var(--f-label);text-transform:uppercase;text-align:right;padding-right:10px}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 16px}
.stab{margin-top:10px;border-top:1.4px solid var(--p-ink);padding-top:6px}
.stab-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px}
.stab-h .p-h3{margin:0}
.stab-t th.yr{text-align:center;padding-right:8px;white-space:normal;width:60px;line-height:1}
.stab-t th.yr small{font-size:8.5px;line-height:1.05;margin-top:2px}
.stab-t .w-sym{min-width:110px}
.man{margin:10px 0}
.man-g{display:grid;grid-template-columns:20px minmax(0,1fr);gap:8px 10px;border:1.4px solid var(--p-ink);padding:8px 10px}
.vt{writing-mode:vertical-rl;transform:rotate(180deg);font:700 10.5px/1 var(--f-label);text-align:center;align-self:center}
.man-r{display:grid;gap:4px}
.mrow{display:grid;grid-template-columns:minmax(160px,250px) minmax(0,1fr);align-items:end;gap:10px}
.mrow>.ck{padding-bottom:6px}
.pay{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:6px 18px;border:1.4px solid var(--p-ink);padding:6px 10px 8px;margin-top:12px}
.pay h4{grid-column:1/-1;font:700 12px/1.1 var(--f-label);text-transform:uppercase;color:var(--p-ink)}
.pay dl{margin:0;display:grid;grid-template-columns:auto minmax(0,1fr);gap:1px 10px;font:700 11px/1.4 var(--f-label)}
.pay dd{margin:0;font:500 10.5px/1.45 var(--f-mono);overflow-wrap:anywhere}
.pay p{font:500 11px/1.35 var(--f-label)}
.pay p b{display:block;text-transform:uppercase;text-decoration:underline;font-size:12px;margin-bottom:4px}
.gb-vyp{margin-top:10px}
.vyp .ck{align-items:flex-start;font-size:11px;line-height:1.3}
.vyp .ck input{margin-top:1px}
.p-bottom{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10px 14px;margin-top:10px;align-items:end}
.nocsv{margin-top:4px;font:italic 500 11px/1.3 var(--f-body);color:#6b6f7a}
.off{opacity:.38;pointer-events:none}
.extra{margin-top:16px;border:1.4px dashed var(--p-x-rule);background:var(--p-x-bg);padding:8px 12px 10px;display:grid;gap:6px}
.x-h{font:700 11.5px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.04em;color:var(--p-x-ink)}
.x-h small{font:500 11px var(--f-label);text-transform:none;letter-spacing:0}
.gb-x{border-color:var(--p-x-rule);background:var(--p-paper)}
.x-row{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center}
.x-fixed{margin:2px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:6px 16px}
.x-fixed div{display:grid;gap:1px;align-content:start}
.x-fixed dt{font:700 10.5px/1.2 var(--f-label);text-transform:uppercase;color:var(--p-x-ink)}
.x-fixed dd{margin:0;font:500 12px/1.3 var(--f-label);color:var(--p-ink)}
.pt th.x-col{color:var(--p-x-ink);border-bottom:1.4px dashed var(--p-x-rule)}
.pt td.x-col{background:var(--p-x-bg);padding-left:6px}
.pbox{height:28px;border:1.3px solid var(--p-ink);border-radius:0;background:var(--p-paper);color:var(--p-pen);font:500 13px/1 var(--f-mono);padding:0 4px;min-width:100px}
.pbox[aria-invalid="true"]{border-color:var(--p-err);background:var(--p-err-bg)}
.x-more summary{cursor:pointer;font:700 11.5px/1.2 var(--f-label);text-transform:uppercase;color:var(--p-x-ink)}
.x-more summary small{font:500 11px var(--f-label);text-transform:none}
.x-more[open] summary{margin-bottom:4px}

/* ---------- výstup (časť 3) ---------- */
.out{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:20px clamp(16px,2.6vw,28px) 24px;min-width:0}
.out h2{font:700 23px/1.1 var(--f-label)}
.out-sum{display:grid;gap:10px;margin-top:10px}
.out-lead{font-size:17px}
.fmt{font-size:13.5px;color:var(--ink-2)}
.out-ctrl{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px}
.out-ctrl .f{display:grid;gap:5px;flex:1 1 300px;min-width:0}
.out-ctrl label{font:600 12.5px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2)}
.out select{font:400 15px/1.3 var(--f-body);color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:5px;padding:8px 10px;min-height:40px;width:100%}
.hint{font-size:13px;line-height:1.4;color:var(--ink-3)}
.files{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:10px}
.file{border:1px solid var(--rule);border-radius:6px;padding:12px 14px;background:var(--surface);min-width:0}
.file-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px}
.file-name{display:grid;gap:3px;min-width:0}
.file-name code{font-size:14px;font-weight:600;overflow-wrap:anywhere}
.meta{font-size:12.5px;color:var(--ink-3)}
.file-act{display:flex;align-items:center;gap:10px}
.fst{font-size:13px;color:var(--ink-3)}
.fst[data-st="ok"]{color:var(--ok);font-weight:600}
.fst[data-st="bad"]{color:var(--err)}
.prev{margin-top:8px}
.prev>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--accent)}
.raw{margin-top:10px}
.raw>summary{cursor:pointer;font-size:13.5px;color:var(--ink-2)}
pre{margin:8px 0 0;padding:10px 12px;background:var(--sunk);border:1px solid var(--rule-2);border-radius:5px;overflow-x:auto;font:12.5px/1.55 var(--f-mono);white-space:pre;color:var(--ink)}
.tbl-wrap{overflow-x:auto;margin-top:10px}
.tbl{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}
.tbl th{font:600 11.5px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);text-align:left;padding:6px 6px 8px;border-bottom:1px solid var(--rule);white-space:nowrap}
.tbl td{padding:4px 6px;border-bottom:1px solid var(--rule-2);vertical-align:top}
.tbl .c-idx{width:34px;color:var(--ink-3);font:500 13px/1.6 var(--f-mono)}
.tbl.wide th{font-family:var(--f-mono);text-transform:none;letter-spacing:0;font-size:12px}
.tbl.wide td{white-space:nowrap}
.val{font-size:13px;color:var(--ink)}
.muted{color:var(--ink-3)}
.errbox,.warnbox,.okbox{border-radius:6px;padding:12px 14px;display:grid;gap:8px;margin-top:12px}
.errbox{background:var(--err-soft);border:1px solid var(--err)}
.warnbox{background:var(--warn-soft);border:1px solid var(--warn)}
.okbox{background:var(--ok-soft);border:1px solid var(--ok);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.okbox p{font-weight:600}
.errbox h3,.warnbox h3{font:700 18px/1.2 var(--f-label)}
.iss{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.iss button{display:grid;gap:1px;width:100%;text-align:left;padding:6px 8px;border:0;border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;font:inherit}
.iss button:hover{background:var(--surface)}
.iss-where{font-size:12.5px;color:var(--ink-2)}
.iss-msg{font-weight:600}
.mail{margin-top:22px;border-top:1px solid var(--rule);padding-top:18px;display:grid;gap:14px}
.mail h3{font:700 20px/1.2 var(--f-label)}
.mlist{margin:0;display:grid;gap:8px}
.mrw{display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px;align-items:baseline}
.mrw dt{font:600 12.5px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}
.mrw dd{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.mrw dd code,.copyline code{font-size:14px;background:var(--sunk);border:1px solid var(--rule-2);border-radius:4px;padding:3px 7px;overflow-wrap:anywhere}
.mail-extra{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.mail-extra>div{border:1px solid var(--rule-2);border-radius:6px;padding:12px 14px;background:var(--sunk);display:grid;gap:6px;align-content:start}
.mail-extra h4{font:700 16px/1.2 var(--f-label)}
.copyline{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.src{display:inline-block;font:600 10.5px/1 var(--f-body);padding:3px 6px;border-radius:3px;margin-right:4px;white-space:nowrap;color:var(--ink)}
.src-z{background:var(--accent-soft)}
.src-p{background:var(--ok-soft)}
.src-d{background:var(--warn-soft)}
.src-a{background:var(--sunk);color:var(--ink-2);border:1px solid var(--rule)}
.src-cell{font-size:13px;color:var(--ink-2)}

/* úzke obrazovky: tlačivo sa poskladá do jedného stĺpca */
@media (max-width:820px){
  .sheet{padding:24px 16px 28px;background-image:none}
  .s-head{padding-left:0}
  .side,.bang,.vt{display:none}
  .fl:not(.top){flex-direction:column;align-items:stretch;gap:3px}
  .lb{width:auto!important}
  .s-top,.k3,.p2,.s-bottom,.p-bottom,.pay,.gb2,.distr,.kraj,.man-g,.mrow,.two{grid-template-columns:minmax(0,1fr)}
  .trh{justify-items:start}
  .podpisy.p3{grid-template-columns:minmax(0,1fr)}
  .podpisy.p3 .pod:not(:last-child){border-right-width:0;border-bottom-width:1.4px}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* ---------- doplnky aplikácie (fáza 1) ---------- */
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;padding:10px 0 12px;margin-bottom:12px;border-bottom:1px solid var(--rule)}
.nav-brand{font:700 17px/1 var(--f-label);letter-spacing:.14em;color:var(--ink);text-decoration:none}
.nav-brand small{display:block;margin-top:3px;font:600 9px/1 var(--f-label);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-3)}
.nav-links{display:flex;flex-wrap:wrap;gap:2px 4px;flex:1}
.nav-links a{padding:7px 10px;border-radius:5px;color:var(--ink-2);text-decoration:none;font-weight:600;font-size:14.5px}
.nav-links a:hover{background:var(--sunk);color:var(--ink)}
.nav-links a[aria-current="page"]{background:var(--accent-soft);color:var(--accent)}
.nav-user{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--ink-2)}
.nav-user form{margin:0}
.badge{display:inline-block;font:600 11px/1 var(--f-label);letter-spacing:.06em;text-transform:uppercase;padding:4px 7px;border-radius:3px;background:var(--sunk);color:var(--ink-2);border:1px solid var(--rule)}
.card{background:var(--surface);border:1px solid var(--rule);border-radius:8px;padding:22px clamp(16px,2.6vw,28px) 24px;min-width:0}
.card h2{font:700 22px/1.15 var(--f-label)}
.card+.card{margin-top:16px}
.narrow{max-width:460px;margin:40px auto 0}
.narrow .eyebrow{margin-bottom:4px}
.field{display:grid;gap:5px;margin-top:14px}
.field label{font:600 12.5px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2)}
.field>input,.field>select,.field>textarea{font:400 16px/1.3 var(--f-body);color:var(--ink);background:var(--surface);border:1px solid var(--rule);border-radius:5px;padding:9px 11px;min-height:42px;width:100%}
.field>input.code{font:600 26px/1 var(--f-mono);letter-spacing:.3em;text-align:center}
.field .hint{font-size:13px}
.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.alert{border-radius:6px;padding:11px 14px;margin-top:14px;font-size:14.5px}
.alert.err{background:var(--err-soft);border:1px solid var(--err);color:var(--ink)}
.alert.ok{background:var(--ok-soft);border:1px solid var(--ok)}
.alert.info{background:var(--accent-soft);border:1px solid var(--accent)}
.codes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;margin:12px 0;font:600 17px/1.5 var(--f-mono);letter-spacing:.06em}
.qr{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;margin-top:14px}
.qr svg{width:200px;height:200px;background:#fff;padding:8px;border:1px solid var(--rule);border-radius:6px}
.secret{font:600 15px/1.5 var(--f-mono);letter-spacing:.1em;overflow-wrap:anywhere;background:var(--sunk);padding:8px 10px;border-radius:5px;border:1px solid var(--rule-2)}
.list-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:14px}
.tbl a{color:var(--accent);font-weight:600;text-decoration:none}
.tbl a:hover{text-decoration:underline}
.tbl td.num{font-family:var(--f-mono);font-size:13.5px;white-space:nowrap}
.tbl td form{margin:0;display:inline}
.st-pill{display:inline-block;font:600 12px/1 var(--f-label);letter-spacing:.04em;text-transform:uppercase;padding:5px 8px;border-radius:11px;background:var(--sunk);color:var(--ink-2)}
.st-pill[data-stav="rozpracovana"]{background:var(--accent-soft);color:var(--accent)}
.st-pill[data-stav="na_podpis"],.st-pill[data-stav="na_kontrole"]{background:var(--warn-soft);color:var(--warn)}
.st-pill[data-stav="podpisana"],.st-pill[data-stav="odoslana"],.st-pill[data-stav="prijata"]{background:var(--ok-soft);color:var(--ok)}
.st-pill[data-stav="chyba"],.st-pill[data-stav="nepodpisana"],.st-pill[data-stav="zrusena"]{background:var(--err-soft);color:var(--err)}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;margin:0;font-size:14px}
.kv dt{color:var(--ink-3);font-weight:600}
.kv dd{margin:0;overflow-wrap:anywhere}
.save-st{font-size:13px;color:var(--ink-3);min-width:9ch}
.save-st[data-st="ok"]{color:var(--ok)}
.save-st[data-st="bad"]{color:var(--err);font-weight:600}
.lenucet{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;margin:0 0 10px;padding:8px 12px;border:1.4px dashed var(--p-warn);background:#fffaf0;color:var(--p-ink)}
.lenucet .ck{text-transform:none;font-size:12.5px}
.lenucet-note{font:500 11.5px/1.3 var(--f-label);color:var(--p-warn)}
.lenucet-off{opacity:.35;pointer-events:none;user-select:none}
.stage{display:grid;gap:10px;margin-top:14px}
.stage li{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;align-items:start;font-size:14.5px}
.stage .no{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--sunk);border:1px solid var(--rule);font:600 12px/1 var(--f-mono);color:var(--ink-2)}
.stage li[data-ok="1"] .no{background:var(--ok-soft);border-color:var(--ok);color:var(--ok)}
.stage li[data-ok="0"] .no{background:var(--err-soft);border-color:var(--err);color:var(--err)}
.muted-row{color:var(--ink-3)}
/* ---------- prílohy a overenie totožnosti (karta 3) ---------- */
.out+.out{margin-top:16px}
.prilohy h3{font:700 17px/1.2 var(--f-label);margin-top:18px}
.pril-list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
.pril{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-start;border:1px solid var(--rule);border-left:4px solid var(--err);border-radius:6px;padding:12px 14px;background:var(--surface)}
.pril[data-ok="1"]{border-left-color:var(--ok)}
.pril-main{flex:1 1 280px;min-width:0;display:grid;gap:6px}
.pril-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px}
.pril-act{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pril-msg{font-size:13px;color:var(--ink-3)}
.pril-msg.bad{color:var(--err);font-weight:600}
.pril-msg:empty{display:none}
.pril-prev{flex:0 0 auto;max-width:200px;max-height:130px;border:1px solid var(--rule);border-radius:4px;object-fit:contain;background:var(--sunk)}
.file-btn{position:relative;overflow:hidden}
.file-btn input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.file-btn input:disabled{cursor:progress}
.pril-ident{margin-top:6px}
.pril-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px;margin-top:4px}
.pril-dates .field{margin-top:0}
.chk{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:14.5px;line-height:1.45;cursor:pointer}
.chk input{flex:none;width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent)}
.chk+.hint{margin-top:8px}
.dev-note{margin-top:16px;font-size:13px;color:var(--ink-3)}
.inline-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:10px;align-items:end}
.inline-form .field{margin-top:0}
.pre-wrap{white-space:pre-wrap;overflow-wrap:anywhere}
/* ---------- verzia na podpis (karta 3, fáza 2 časť 2) ---------- */
.pripr{display:grid;gap:14px;margin-top:14px}
.pripr-g h4{font:700 13px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin-bottom:6px}
.stage.compact{gap:6px;margin-top:0}
.stage.compact li{font-size:14px}
.verzie{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}
.verzia{border:1px solid var(--rule);border-left:4px solid var(--rule);border-radius:6px;padding:12px 14px;background:var(--surface);display:grid;gap:6px}
.verzia[data-st="aktualna"]{border-left-color:var(--ok)}
.verzia-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 12px}
.hash{font-size:12px;overflow-wrap:anywhere}
.podpis h3{font:700 17px/1.2 var(--f-label);margin-top:18px}
.podpis .sub-h{font:700 13px/1.2 var(--f-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);margin:16px 0 4px}
.podpis .files{margin-top:8px}
.podpis .meta code{font-size:12.5px}
.ck i.rd{border-radius:50%}
.ck i.rd::before{width:7px;height:7px;border-radius:50%;clip-path:none}
/* ---------- podpis SMS kódom (karta 3 a stránka podpisu, fáza 2 časť 3) ---------- */
.podpisy-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}
.podpisujuci{border:1px solid var(--rule);border-left:4px solid var(--rule);border-radius:6px;padding:12px 14px;background:var(--surface);display:grid;gap:6px}
.podpisujuci[data-st="podpisane"]{border-left-color:var(--ok)}
.podpisujuci[data-st="caka"]{border-left-color:var(--warn)}
.podpisujuci[data-st="odmietnute"],.podpisujuci[data-st="vyprsane"],.podpisujuci[data-st="zablokovane"]{border-left-color:var(--err)}
.podpisujuci .fst[data-st="warn"]{color:var(--warn);font-weight:600}
.podpis-str .lede b{color:var(--ink)}
.podpis-str .actions .hint{flex:1 1 160px}
.odmietnutie{margin-top:22px;border-top:1px solid var(--rule);padding-top:12px}
.odmietnutie summary{cursor:pointer;font-size:14px;color:var(--ink-2)}
.odmietnutie .field{margin-top:10px}
/* kontrola po odoslaní (fáza 3, časť 2): formulár dôvodu zrušenia v hlavičke žiadosti a v „Odoslané dnes“ */
.zrus-form{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}
.zrus-form select{font:inherit;font-size:13.5px;padding:7px 8px;border:1px solid var(--rule);border-radius:6px;background:var(--surface);color:var(--ink);max-width:260px}
.row-act{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}
.tbl td .meta{font-size:12.5px;color:var(--ink-2);line-height:1.4}
.wrap.wide{max-width:1360px}
/* prehľad kontroly: účty sa môžu zalomiť, stĺpec akcií má pevnú šírku, aby tabuľka nepretekala */
.tbl td.ucty{font-family:var(--f-mono);font-size:13px;white-space:normal;word-break:break-all;max-width:220px}
.tbl th.akcie,.tbl td.akcie{min-width:240px;max-width:380px}
.tbl td.akcie .meta{white-space:normal}
/* fáza 3, časť 3: zásah človeka (nedoručené „nespracovat“, opakované odoslanie zo stavu chyba) a výmaz po lehote */
.zasah{margin-top:12px;padding:11px 14px;border-radius:6px;background:var(--err-soft);border:1px solid var(--err);font-size:14px;line-height:1.45}
.zasah .row-act{margin-top:8px}
.tbl td .zasah{margin-top:6px;font-size:13px}
.st-pill.zasah-pill{background:var(--err);color:#fff}
.card.card-err{border:1px solid var(--err)}
.tbl .bad{color:var(--err)}
