/* ============================================================
   Párování skladových faktur na příjemky (modul stock-invoice-matching).
   Pracovní plocha přes celé okno nad kontrolou dokladu (SPEC §9.2–9.5).
   Jen tokeny z tokens.css — světlý i tmavý režim bez vlastních barev.
   Vše scopované pod [data-ui="v2"] .v2-sm-*; žádné !important.
   ============================================================ */

/* ---------- vstupní tlačítko v revizi FP ---------- */
[data-ui="v2"] .v2-sm-entry { white-space: nowrap; }
[data-ui="v2"] .v2-sm-svgico { width: 18px; height: 18px; flex: none; }
[data-ui="v2"] .v2-sm-entry .v2-sm-svgico { width: 17px; height: 17px; }

/* ---------- vrstva ---------- */
[data-ui="v2"] body.v2-sm-open { overflow: hidden; }
[data-ui="v2"] .v2-sm-layer {
  position: fixed; inset: 0; z-index: 70;
  display: flex; flex-direction: column; min-width: 0;
  background: var(--bg); color: var(--ink);
}
[data-ui="v2"] .v2-sm-layer :focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-layer h1,
[data-ui="v2"] .v2-sm-layer h2,
[data-ui="v2"] .v2-sm-layer h3,
[data-ui="v2"] .v2-sm-layer p,
[data-ui="v2"] .v2-sm-layer dl,
[data-ui="v2"] .v2-sm-layer dd,
[data-ui="v2"] .v2-sm-layer ul,
[data-ui="v2"] .v2-sm-layer ol { margin: 0; }
[data-ui="v2"] .v2-sm-layer ul,
[data-ui="v2"] .v2-sm-layer ol { padding: 0; list-style: none; }
[data-ui="v2"] .v2-sm-layer h2 { font: 700 15px/1.3 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-layer h3 { font: 600 14px/1.35 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-layer .t-meta { color: var(--ink-2); font-size: 12.5px; }
[data-ui="v2"] .v2-sm-num { font-variant-numeric: tabular-nums; white-space: nowrap; }

/* ---------- horní lišta ---------- */
[data-ui="v2"] .v2-sm-bar {
  position: relative;
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3) var(--sp-5);
  padding: var(--sp-4) var(--sp-7);
  border-bottom: 1px solid var(--line); background: var(--surface); box-shadow: var(--shadow);
}
[data-ui="v2"] .v2-sm-bartitle { display: flex; flex-direction: column; min-width: 0; flex: 1 1 260px; }
[data-ui="v2"] .v2-sm-bartitle h1 {
  font: 700 17px/1.3 var(--font-sans); color: var(--ink);
  overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-bartitle h1:focus { outline: none; }
[data-ui="v2"] .v2-sm-bartitle h1:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-barstatus { display: inline-flex; }
/* UX kolo 8: přímý návrat do Fronty vedle „Zpět na kontrolu dokladu“ (vedlejší, tlumené). */
[data-ui="v2"] .v2-sm-qback { margin-left: calc(-1 * var(--sp-2)); }
/* UX kolo 6 (K6-04): „Pracuji…“ je štítek na spodní hraně lišty – mimo tok, lišta ani obsah
   pod ní se během akce nezvednou ani nespadnou. */
[data-ui="v2"] .v2-sm-busy {
  position: absolute; left: 50%; bottom: 0; transform: translate(-50%, 50%); z-index: 2;
  display: inline-flex; align-items: center; gap: var(--sp-2); padding: 2px var(--sp-3);
  border: 1px solid var(--line); border-radius: 999px; background: var(--surface); box-shadow: var(--shadow);
  color: var(--info); font: 600 13px/1.3 var(--font-sans); white-space: nowrap; pointer-events: none;
}
[data-ui="v2"] .v2-sm-baracts { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-left: auto; }
/* UX kolo 7 (Viktor 1): tlačítko, které právě pracuje – točící se ikona a text akce. */
[data-ui="v2"] .v2-sm-layer .v2-btn.is-busy { cursor: progress; opacity: 1; }
[data-ui="v2"] .v2-sm-layer .v2-btn.is-busy .icon { font-size: 18px; }

/* ---------- posuvná plocha ---------- */
[data-ui="v2"] .v2-sm-scroll {
  flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden;
  display: flex; flex-direction: column; gap: var(--sp-6);
  padding: var(--sp-6) var(--sp-7) var(--sp-10);
}
/* Krátká oznámení patří do společného zásobníku dole uprostřed viewportu. */
[data-ui="v2"] .v2-sm-toast {
  overflow: hidden; border: 1px solid var(--line); border-radius: 12px; background: var(--surface);
  color: var(--ink); box-shadow: var(--shadow-pop); pointer-events: auto;
}
[data-ui="v2"] .v2-sm-toast-body { display: flex; align-items: flex-start; gap: 10px; padding: 13px 12px; font-size: 13px; line-height: 1.45; }
[data-ui="v2"] .v2-sm-toast-body > .icon { flex: none; color: var(--ok); font-size: 18px; }
[data-ui="v2"] .v2-sm-toast.tone-warn .v2-sm-toast-body > .icon { color: var(--warn); }
[data-ui="v2"] .v2-sm-toast.tone-info .v2-sm-toast-body > .icon { color: var(--info); }
[data-ui="v2"] .v2-sm-toast.tone-bad { border-color: var(--bad); }
[data-ui="v2"] .v2-sm-toast.tone-bad .v2-sm-toast-body > .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-toast-body > span:not(.icon) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-toast-body button { flex: none; border: 0; border-radius: 6px; background: none; color: var(--ink-2); cursor: pointer; }
[data-ui="v2"] .v2-sm-toast-body button:hover { background: var(--surface-2); }
[data-ui="v2"] .v2-sm-toast-progress { height: 3px; background: var(--accent); transform-origin: left; animation: v2-sm-toast-drain var(--sm-toast-ms) linear forwards; }
[data-ui="v2"] .v2-sm-toast.tone-warn .v2-sm-toast-progress { background: var(--warn); }
[data-ui="v2"] .v2-sm-toast.tone-bad .v2-sm-toast-progress { background: var(--bad); }
@keyframes v2-sm-toast-drain { to { transform: scaleX(0); } }
[data-ui="v2"] .v2-sm-layer .v2-note p { display: flex; align-items: flex-start; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-layer .v2-note p + p { margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-layer .v2-note p > span:not(.icon) { flex: 1 1 auto; min-width: 0; }
[data-ui="v2"] .v2-sm-layer .v2-note .icon { font-size: 18px; }
[data-ui="v2"] .v2-sm-layer .v2-empty .v2-sm-svgico { width: 26px; height: 26px; color: var(--ink-3); }
/* Ikona v tlačítku prázdného stavu nemá převzít velkou šedou ikonu .v2-empty. */
[data-ui="v2"] .v2-sm-layer .v2-empty .v2-btn .icon { font-size: 18px; color: inherit; }

/* ---------- odznaky (barva + ikona + text) ---------- */
[data-ui="v2"] .v2-sm-badge { max-width: 100%; white-space: normal; }
[data-ui="v2"] .v2-sm-badge .v2-sm-svgico { width: 15px; height: 15px; }
[data-ui="v2"] .v2-sm-badge.v2-sm-ai { border: 1px dashed currentColor; }
[data-ui="v2"] .v2-sm-chip {
  display: inline-flex; align-items: center; gap: var(--sp-1);
  padding: 2px 8px; border: 1px solid var(--line); border-radius: var(--r-sm);
  background: var(--surface-2); color: var(--ink-2); font-size: 12px; line-height: 1.4;
}

/* ---------- souhrn ---------- */
[data-ui="v2"] .v2-sm-summary { padding: var(--sp-6) var(--sp-7); display: flex; flex-direction: column; gap: var(--sp-4); }
[data-ui="v2"] .v2-sm-kvs {
  display: grid; gap: var(--sp-4) var(--sp-6);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr));
}
[data-ui="v2"] .v2-sm-kv { min-width: 0; }
[data-ui="v2"] .v2-sm-kv dt { font-size: 12px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-kv dd { font: 600 14px/1.4 var(--font-sans); color: var(--ink); overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-statushint { color: var(--ink-2); font-size: 13px; }
[data-ui="v2"] .v2-sm-reasons ul { list-style: disc; padding-left: var(--sp-7); }
[data-ui="v2"] .v2-sm-secacts { display: flex; flex-wrap: wrap; gap: var(--sp-3); }

/* ---------- tři sloupce: originál | řádky faktury | příjemky ---------- */
[data-ui="v2"] .v2-sm-grid {
  display: grid; gap: var(--sp-6); align-items: start;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.4fr) minmax(0, 1.1fr);
}
[data-ui="v2"] .v2-sm-linespane,
[data-ui="v2"] .v2-sm-receiptspane { padding: var(--sp-6); display: flex; flex-direction: column; gap: var(--sp-5); min-width: 0; }
[data-ui="v2"] .v2-sm-panehead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-preview {
  position: sticky; top: 0; display: flex; flex-direction: column; min-width: 0;
  height: calc(100vh - 150px); min-height: 360px;
}
[data-ui="v2"] .v2-sm-preview > .v2-sm-panehead { padding: var(--sp-4) var(--sp-5); border-bottom: 1px solid var(--line); }
[data-ui="v2"] .v2-sm-prevacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-prevbody { flex: 1 1 auto; min-height: 0; background: var(--surface-2); }
[data-ui="v2"] .v2-sm-frame { display: block; width: 100%; height: 100%; border: 0; background: var(--surface); }
/* Skrytý originál: pruh přes celou šířku, řádky a příjemky dostanou prostor. */
[data-ui="v2"] .v2-sm-noprev .v2-sm-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1.1fr); }
[data-ui="v2"] .v2-sm-noprev .v2-sm-preview { grid-column: 1 / -1; position: static; height: auto; min-height: 0; }
[data-ui="v2"] .v2-sm-noprev .v2-sm-prevbody { display: none; }
[data-ui="v2"] .v2-sm-noprev .v2-sm-preview > .v2-sm-panehead { border-bottom: 0; }

/* ---------- řádek faktury ---------- */
[data-ui="v2"] .v2-sm-lines { display: flex; flex-direction: column; gap: var(--sp-4); }
[data-ui="v2"] .v2-sm-line {
  display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0;
  padding: var(--sp-5); border: 1px solid var(--line); border-left: 4px solid var(--line-2);
  border-radius: var(--r-lg); background: var(--surface);
}
[data-ui="v2"] .v2-sm-line.tone-ok { border-left-color: var(--ok); }
[data-ui="v2"] .v2-sm-line.tone-warn { border-left-color: var(--warn); }
[data-ui="v2"] .v2-sm-line.tone-bad { border-left-color: var(--bad); }
[data-ui="v2"] .v2-sm-line.tone-mut { border-left-color: var(--ink-3); }
[data-ui="v2"] .v2-sm-line.is-focus { box-shadow: 0 0 0 2px var(--info); }
[data-ui="v2"] .v2-sm-linehead { display: flex; flex-wrap: wrap; align-items: flex-start; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-lineno {
  flex: none; display: grid; place-items: center; width: 24px; height: 24px;
  border-radius: var(--r-sm); background: var(--surface-2); color: var(--ink-2); font: 600 12px/1 var(--font-sans);
}
[data-ui="v2"] .v2-sm-linehead h3 { flex: 1 1 200px; min-width: 0; }
[data-ui="v2"] .v2-sm-linefocus {
  padding: 0; border: 0; background: none; color: var(--ink); cursor: pointer; text-align: left;
  font: 600 14px/1.35 var(--font-sans); overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-linefocus:hover { color: var(--info); text-decoration: underline; }
[data-ui="v2"] .v2-sm-linebadges { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-facts {
  display: grid; gap: var(--sp-2) var(--sp-5);
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 112px), 1fr));
}
[data-ui="v2"] .v2-sm-facts > div { min-width: 0; }
[data-ui="v2"] .v2-sm-facts dt { font-size: 11.5px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-facts dd { font-size: 13px; color: var(--ink); overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-facts-3 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 130px), 1fr)); }
/* K7-03: hlavní číslo příjemky = kolik zbude po založení. */
[data-ui="v2"] .v2-sm-facts .v2-sm-factmain dd b { font-size: 14px; }
/* K3-01: vedlejší pořizovací náklady PR (doprava) – mimo hodnotu zboží. */
[data-ui="v2"] .v2-sm-vpnnote { display: flex; align-items: flex-start; gap: var(--sp-2); margin: var(--sp-2) 0 0; }
[data-ui="v2"] .v2-sm-vpnnote .v2-sm-svgico { flex: none; width: 16px; height: 16px; margin-top: 1px; }
[data-ui="v2"] .v2-sm-kind { display: flex; flex-direction: column; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-kind.is-static { display: block; }
[data-ui="v2"] .v2-sm-kindrow { display: flex; flex-wrap: wrap; gap: var(--sp-2); align-items: center; }
[data-ui="v2"] .v2-sm-kindrow .v2-input { flex: 1 1 200px; width: auto; min-height: 32px; }
[data-ui="v2"] .v2-sm-allocs { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-alloc {
  display: flex; flex-direction: column; gap: var(--sp-2);
  padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-alloc.is-proposal { border-style: dashed; border-color: var(--warn); }
[data-ui="v2"] .v2-sm-alloc-head { display: flex; align-items: flex-start; gap: var(--sp-2); min-width: 0; }
[data-ui="v2"] .v2-sm-alloc-main { display: flex; flex: 1 1 auto; flex-wrap: wrap; justify-content: space-between; gap: var(--sp-2); min-width: 0; }
[data-ui="v2"] .v2-sm-alloc-unlink { flex: none; margin-left: auto; white-space: nowrap; }
[data-ui="v2"] .v2-sm-alloc-unlink .icon { font-size: 18px; color: var(--bad); }
[data-ui="v2"] .v2-sm-alloc-unlink.danger { border-color: var(--bad); background: var(--bad-soft); color: var(--bad); }
[data-ui="v2"] .v2-sm-alloc-confirm { border-color: var(--ok); background: var(--ok-soft); color: var(--ok); }
[data-ui="v2"] .v2-sm-alloc-date { color: var(--ink-2); font-size: 12px; white-space: nowrap; }
[data-ui="v2"] .v2-sm-alloc-score { flex: none; padding: 3px 6px; border-radius: 7px; font-weight: 700; font-size: 11.5px; white-space: nowrap; }
[data-ui="v2"] .v2-sm-alloc-score.tone-high { background: var(--ok-soft); color: var(--ok); }
[data-ui="v2"] .v2-sm-alloc-score.tone-medium { background: var(--warn-soft); color: var(--warn); }
[data-ui="v2"] .v2-sm-alloc-score.tone-low { background: var(--bad-soft); color: var(--bad); }
[data-ui="v2"] .v2-sm-remaining { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin: 0; padding: 7px 10px; border-radius: 8px; background: var(--accent-soft); color: var(--accent-text); font-size: 12px; }
[data-ui="v2"] .v2-sm-remaining b { white-space: nowrap; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-paired-tip { position: relative; display: inline-flex; cursor: help; }
[data-ui="v2"] .v2-sm-paired-tip:focus-visible { outline: 2px solid var(--accent); border-radius: 9px; }
[data-ui="v2"] .v2-sm-paired-pop { position: absolute; z-index: 30; top: calc(100% + 7px); right: 0; display: none; flex-direction: column; gap: 6px; width: max-content; max-width: min(340px, 80vw); padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface); box-shadow: var(--shadow-pop); color: var(--ink); font-size: 12px; font-weight: 400; line-height: 1.4; }
[data-ui="v2"] .v2-sm-paired-tip:hover .v2-sm-paired-pop,
[data-ui="v2"] .v2-sm-paired-tip:focus .v2-sm-paired-pop { display: flex; }
[data-ui="v2"] .v2-sm-alloc-what { display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-alloc-what .v2-sm-svgico { width: 16px; height: 16px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-alloc-num { font-size: 13px; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-alloc-meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-3); font-size: 12.5px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-alloc-acts,
[data-ui="v2"] .v2-sm-lineacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-linediscs { display: flex; flex-direction: column; gap: var(--sp-2); font-size: 12.5px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-linediscs h4 { margin: 0; font-size: 13px; color: var(--ink); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-linediscs {
  margin-top: var(--sp-2); padding-top: var(--sp-3); border-top: 1px solid var(--line);
}
[data-ui="v2"] .v2-sm-linediscs li { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); }

/* ---------- příjemky a kandidáti ---------- */
[data-ui="v2"] .v2-sm-cands {
  display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0;
  margin: 0; padding: var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-cands legend { padding: 0 var(--sp-2); font: 600 13px/1.4 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-cand {
  display: flex; gap: var(--sp-3); align-items: flex-start;
  padding: var(--sp-3); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface);
}
[data-ui="v2"] .v2-sm-cand input { flex: none; width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--accent); }
[data-ui="v2"] .v2-sm-cand label { flex: 1 1 auto; display: flex; flex-direction: column; gap: var(--sp-1); min-width: 0; cursor: pointer; }
[data-ui="v2"] .v2-sm-cand.is-blocked { background: var(--surface-2); }
/* K5: už vybrané příjemky nahoře ve výběru, zbytek dlouhého seznamu sbalený. */
[data-ui="v2"] .v2-sm-candsel { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-cand.is-selected { align-items: center; padding: var(--sp-2) var(--sp-3); border-color: var(--line); }
[data-ui="v2"] .v2-sm-candmore > .v2-sm-detailsbody { display: flex; flex-direction: column; gap: var(--sp-3); margin-top: var(--sp-3); }
[data-ui="v2"] .v2-sm-cand.is-blocked label { cursor: not-allowed; }
[data-ui="v2"] .v2-sm-candtop { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-evid,
[data-ui="v2"] .v2-sm-blocks { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-candacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-receiptspane .v2-empty,
[data-ui="v2"] .v2-sm-linespane .v2-empty { padding: var(--sp-8) var(--sp-5); }
[data-ui="v2"] .v2-sm-receipts { display: flex; flex-direction: column; gap: var(--sp-5); }
[data-ui="v2"] .v2-sm-receipt {
  display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0;
  padding: var(--sp-5); border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface);
}
[data-ui="v2"] .v2-sm-receipthead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-receipthead h3 { display: inline-flex; align-items: center; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-rowswrap { overflow-x: auto; max-width: 100%; }
[data-ui="v2"] .v2-sm-rows,
[data-ui="v2"] .v2-sm-ctable { width: 100%; border-collapse: collapse; font-size: 12.5px; }
[data-ui="v2"] .v2-sm-rows th,
[data-ui="v2"] .v2-sm-ctable th {
  padding: var(--sp-2) var(--sp-3); border-bottom: 1px solid var(--line);
  text-align: left; font-weight: 600; color: var(--ink-2); white-space: nowrap;
}
[data-ui="v2"] .v2-sm-rows td,
[data-ui="v2"] .v2-sm-ctable td { padding: var(--sp-2) var(--sp-3); border-bottom: 1px solid var(--line); vertical-align: top; color: var(--ink); }
[data-ui="v2"] .v2-sm-rows .num,
[data-ui="v2"] .v2-sm-ctable .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
[data-ui="v2"] .v2-sm-rows td:nth-child(2) { overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-rows tr.is-linked td { background: var(--info-soft); }

/* ---------- spodní část: rozdíly, vyrovnání, ověření, zápis ---------- */
[data-ui="v2"] .v2-sm-bottom {
  display: grid; gap: var(--sp-6); align-items: start;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 420px), 1fr));
}
[data-ui="v2"] .v2-sm-bottom:empty { display: none; }
[data-ui="v2"] .v2-sm-discs,
[data-ui="v2"] .v2-sm-recon,
[data-ui="v2"] .v2-sm-valid,
[data-ui="v2"] .v2-sm-progress { padding: var(--sp-6); display: flex; flex-direction: column; gap: var(--sp-4); min-width: 0; }
[data-ui="v2"] .v2-sm-disclist { display: flex; flex-direction: column; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-disc {
  display: flex; flex-direction: column; gap: var(--sp-2);
  padding: var(--sp-4); border: 1px solid var(--line); border-left: 4px solid var(--line-2); border-radius: var(--r-md);
  font-size: 13px;
}
[data-ui="v2"] .v2-sm-disc.tone-bad { border-left-color: var(--bad); background: var(--bad-soft); }
[data-ui="v2"] .v2-sm-disc.tone-warn { border-left-color: var(--warn); }
[data-ui="v2"] .v2-sm-disc.tone-ok { border-left-color: var(--ok); }
[data-ui="v2"] .v2-sm-disc.tone-info { border-left-color: var(--info); }
[data-ui="v2"] .v2-sm-dischead { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-3); }
[data-ui="v2"] .v2-sm-disc .v2-btn { align-self: flex-start; }
[data-ui="v2"] .v2-sm-resolved { display: flex; align-items: flex-start; gap: var(--sp-2); color: var(--ink); }
[data-ui="v2"] .v2-sm-resolved .icon { color: var(--ok); font-size: 18px; }
[data-ui="v2"] .v2-sm-todo { color: var(--ink); }
[data-ui="v2"] .v2-sm-recontable { width: 100%; border-collapse: collapse; }
[data-ui="v2"] .v2-sm-recontable th {
  padding: var(--sp-3) var(--sp-3) var(--sp-3) 0; border-bottom: 1px solid var(--line);
  text-align: left; font: 600 13px/1.4 var(--font-sans); color: var(--ink);
}
[data-ui="v2"] .v2-sm-recontable th .t-meta { display: block; font-weight: 400; }
[data-ui="v2"] .v2-sm-recontable td { padding: var(--sp-3) 0; border-bottom: 1px solid var(--line); text-align: right; font-size: 13.5px; vertical-align: top; }
[data-ui="v2"] .v2-sm-unexpl th,
[data-ui="v2"] .v2-sm-unexpl td { border-bottom: 0; }
[data-ui="v2"] .v2-sm-unexpl th { display: table-cell; }
[data-ui="v2"] .v2-sm-unexpl th .icon { font-size: 18px; margin-right: var(--sp-2); vertical-align: -4px; }
[data-ui="v2"] .v2-sm-unexpl.tone-ok th .icon,
[data-ui="v2"] .v2-sm-unexpl.tone-ok td { color: var(--ok); }
[data-ui="v2"] .v2-sm-unexpl.tone-warn th .icon,
[data-ui="v2"] .v2-sm-unexpl.tone-warn td { color: var(--warn); }
[data-ui="v2"] .v2-sm-unexpl.tone-bad th,
[data-ui="v2"] .v2-sm-unexpl.tone-bad td { background: var(--bad-soft); }
[data-ui="v2"] .v2-sm-unexpl.tone-bad th .icon,
[data-ui="v2"] .v2-sm-unexpl.tone-bad td { color: var(--bad); }
[data-ui="v2"] .v2-sm-unexpl.tone-bad th { padding-left: var(--sp-3); }
[data-ui="v2"] .v2-sm-unexpl.tone-bad td { padding-right: var(--sp-3); }
[data-ui="v2"] .v2-sm-rate { display: flex; align-items: center; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-vgroup { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-vgroup ul { list-style: disc; padding-left: var(--sp-7); font-size: 13px; }
[data-ui="v2"] .v2-sm-valid > p .icon { font-size: 18px; color: var(--ok); vertical-align: -4px; }
[data-ui="v2"] .v2-sm-steps { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-step { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3); font-size: 13.5px; }
[data-ui="v2"] .v2-sm-step .icon { font-size: 20px; }
[data-ui="v2"] .v2-sm-step.tone-ok .icon { color: var(--ok); }
[data-ui="v2"] .v2-sm-step.tone-info .icon { color: var(--info); }
[data-ui="v2"] .v2-sm-step.tone-bad .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-step.tone-warn .icon { color: var(--warn); }
[data-ui="v2"] .v2-sm-step.is-stalled { font-weight: 600; }
[data-ui="v2"] .v2-sm-step.tone-mut .icon { color: var(--ink-3); }
[data-ui="v2"] .v2-sm-step.is-failed { font-weight: 600; color: var(--bad); }
/* K3-02: zápis zastavený před založením faktury. */
[data-ui="v2"] .v2-sm-step.is-stopped { font-weight: 600; color: var(--bad); }
[data-ui="v2"] .v2-sm-step.is-skipped { color: var(--ink-3); }
[data-ui="v2"] .v2-sm-stopped { margin: 0 0 var(--sp-3); }
[data-ui="v2"] .v2-sm-stopped p + p { margin-top: var(--sp-2); }

/* ---------- dialogy (sdílený openModal / confirmDialog) ---------- */
[data-ui="v2"] .v2-sm-confirm,
[data-ui="v2"] .v2-sm-picker,
[data-ui="v2"] .v2-sm-resolve { display: flex; flex-direction: column; gap: var(--sp-4); min-width: 0; }
[data-ui="v2"] .v2-sm-confirm h3,
[data-ui="v2"] .v2-sm-picker h3 { margin: var(--sp-2) 0 0; font: 600 13.5px/1.4 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-confirm p,
[data-ui="v2"] .v2-sm-picker p,
[data-ui="v2"] .v2-sm-resolve p { margin: 0; }
[data-ui="v2"] .v2-sm-cfacts th { width: 38%; white-space: normal; }
[data-ui="v2"] .v2-sm-ctol { margin: 0; padding-left: var(--sp-7); list-style: disc; font-size: 13px; }
[data-ui="v2"] .v2-sm-confirm .v2-note p { display: flex; align-items: flex-start; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-picklist { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-pickitem {
  display: flex; flex-direction: column; gap: var(--sp-1); width: 100%; min-height: 44px;
  padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-md);
  background: var(--surface-2); color: var(--ink); text-align: left; cursor: pointer;
  font: 400 13px/1.4 var(--font-sans);
}
[data-ui="v2"] .v2-sm-pickitem:hover:not(:disabled) { border-color: var(--accent-line); background: var(--accent-soft); }
[data-ui="v2"] .v2-sm-pickitem:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-pickitem:disabled { cursor: not-allowed; background: var(--surface-2); color: var(--ink-2); }
/* Sdílený picker je mimo párovací vrstvu; pilot má vlastní obsahový marker. */
[data-ui="v2"] .v2-sm-picker.v2-sm-picker-pilot .v2-sm-pickitem.is-assigned,
[data-ui="v2"] .v2-sm-picker.v2-sm-picker-pilot .v2-sm-pickitem.is-assigned:hover:not(:disabled),
[data-ui="v2"] .v2-sm-picker.v2-sm-picker-pilot .v2-sm-pickitem.is-assigned:disabled {
  border-color: var(--ok); background: var(--ok-soft); color: var(--ink);
}
[data-ui="v2"] .v2-sm-picker.v2-sm-picker-pilot .v2-sm-pick-assigned {
  display: inline-flex; align-items: center; gap: var(--sp-1);
  color: var(--ok); font-weight: 600; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-picker.v2-sm-picker-pilot .v2-sm-pick-assigned > .icon {
  flex: none; font-size: 18px; line-height: 1;
}
[data-ui="v2"] .v2-sm-pickhead {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: start; gap: var(--sp-3);
}
[data-ui="v2"] .v2-sm-picktop { min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-picknumbers { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-pick-validation { white-space: normal; text-align: left; }
[data-ui="v2"] .v2-sm-pick-validation > .icon { flex: none; }
@media (max-width: 420px) {
  [data-ui="v2"] .v2-sm-pickhead { column-gap: var(--sp-2); }
  [data-ui="v2"] .v2-sm-picknumbers { white-space: normal; max-width: 145px; }
}
[data-ui="v2"] .v2-sm-radios { display: flex; flex-direction: column; gap: var(--sp-2); margin: 0; padding: 0; border: 0; }
[data-ui="v2"] .v2-sm-radios label { display: flex; align-items: center; gap: var(--sp-2); font-size: 13.5px; cursor: pointer; }
[data-ui="v2"] .v2-sm-radios input { width: 18px; height: 18px; accent-color: var(--accent); }
[data-ui="v2"] .v2-sm-res-err { color: var(--bad); font-size: 13px; }
/* Zelená potvrzuje řešení rozdílu; otevření poznámky zůstává neutrální.
   Sdílený dialog leží mimo párovací vrstvu a má vlastní pilotní marker. */
[data-ui="v2"] .v2-sm-layer button.v2-btn.v2-sm-resolve-commit,
[data-ui="v2"] .v2-sm-table-mode button.v2-btn.v2-sm-resolve-commit,
[data-ui="v2"] .v2-modal:has(.v2-sm-resolve-pilot) button.v2-btn.v2-sm-resolve-commit {
  border-color: var(--ok); background: var(--ok); color: var(--on-ok); box-shadow: none;
}
[data-ui="v2"] .v2-sm-layer button.v2-btn.v2-sm-resolve-commit:hover:not(:disabled),
[data-ui="v2"] .v2-sm-table-mode button.v2-btn.v2-sm-resolve-commit:hover:not(:disabled),
[data-ui="v2"] .v2-modal:has(.v2-sm-resolve-pilot) button.v2-btn.v2-sm-resolve-commit:hover:not(:disabled) {
  background: var(--ok); color: var(--on-ok); opacity: .9;
}
[data-ui="v2"] .v2-sm-layer button.v2-btn.v2-sm-resolve-commit:focus-visible,
[data-ui="v2"] .v2-sm-table-mode button.v2-btn.v2-sm-resolve-commit:focus-visible,
[data-ui="v2"] .v2-modal:has(.v2-sm-resolve-pilot) button.v2-btn.v2-sm-resolve-commit:focus-visible {
  outline: 2px solid var(--focus); outline-offset: 2px;
}

/* ---------- šířky okna ---------- */
@media (max-width: 1280px) {
  [data-ui="v2"] .v2-sm-grid { grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); }
  [data-ui="v2"] .v2-sm-preview { grid-column: 1 / -1; position: static; height: 380px; min-height: 0; }
  [data-ui="v2"] .v2-sm-noprev .v2-sm-preview { height: auto; }
}
@media (max-width: 900px) {
  [data-ui="v2"] .v2-sm-grid,
  [data-ui="v2"] .v2-sm-noprev .v2-sm-grid { grid-template-columns: minmax(0, 1fr); }
  [data-ui="v2"] .v2-sm-bar { padding: var(--sp-3) var(--sp-5); }
  [data-ui="v2"] .v2-sm-scroll { padding: var(--sp-5) var(--sp-4) var(--sp-9); }
  [data-ui="v2"] .v2-sm-baracts { margin-left: 0; width: 100%; }
}
@media (max-width: 720px) {
  [data-ui="v2"] .v2-sm-layer .v2-btn,
  [data-ui="v2"] .v2-sm-layer .v2-input,
  [data-ui="v2"] .v2-sm-back { min-height: 44px; min-width: 44px; }
  [data-ui="v2"] .v2-sm-linefocus { min-height: 40px; }
  [data-ui="v2"] .v2-sm-cand input { width: 22px; height: 22px; }
  [data-ui="v2"] .v2-sm-baracts .v2-btn { flex: 1 1 auto; justify-content: center; }
  [data-ui="v2"] .v2-sm-summary,
  [data-ui="v2"] .v2-sm-linespane,
  [data-ui="v2"] .v2-sm-receiptspane,
  [data-ui="v2"] .v2-sm-discs,
  [data-ui="v2"] .v2-sm-recon,
  [data-ui="v2"] .v2-sm-valid,
  [data-ui="v2"] .v2-sm-progress { padding: var(--sp-5) var(--sp-4); }
  [data-ui="v2"] .v2-sm-line,
  [data-ui="v2"] .v2-sm-receipt { padding: var(--sp-4); }
  [data-ui="v2"] .v2-sm-preview { height: 300px; }
  /* Souhrn na telefonu ve dvou sloupcích, dodavatel přes celou šířku. */
  [data-ui="v2"] .v2-sm-kvs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3) var(--sp-4); }
  [data-ui="v2"] .v2-sm-kvs > .v2-sm-kv:first-child { grid-column: 1 / -1; }
}
@media (prefers-reduced-motion: reduce) {
  [data-ui="v2"] .v2-sm-layer .icon.spin { animation: none; }
}

/* ---------- revize UX 26. 9.: bezpečnostní věta, průběh nahoře, chybový stav ---------- */
[data-ui="v2"] .v2-sm-safe { display: flex; align-items: flex-start; gap: var(--sp-2); margin: var(--sp-2) 0 0; color: var(--ink-2); font: 400 13px/1.45 var(--font-sans); }
[data-ui="v2"] .v2-sm-safe .icon { flex: none; color: var(--info); font-size: 18px; }
[data-ui="v2"] .v2-sm-progwrap:not(:empty) { margin-top: var(--sp-4); }
[data-ui="v2"] .v2-sm-layer.is-empty .v2-sm-grid,
[data-ui="v2"] .v2-sm-layer.is-empty .v2-sm-bottom { display: none; }
/* Úvodní text potvrzení nese výchozí fokus jen pro čtečku; rámeček by rušil. */
[data-ui="v2"] .v2-sm-confirm-lead:focus { outline: none; }

/* ---------- fáze 2 (26. 9.): přecenění PR a faktura dopravce ---------- */
/* Dvě sesterská vstupní tlačítka v revizi FP; na úzkém okně se smí zalomit pod sebe. */
[data-ui="v2"] .v2-sm-entry-freight { white-space: nowrap; }
[data-ui="v2"] .v2-sm-entry-freight .v2-sm-svgico { width: 17px; height: 17px; }
[data-ui="v2"] .v2-sm-bartitle .v2-sm-svgico,
[data-ui="v2"] .v2-sm-fsplit h2 .v2-sm-svgico { margin-right: var(--sp-2); vertical-align: -3px; color: var(--ink-2); }

/* Přecenění u cenového rozdílu */
[data-ui="v2"] .v2-sm-discacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-discacts .v2-btn .v2-sm-svgico { width: 16px; height: 16px; }
[data-ui="v2"] .v2-sm-why {
  display: flex; align-items: flex-start; gap: var(--sp-2);
  color: var(--ink-2); font-size: 12.5px; line-height: 1.45;
}
[data-ui="v2"] .v2-sm-why .icon { flex: none; font-size: 17px; color: var(--info); }
[data-ui="v2"] .v2-sm-reprice { display: flex; flex-direction: column; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-reprice .v2-sm-resolved .v2-sm-svgico { width: 17px; height: 17px; color: var(--info); margin-top: 1px; }
[data-ui="v2"] .v2-sm-reprice b { font-variant-numeric: tabular-nums; }
/* Přeceňovaný řádek v kartě řádku faktury: jedna pozitivní věta (příjemka převezme cenu z faktury). */
[data-ui="v2"] .v2-sm-linereprice { display: flex; align-items: flex-start; gap: var(--sp-1); margin: var(--sp-1) 0 0; font-size: 13px; color: var(--ink); font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-linereprice .v2-sm-svgico { width: 16px; height: 16px; flex: none; color: var(--info); margin-top: 1px; }

/* Dodavatel u příjemky / kandidáta (faktura dopravce) */
[data-ui="v2"] .v2-sm-firm { display: inline-flex; align-items: center; gap: var(--sp-2); min-width: 0; color: var(--ink); font-size: 13px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-firm .icon { flex: none; font-size: 16px; color: var(--ink-2); }

/* Hledání PR libovolného dodavatele */
[data-ui="v2"] .v2-sm-fsearch {
  display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0;
  padding: var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-fsfields { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-field { display: flex; flex-direction: column; gap: var(--sp-1); flex: 1 1 130px; min-width: 0; }
[data-ui="v2"] .v2-sm-field.is-wide { flex: 2 1 200px; }
[data-ui="v2"] .v2-sm-field label { font-size: 12px; font-weight: 600; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-field .v2-input { width: 100%; min-height: 34px; }
[data-ui="v2"] .v2-sm-fsearch .v2-sm-res-err { font-size: 12.5px; }

/* Přiřazení řádku faktury k příjemkám — skutečné checkboxy vlevo */
[data-ui="v2"] .v2-sm-ftargets {
  display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0;
  margin: 0; padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-fask { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-2); font-size: 12.5px; color: var(--ink); }
[data-ui="v2"] .v2-sm-fask > .icon { flex: none; font-size: 16px; color: var(--warn); }
[data-ui="v2"] .v2-sm-fask > span { flex: 1 1 220px; }
[data-ui="v2"] .v2-sm-ftargets legend {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2);
  padding: 0 var(--sp-1); font: 600 12.5px/1.4 var(--font-sans); color: var(--ink);
}
[data-ui="v2"] .v2-sm-fcheck { display: flex; align-items: flex-start; gap: var(--sp-2); min-width: 0; }
[data-ui="v2"] .v2-sm-fcheck input { flex: none; width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--accent); }
[data-ui="v2"] .v2-sm-fcheck label { flex: 1 1 auto; min-width: 0; font-size: 13px; cursor: pointer; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-fcheck input:disabled + label { cursor: default; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-fnosplit { margin-top: var(--sp-1); padding-top: var(--sp-2); border-top: 1px solid var(--line); }

/* Rozúčtování dopravy (spodní karta přes celou šířku) */
[data-ui="v2"] .v2-sm-fsplit { grid-column: 1 / -1; padding: var(--sp-6); display: flex; flex-direction: column; gap: var(--sp-4); min-width: 0; }
[data-ui="v2"] .v2-sm-fkeys { display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0; max-width: 560px; margin: 0; padding: 0; border: 0; }
[data-ui="v2"] .v2-sm-fkeys legend { margin: 0 0 var(--sp-2); padding: 0; font: 600 13px/1.4 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-fkeys .v2-date-mode-option { position: relative; }
[data-ui="v2"] .v2-sm-keyoption { position: relative; min-width: 0; display: grid; }
[data-ui="v2"] .v2-sm-keyoption.is-unavailable .v2-date-mode-option > span { padding-inline-end: 30px; }
[data-ui="v2"] .v2-sm-keyhelp {
  position: absolute; inset-inline-end: 3px; top: 50%; transform: translateY(-50%);
  display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px;
  padding: 0; border: 0; border-radius: var(--r-sm); background: transparent; color: var(--info);
  cursor: help;
}
[data-ui="v2"] .v2-sm-keyhelp .icon { font-size: 16px; }
[data-ui="v2"] .v2-sm-keyhelp:hover { background: var(--info-soft); }
[data-ui="v2"] .v2-sm-keyhelp:focus-visible { outline: 2px solid var(--focus); outline-offset: 1px; }

[data-ui="v2"] .v2-sm-ftable .v2-sm-fgrouphead th {
  padding-top: var(--sp-4); background: var(--surface-2); color: var(--ink); white-space: normal;
}
[data-ui="v2"] .v2-sm-ftable .v2-sm-fgrouphead th > span { margin-right: var(--sp-3); font-weight: 600; }
[data-ui="v2"] .v2-sm-ftable tr.is-manual td { background: var(--info-soft); }
[data-ui="v2"] .v2-sm-ftable td:nth-child(2),
[data-ui="v2"] .v2-sm-ftable td:nth-child(3) { overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-ftable td { vertical-align: middle; }
/* K3-04: sloupec „Karta“ v potvrzení nesmí být úzký (názvy karet se lámaly po slovech).
   K5: pevná šířka 200 px ale tlačila tabulku přes okraj dialogu („Přičte se“ / „Nová doprava“
   byly useknuté) – karta dostane rozumné minimum, hlavičky se zalamují, částky ne. */
[data-ui="v2"] .v2-sm-cards { table-layout: auto; }
[data-ui="v2"] .v2-sm-cards th { white-space: normal; vertical-align: bottom; }
[data-ui="v2"] .v2-sm-cards th, [data-ui="v2"] .v2-sm-cards td { padding-left: var(--sp-2); padding-right: var(--sp-2); }
[data-ui="v2"] .v2-sm-creprice td:nth-child(2),
[data-ui="v2"] .v2-sm-ccosts td:nth-child(2) { min-width: 8rem; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-cards td.v2-sm-cwrap { white-space: normal; }
[data-ui="v2"] .v2-sm-cards td.v2-sm-cwrap > span { white-space: nowrap; }
[data-ui="v2"] .v2-sm-confirm abbr[title],
[data-ui="v2"] .v2-sm-summary abbr[title] { text-decoration: underline dotted; cursor: help; }
[data-ui="v2"] .v2-sm-camounts th[scope="row"] { font-weight: 400; color: var(--ink); text-transform: none; letter-spacing: 0; }
[data-ui="v2"] .v2-sm-creprice td:first-child b,
[data-ui="v2"] .v2-sm-ccosts td:first-child b { white-space: nowrap; }
[data-ui="v2"] .v2-sm-sharecell { min-width: 150px; }
[data-ui="v2"] .v2-sm-sharecell .v2-sm-badge { display: flex; width: fit-content; margin: var(--sp-1) 0 0 auto; }
[data-ui="v2"] .v2-sm-share { display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--sp-1) var(--sp-2); }
[data-ui="v2"] .v2-sm-shareinput { width: 110px; min-height: 32px; text-align: right; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-shareinput[aria-invalid="true"] { border-color: var(--bad); }
[data-ui="v2"] .v2-sm-sharecur { color: var(--ink-2); font-size: 12.5px; }
[data-ui="v2"] .v2-sm-share .v2-sm-res-err { flex-basis: 100%; text-align: right; white-space: normal; font-size: 12px; }
[data-ui="v2"] .v2-sm-fsplit > p.t-meta { display: flex; align-items: center; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-fsplit > p.t-meta .icon { font-size: 16px; }
[data-ui="v2"] .v2-sm-ftotal {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-3);
  padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-left: 4px solid var(--line-2); border-radius: var(--r-md);
  font-size: 13.5px; font-variant-numeric: tabular-nums;
}
[data-ui="v2"] .v2-sm-ftotal .icon { font-size: 18px; }
[data-ui="v2"] .v2-sm-ftotal .v2-btn { margin-left: auto; }
[data-ui="v2"] .v2-sm-ftotal.tone-ok { border-left-color: var(--ok); }
[data-ui="v2"] .v2-sm-ftotal.tone-ok .icon { color: var(--ok); }
[data-ui="v2"] .v2-sm-ftotal.tone-bad { border-left-color: var(--bad); background: var(--bad-soft); }
[data-ui="v2"] .v2-sm-ftotal.tone-bad .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-ftotal.tone-warn { border-left-color: var(--warn); }
[data-ui="v2"] .v2-sm-ftotal.tone-warn .icon { color: var(--warn); }
[data-ui="v2"] .v2-sm-ccosts tfoot th { text-align: right; color: var(--ink); }

@media (max-width: 900px) {
  [data-ui="v2"] .v2-sm-fsplit { padding: var(--sp-5) var(--sp-4); }
  [data-ui="v2"] .v2-sm-fkeys { max-width: none; }
}
@media (max-width: 720px) {
  [data-ui="v2"] .v2-sm-entry,
  [data-ui="v2"] .v2-sm-entry-freight { white-space: normal; text-align: left; }
  [data-ui="v2"] .v2-sm-fcheck input { width: 22px; height: 22px; }
  [data-ui="v2"] .v2-sm-fcheck label { min-height: 26px; }
  [data-ui="v2"] .v2-sm-shareinput { min-height: 44px; width: 100px; }
  [data-ui="v2"] .v2-sm-fsfields .v2-btn { flex: 1 1 100%; justify-content: center; }
  [data-ui="v2"] .v2-sm-ftotal .v2-btn { margin-left: 0; flex: 1 1 100%; justify-content: center; }
  /* Rozpad dopravy: v úzkém okně karta na řádek PR (popisek buňky z data-label), bez vodorovného posunu. */
  [data-ui="v2"] .v2-sm-fsplit .v2-sm-rowswrap { overflow-x: hidden; }
  [data-ui="v2"] .v2-sm-ftable,
  [data-ui="v2"] .v2-sm-ftable tbody,
  [data-ui="v2"] .v2-sm-ftable tr,
  [data-ui="v2"] .v2-sm-ftable .v2-sm-fgrouphead th { display: block; width: 100%; }
  [data-ui="v2"] .v2-sm-ftable thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  [data-ui="v2"] .v2-sm-ftable .v2-sm-fgrouphead th > span { display: inline-block; margin: 0 var(--sp-2) var(--sp-1) 0; }
  [data-ui="v2"] .v2-sm-ftable tr:not(.v2-sm-fgrouphead) { padding: var(--sp-2) 0; border-bottom: 1px solid var(--line); }
  [data-ui="v2"] .v2-sm-ftable td {
    display: flex; justify-content: flex-end; align-items: center; gap: var(--sp-1) var(--sp-2);
    padding: var(--sp-1) var(--sp-2); border-bottom: 0; text-align: right; white-space: normal;
  }
  [data-ui="v2"] .v2-sm-ftable td::before { content: attr(data-label); flex: 0 0 auto; margin-right: auto; color: var(--ink-2); font-weight: 600; text-align: left; }
  [data-ui="v2"] .v2-sm-ftable td.v2-sm-sharecell { flex-wrap: wrap; min-width: 0; }
  [data-ui="v2"] .v2-sm-ftable td.v2-sm-sharecell .v2-sm-badge { margin: 0; }
  /* K5: tabulky potvrzení (přecenění, doprava do příjemek) – karta na řádek, bez vodorovného posunu. */
  [data-ui="v2"] .v2-sm-confirm .v2-sm-rowswrap { overflow-x: hidden; }
  [data-ui="v2"] .v2-sm-cards,
  [data-ui="v2"] .v2-sm-cards tbody,
  [data-ui="v2"] .v2-sm-cards tfoot,
  [data-ui="v2"] .v2-sm-cards tr { display: block; width: 100%; }
  [data-ui="v2"] .v2-sm-cards thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  [data-ui="v2"] .v2-sm-cards tr { padding: var(--sp-2) 0; border-bottom: 1px solid var(--line); }
  [data-ui="v2"] .v2-sm-cards td {
    display: flex; justify-content: flex-end; align-items: baseline; gap: var(--sp-1) var(--sp-3);
    padding: var(--sp-1) var(--sp-2); border-bottom: 0; text-align: right; white-space: normal; min-width: 0;
  }
  [data-ui="v2"] .v2-sm-cards td::before { content: attr(data-label); flex: 0 0 auto; margin-right: auto; color: var(--ink-2); font-weight: 600; text-align: left; }
  [data-ui="v2"] .v2-sm-cards td:empty { display: none; }
  [data-ui="v2"] .v2-sm-cards tfoot th { display: none; }
  [data-ui="v2"] .v2-sm-cards tbody th[scope="row"] { display: block; padding: var(--sp-1) var(--sp-2); border-bottom: 0; text-align: left; }
  [data-ui="v2"] .v2-sm-creprice td:nth-child(2),
  [data-ui="v2"] .v2-sm-ccosts td:nth-child(2) { min-width: 0; }
}

/* ---------- agent F 26. 9.: karta „Co dál“, otázky u rozdílů, Vyřeš za mě ---------- */
[data-ui="v2"] .v2-sm-next {
  display: flex; flex-direction: column; gap: var(--sp-3); margin-bottom: var(--sp-5);
  padding: var(--sp-6) var(--sp-7); border-left: 4px solid var(--info);
}
[data-ui="v2"] .v2-sm-next.tone-ok { border-left-color: var(--ok); }
[data-ui="v2"] .v2-sm-next.tone-warn { border-left-color: var(--warn); }
[data-ui="v2"] .v2-sm-next.tone-bad { border-left-color: var(--bad); }
[data-ui="v2"] .v2-sm-next.tone-mut { border-left-color: var(--ink-3); }
[data-ui="v2"] .v2-sm-nexthead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-next h2 { display: flex; align-items: flex-start; gap: var(--sp-2); font: 600 18px/1.35 var(--font-sans); color: var(--ink); }
[data-ui="v2"] .v2-sm-next h2 .icon { flex: none; font-size: 22px; color: var(--info); }
[data-ui="v2"] .v2-sm-next.tone-ok h2 .icon { color: var(--ok); }
[data-ui="v2"] .v2-sm-next.tone-warn h2 .icon { color: var(--warn); }
[data-ui="v2"] .v2-sm-next.tone-bad h2 .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-next h2:focus { outline: none; }
[data-ui="v2"] .v2-sm-next h2:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-nexttext { color: var(--ink); font-size: 14px; line-height: 1.5; }
[data-ui="v2"] .v2-sm-nextacts { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-3); margin-top: var(--sp-1); }
[data-ui="v2"] .v2-sm-nextprop { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-nextprop li {
  display: flex; align-items: flex-start; gap: var(--sp-2); padding: var(--sp-3) var(--sp-4);
  border: 1px dashed var(--warn); border-radius: var(--r-md); background: var(--surface-2); font-size: 13px; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-nextprop .v2-sm-svgico { flex: none; width: 16px; height: 16px; margin-top: 2px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-settle { display: flex; align-items: flex-start; gap: var(--sp-2); font-size: 13px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-settle .icon { flex: none; font-size: 18px; }
[data-ui="v2"] .v2-sm-settle.tone-ok .icon { color: var(--ok); }
[data-ui="v2"] .v2-sm-settle.tone-warn .icon { color: var(--warn); }
[data-ui="v2"] .v2-sm-settle.tone-bad .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-busyline { display: flex; align-items: center; gap: var(--sp-2); color: var(--ink-2); }
[data-ui="v2"] .v2-sm-blockers { padding-top: var(--sp-3); border-top: 1px solid var(--line); }
[data-ui="v2"] .v2-sm-blockers ul { display: flex; flex-direction: column; gap: var(--sp-2); margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-blockers li { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-2); font-size: 13px; color: var(--ink); }
[data-ui="v2"] .v2-sm-blockers li > span { flex: 1 1 240px; min-width: 0; }
[data-ui="v2"] .v2-sm-linkbtn { flex: none; }
[data-ui="v2"] .v2-sm-assist {
  display: flex; flex-direction: column; gap: var(--sp-2); padding: var(--sp-4);
  border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-assisthead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-assisthead b { display: inline-flex; align-items: center; gap: var(--sp-2); font-size: 14px; }
[data-ui="v2"] .v2-sm-assisthead .icon { font-size: 18px; color: var(--info); }
[data-ui="v2"] .v2-sm-assistdone,
[data-ui="v2"] .v2-sm-assistq { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-assistdone li { display: flex; align-items: flex-start; gap: var(--sp-2); font-size: 13px; }
[data-ui="v2"] .v2-sm-assistdone .icon { flex: none; font-size: 17px; color: var(--ok); }
[data-ui="v2"] .v2-sm-assistq li {
  display: flex; flex-direction: column; gap: var(--sp-2); padding: var(--sp-3);
  border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); font-size: 13px;
}
[data-ui="v2"] .v2-sm-discacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-discq-text { color: var(--ink); line-height: 1.45; }
/* UX kolo 7 (Jitka 2): „Vyřeš za mě“ – nahoře co udělat, pod tlačítkem proč. */
[data-ui="v2"] .v2-sm-assistdo { color: var(--ink); font-size: 14px; }
[data-ui="v2"] .v2-sm-assistwhy { line-height: 1.45; }
/* P2-4: plán rozúčtování dopravy v kartě Co dál. */
[data-ui="v2"] .v2-sm-fplan { display: flex; flex-direction: column; gap: var(--sp-1); margin-top: var(--sp-2); font-size: 13px; }
/* P2-10: „Další možnosti“ v souhrnu. */
[data-ui="v2"] .v2-sm-summore .v2-sm-detailsbody { margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-disc:focus { outline: none; }
[data-ui="v2"] .v2-sm-disc:focus-visible,
[data-ui="v2"] .v2-sm-line:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-line:focus { outline: none; }
[data-ui="v2"] .v2-sm-line.is-flash { box-shadow: 0 0 0 3px var(--info); transition: box-shadow .3s ease; }

/* ---------- agent F: řádek faktury kompaktně, úprava řádku, podrobnosti ---------- */
[data-ui="v2"] .v2-sm-lineqty { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--sp-2); font-size: 13.5px; color: var(--ink-2); font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-lineqty b { color: var(--ink); font-size: 14px; }
[data-ui="v2"] .v2-sm-lwarns { display: flex; flex-direction: column; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-lwarns li { display: flex; align-items: flex-start; gap: var(--sp-2); font-size: 12.5px; color: var(--ink); }
[data-ui="v2"] .v2-sm-lwarns .icon { flex: none; font-size: 16px; color: var(--warn); }
/* UX kolo 2: částka řádku změněná ruční opravou (množství × cena) – výslovně */
[data-ui="v2"] .v2-sm-letotal { display: flex; align-items: flex-start; gap: var(--sp-2); margin: 0; font-size: 12.5px; }
[data-ui="v2"] .v2-sm-letotal.is-change { color: var(--ink); }
[data-ui="v2"] .v2-sm-letotal .icon { flex: none; font-size: 16px; color: var(--warn); }
[data-ui="v2"] .v2-sm-ledit {
  display: flex; flex-direction: column; gap: var(--sp-3); padding: var(--sp-4);
  border: 1px solid var(--accent-line); border-radius: var(--r-md); background: var(--accent-soft);
}
[data-ui="v2"] .v2-sm-lefields { display: flex; flex-wrap: wrap; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-leacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-ledit .v2-input[aria-invalid="true"] { border-color: var(--bad); }
[data-ui="v2"] .v2-sm-ledit .v2-input[readonly] { background: var(--surface-2); color: var(--ink-2); cursor: default; }
[data-ui="v2"] .v2-sm-disclink { align-self: flex-start; }
[data-ui="v2"] .v2-sm-disclink.tone-bad .icon { color: var(--bad); }
[data-ui="v2"] .v2-sm-disclink.tone-warn .icon { color: var(--warn); }
/* UX kolo 8: cíl odkazu (karta Co dál / rozdíl) krátce blikne obrysem. */
[data-ui="v2"] .v2-sm-next.is-flash, [data-ui="v2"] .v2-sm-disc.is-flash { box-shadow: 0 0 0 3px var(--info); transition: box-shadow .3s ease; }
[data-ui="v2"] .v2-sm-details { font-size: 13px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-details > summary {
  display: inline-flex; align-items: center; gap: var(--sp-1); min-height: 28px; cursor: pointer;
  color: var(--info); font-weight: 600; list-style: none;
}
[data-ui="v2"] .v2-sm-details > summary::-webkit-details-marker { display: none; }
[data-ui="v2"] .v2-sm-details > summary::before { content: "▸"; display: inline-block; transition: transform .15s ease; }
[data-ui="v2"] .v2-sm-details[open] > summary::before { transform: rotate(90deg); }
[data-ui="v2"] .v2-sm-details > summary:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: var(--r-sm); }
[data-ui="v2"] .v2-sm-detailsbody { display: flex; flex-direction: column; gap: var(--sp-3); padding-top: var(--sp-2); }
/* UX kolo 6: „Proč?“ je přepínač; vysvětlení se rozbalí jako text POD přiřazením (bublina
   zakrývala sousední řádky). Zavře se druhým klikem, Esc nebo klikem jinam. */
[data-ui="v2"] .v2-sm-whybtn {
  display: inline-flex; align-items: center; gap: var(--sp-1); min-height: 28px; padding: 0 2px;
  border: 0; background: transparent; cursor: pointer;
  color: var(--info); font: 600 12.5px/1.3 var(--font-sans);
}
[data-ui="v2"] .v2-sm-whybtn::before { content: "▸"; display: inline-block; transition: transform .15s ease; }
[data-ui="v2"] .v2-sm-whybtn[aria-expanded="true"]::before { transform: rotate(90deg); }
[data-ui="v2"] .v2-sm-whybtn:hover { text-decoration: underline; }
[data-ui="v2"] .v2-sm-whybtn:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; border-radius: var(--r-sm); }
[data-ui="v2"] .v2-sm-whytext {
  flex: none; min-width: 0; overflow-wrap: anywhere; margin: var(--sp-2) 0 0; padding: var(--sp-2) var(--sp-3);
  border-left: 3px solid var(--info); background: var(--info-soft); border-radius: 6px;
  font-size: 12.5px; line-height: 1.45; color: var(--ink);
}
[data-ui="v2"] .v2-sm-whytext[hidden] { display: none; }
[data-ui="v2"] .v2-sm-splitwhy { display: flex; align-items: flex-start; gap: var(--sp-2); margin: 0; font-size: 12.5px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-splitwhy .v2-sm-svgico { width: 16px; height: 16px; flex: none; margin-top: 1px; }

/* ---------- agent F: kandidáti (přesná shoda, rozpracováno, průběžný součet) ---------- */
[data-ui="v2"] .v2-sm-cand { flex-wrap: wrap; }
[data-ui="v2"] .v2-sm-cand.is-exact { border-color: var(--ok); box-shadow: inset 3px 0 0 var(--ok); }
[data-ui="v2"] .v2-sm-candlabel { font-size: 13px; color: var(--ink); }
[data-ui="v2"] .v2-sm-candflags { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
/* K3-03b: karta kandidáta faktury dopravce – hodnota zboží a faktura zboží z NahrAI. */
[data-ui="v2"] .v2-sm-candfacts { display: flex; flex-wrap: wrap; gap: 2px 14px; }
[data-ui="v2"] .v2-sm-canddet { flex: 1 1 100%; padding-left: calc(18px + var(--sp-3)); }
[data-ui="v2"] .v2-sm-candsum {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-2);
  padding: var(--sp-3) var(--sp-4); border-radius: var(--r-md); background: var(--surface); font-size: 13px; font-variant-numeric: tabular-nums;
}

/* ---------- agent F: doprava jednou větou, průběh založení, odznaky ---------- */
[data-ui="v2"] .v2-sm-fsum { gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-fsumlist { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-fsumlist li { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp-2); font-size: 13px; }
[data-ui="v2"] .v2-sm-fsumlist .v2-sm-num { margin-left: auto; font-weight: 600; }
/* K4-01e: výsledek na příjemce (hodnota před → po) – samostatný řádek pod částkou. */
[data-ui="v2"] .v2-sm-fsumlist .v2-sm-feffect { flex: 1 0 100%; text-align: right; }
[data-ui="v2"] .v2-sm-creating { display: flex; flex-direction: column; gap: var(--sp-3); padding: var(--sp-6) var(--sp-7); }
[data-ui="v2"] .v2-sm-creating > b { display: flex; align-items: center; gap: var(--sp-2); font-size: 15px; color: var(--ink); }
[data-ui="v2"] .v2-sm-entrybadge { display: inline-flex; margin-left: var(--sp-2); }
[data-ui="v2"] .v2-sm-entrybadge .v2-pill { font-size: 11.5px; }
[data-ui="v2"] .v2-sm-qbadge { display: inline-flex; margin-left: var(--sp-2); vertical-align: middle; }

@media (max-width: 720px) {
  [data-ui="v2"] .v2-sm-next,
  [data-ui="v2"] .v2-sm-creating { padding: var(--sp-5) var(--sp-4); }
  [data-ui="v2"] .v2-sm-next h2 { font-size: 16.5px; }
  [data-ui="v2"] .v2-sm-nextacts .v2-btn,
  [data-ui="v2"] .v2-sm-discacts .v2-btn,
  [data-ui="v2"] .v2-sm-leacts .v2-btn { flex: 1 1 100%; justify-content: center; min-height: 44px; }
  [data-ui="v2"] .v2-sm-details > summary { min-height: 44px; }
  [data-ui="v2"] .v2-sm-canddet { padding-left: 0; }
  [data-ui="v2"] .v2-sm-lefields .v2-sm-field { flex: 1 1 100%; }
}
@media (prefers-reduced-motion: reduce) {
  [data-ui="v2"] .v2-sm-whybtn::before,
  [data-ui="v2"] .v2-sm-details > summary::before,
  [data-ui="v2"] .v2-sm-line.is-flash { transition: none; }
}
[data-ui="v2"] .v2-sm-inote { display: flex; flex-direction: column; gap: var(--sp-1); max-width: 640px; }
[data-ui="v2"] .v2-sm-inote .v2-input[aria-invalid="true"] { border-color: var(--bad); }

/* UX kolo 2, bod 13: potvrzovací dialogy párování – víc místa mezi Zrušit a hlavní akcí. */
[data-ui="v2"] .v2-dlg:has(.v2-sm-dlgmark) .v2-dlg-foot [data-confirm] { margin-left: var(--sp-9); }
/* UX kolo 2: spojení v hlavičce a souhrn přecenění příjemek */
[data-ui="v2"] .v2-sm-conn { display: inline-flex; align-items: center; gap: var(--sp-1); margin-top: 2px; }
[data-ui="v2"] .v2-sm-conn .v2-sm-svgico { width: 14px; height: 14px; flex: none; }
[data-ui="v2"] .v2-sm-repricesum { margin: var(--sp-3) 0 0; padding: var(--sp-2) var(--sp-3); border-left: 3px solid var(--info); background: var(--info-soft); border-radius: 6px; font-size: 13px; }
[data-ui="v2"] .v2-sm-repricesum p { margin: 0; }
[data-ui="v2"] .v2-sm-repricesum p b { display: inline-flex; align-items: center; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-repricesum .v2-sm-svgico { width: 15px; height: 15px; color: var(--info); }
[data-ui="v2"] .v2-sm-repricesum ul { margin: var(--sp-1) 0; padding-left: var(--sp-5); font-variant-numeric: tabular-nums; }
/* UX kolo 2, bod 4: volba zaúčtování dopravy / balného v kartě Co dál – tlačítko + věta nápovědy */
[data-ui="v2"] .v2-sm-kindchoice{list-style:none;margin:var(--sp-3) 0 0;padding:0;display:grid;gap:var(--sp-3)}
[data-ui="v2"] .v2-sm-kindchoice li{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap}
[data-ui="v2"] .v2-sm-kindchoice li .v2-btn{min-width:13rem;justify-content:flex-start}
[data-ui="v2"] .v2-sm-kindchoice li .t-meta{flex:1 1 16rem}

/* K3-05: vedlejší volba rozdílu jako odkaz pod tlačítky (např. „AI přečetla množství špatně?“). */
[data-ui="v2"] .v2-sm-optlinks { margin: 6px 0 0; font-size: 12.5px; display: flex; flex-wrap: wrap; gap: 4px 14px; }

/* ---------- UX kolo 6 ---------- */
/* Vedlejší akce souhrnu a čekání: tlumené, bez rámečku (hlavní je karta Co dál). */
[data-ui="v2"] .v2-sm-layer .v2-btn.v2-sm-quiet { background: transparent; border-color: transparent; box-shadow: none; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-layer .v2-btn.v2-sm-quiet:hover { background: var(--surface-2); color: var(--ink); }
/* Dana 1: čekající faktura – hlavní sdělení je stav, ne tlačítko. */
[data-ui="v2"] .v2-sm-waitstate {
  display: flex; align-items: flex-start; gap: var(--sp-2); margin: var(--sp-3) 0 0; padding: var(--sp-3) var(--sp-4);
  border-radius: var(--r-md); background: var(--info-soft); color: var(--ink); font-size: 14px;
}
[data-ui="v2"] .v2-sm-waitstate .icon { flex: none; font-size: 20px; color: var(--info); }
/* Dana 2: stavové poznámky se nepočítají do „Co ještě zbývá“ – tlumeně pod úkoly. */
[data-ui="v2"] .v2-sm-blknotes { display: flex; flex-direction: column; gap: var(--sp-1); margin: var(--sp-2) 0 0; padding: 0; list-style: none; }
[data-ui="v2"] .v2-sm-blknotes li { display: flex; align-items: flex-start; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-blknotes .icon { flex: none; font-size: 16px; }
/* Dana 3: klíč rozpočtu dopravy je výběr – zvolený s obrysem a fajfkou, ne červené tlačítko. */
[data-ui="v2"] .v2-sm-choice[aria-pressed="true"] {
  border-color: var(--info); box-shadow: inset 0 0 0 1px var(--info);
  background: var(--surface); color: var(--ink); font-weight: 700;
}
[data-ui="v2"] .v2-sm-choice[aria-pressed="true"] .icon { color: var(--ok); }
[data-ui="v2"] .v2-sm-choice[aria-pressed="false"] .icon { color: var(--ink-3); }
/* Dana 6: nepravděpodobná příjemka. */
[data-ui="v2"] .v2-sm-layer .t-meta.v2-sm-unlikely { display: block; flex: 1 0 100%; color: var(--bad); }
/* „po přecenění podle faktury…“ se zalamuje pod částku (dřív ořízlé). */
[data-ui="v2"] .v2-sm-factnote { display: block; white-space: normal; font-size: 11.5px; }
/* Převod jednotek pod kartou / příjemkou („20 bal = 1 000 ks“). */
[data-ui="v2"] .v2-sm-cconv { display: block; font-size: 11.5px; font-weight: 400; white-space: nowrap; }
/* UX kolo 8: čerpané řádky příjemky v souhrnu před založením. */
[data-ui="v2"] .v2-sm-crows { list-style: none; margin: 2px 0 0; padding: 0; }
[data-ui="v2"] .v2-sm-candcount { margin: 0 0 var(--sp-3); }
[data-ui="v2"] .v2-sm-fplanrows { list-style: none; margin: 2px 0 var(--sp-2); padding: 0 0 0 var(--sp-5); }
[data-ui="v2"] .v2-sm-fplanrows li { font-size: 12px; line-height: 1.4; }
[data-ui="v2"] .v2-sm-crows li { font-size: 11.5px; line-height: 1.35; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-cpaywarn { margin-top: var(--sp-2); }
/* „Řádek celkem“: šipka se neodtrhne od nové částky. */
[data-ui="v2"] .v2-sm-nw { white-space: nowrap; }
[data-ui="v2"] .v2-sm-dlglist { margin: var(--sp-2) 0; padding-left: var(--sp-7); list-style: disc; }
[data-ui="v2"] .v2-sm-dlglist li + li { margin-top: var(--sp-1); }
/* Souhrn k potvrzení (Dana 5): kompaktní, na velké obrazovce dva sloupce a širší dialog bez vnitřního posuvníku. */
[data-ui="v2"] .v2-sm-confirm { gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-confirm h3 { margin-top: var(--sp-1); }
[data-ui="v2"] .v2-sm-confirm .v2-sm-chint { font-weight: 400; }
[data-ui="v2"] .v2-sm-cgrid { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-3) var(--sp-7); }
[data-ui="v2"] .v2-sm-ccol { display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0; }
@media (min-width: 1000px) {
  [data-ui="v2"] .v2-sm-cgrid { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); }
  [data-ui="v2"] .v2-dlg-modal .v2-modal-card:has(.v2-sm-confirm) { width: min(96vw, 1200px); max-height: 96dvh; }
}
@media (min-width: 1000px) and (min-height: 700px) {
  [data-ui="v2"] .v2-dlg-modal:has(.v2-sm-confirm) { padding: var(--sp-4); }
}
/* UX kolo 9 (agent S): doplňované řádky (K9-03), související faktura (K9-01), rozdíl v množství
   u řádku příjemky, stálá stavba „Vyřeš za mě“ a hlavička Co dál bez poskoku. */
[data-ui="v2"] .v2-sm-filling { display: inline-flex; align-items: center; gap: var(--sp-1); color: var(--ink-2); }
[data-ui="v2"] .v2-sm-filling .icon { font-size: 16px; color: var(--ink-3, var(--ink-2)); }
[data-ui="v2"] .v2-sm-related { display: flex; flex-direction: column; gap: var(--sp-1); margin: 0 0 var(--sp-3); }
[data-ui="v2"] .v2-sm-related li { display: flex; align-items: flex-start; gap: var(--sp-2); font-size: 13px; line-height: 1.45; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-related .icon { flex: none; font-size: 17px; color: var(--info); }
[data-ui="v2"] .v2-sm-qtygap .v2-sm-badge { white-space: normal; text-align: right; }
[data-ui="v2"] .v2-sm-assistsec { font-weight: 600; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-assistacts { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-assistfoot { font-size: 12px; }
[data-ui="v2"] .v2-sm-nexthead { min-height: 28px; }

/* ============================================================
   Varianta B: kompaktní pracovní tabulka.
   Aktivace patří na kořen plochy. Pracovní selektory vyžadují table-mode;
   jediná výjimka je vlastní náhled tpreview ve sdíleném modalu.
   Stávající párování ostatních spojení zůstává beze změny.
   Barvy, písmo a geometrie navazují na Kontrolu dokladu.
   ============================================================ */
[data-ui="v2"] .v2-sm-table-mode {
  --sm-table-detail-w: 320px;
  --sm-table-min-w: 1368px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-bar {
  gap: var(--sp-3) var(--sp-5); padding: var(--sp-4) var(--sp-7);
  box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-bartitle h1 { font-size: 16px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-scroll { gap: var(--sp-5); padding: var(--sp-5) var(--sp-7); }
[data-ui="v2"] .v2-sm-table-mode .v2-btn { min-height: 32px; }
[data-ui="v2"] .v2-sm-table-mode .v2-input { border-radius: var(--r-md); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-main {
  position: relative; display: flex; flex-direction: column;
  flex: 1 1 auto; min-width: 0; min-height: 0; overflow: hidden;
  padding: var(--sp-5) var(--sp-7); gap: var(--sp-5);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsummary {
  flex: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: var(--sp-3) var(--sp-5); min-width: 0;
  padding: var(--sp-3) var(--sp-5); border: 1px solid var(--line);
  border-radius: var(--r-lg); background: var(--surface); color: var(--ink-2); font-size: 12.5px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsummary p { overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcount {
  display: inline-flex; align-items: center; gap: var(--sp-1);
  color: var(--ink); font-variant-numeric: tabular-nums; font-weight: 500;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcount.tone-ok { color: var(--ok); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcount.tone-warn { color: var(--warn); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcount.tone-bad { color: var(--bad); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcount .icon { font-size: 16px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsummary .v2-sm-safe {
  flex: 1 1 100%; padding: 0; border: 0; background: transparent; font-size: 11.5px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsummary .v2-sm-safe .icon { font-size: 14px; }

/* Plocha má jeden hlavní posuvník pro řádky; hlavička a součet se neposouvají. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace {
  position: relative; display: grid; grid-template-columns: minmax(0, 1fr);
  flex: 1 1 auto; min-width: 0; min-height: 0;
  overflow: hidden; isolation: isolate;
  border: 1px solid var(--line); border-radius: var(--r-2xl);
  background: var(--surface);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.has-detail {
  grid-template-columns: minmax(0, 1fr) 8px var(--sm-table-detail-w);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsplit {
  position: relative; cursor: col-resize; touch-action: none; background: var(--surface-2);
  border-inline: 1px solid var(--line); outline-offset: -2px; z-index: 1;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsplit::after {
  content: ''; position: absolute; top: 50%; left: 2px; width: 2px; height: 36px;
  transform: translateY(-50%); border-radius: 2px; background: var(--ink-3);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsplit:hover,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsplit:focus-visible {
  background: var(--info-soft); outline: 2px solid var(--info);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.is-resizing-detail {
  cursor: col-resize; user-select: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.is-resizing-detail * {
  cursor: col-resize;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tmain {
  display: flex; flex-direction: column; min-width: 0; min-height: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar {
  --sm-toolbar-control-h: 32px;
  flex: none; display: flex; flex-wrap: wrap; align-items: center;
  gap: var(--sp-2) var(--sp-3); padding: var(--sp-2) var(--sp-3); min-width: 0;
  border-bottom: 1px solid var(--line); background: var(--surface);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg {
  flex: 0 0 auto; max-width: 100%; min-height: var(--sm-toolbar-control-h); height: var(--sm-toolbar-control-h);
  padding: 0; border: 0; box-shadow: inset 0 0 0 1px var(--line);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn {
  min-height: var(--sm-toolbar-control-h, 32px); padding: var(--sp-1) var(--sp-2); white-space: nowrap;
  background: transparent; color: var(--ink-2); box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn > span { margin-left: var(--sp-1); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn:hover:not(:disabled),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn:hover:not(:disabled) {
  background: var(--surface); color: var(--ink);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn[aria-pressed="true"],
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn.is-active,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn[aria-pressed="true"],
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn.is-active {
  background: var(--accent-soft); color: var(--accent-text); font-weight: 600;
  box-shadow: inset 0 0 0 1px var(--accent-line);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn:focus-visible,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn:focus-visible {
  outline: 2px solid var(--focus); outline-offset: 2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn > span { font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolacts {
  display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: flex-end;
  gap: var(--sp-2); min-width: 0; max-width: 100%; margin-inline-start: auto;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolacts .v2-btn {
  flex: none; min-height: var(--sm-toolbar-control-h); height: var(--sm-toolbar-control-h);
  padding: var(--sp-1) var(--sp-2); white-space: nowrap;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs {
  flex: 0 0 auto; flex-wrap: nowrap; min-width: 0; max-width: 100%;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfilters {
  flex: 0 0 auto; flex-wrap: nowrap; min-width: 0; max-width: 100%;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolacts [data-sm-act="inline-fullscreen"] {
  margin-inline-start: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn > .icon { margin-left: 0; font-size: 16px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch {
  position: relative; display: flex; align-items: center;
  flex: 0 0 auto; width: var(--sm-toolbar-control-h); min-width: 0; max-width: 100%; margin: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch.is-expanded { width: 240px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-searchfield {
  display: flex; position: relative; flex: 1 1 auto; min-width: 0; width: 100%;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch .v2-input {
  width: 100%; min-width: 0; min-height: var(--sm-toolbar-control-h); height: var(--sm-toolbar-control-h);
  padding: var(--sp-1) 32px var(--sp-1) 32px; box-sizing: border-box;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch [hidden] { display: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch .v2-btn {
  width: var(--sm-toolbar-control-h); height: var(--sm-toolbar-control-h); min-height: var(--sm-toolbar-control-h);
  padding: 0; flex: none; display: flex; align-items: center; justify-content: center;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch.is-expanded .v2-sm-tsearch-toggle,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch-clear {
  position: absolute; inset-block-start: 0; z-index: 1; border: 0; background: transparent; box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch-toggle { inset-inline-start: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch-clear { inset-inline-end: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch .v2-btn:hover { color: var(--accent-text); background: var(--accent-soft); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch .v2-btn > .icon { margin: 0; font-size: 18px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch input::-webkit-search-cancel-button { display: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearchicon {
  position: absolute; inset-inline-start: var(--sp-2); top: 50%; transform: translateY(-50%);
  z-index: 1; font-size: 18px; line-height: 1; color: var(--ink-2); pointer-events: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearchicon > .icon { display: block; font-size: 18px; line-height: 1; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tbulk {
  flex: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-start;
  gap: var(--sp-3); padding: var(--sp-3) var(--sp-5);
  border-bottom: 1px solid var(--line); background: var(--surface-2);
  color: var(--ink-2); font-size: 12.5px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tbulk strong { color: var(--ink); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tablewrap {
  flex: 1 1 auto; min-width: 0; min-height: 0; overflow: auto;
  overscroll-behavior: contain; scrollbar-gutter: stable;
  scroll-padding-top: 42px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows {
  width: 100%; min-width: var(--sm-table-user-min-w, var(--sm-table-min-w)); table-layout: fixed;
  border-collapse: separate; border-spacing: 0;
  font: 400 12.5px/1.35 var(--font-sans); color: var(--ink);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows th,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows td {
  padding: var(--sp-3) var(--sp-3); text-align: left; vertical-align: middle;
  border-bottom: 1px solid var(--line); overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows td { padding-block: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows thead th {
  position: sticky; top: 0; z-index: 2; height: 40px;
  background: var(--surface-2); color: var(--ink-2);
  font-size: 11.5px; font-weight: 600; line-height: 1.35; padding-inline-end: var(--sp-4);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort {
  display: flex; align-items: center; gap: var(--sp-1); width: 100%; min-width: 0; min-height: 24px;
  max-width: 100%; padding: 0; border: 0; background: transparent; color: inherit;
  font: inherit; text-align: inherit; white-space: normal; overflow-wrap: anywhere; cursor: pointer;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort.is-active { color: var(--accent-text); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort:hover {
  color: var(--accent-text); text-decoration: underline; text-underline-offset: 2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort-mark { flex: 0 0 14px; font-size: 12px; line-height: 1; color: var(--ink-3); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort-mark.on,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsort.is-active .v2-sm-tsort-mark { color: var(--accent-text); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tqty .v2-sm-tsort,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tprice .v2-sm-tsort,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tamount .v2-sm-tsort { justify-content: flex-end; }
/* Uživatelovy šířky určuje colgroup; záhlaví je nesmí přepsat. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows th,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows td { width: auto; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx { color: var(--ink-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-col-resize {
  position: absolute; inset: 0 0 0 auto; width: 8px; z-index: 3;
  cursor: col-resize; touch-action: none; user-select: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-col-resize::after {
  content: ''; position: absolute; inset: var(--sp-2) 3px;
  background: var(--line-2); border-radius: var(--r-sm);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-col-resize:hover::after,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-col-resize:focus-visible::after { background: var(--accent-text); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-col-resize:focus-visible {
  outline: 2px solid var(--focus); outline-offset: -2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tqty,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tprice,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tamount {
  text-align: right; font-variant-numeric: tabular-nums; overflow-wrap: normal;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow { scroll-margin-top: 42px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > td { background: var(--surface); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow { cursor: pointer; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow:focus-visible { outline: 2px solid var(--focus); outline-offset: -2px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow:hover > td { background: var(--surface-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow.is-selected > td,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow[aria-selected="true"] > td { background: var(--info-soft); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow.is-selected > td:first-child,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow[aria-selected="true"] > td:first-child {
  box-shadow: inset 3px 0 0 var(--info);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trow:focus-visible {
  outline: 2px solid var(--focus); outline-offset: -2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-titem strong { display: block; font-weight: 500; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-titem .v2-sm-linefocus {
  display: block; width: 100%; min-height: 32px; font-size: 12.5px; font-weight: 400;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tbox {
  display: block; box-sizing: border-box; width: 100%; min-width: 0;
  padding: 0; border: 0; background: transparent; color: var(--ink);
  font: 400 12.5px/1.35 var(--font-sans);
  text-align: inherit; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-ttext {
  display: block; min-width: 0; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-fields {
  display: block; width: 100%; min-width: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-input {
  box-sizing: border-box; width: 100%; min-width: 0; height: 32px;
  padding: 4px 6px; font-size: 12.5px; text-align: right;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-input[data-sm-le="unit"] {
  text-align: left;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-input[readonly] {
  background: var(--surface-2); color: var(--ink-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-note {
  flex: 0 0 auto; min-width: 0; background: var(--info-soft); white-space: normal;
  padding: 8px 12px; border-top: 1px solid var(--line);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-help {
  display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
  gap: 8px 16px; font-size: 12px; color: var(--ink-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-help > span { flex: 1 1 320px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-note .v2-sm-leacts { margin: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tinline-note .v2-sm-letotal { margin: 4px 0 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tbox {
  display: inline-flex; align-items: center; width: fit-content; max-width: 100%; min-height: 28px;
  padding: var(--sp-1) var(--sp-2); border: 1px solid var(--line);
  border-radius: var(--r-md); background: var(--surface-2);
  cursor: pointer; text-align: left;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tcatalog {
  border-color: var(--accent-line); background: var(--accent-soft); color: var(--accent-text);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-titem button.v2-sm-linefocus {
  width: 100%; padding: 0; border: 0; background: transparent; color: var(--ink);
  font-weight: 400; text-decoration: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tbox:hover:not(:disabled) {
  border-color: var(--accent-text); color: var(--accent-text);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tbox:focus-visible {
  outline: 2px solid var(--focus); outline-offset: 2px;
}
/* Vyhledání karty je neutrální; zelená znamená existující platné přiřazení. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog:hover:not(:disabled) {
  min-height: 32px; border-color: var(--line-2); background: var(--surface-2); color: var(--ink);
  gap: var(--sp-1); overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog.is-linked,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog.is-linked:hover:not(:disabled) {
  border-color: var(--ok); background: var(--ok-soft); color: var(--ok);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog.has-card-error,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog.has-card-error:hover:not(:disabled) {
  border-color: var(--bad); background: var(--bad-soft); color: var(--bad);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog > .icon {
  flex: none; font-size: 16px; line-height: 1;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link {
  display: inline-flex; align-items: center; min-width: 0; max-width: 100%; min-height: 32px;
  padding: 0; border: 0; border-radius: var(--r-sm); background: transparent; color: var(--ink);
  font: inherit; text-align: inherit; white-space: normal; overflow-wrap: anywhere; cursor: pointer;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue { width: 100%; justify-content: flex-end; text-align: right; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tunit button.v2-sm-tvalue { justify-content: flex-start; text-align: left; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link + button.v2-sm-treceipt-link { margin-inline-start: var(--sp-1); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-treceipt-list { display: flex; flex-direction: column; align-items: flex-start; gap: 0; min-width: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-treceipt-list button.v2-sm-treceipt-link { min-height: 20px; line-height: 1.2; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-treceipt-list button.v2-sm-treceipt-link + button.v2-sm-treceipt-link { margin-inline-start: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue:hover:not(:disabled),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link:hover:not(:disabled),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue:focus-visible,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link:focus-visible {
  text-decoration: underline; text-underline-offset: 2px;
  color: var(--accent-text);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue:focus-visible,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue:disabled,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link:disabled { color: var(--ink-2); cursor: default; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcardname { white-space: normal; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label .v2-sm-tbox { flex: 1 1 auto; min-width: 28px; text-align: center; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstate .v2-sm-tbox { padding: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstate .v2-sm-badge { max-width: 100%; white-space: normal; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdecisions {
  border-top: 1px solid var(--line); margin-top: var(--sp-4); padding-top: var(--sp-3);
  min-width: 0; font-size: 12.5px; line-height: 1.5; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdecisions > h3 { font-size: 12.5px; margin: 0 0 var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdecisions > p { margin: var(--sp-2) 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdecision-acts { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-top: var(--sp-3); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdecision-acts .v2-btn { white-space: normal; text-align: left; max-width: 100%; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-titem > small,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tmatch small {
  display: block; margin-top: 2px; color: var(--ink-2); font-size: 11.5px; line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tmatch > span { display: block; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tmatch > span + span { margin-top: var(--sp-1); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tmatch b { font-weight: 500; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tsub {
  display: block; margin-top: 2px; color: var(--ink-2); font-size: 11.5px; line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-titem .v2-sm-tsub { overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstate .v2-sm-badge {
  display: inline-flex; align-items: center; gap: var(--sp-1);
  padding: 0; border: 0; border-radius: 0; background: transparent;
  font-size: 11.5px; line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstate .v2-sm-badge .icon {
  flex: 0 0 15px; width: 15px; height: 15px; line-height: 15px; overflow: hidden;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus {
  display: inline-flex; align-items: flex-start; gap: var(--sp-1); max-width: 100%;
  padding: 0; border: 0; background: transparent; font-size: 12px; line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus > span { min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus > .icon { flex: 0 0 16px; font-size: 16px; line-height: 1; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus.tone-ok { color: var(--ok); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus.tone-warn { color: var(--warn); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus.tone-bad { color: var(--bad); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus.tone-info { color: var(--info); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tstatus.tone-mut { color: var(--ink-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows[data-sm-density="compact"] td { padding-block: var(--sp-1); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows[data-sm-density="normal"] td { padding-block: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tact .v2-btn {
  min-height: 32px; max-width: 100%; padding: var(--sp-1) var(--sp-3); font-size: 12px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact .v2-sm-tactions {
  --sm-row-action-size: 32px;
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1); min-width: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction {
  display: inline-flex; flex: 0 0 var(--sm-row-action-size); align-items: center; justify-content: center;
  box-sizing: border-box; width: var(--sm-row-action-size); height: var(--sm-row-action-size);
  min-width: var(--sm-row-action-size); min-height: var(--sm-row-action-size); max-width: 100%; padding: 0;
  border: 1px solid var(--line); border-radius: var(--r-sm); background: var(--surface); color: var(--ink-2);
  cursor: pointer; box-shadow: none; transform: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction:hover:not(:disabled) {
  border-color: var(--line-2); background: var(--surface-2); color: var(--ink); box-shadow: none; transform: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction.v2-sm-tunlink:hover:not(:disabled),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction.v2-sm-tunlink:focus-visible {
  border-color: var(--bad); background: var(--bad-soft); color: var(--bad);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction:focus-visible {
  outline: 2px solid var(--focus); outline-offset: 2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction:disabled {
  cursor: not-allowed; opacity: .55; box-shadow: none; transform: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction > .icon,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact button.v2-sm-taction > svg {
  flex: none; width: 18px; height: 18px; font-size: 18px; line-height: 1; pointer-events: none;
}
@media (max-width: 720px), (pointer: coarse) {
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tact .v2-sm-tactions { --sm-row-action-size: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tcard button.v2-sm-tcatalog { min-height: 40px; }
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcheck {
  display: flex; align-items: center; justify-content: center; min-width: 32px; min-height: 32px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tcheck input {
  width: 18px; height: 18px; margin: 0; accent-color: var(--accent-fill); cursor: pointer;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label {
  display: flex; flex-direction: row; align-items: center; justify-content: center;
  gap: 4px; min-height: 32px; cursor: pointer; font-size: 11.5px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label > input {
  width: 16px; height: 16px; margin: 0; accent-color: var(--accent-fill); cursor: pointer;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label:has(input:disabled) { cursor: default; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tidx { padding-inline: 4px; text-align: center; }
[data-ui="v2"] .v2-sm-line-type { display: block; min-width: 0; }
[data-ui="v2"] .v2-sm-line-type .v2-input { box-sizing: border-box; min-width: 0; width: 100%; height: 32px; padding-block: 3px; border-radius: var(--r-md); }
[data-ui="v2"] .v2-sm-unit-conversion { display: block; margin-top: 2px; color: var(--ink-2); font-size: 11px; white-space: normal; }
[data-ui="v2"] .v2-sm-line-type small { color: var(--ink-2); font-size: 11px; }
[data-ui="v2"] .v2-sm-cost-inline { display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0; padding: var(--sp-3); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2); font-size: 12.5px; }
[data-ui="v2"] .v2-sm-cost-inline .t-meta { margin: 0; line-height: 1.4; }
[data-ui="v2"] .v2-sm-cost-heading { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: var(--sp-1) var(--sp-2); }
[data-ui="v2"] .v2-sm-cost-heading h4 { margin: 0; font-size: 13px; }
[data-ui="v2"] .v2-sm-cost-heading strong { font-variant-numeric: tabular-nums; white-space: nowrap; }
[data-ui="v2"] .v2-sm-cost-dirty { display: inline-flex; align-items: center; padding: 2px 7px; border-radius: 999px; background: var(--warn-soft); color: var(--warn); font-size: 11px; font-weight: 600; }
[data-ui="v2"] .v2-sm-cost-dirty[hidden] { display: none; }
[data-ui="v2"] .v2-sm-cost-choice { display: flex; flex-wrap: wrap; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-cost-choice label { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 5px 8px; border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); cursor: pointer; }
[data-ui="v2"] .v2-sm-cost-choice label:has(input:checked) { border-color: var(--accent-fill); background: var(--accent-soft); color: var(--accent-fill); }
[data-ui="v2"] .v2-sm-cost-choice label:has(input:disabled) { cursor: default; }
[data-ui="v2"] .v2-sm-cost-choice input { margin: 0; accent-color: var(--accent-fill); }
[data-ui="v2"] .v2-sm-cost-field { display: flex; flex-direction: column; gap: 5px; font-weight: 600; }
[data-ui="v2"] .v2-sm-cost-field .v2-input { width: 100%; min-width: 0; }
[data-ui="v2"] .v2-sm-cost-targets { display: flex; flex-direction: column; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-cost-receipt { min-width: 0; padding: var(--sp-2); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface); }
[data-ui="v2"] .v2-sm-cost-receipt-head { display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-cost-receipt-head label, [data-ui="v2"] .v2-sm-cost-target > label:first-child { display: flex; align-items: flex-start; gap: 7px; min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-cost-receipt-label { min-width: 0; overflow-wrap: anywhere; font-weight: 600; }
[data-ui="v2"] .v2-sm-cost-receipt-head input, [data-ui="v2"] .v2-sm-cost-target input[type="checkbox"] { flex: none; width: 16px; height: 16px; margin: 1px 0 0; accent-color: var(--accent-fill); }
[data-ui="v2"] .v2-sm-cost-receipt-rows { display: flex; flex-direction: column; gap: var(--sp-1); margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-cost-target { display: flex; flex-wrap: wrap; align-items: end; gap: var(--sp-1) var(--sp-2); min-width: 0; padding: var(--sp-2); border-radius: var(--r-sm); background: var(--surface-2); }
[data-ui="v2"] .v2-sm-cost-target > label:first-child { flex: 1 1 170px; }
[data-ui="v2"] .v2-sm-cost-target > label:last-child { display: flex; flex: 0 1 140px; flex-direction: column; gap: 3px; min-width: 104px; font-size: 11px; }
[data-ui="v2"] .v2-sm-cost-target .v2-input { width: 100%; min-width: 0; height: 32px; }
[data-ui="v2"] .v2-sm-cost-empty { margin: 0; padding: var(--sp-2); color: var(--ink-2); }
[data-ui="v2"] .v2-sm-cost-saved { display: flex; flex-direction: column; gap: 5px; padding: var(--sp-2); border: 1px solid var(--ok); border-radius: var(--r-md); background: var(--ok-soft); }
[data-ui="v2"] .v2-sm-cost-saved > div { display: flex; justify-content: space-between; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-cost-saved > div > span { min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-cost-saved > div > b { flex: none; font-variant-numeric: tabular-nums; white-space: nowrap; }
[data-ui="v2"] .v2-sm-cost-message { margin: 0; color: var(--ink-2); line-height: 1.4; }
[data-ui="v2"] .v2-sm-cost-message.is-error { color: var(--bad); }
[data-ui="v2"] .v2-sm-cost-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: var(--sp-2); padding: var(--sp-2) 0 0; border-top: 1px solid var(--line); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tempty {
  padding: var(--sp-10) var(--sp-7); text-align: center; color: var(--ink-2);
}

/* Detail sdílí existující editory; jeho posuvník nesmí hýbat seznamem řádků. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail {
  display: flex; flex-direction: column; min-width: 0; min-height: 0;
  border-left: 1px solid var(--line); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-head {
  flex: none; display: flex; align-items: flex-start; justify-content: space-between;
  gap: var(--sp-2); padding: var(--sp-2) var(--sp-3); border-bottom: 1px solid var(--line);
  background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-head h2 { margin: 0; font-size: 13px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-head .v2-btn { flex: none; min-width: 32px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-foot {
  flex: none; margin: 0; padding: var(--sp-3); background: var(--surface);
  border-top: 1px solid var(--line); border-radius: 0 0 var(--r-md) var(--r-md);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-foot.v2-sm-tedit-foot { padding: 0; background: var(--info-soft); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tedit-foot .v2-sm-tinline-note { border-top: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail-body {
  display: flex; flex-direction: column; gap: var(--sp-2);
  flex: 1 1 auto; min-height: 0; overflow: auto; padding: var(--sp-3);
  overscroll-behavior: contain; scrollbar-gutter: stable;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-line {
  gap: var(--sp-2); padding: 0; border: 0; border-radius: 0; background: transparent;
  box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-allocs {
  width: 100%; margin: 0; padding: 0; list-style: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-linehead { gap: var(--sp-1) var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-linehead h3 {
  flex-basis: 150px; margin: 0; font-size: 13px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-linefocus { font-size: 13px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-linebadges { gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-detail-label {
  margin: 0; color: var(--ink-2); font-size: 11.5px; line-height: 1.35; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-1) var(--sp-3); margin: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-facts dd { margin: 0; white-space: normal; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-ledit {
  gap: var(--sp-2); padding: var(--sp-2); background: var(--surface);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-lefields { gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-lefields .v2-sm-field {
  flex: 1 1 calc(50% - var(--sp-2)); min-width: min(112px, 100%);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-alloc {
  gap: var(--sp-1); padding: var(--sp-2); font-size: 12px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-alloc-card {
  display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 2fr);
  align-items: baseline; gap: var(--sp-2); min-width: 0; font-size: 12px; line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-alloc-card > span {
  min-width: 0; white-space: normal; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-detailsbody { margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-tdecisions {
  margin-top: var(--sp-2); padding-top: var(--sp-2); line-height: 1.35;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-lineacts,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-leacts { gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-lineacts .v2-btn:not(.danger):not(.primary):not(.prepare),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-alloc-acts .v2-btn:not(.danger):not(.primary):not(.prepare),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-tdecision-acts .v2-btn:not(.danger):not(.primary):not(.prepare) {
  max-width: 100%; padding: var(--sp-1) var(--sp-2); border-color: var(--accent-line);
  background: var(--accent-soft); color: var(--accent-text); font-size: 12px;
  white-space: normal; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-lineacts .v2-btn:hover:not(:disabled) {
  border-color: var(--accent-text);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-alloc-acts .v2-btn.v2-sm-alloc-confirm {
  border-color: var(--ok); background: var(--ok-soft); color: var(--ok);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-details > summary { min-height: 32px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-next {
  padding: var(--sp-5); gap: var(--sp-3); border-radius: var(--r-lg); box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-next h2 { min-width: 0; font-size: 14px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-next h2 > span:not(.icon) { min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-nexthead {
  flex: none; flex-direction: column; align-items: flex-start; justify-content: flex-start;
  min-height: 0; gap: var(--sp-1);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-nexthead .v2-sm-linkbtn {
  position: static; float: none; transform: none; align-self: flex-start; margin: 0;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-nexttext { font-size: 12.5px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-nextacts .v2-btn { flex: 1 1 auto; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-assist { padding: var(--sp-4); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-kindchoice li .v2-btn { min-width: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-sm-kindchoice li .t-meta { flex-basis: 100%; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter {
  flex: none; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: var(--sp-3) var(--sp-5); padding: var(--sp-4) var(--sp-5);
  border-top: 1px solid var(--line); background: var(--surface); color: var(--ink-2); font-size: 12px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter strong { color: var(--ink); font-weight: 600; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter .v2-btn { min-height: 32px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter > label {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter select.v2-input {
  width: auto; min-width: 68px; min-height: 32px; padding-block: var(--sp-1);
}

/* Příjemky, rozdíly a ověření používají jednu doplňkovou plochu. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttools {
  display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; min-height: 0;
  overflow: hidden; border: 1px solid var(--line); border-radius: var(--r-2xl); background: var(--surface);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolhead {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  flex: none; gap: var(--sp-3); padding: var(--sp-5);
  border-bottom: 1px solid var(--line); background: var(--surface-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody {
  display: flex; flex-direction: column; gap: var(--sp-5);
  flex: 1 1 auto; min-width: 0; min-height: 0; overflow: auto;
  padding: var(--sp-5); overscroll-behavior: contain; scrollbar-gutter: stable;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody > * { flex: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolhead > div { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody .v2-sm-receiptspane,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody .v2-sm-discs,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody .v2-sm-recon,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbody .v2-sm-valid { padding: var(--sp-5); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipts { gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt:has(.v2-sm-receipt-details) {
  gap: 0; padding: 0; border-radius: var(--r-md);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-details { min-width: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle {
  display: flex; align-items: center; gap: var(--sp-2); min-height: 40px;
  padding: var(--sp-2) var(--sp-3); cursor: pointer; list-style: none;
  border-radius: var(--r-md); color: var(--ink); overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle::-webkit-details-marker { display: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle::marker { content: ''; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle:hover { background: var(--surface-2); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle:focus-visible {
  outline: 2px solid var(--focus); outline-offset: -2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle .v2-sm-receipthead { flex: 1 1 auto; min-width: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle h3 { margin: 0; font-size: 13px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle > b {
  display: inline-flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1);
  min-width: 0; font-size: 13px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-toggle > .t-meta { margin-inline-start: auto; font-size: 12px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-chevron {
  flex: 0 0 18px; font-size: 18px; line-height: 1; color: var(--ink-2);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-chevron > .icon { font-size: 18px; line-height: 1; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-details[open] .v2-sm-receipt-chevron { transform: rotate(90deg); }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content {
  display: flex; flex-direction: column; gap: var(--sp-2); min-width: 0;
  padding: var(--sp-3); border-top: 1px solid var(--line);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-details:not([open]) > .v2-sm-receipt-content { display: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-facts { margin: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-facts dd { margin: 0; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows { table-layout: fixed; min-width: 640px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows th { white-space: normal; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows th:first-child { width: 80px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows th:nth-child(2) { width: 18%; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows th:nth-child(3) { width: auto; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows th.num { width: 80px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows td:nth-child(2),
[data-ui="v2"] .v2-sm-table-mode .v2-sm-receipt-content .v2-sm-rows td:nth-child(3) { overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-table-mode [hidden] { display: none; }

/* Náhled je ve sdíleném modalu mimo layer. Vlastní marker izoluje jeho rozměry. */
[data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) { padding: 0; }
[data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) .v2-modal-card {
  width: min(100vw, calc((100dvh - 100px) * var(--sm-preview-page-ratio, 0.7071) + var(--sp-7)));
  min-width: min(520px, 100vw); max-width: 100vw;
  height: 100dvh; max-height: 100dvh;
}
[data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) .v2-dlg-body {
  display: flex; min-width: 0; min-height: 0; overflow: hidden; padding: 0;
}
[data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) .v2-modal-head { padding: var(--sp-3) var(--sp-4); }
[data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) .v2-dlg-foot { padding: var(--sp-2) var(--sp-3); }
[data-ui="v2"] .v2-modal .v2-sm-tpreview {
  display: flex; flex: 1 1 auto; min-width: 0; min-height: 0;
  background: var(--surface-2); overflow: hidden;
}
[data-ui="v2"] .v2-modal .v2-sm-tpreview > .v2-sm-frame {
  display: block; flex: 1 1 auto; min-width: 0; min-height: 0;
  height: 100%; width: 100%; border: 0; background: var(--surface);
}

/* Číselník je mimo layer: vlastní třída vzniká jen pro pilotní skladové párování. */
[data-ui="v2"] .v2-modal:has(.v2-sm-cardcatalog-table) .v2-dlg-body { min-width: 0; }
[data-ui="v2"] .v2-sm-cardcatalog-table { width: 100%; max-width: 100%; table-layout: fixed; }
[data-ui="v2"] .v2-sm-cardcatalog-table th,
[data-ui="v2"] .v2-sm-cardcatalog-table td { min-width: 0; overflow-wrap: anywhere; white-space: normal; vertical-align: top; }
[data-ui="v2"] .v2-sm-cardcatalog-table .v2-sm-cardcatalog-code { width: 20%; }
[data-ui="v2"] .v2-sm-cardcatalog-table .v2-sm-cardcatalog-name { width: 55%; }
[data-ui="v2"] .v2-sm-cardcatalog-table .v2-sm-cardcatalog-ean { width: 20%; }
[data-ui="v2"] .v2-sm-cardcatalog-table .v2-sm-cardcatalog-unit { width: 5%; padding-inline: var(--sp-1); }

/* Konfigurace sloupců musí zachovat čitelné názvy i pořadí na úzké ploše. */
[data-ui="v2"] .v2-sm-columns { display: flex; flex-direction: column; gap: var(--sp-3); min-width: 0; }
[data-ui="v2"] .v2-sm-columns ul { display: flex; flex-direction: column; gap: var(--sp-2); margin: 0; padding: 0; list-style: none; }
[data-ui="v2"] .v2-sm-column-option {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2);
  min-width: 0; padding: var(--sp-2); border: 1px solid var(--line); border-radius: var(--r-md);
}
[data-ui="v2"] .v2-sm-column-option > label {
  display: flex; align-items: center; gap: var(--sp-2); flex: 1 1 160px;
  min-width: 0; min-height: 32px; cursor: pointer; overflow-wrap: anywhere;
}
[data-ui="v2"] .v2-sm-column-option input[type="checkbox"] {
  flex: none; width: 18px; height: 18px; margin: 0; accent-color: var(--accent-fill);
}
[data-ui="v2"] .v2-sm-column-option .v2-btn { min-width: 32px; min-height: 32px; padding: var(--sp-1) var(--sp-2); }
[data-ui="v2"] .v2-sm-columns > label {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); color: var(--ink-2);
}
[data-ui="v2"] .v2-sm-columns .v2-input { max-width: 100%; width: auto; }

@media (max-width: 1100px) {
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tsplit { display: none; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.has-detail { grid-template-columns: minmax(0, 1fr); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.has-detail .v2-sm-tdetail {
    position: absolute; inset: 0 0 0 auto; z-index: 4; width: min(380px, 100%);
    box-shadow: var(--shadow-pop);
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch { max-width: none; }
}
@media (max-width: 720px) {
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-scroll { padding: var(--sp-3); gap: var(--sp-3); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-main { padding: var(--sp-3); gap: var(--sp-3); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tsummary { padding: var(--sp-3); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar { --sm-toolbar-control-h: 40px; align-items: stretch; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg { flex-wrap: wrap; width: 100%; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn { flex: 1 1 auto; min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tfilters { flex-wrap: wrap; width: 100%; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn { flex: 1 1 auto; min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolacts { flex-basis: 100%; flex-wrap: wrap; width: 100%; max-width: none; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch { min-width: 0; max-width: 100%; margin-left: 0; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tsearch .v2-input { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows { min-width: 0; display: block; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows colgroup { display: none; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows thead {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0;
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows tbody { display: block; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow {
    display: grid; grid-template-columns: 40px minmax(0, 1fr); border-bottom: 1px solid var(--line);
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > td {
    display: flex; justify-content: space-between; align-items: baseline; gap: var(--sp-3);
    width: auto; min-width: 0; padding: var(--sp-2) var(--sp-5); border-bottom: 0; grid-column: 2;
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > td[data-label]::before {
    content: attr(data-label); flex: none; color: var(--ink-2); font-size: 11.5px; text-align: left;
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-tidx {
    grid-column: 1; grid-row: 1 / span 9; justify-content: center; padding: var(--sp-3) var(--sp-1);
  }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-titem { display: block; padding-top: var(--sp-4); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-titem::before { display: none; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-tmatch { display: block; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-tmatch::before { display: block; margin-bottom: var(--sp-1); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-treceipt { display: block; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-treceipt::before { display: block; margin-bottom: var(--sp-1); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-tact { justify-content: flex-end; padding-bottom: var(--sp-4); }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tact .v2-btn,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tcheck { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tcheck input { width: 22px; height: 22px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label > input { width: 22px; height: 22px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tworkspace.has-detail .v2-sm-tdetail { width: 100%; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tdetail .v2-btn { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tbox { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link { min-height: 40px; }
  [data-ui="v2"] .v2-sm-columns .v2-btn,
  [data-ui="v2"] .v2-sm-column-option > label { min-height: 40px; }
  [data-ui="v2"] .v2-modal:has(.v2-sm-tpreview) .v2-modal-card { width: 100vw; min-width: 0; border-radius: 0; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter .v2-btn { min-height: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tfooter select.v2-input { min-height: 40px; }
}
@media (pointer: coarse) {
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar { --sm-toolbar-control-h: 40px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-workspace-tabs .v2-seg-btn,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tact .v2-btn,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tcheck,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tbox,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-tvalue,
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows button.v2-sm-treceipt-link,
  [data-ui="v2"] .v2-sm-columns .v2-btn,
  [data-ui="v2"] .v2-sm-column-option > label { min-height: 40px; }
}
@media (max-width: 720px), (pointer: coarse) {
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-treceipt-list button.v2-sm-treceipt-link { min-height: 40px; }
}

/* Nízká plocha (např. zvětšení na 200 %) ponechá tabulku dostupnou.
   Její lokální posuvník zůstává oddělený od posunu pracovních nástrojů. */
@media (max-width: 720px) and (max-height: 650px) {
  [data-ui="v2"] .v2-sm-table-mode.v2-sm-layer:not(.v2-sm-embedded) .v2-sm-tmain {
    overflow: auto;
  }
  [data-ui="v2"] .v2-sm-table-mode.v2-sm-layer:not(.v2-sm-embedded) .v2-sm-tablewrap {
    flex: none; height: 160px; min-height: 160px;
  }
}

/* Varianta A: párování v širokém pásu Kontroly dokladu. */
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock {
  display: flex; height: var(--rv-dock-height, 430px); min-height: 0;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock-grid {
  grid-template-rows: minmax(0, 1fr);
  align-items: stretch; flex: 1 1 0; min-height: 0; max-height: none; overflow: hidden;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open:not(.rv-stock-pairing-split) .rv-rows-dock-grid { grid-template-columns: minmax(0, 1fr); }
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open:not(.rv-stock-pairing-split) .rv-recap-dock-body { display: none; }
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock-body {
  flex-direction: column; min-height: 0; max-height: none; overflow: hidden;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open #rv-rowscard {
  flex: 1 1 0; height: auto; max-height: none; min-height: 0; overflow: hidden;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open #rv-rowscard > .rv-section-headrow {
  flex: none;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open #rv-rowscard > .rv-section-body:not([hidden]) {
  display: flex; flex-direction: column; flex: 1 1 0;
  min-width: 0; min-height: 0; overflow: hidden; padding: 0; gap: 0;
}
[data-ui="v2"] #rv-stock-inline-host:not([hidden]) {
  display: flex; flex-direction: column; flex: 1 1 0;
  min-width: 0; min-height: 0; width: 100%; overflow: hidden;
}
[data-ui="v2"] #rv-stock-inline-host[hidden] { display: none; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-layer.v2-sm-embedded {
  position: relative; inset: auto; z-index: auto; flex: 1 1 0;
  min-width: 0; min-height: 0; width: 100%; height: auto;
}
/* Vložený editor mění výšku řádku pod horní kontrolou dokladu. Ukotvení posuvu
   prohlížeče nesmí při té změně přesunout celý review; kolečko na okraji
   tabulky/detailu musí dál posouvat nadřazený formulář. */
/* `overflow:hidden` z širokého režimu ponechá obal programově posuvný.
   Fokus řádku jej pak odsune, ale uživatel jej kolečkem nevrátí. */
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open { overflow: clip; overflow-anchor: none; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tablewrap,
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tdetail-body { overscroll-behavior-y: auto; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-main { padding: 0; gap: var(--sp-2); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tworkspace {
  grid-template-rows: auto auto minmax(96px, 1fr) auto;
  overflow-y: auto; border: 0; border-radius: 0;
}
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tmain { display: contents; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-ttoolbar { grid-column: 1 / -1; grid-row: 1; padding: var(--sp-2) var(--sp-4); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-ttoolbar { gap: var(--sp-2) var(--sp-3); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg-btn { padding-inline: var(--sp-2); font-size: 12px; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-tsearch { flex-basis: auto; max-width: 240px; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-ttoolacts .v2-btn { padding-inline: var(--sp-2); font-size: 12px; }

/* Dohledání příjemky: dva způsoby párování a pravý panel přes výšku okna. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-sm-receipt-pair {
  display: inline-flex; flex: 0 0 auto; flex-wrap: nowrap; width: auto; padding: 0;
  height: var(--sm-toolbar-control-h); border: 1px solid var(--ink-3); background: var(--info); box-shadow: none;
  border-radius: var(--r-md); overflow: hidden;
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn {
  border: 0; border-radius: 0; background: var(--info); color: var(--on-info);
  box-shadow: none; font-weight: 600; white-space: nowrap;
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:first-child {
  border-right: 1px solid var(--line); background: var(--surface); color: var(--ink);
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn.v2-sm-receipt-ai {
  background: linear-gradient(110deg, var(--info), var(--purple));
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:hover:not(:disabled) {
  filter: brightness(1.12); color: var(--on-info);
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:first-child:hover:not(:disabled) {
  filter: none; background: var(--surface-2); color: var(--ink);
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:focus-visible {
  outline: 2px solid var(--on-info); outline-offset: -3px;
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:first-child:focus-visible { outline-color: var(--ink); }
[data-ui="v2"] .v2-sm-receipt-ai .icon {
  background: linear-gradient(135deg, color-mix(in srgb, var(--on-info) 70%, var(--warn)), color-mix(in srgb, var(--on-info) 70%, var(--ok)) 35%, color-mix(in srgb, var(--on-info) 70%, var(--purple)) 65%, color-mix(in srgb, var(--on-info) 70%, var(--accent)));
  background-clip: text; -webkit-background-clip: text; color: transparent;
}
[data-ui="v2"] .v2-btn.v2-sm-assist-ai {
  border-color: transparent; background: linear-gradient(110deg, var(--info), var(--purple));
  color: var(--on-info); font-weight: 600;
}
[data-ui="v2"] .v2-btn.v2-sm-assist-ai:hover:not(:disabled) { filter: brightness(1.12); color: var(--on-info); }
[data-ui="v2"] .v2-btn.v2-sm-assist-ai .icon {
  background: linear-gradient(135deg, color-mix(in srgb, var(--on-info) 70%, var(--warn)), color-mix(in srgb, var(--on-info) 70%, var(--ok)) 35%, color-mix(in srgb, var(--on-info) 70%, var(--purple)) 65%, color-mix(in srgb, var(--on-info) 70%, var(--accent)));
  background-clip: text; -webkit-background-clip: text; color: transparent;
}
[data-ui="v2"] .v2-sm-receipt-pair .v2-btn:disabled {
  opacity: .55; filter: saturate(.35); cursor: not-allowed;
}
@media (forced-colors: active) {
  [data-ui="v2"] .v2-sm-receipt-pair .v2-btn { border: 1px solid ButtonText; }
  [data-ui="v2"] .v2-sm-receipt-ai .icon { background: none; color: ButtonText; }
  [data-ui="v2"] .v2-btn.v2-sm-assist-ai { border: 1px solid ButtonText; background: ButtonFace; color: ButtonText; }
  [data-ui="v2"] .v2-btn.v2-sm-assist-ai .icon { background: none; color: ButtonText; }
}
[data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-dlg-body { display: flex; overflow: hidden; padding: var(--sp-4); }
[data-ui="v2"] .v2-sm-receipt-chooser { display: flex; flex-direction: column; flex: 1; width: 100%; min-height: 0; gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-receipt-form { flex: none; margin: 0; }
[data-ui="v2"] .v2-sm-receipt-form > p { margin: 0; }
[data-ui="v2"] .v2-sm-receipt-supplier { flex: none; margin: 0; font-size: 12px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-receipt-dates { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); }
[data-ui="v2"] .v2-sm-receipt-dates label { display: grid; min-width: 0; gap: var(--sp-1); color: var(--muted); font-size: 12px; font-weight: 600; }
[data-ui="v2"] .v2-sm-receipt-dates .v2-input { min-width: 0; width: 100%; }
[data-ui="v2"] .v2-sm-receipt-filters { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-3); margin-block: var(--sp-3); }
[data-ui="v2"] .v2-sm-receipt-filters label { display: inline-flex; align-items: center; min-height: 32px; gap: var(--sp-1); cursor: pointer; }
[data-ui="v2"] .v2-sm-receipt-filters input, [data-ui="v2"] .v2-sm-receipt-choice input { accent-color: var(--accent); width: 16px; height: 16px; flex: none; }
[data-ui="v2"] .v2-sm-receipt-filters button { margin-left: auto; }
[data-ui="v2"] .v2-sm-receipt-firm { margin: var(--sp-2) 0; font-size: 12px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-receipt-identity-warning { display: flex; gap: var(--sp-2); padding: var(--sp-3); margin: 0 0 var(--sp-3); border: 1px solid var(--warn-line); border-radius: var(--r-md); background: var(--warn-soft); color: var(--warn); font-size: 12px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-receipt-identity-warning p { margin: var(--sp-2) 0; }
[data-ui="v2"] .v2-sm-receipt-message { font-size: 12px; color: var(--muted); margin: 0; flex: none; }
[data-ui="v2"] .v2-sm-receipt-message:empty { display: none; }
[data-ui="v2"] .v2-sm-receipt-message.is-error, [data-ui="v2"] .v2-sm-receipt-blocked { color: var(--bad); }
[data-ui="v2"] .v2-sm-receipt-list { flex: 1; min-height: 0; overflow: auto; scrollbar-gutter: stable; }
@media (max-height: 620px) {
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-dlg-body { overflow: auto; }
  [data-ui="v2"] .v2-sm-receipt-chooser { flex: none; min-height: 100%; }
  [data-ui="v2"] .v2-sm-receipt-list { flex: none; overflow: visible; }
}
[data-ui="v2"] .v2-sm-receipt-results { margin: 0; padding: 0; border: 0; display: grid; gap: var(--sp-2); min-width: 0; }
[data-ui="v2"] .v2-sm-receipt-result { padding: var(--sp-3); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2); min-width: 0; }
[data-ui="v2"] .v2-sm-receipt-result:has(input:checked) { border-color: var(--info); box-shadow: inset 0 0 0 1px var(--info); }
[data-ui="v2"] .v2-sm-receipt-result.is-assigned { background: var(--surface-2); }
[data-ui="v2"] .v2-sm-receipt-choice { display: flex; gap: var(--sp-3); align-items: center; cursor: pointer; min-width: 0; }
[data-ui="v2"] .v2-sm-receipt-choice > span:not(.v2-sm-receipt-score) { flex: 1; min-width: 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-receipt-choice b { display: flex; align-items: center; gap: var(--sp-1); }
[data-ui="v2"] .v2-sm-receipt-choice small { display: block; font-size: 12px; font-weight: 400; color: var(--muted); margin-top: 2px; }
[data-ui="v2"] .v2-sm-receipt-score { flex: none; text-align: right; color: var(--accent-text); font-weight: 700; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-receipt-evidence, [data-ui="v2"] .v2-sm-receipt-assigned, [data-ui="v2"] .v2-sm-receipt-blocked { font-size: 12px; margin: var(--sp-2) 0; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-receipt-evidence { color: var(--muted); }
[data-ui="v2"] .v2-sm-receipt-assigned { display: flex; align-items: center; gap: var(--sp-1); color: var(--ok); }
[data-ui="v2"] .v2-sm-receipt-progress { display: flex; align-items: center; gap: var(--sp-1); color: var(--warn); background: var(--warn-soft); border-radius: var(--r-sm); padding: var(--sp-2); margin-block: var(--sp-2); font-size: 12px; }
[data-ui="v2"] .v2-sm-receipt-result summary { font-size: 12px; color: var(--accent-text); cursor: pointer; margin-top: var(--sp-2); padding-block: var(--sp-2); }
[data-ui="v2"] .v2-sm-receipt-rows { overflow-x: auto; margin-top: var(--sp-2); }
[data-ui="v2"] .v2-sm-receipt-rows table { width: 100%; border-collapse: collapse; font-size: 12px; }
[data-ui="v2"] .v2-sm-receipt-rows th, [data-ui="v2"] .v2-sm-receipt-rows td { padding: var(--sp-2) var(--sp-1); text-align: left; border-bottom: 1px solid var(--line); vertical-align: top; }
[data-ui="v2"] .v2-sm-receipt-rows th { color: var(--muted); font-weight: 600; }
[data-ui="v2"] .v2-sm-receipt-rows .t-num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-receipt-rows td:nth-child(3) { min-width: 150px; overflow-wrap: anywhere; }
@media (max-width: 600px) {
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-btn, [data-ui="v2"] .v2-sm-receipt-dates .v2-input { min-height: 40px; }
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-dlg-body { padding: var(--sp-3); }
  [data-ui="v2"] .v2-sm-receipt-filters { gap: var(--sp-2); }
  [data-ui="v2"] .v2-sm-receipt-filters button { margin-left: 0; width: 100%; }
  [data-ui="v2"] .v2-sm-receipt-choice { gap: var(--sp-2); }
}
@media (max-height: 600px) {
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-modal-head { padding: var(--sp-3); }
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-modal-head .t-eyebrow,
  [data-ui="v2"] .v2-dlg:has(.v2-sm-receipt-chooser) .v2-modal-head .t-meta { display: none; }
  [data-ui="v2"] .v2-sm-receipt-chooser { gap: var(--sp-2); }
  [data-ui="v2"] .v2-sm-receipt-filters { margin-block: var(--sp-2); }
  [data-ui="v2"] .v2-sm-receipt-form > p { font-size: 11px; line-height: 1.3; }
}
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-trows[data-sm-density="compact"] td { padding-block: var(--sp-1); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tbulk { grid-column: 1 / -1; grid-row: 2; padding: var(--sp-2) var(--sp-4); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tablewrap { grid-column: 1; grid-row: 3; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tsplit { grid-column: 2; grid-row: 3; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tdetail { grid-column: 3; grid-row: 3; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tfooter { grid-column: 1 / -1; grid-row: 4; padding: var(--sp-2) var(--sp-4); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-bar {
  flex: none; padding: var(--sp-2) var(--sp-4); gap: var(--sp-2); box-shadow: none;
}
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-back,
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-qback,
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-bartitle { display: none; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tsummary {
  padding: var(--sp-2) var(--sp-4); border-radius: 0; border-inline: 0;
}
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode.v2-sm-embedded .v2-sm-bar,
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode.v2-sm-embedded .v2-sm-tsummary,
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode.v2-sm-embedded [data-sm-act="table-tool"][data-tool="summary"] { display: none; }
[data-ui="v2"] .v2-sm-table-mode.v2-sm-layer:not(.v2-sm-embedded) [data-sm-act="inline-fullscreen"] { display: none; }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-tworkspace.has-external-detail { grid-template-columns: minmax(0, 1fr); }
[data-ui="v2"] #rv-stock-inline-host .v2-sm-table-mode .v2-sm-tworkspace.has-external-detail .v2-sm-tsplit {
  position: absolute; inset: 0 0 0 auto; width: 8px; z-index: 5; grid-column: auto; grid-row: auto;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-split .rv-recap-dock-body { min-width: 0; min-height: 0; overflow: hidden; }
[data-ui="v2"] #rv-wrap.rv-stock-pairing-split .rv-stock-detail-card {
  display: flex; flex-direction: column; padding: 0; min-width: 0; min-height: 0; flex: 1 1 0;
}
[data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host {
  display: flex; flex-direction: column; flex: 1 1 0; min-width: 0; min-height: 0;
  width: 100%; overflow: hidden;
}
[data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host .v2-sm-tdetail {
  position: static; inset: auto; display: flex; flex: 1 1 0; width: 100%; min-width: 0; min-height: 0;
  border: 0; border-radius: var(--r-lg); background: var(--surface); box-shadow: none;
}
[data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host .v2-sm-tdetail-head { background: var(--surface); }
[data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host [data-sm-act="table-detail-close"] { display: none; }
[data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host .v2-sm-tdetail-body { min-height: 0; }
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split:not(.rv-rows-wide-open) #rv-rowscard {
  display: flex; flex-direction: column; height: var(--rv-dock-height, 430px); flex: none;
}
[data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split:not(.rv-rows-wide-open) .rv-stock-detail-card {
  min-height: 280px; max-height: var(--rv-dock-height, 430px); flex: none;
}
@media (max-width: 1100px) {
  [data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tdetail { grid-column: 1; }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split .rv-rows-dock {
    height: auto; max-height: none;
  }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split .rv-rows-dock-grid.has-recap {
    grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto;
    flex: none; width: 100%; overflow: visible;
  }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split .rv-rows-dock-body,
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split .rv-recap-dock-body { max-height: none; }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split #rv-rowscard {
    height: var(--rv-dock-height, 430px); flex: none; max-height: none;
  }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split .rv-stock-detail-card {
    height: var(--rv-dock-height, 430px); min-height: 280px; max-height: 480px; flex: none;
  }
}
@media (max-width: 1280px) {
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock { position: relative; bottom: auto; }
}
@media (max-width: 720px) {
  /* Na telefonu je A součást stránky. Pevná výška řádků nedovolí,
     aby delší lišty vytlačily tabulku a detail na nulovou výšku. */
  [data-ui="v2"] #rv-wrap:has(#rv-rowscard .v2-stock-row-mode) .rv-actions {
    position: static;
  }
  [data-ui="v2"] #rv-wrap:has(#rv-rowscard .v2-stock-row-mode) .rv-actions::before {
    display: none;
  }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock {
    height: auto; max-height: none;
  }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open .rv-rows-dock-grid,
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open #rv-rowscard,
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open #rv-rowscard > .rv-section-body:not([hidden]),
  [data-ui="v2"] #rv-stock-inline-host:not([hidden]),
  [data-ui="v2"] #rv-stock-inline-host .v2-sm-layer.v2-sm-embedded,
  [data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-main,
  [data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tworkspace { flex: none; }
  [data-ui="v2"] #rv-stock-inline-host .v2-sm-embedded .v2-sm-tworkspace {
    grid-template-rows: auto auto 280px auto;
  }
  [data-ui="v2"] .v2-sm-table-mode.v2-sm-inline-detail-host { flex: none; min-height: 280px; max-height: 480px; }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split:not(.rv-rows-wide-open) #rv-rowscard { height: auto; }
  [data-ui="v2"] #rv-wrap.rv-stock-pairing-open.rv-stock-pairing-split #rv-rowscard { height: auto; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tbox { flex: 1 1 0; width: auto; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trows .v2-sm-tidx .v2-sm-tbox { padding-inline: 3px; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-trow > .v2-sm-tidx::before { display: none; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-tidx > label { flex-direction: column; }
  [data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-seg { height: auto; }
}

/* Compact columns follow their longest value; resizing is reserved for descriptive columns. */
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows [data-sm-auto-width],
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows [data-sm-auto-width] .v2-sm-tsort,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows [data-sm-auto-width] .v2-sm-ttext,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows [data-sm-auto-width] .v2-sm-tvalue,
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows [data-sm-auto-width] .v2-sm-unit-conversion {
  white-space: nowrap; overflow-wrap: normal; word-break: normal;
}

/* Celá obrazovka: tabulka a detail mají každý vlastní kartu a posuvník. */
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tworkspace {
  border: 0; border-radius: 0; background: transparent; overflow: visible;
}
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tmain,
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tdetail {
  border: 1px solid var(--line); border-radius: var(--r-2xl);
  background: var(--surface); overflow: hidden;
}
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tdetail-head {
  background: var(--surface);
}
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tsplit {
  border: 0; background: transparent;
}
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tsplit:hover,
[data-ui="v2"] .v2-sm-layer.v2-sm-table-mode:not(.v2-sm-embedded) .v2-sm-tsplit:focus-visible {
  background: var(--info-soft);
}

/* Úzký typ řádku: plný text zůstává v nabídce, zvolená hodnota se nezalamuje. */
[data-ui="v2"] .v2-sm-line-type .v2-input,
[data-ui="v2"] .v2-sm-line-type .v2-combo-trigger {
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
[data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"] {
  appearance: none; flex: 0 0 18px; width: 18px; height: 18px; margin: 0;
  border: 1px solid var(--ink-3); border-radius: 4px; background: var(--surface);
  display: grid; place-content: center; cursor: pointer;
}
[data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"]:checked {
  background: var(--info); border-color: var(--info);
}
[data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"]:checked::after {
  content: ''; width: 8px; height: 4px; border-left: 2px solid var(--on-info);
  border-bottom: 2px solid var(--on-info); transform: rotate(-45deg) translateY(-1px);
}
[data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"]:disabled { opacity: .5; cursor: not-allowed; }
[data-ui="v2"] .v2-sm-receipt-choice { align-items: flex-start; }
[data-ui="v2"] .v2-sm-receipt-score {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  min-width: 64px; min-height: 56px; padding: var(--sp-2); border-radius: var(--r-md);
  text-align: center; background: var(--info-soft); color: var(--info);
}
[data-ui="v2"] .v2-sm-receipt-score.tone-ok { background: var(--ok-soft); color: var(--ok); }
[data-ui="v2"] .v2-sm-receipt-score.tone-warn { background: var(--warn-soft); color: var(--warn); }
[data-ui="v2"] .v2-sm-receipt-score.tone-bad { background: var(--bad-soft); color: var(--bad); }
[data-ui="v2"] .v2-sm-receipt-score small { color: inherit; }
[data-ui="v2"] .v2-sm-receipt-firm {
  padding: var(--sp-2) var(--sp-3); border: 1px solid var(--line);
  border-radius: var(--r-md); background: var(--surface); width: 100%; box-sizing: border-box;
}
[data-ui="v2"] .v2-sm-ai-match-result {
  background: var(--hint-surface); border-color: var(--hint-line); color: var(--hint-ink);
  box-shadow: var(--hint-shadow); border-radius: var(--r-lg);
}
[data-ui="v2"] .v2-sm-ai-match-result .icon { color: var(--hint-info); }
@media (forced-colors: active) {
  [data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"] { appearance: auto; }
  [data-ui="v2"] .v2-sm-receipt-choice input[type="checkbox"]::after { display: none; }
}

[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-filter-row {
  display: flex; align-items: center; gap: var(--sp-2); flex: 0 1 auto; min-width: 0; max-width: 100%;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-filter-row > .t-meta { flex: none; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-ttoolbar .v2-sm-kind-filters {
  flex: 0 1 auto; flex-wrap: nowrap; width: auto; overflow-x: auto;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-filters .v2-seg-btn {
  display: flex; align-items: center; flex: none; cursor: pointer; position: relative;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-filters .v2-seg-btn:has(input:focus-visible) {
  outline: 2px solid var(--focus); outline-offset: -2px;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-count {
  display: inline-flex; align-items: center; justify-content: center; min-width: 20px;
  height: 20px; padding-inline: var(--sp-1); border-radius: var(--r-pill);
  background: var(--surface-2); color: var(--ink-2); font-variant-numeric: tabular-nums;
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-kind-filters .is-active .v2-sm-kind-count {
  background: var(--accent-line); color: var(--accent-text);
}
[data-ui="v2"] .v2-sm-table-mode .v2-sm-trows th.v2-sm-tabraunit { padding-inline: 4px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tabraunit .v2-sm-tsort { gap: 2px; font-size: 10px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tabraunit .v2-sm-tsort-mark { flex-basis: 8px; font-size: 10px; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-abraunit-heading { white-space: normal; line-height: 1.2; }
[data-ui="v2"] .v2-sm-table-mode .v2-sm-tabraunit .v2-sm-unit-conversion {
  display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

.v2-sm-receipt-firm-picker { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px; margin:12px 0; }
.v2-sm-receipt-firm-picker label { display:grid; gap:5px; }
.v2-sm-receipt-firm-picker .t-meta, .v2-sm-receipt-firm-options { grid-column:1 / -1; margin:0; }
.v2-sm-receipt-firm-options { display:grid; gap:5px; max-height:220px; overflow:auto; }
.v2-sm-receipt-firm-options .v2-btn { justify-content:flex-start; text-align:left; height:auto; min-height:36px; white-space:normal; }
.v2-sm-receipt-firm-options small { display:block; color:var(--ink-3); font-weight:400; }

/* Kompaktní rozpad služby na řádky příjemek, stejná tabulková řeč jako přehled párování. */
[data-ui="v2"] .v2-sm-sharetable { width: 100%; min-width: 0; margin-top: var(--sp-3); }
[data-ui="v2"] .v2-sm-sharetools, [data-ui="v2"] .v2-sm-sharefooter { display: flex; flex-wrap: wrap; gap: var(--sp-2); align-items: center; min-width: 0; }
[data-ui="v2"] .v2-sm-sharetools { margin-bottom: var(--sp-2); }
[data-ui="v2"] .v2-sm-sharesearch { position: relative; flex: 1 1 180px; min-width: 0; }
[data-ui="v2"] .v2-sm-sharesearch > .icon { position: absolute; left: 8px; top: 50%; transform: translateY(-50%); color: var(--ink-3); font-size: 18px; pointer-events: none; }
[data-ui="v2"] .v2-sm-sharesearch .v2-input { width: 100%; min-width: 0; padding-left: 30px; }
[data-ui="v2"] .v2-sm-sharetools > select { flex: 0 1 170px; min-width: 0; max-width: 100%; }
[data-ui="v2"] .v2-sm-sharewrap { width: 100%; max-width: 100%; max-height: min(360px, 45vh); min-width: 0; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; border: 1px solid var(--line); border-radius: var(--r-md); scroll-padding-top: 46px; }
[data-ui="v2"] .v2-sm-sharewrap:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-sharerows { width: 100%; min-width: 740px; table-layout: fixed; border-collapse: separate; border-spacing: 0; font-size: 12px; }
[data-ui="v2"] .v2-sm-sharerows.has-receipts { min-width: 864px; }
[data-ui="v2"] .v2-sm-sharerows th, [data-ui="v2"] .v2-sm-sharerows td { padding: 4px 8px; vertical-align: middle; border-bottom: 1px solid var(--line); text-align: left; }
[data-ui="v2"] .v2-sm-sharerows thead th { position: sticky; top: 0; z-index: 2; background: var(--surface-2); color: var(--ink-2); height: 40px; font-size: 11.5px; font-weight: 600; }
[data-ui="v2"] .v2-sm-sharerows .v2-sm-tsort { min-height: 32px; gap: 4px; white-space: nowrap; }
[data-ui="v2"] .v2-sm-sharerows tbody tr:hover { background: var(--surface-2); }
[data-ui="v2"] .v2-sm-sharerows td.num { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
[data-ui="v2"] .v2-sm-shareclip { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[data-ui="v2"] .v2-sm-sharerows .v2-sm-share { display: flex; justify-content: flex-end; align-items: center; gap: 4px; flex-wrap: wrap; }
[data-ui="v2"] .v2-sm-sharerows .v2-sm-shareinput { width: 96px; min-height: 32px; height: 32px; padding: 4px 6px; }
[data-ui="v2"] .v2-sm-sharerows .v2-sm-res-err { flex-basis: 100%; white-space: normal; }
[data-ui="v2"] .v2-sm-sharefooter { padding-top: var(--sp-2); font-size: 12px; }
[data-ui="v2"] .v2-sm-sharefooter > label { display: flex; gap: var(--sp-1); align-items: center; margin-left: auto; }
[data-ui="v2"] .v2-sm-sharefooter select { width: 68px; min-height: 32px; }
[data-ui="v2"] .v2-sm-sharesummary { margin-top: var(--sp-2); font-size: 12px; color: var(--ink-2); }
@media (pointer: coarse) { [data-ui="v2"] .v2-sm-sharerows .v2-sm-shareinput { min-height: 40px; height: 40px; } }

/* Cenový dopad zápisu: souhrny z celého plánu, samostatné tabulky zboží a VPN. */
[data-ui="v2"] .v2-sm-impact { min-width: 0; }
[data-ui="v2"] .v2-sm-impact-summary { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-impact-summary > div { display: flex; flex-direction: column; gap: var(--sp-1); flex: 1 1 180px; min-width: 0; padding: var(--sp-3); border: 1px solid var(--line); border-radius: var(--r-md); background: var(--surface-2); }
[data-ui="v2"] .v2-sm-impact-summary span { color: var(--ink-2); font-size: 12px; }
[data-ui="v2"] .v2-sm-impact-summary b { font-size: 16px; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-impact-controls { display: flex; flex-wrap: wrap; align-items: end; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-impact-controls label { display: flex; flex-direction: column; gap: var(--sp-1); min-width: 0; color: var(--ink-2); font-size: 12px; }
[data-ui="v2"] .v2-sm-impact-search { flex: 1 1 220px; }
[data-ui="v2"] .v2-sm-impact-controls .v2-input { min-height: 32px; max-width: 100%; }
[data-ui="v2"] .v2-sm-impact-controls .v2-seg { flex-wrap: wrap; height: auto; min-height: 32px; }
[data-ui="v2"] .v2-sm-impact-controls .v2-seg-btn { min-height: 32px; }
[data-ui="v2"] .v2-sm-impact-controls .v2-seg-btn[aria-pressed="true"] { color: var(--accent-text); background: var(--accent-soft); box-shadow: inset 0 -2px 0 var(--accent); }
[data-ui="v2"] .v2-sm-impact-section { min-width: 0; margin-bottom: var(--sp-3); }
[data-ui="v2"] .v2-sm-impact-section h3 { margin: var(--sp-2) 0; }
[data-ui="v2"] .v2-sm-impact-wrap { min-width: 0; max-height: min(36vh, 330px); overflow: auto; overscroll-behavior: contain; border: 1px solid var(--line); border-radius: var(--r-md); scrollbar-gutter: stable; }
[data-ui="v2"] .v2-sm-impact-wrap.is-multiple { max-height: min(26vh, 240px); }
[data-ui="v2"] .v2-sm-impact-wrap:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-impact-table { width: 100%; min-width: 680px; margin: 0; border-collapse: separate; border-spacing: 0; }
[data-ui="v2"] .v2-sm-impact-table.is-goods { min-width: 1080px; }
[data-ui="v2"] .v2-sm-impact-table thead th { position: sticky; top: 0; z-index: 1; background: var(--surface-2); vertical-align: bottom; }
[data-ui="v2"] .v2-sm-impact-table td { vertical-align: top; background: var(--surface); }
[data-ui="v2"] .v2-sm-impact-table td:nth-child(2) { min-width: 220px; max-width: 280px; overflow-wrap: anywhere; }
[data-ui="v2"] .v2-sm-impact-table td:first-child { min-width: 120px; }
[data-ui="v2"] .v2-sm-impact-table td > span { display: block; }
[data-ui="v2"] .v2-sm-impact-table .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
[data-ui="v2"] .v2-sm-impact-table .t-meta { font-size: 11px; }
[data-ui="v2"] .v2-sm-impact-table .v2-sm-impact-cost { min-width: 180px; }
[data-ui="v2"] .v2-sm-cost-key-label { display: flex; align-items: center; gap: var(--sp-2); }
[data-ui="v2"] .v2-sm-impact-sort { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-1); min-height: 32px; width: 100%; padding: 0; border: 0; background: transparent; color: var(--ink-2); font: inherit; text-align: left; cursor: pointer; }
[data-ui="v2"] .v2-sm-impact-sort:focus-visible { outline: 2px solid var(--focus); outline-offset: 2px; }
[data-ui="v2"] .v2-sm-impact-sort:hover { color: var(--accent-text); }
[data-ui="v2"] .v2-sm-impact-pages { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: var(--sp-2); padding-top: var(--sp-2); font-size: 12px; color: var(--ink-2); }
[data-ui="v2"] .v2-sm-impact-pages [role="status"] { margin-right: auto; }
[data-ui="v2"] .v2-sm-impact-exceptions { padding: var(--sp-2) var(--sp-3); border: 1px solid var(--warn); border-radius: var(--r-md); background: var(--warn-soft); }
[data-ui="v2"] .v2-sm-impact-exceptions summary { cursor: pointer; color: var(--ink); }
[data-ui="v2"] .v2-sm-impact-exceptions ul { margin-bottom: 0; }
[data-ui="v2"] .v2-sm-impact-scope { margin-bottom: 0; }
@media (max-width: 720px), (pointer: coarse) {
  [data-ui="v2"] .v2-sm-impact-controls .v2-input,
  [data-ui="v2"] .v2-sm-impact-controls .v2-seg-btn,
  [data-ui="v2"] .v2-sm-impact-sort,
  [data-ui="v2"] .v2-sm-impact-pages .v2-btn { min-height: 40px; }
  [data-ui="v2"] .v2-sm-impact-controls label { flex: 1 1 160px; }
  [data-ui="v2"] .v2-sm-impact-summary > div { flex-basis: 140px; }
}
