/* Pivoteka ERP 2.31.0.129 — Marking & expiry V2 */
.mv2-shell{display:grid;gap:16px}.mv2-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.mv2-head h2{margin:2px 0 5px;font-size:24px;line-height:1.18}.mv2-kicker{font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#64748b}.mv2-muted{color:#64748b;font-size:13px;line-height:1.45}.mv2-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.mv2-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #e5e7eb;padding-bottom:10px}.mv2-tab{border:0;background:#f4f6f8;color:#475569;padding:9px 13px;border-radius:10px;font-weight:700;cursor:pointer}.mv2-tab.is-active{background:#111827;color:#fff}.mv2-filterbar{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(160px,1fr) minmax(190px,1.2fr) minmax(190px,1.3fr) auto;gap:10px;align-items:end}.mv2-field{display:grid;gap:5px}.mv2-field>span{font-size:12px;font-weight:700;color:#64748b}.mv2-kpis{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px}.mv2-kpi{padding:14px 15px;border:1px solid #e6e9ee;border-radius:12px;background:#fff;min-width:0}.mv2-kpi span{display:block;color:#64748b;font-size:12px;font-weight:700}.mv2-kpi strong{display:block;font-size:25px;line-height:1.1;margin-top:7px;font-variant-numeric:tabular-nums}.mv2-kpi small{display:block;margin-top:4px;color:#94a3b8;font-size:11px}.mv2-kpi.is-danger strong{color:#b42318}.mv2-kpi.is-warn strong{color:#b45309}.mv2-kpi.is-good strong{color:#15803d}.mv2-grid2{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:16px}.mv2-store-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px}.mv2-store{border:1px solid #e6e9ee;border-radius:12px;padding:14px;background:#fff;cursor:pointer;transition:.12s}.mv2-store:hover{border-color:#cbd5e1;background:#fafafa}.mv2-store.is-active{border-color:#111827;box-shadow:0 0 0 1px #111827}.mv2-store-head{display:flex;justify-content:space-between;gap:10px}.mv2-store-head b{font-size:15px}.mv2-store-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.mv2-store-counts div{background:#f8fafc;border-radius:9px;padding:8px}.mv2-store-counts span{display:block;font-size:11px;color:#64748b}.mv2-store-counts strong{font-size:15px}.mv2-statusline{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.mv2-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#f1f5f9;font-size:11px;font-weight:750;color:#475569}.mv2-pill.ok{background:#ecfdf3;color:#027a48}.mv2-pill.warn{background:#fffaeb;color:#b54708}.mv2-pill.bad{background:#fef3f2;color:#b42318}.mv2-pill.off{background:#f2f4f7;color:#667085}.mv2-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.mv2-tablewrap{overflow:auto;border:1px solid #e6e9ee;border-radius:12px}.mv2-table{width:100%;border-collapse:separate;border-spacing:0;min-width:960px;background:#fff}.mv2-table th{position:sticky;top:0;background:#f8fafc;color:#64748b;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.035em;padding:10px 12px;border-bottom:1px solid #e6e9ee;z-index:1}.mv2-table td{padding:11px 12px;border-bottom:1px solid #eef0f3;font-size:13px;vertical-align:top}.mv2-table tr:last-child td{border-bottom:0}.mv2-table tr:hover td{background:#fafbfc}.mv2-num{text-align:right;font-variant-numeric:tabular-nums}.mv2-product{min-width:250px}.mv2-product b{display:block;font-size:13.5px;color:#111827}.mv2-product small,.mv2-table small{display:block;color:#7c8799;margin-top:3px;font-size:11.5px}.mv2-evidence{max-width:230px}.mv2-empty{padding:32px 20px;text-align:center;color:#64748b}.mv2-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.mv2-section-head h3{margin:0;font-size:16px}.mv2-supplier-list{display:grid;gap:10px}.mv2-supplier{border:1px solid #e6e9ee;border-radius:12px;background:#fff;overflow:hidden}.mv2-supplier-main{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(180px,.7fr) minmax(180px,.7fr) auto;align-items:center;gap:12px;padding:13px 14px}.mv2-supplier-main b{display:block}.mv2-supplier-main small{display:block;color:#7c8799;margin-top:3px}.mv2-products{border-top:1px solid #e6e9ee;background:#fafbfc;padding:10px 14px 14px}.mv2-product-row{display:grid;grid-template-columns:minmax(260px,1fr) 160px 150px;gap:12px;align-items:center;padding:8px 0;border-bottom:1px solid #edf0f3}.mv2-product-row:last-child{border-bottom:0}.mv2-switch{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:#475569}.mv2-switch input{width:18px;height:18px}.mv2-vis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.mv2-vis-card{border:1px solid #e6e9ee;border-radius:12px;background:#fff;padding:15px}.mv2-vis-card h3{margin:0 0 4px;font-size:16px}.mv2-progress{height:8px;background:#eef2f6;border-radius:999px;overflow:hidden;margin:10px 0}.mv2-progress>span{display:block;height:100%;background:#111827;border-radius:999px}.mv2-statlist{display:grid;grid-template-columns:1fr auto;gap:7px 14px;margin-top:12px}.mv2-statlist span{font-size:12px;color:#64748b}.mv2-statlist b{font-size:12px;text-align:right;font-variant-numeric:tabular-nums}.mv2-recent{display:grid;gap:7px;margin-top:12px}.mv2-recent-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #eef0f3}.mv2-recent-row b{font-size:12.5px}.mv2-recent-row small{display:block;color:#7c8799;font-size:11px}.mv2-config-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}.mv2-config-card{border:1px solid #e6e9ee;border-radius:12px;padding:14px;background:#fff}.mv2-config-card h3{margin:0 0 4px;font-size:15px}.mv2-config-card .mv2-field{margin-top:10px}.mv2-store-config{display:grid;grid-template-columns:minmax(200px,1.2fr) 120px 140px minmax(160px,.8fr) 110px 125px;gap:9px;align-items:center;padding:10px 0;border-top:1px solid #eef0f3}.mv2-store-config:first-child{border-top:0}.mv2-help{padding:12px 14px;border-radius:11px;background:#f8fafc;color:#475569;font-size:12.5px;line-height:1.5;border:1px solid #eef2f6}.mv2-infra-banner{margin:0 0 16px;border:1px solid #d9e2ec;border-radius:13px;padding:14px 16px;background:#fff}.mv2-infra-banner__top{display:flex;align-items:center;justify-content:space-between;gap:14px}.mv2-infra-contours{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.mv2-infra-contour{padding:7px 9px;border-radius:9px;background:#f8fafc;font-size:12px;color:#475569}.mv2-infra-contour b{color:#111827}.mv2-danger-text{color:#b42318}.mv2-warn-text{color:#b45309}.mv2-success-text{color:#15803d}
@media(max-width:1400px){.mv2-kpis{grid-template-columns:repeat(4,minmax(130px,1fr))}.mv2-config-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}.mv2-store-config{grid-template-columns:1fr 110px 130px 1fr}.mv2-store-config>*:nth-child(5),.mv2-store-config>*:nth-child(6){margin-top:2px}}
@media(max-width:900px){.mv2-grid2{grid-template-columns:1fr}.mv2-kpis{grid-template-columns:repeat(2,minmax(130px,1fr))}.mv2-filterbar{grid-template-columns:1fr 1fr}.mv2-config-grid{grid-template-columns:1fr}.mv2-supplier-main{grid-template-columns:1fr}.mv2-store-config{grid-template-columns:1fr 1fr}.mv2-head{flex-direction:column}.mv2-actions{justify-content:flex-start}}

/* 2.31.0.129 — per-computer SBIS/CHZ launcher */
.mv2-node-inline{margin:14px 16px 16px;padding:12px 14px;border:1px solid var(--line,#dbe2ea);border-radius:12px;background:var(--surface-soft,#f8fafc);display:flex;align-items:center;justify-content:space-between;gap:14px}
.mv2-node-inline .mv2-muted{margin-top:4px;line-height:1.45}
.mv2-recent-row .js-mv2-assign-store{min-width:180px;max-width:260px}
@media(max-width:780px){.mv2-node-inline{align-items:stretch;flex-direction:column}.mv2-recent-row .js-mv2-assign-store{max-width:none;width:100%}}

/* Pivoteka ERP 2.31.0.130 — Marking V2 light-theme readability hotfix.
   The Director shell is light, while several legacy generic rules still carry
   dark-theme text colors/opacities. Keep this block last and explicit. */
body #screen .mv2-shell,
body #screen .mv2-shell .card,
body #screen .mv2-config-card,
body #screen .mv2-store,
body #screen .mv2-supplier,
body #screen .mv2-vis-card {
  color:#172033 !important;
  -webkit-text-fill-color:#172033 !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body #screen .mv2-head h2,
body #screen .mv2-section-head h3,
body #screen .mv2-config-card h3,
body #screen .mv2-store-head b,
body #screen .mv2-supplier-main b,
body #screen .mv2-product-row b,
body #screen .mv2-vis-card h3 {
  color:#172033 !important;
  -webkit-text-fill-color:#172033 !important;
  opacity:1 !important;
}
body #screen .mv2-muted,
body #screen .mv2-config-card .mv2-muted,
body #screen .mv2-store .mv2-muted,
body #screen .mv2-recent-row small,
body #screen .mv2-supplier-main small,
body #screen .mv2-product small,
body #screen .mv2-table small {
  color:#5d7086 !important;
  -webkit-text-fill-color:#5d7086 !important;
  opacity:1 !important;
}
body #screen .mv2-field > span {
  color:#425a72 !important;
  -webkit-text-fill-color:#425a72 !important;
  opacity:1 !important;
  font-weight:800 !important;
}
body #screen .mv2-help {
  color:#334a62 !important;
  -webkit-text-fill-color:#334a62 !important;
  opacity:1 !important;
  background:#f6f9fc !important;
  border-color:#dfe7ef !important;
}
/* Store rows were the least readable part on the live screen. */
body #screen .mv2-store-config {
  color:#263c53 !important;
  opacity:1 !important;
  border-top-color:#e4eaf1 !important;
}
body #screen .mv2-store-config .mv2-switch,
body #screen .mv2-store-config label.mv2-switch {
  color:#31485f !important;
  -webkit-text-fill-color:#31485f !important;
  opacity:1 !important;
  filter:none !important;
  text-shadow:none !important;
  font-weight:750 !important;
}
body #screen .mv2-store-config > label.mv2-switch:first-child {
  color:#172f48 !important;
  -webkit-text-fill-color:#172f48 !important;
  font-size:13px !important;
  font-weight:850 !important;
}
body #screen .mv2-switch,
body #screen label.mv2-switch {
  color:#354d66 !important;
  -webkit-text-fill-color:#354d66 !important;
  opacity:1 !important;
}
body #screen .mv2-switch input,
body #screen .mv2-store-config input[type="checkbox"] {
  opacity:1 !important;
  filter:none !important;
  accent-color:#2563eb;
}
body #screen .mv2-store-config .input,
body #screen .mv2-config-card .input,
body #screen .mv2-config-card .select,
body #screen .mv2-filterbar .input,
body #screen .mv2-filterbar .select {
  background:#fff !important;
  color:#172033 !important;
  -webkit-text-fill-color:#172033 !important;
  border-color:#cad6e3 !important;
  opacity:1 !important;
}
body #screen .mv2-store-config .input::placeholder,
body #screen .mv2-config-card .input::placeholder {
  color:#8190a2 !important;
  -webkit-text-fill-color:#8190a2 !important;
  opacity:1 !important;
}
body #screen .mv2-pill { opacity:1 !important; }
body #screen .mv2-node-inline {
  background:#f8fafc !important;
  color:#172033 !important;
  border-color:#d8e2ec !important;
}
body #screen .mv2-node-inline b { color:#172033 !important; -webkit-text-fill-color:#172033 !important; }


/* 2.31.0.140: expiry KPI cards are drill-down actions */
.mv2-kpi--clickable{font:inherit;color:inherit;text-align:left;cursor:pointer;appearance:none;width:100%;transition:border-color .12s,box-shadow .12s,transform .12s,background .12s}.mv2-kpi--clickable:hover{border-color:#94a3b8;background:#fafbfc;box-shadow:0 4px 14px rgba(15,23,42,.07);transform:translateY(-1px)}.mv2-kpi--clickable:focus-visible{outline:2px solid #111827;outline-offset:2px}.mv2-kpi--clickable small{color:#64748b}
