/* DIAGNOSTIG.cz Fakturace PRO 28.4.9
   Stabilní finální geometrie akcí + stabilní stavy úhrad.
   Čistě CSS: nemění onclick, ukládání, synchronizaci ani databázi. */

/* ============================================================
   1) DETAIL ZAKÁZKY – skutečný runtime kontejner tlačítek
   ============================================================ */
#workOrderDetailModal .modal-f .dg281-action-list,
#workOrderDetailModal .modal-f .dg2812-action-layout,
#workOrderDetailModal .modal-f .dg2828-unified-actions,
#workOrderDetailModal .modal-f .dg2830-native-action-grid,
#workOrderDetailModal .modal-f:not(:has(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid)) {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  grid-auto-flow:row!important;
  grid-auto-rows:minmax(54px,auto)!important;
  gap:12px!important;
  width:min(100%,1160px)!important;
  max-width:1160px!important;
  min-width:0!important;
  margin-inline:auto!important;
  padding:14px 16px calc(16px + env(safe-area-inset-bottom))!important;
  box-sizing:border-box!important;
  align-items:stretch!important;
  align-content:start!important;
  justify-items:stretch!important;
  justify-content:center!important;
  overflow-x:hidden!important;
}

/* Historické vnitřní obaly zploštit, ale samotné tlačítko a eventy ponechat. */
#workOrderDetailModal .modal-f :is(
  .dg281-action-list,
  .dg2812-action-layout,
  .dg2828-unified-actions,
  .dg2830-native-action-grid
) :is(
  .dg248-ic-actions,
  .dg244-ic-actions,
  .dg2812-action-row,
  .dg2812-action-row--context,
  .dg2812-action-row--main,
  .dg2828-unified-actions,
  [data-dgwo-managed]
) {
  display:contents!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

#workOrderDetailModal .modal-f :is(
  .dg281-action-list,
  .dg2812-action-layout,
  .dg2828-unified-actions,
  .dg2830-native-action-grid
) > :is(.spacer,.dgwo-footer-spacer,.dg2812-empty-action,.dg-action-duplicate) {
  display:none!important;
}

#workOrderDetailModal .modal-f :is(
  .dg281-action-list,
  .dg2812-action-layout,
  .dg2828-unified-actions,
  .dg2830-native-action-grid
) :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle) {
  grid-column:auto!important;
  grid-row:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:54px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 12px!important;
  box-sizing:border-box!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:anywhere!important;
  writing-mode:horizontal-tb!important;
  line-height:1.16!important;
}

/* ============================================================
   2) FORMULÁŘ DOKLADU – Náhled / Zrušit / Uložit / Odeslat
   ============================================================ */
#docModal .modal-f {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  box-sizing:border-box!important;
  align-items:stretch!important;
  justify-items:stretch!important;
}

#docModal .modal-f > :is(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid) {
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}

#docModal .modal-f :is(.dg248-ic-actions,.dg244-ic-actions,.dg2812-action-row,.dg2812-action-row--context,.dg2812-action-row--main,[data-dgwo-managed]) {
  display:contents!important;
}

#docModal .modal-f :is(.spacer,.dgwo-footer-spacer,.dg2812-empty-action,.dg-action-duplicate) {
  display:none!important;
}

#docModal .modal-f :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle) {
  grid-column:auto!important;
  grid-row:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:54px!important;
  height:auto!important;
  margin:0!important;
  padding:10px 12px!important;
  box-sizing:border-box!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.16!important;
}

/* ============================================================
   3) PŘEHLED – stabilní stav, žádné problikávání, správná čára
   ============================================================ */
#content tr[data-doc-id][data-status] > td:first-child {
  position:relative!important;
  padding-left:20px!important;
}

#content tr[data-doc-id][data-status] > td:first-child::before {
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;
  top:8px!important;
  bottom:8px!important;
  width:5px!important;
  border-radius:999px!important;
  background:#7d8da1!important;
  box-shadow:0 0 10px rgba(125,141,161,.28)!important;
  opacity:1!important;
  transform:none!important;
  animation:none!important;
  pointer-events:none!important;
}
#content tr[data-doc-id][data-status="paid"] > td:first-child::before {
  background:#36dc93!important;
  box-shadow:0 0 14px rgba(54,220,147,.58)!important;
}
#content tr[data-doc-id][data-status="unpaid"] > td:first-child::before {
  background:#ff6f8f!important;
  box-shadow:0 0 12px rgba(255,111,143,.42)!important;
}
#content tr[data-doc-id][data-status="overdue"] > td:first-child::before {
  background:#ff4961!important;
  box-shadow:0 0 14px rgba(255,73,97,.58)!important;
}
#content tr[data-doc-id][data-status="partial"] > td:first-child::before {
  background:#4ca8ff!important;
  box-shadow:0 0 14px rgba(76,168,255,.50)!important;
}

/* Status i způsob platby jsou viditelné okamžitě, bez vstupního pulzu. */
#content tr[data-doc-id][data-status] .status-stack,
#content tr[data-doc-id][data-status] .status-stack > .chip,
#content tr[data-doc-id][data-status] .status-stack > .chip-sub,
#content tr[data-doc-id][data-status] .dg2820-status-chip,
#content tr[data-doc-id][data-status] .dg2820-status-chip::before {
  animation:none!important;
  transition:none!important;
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
}
#content tr[data-doc-id][data-status] .status-stack {
  min-height:34px!important;
  justify-content:center!important;
}
#content tr[data-doc-id][data-status] .status-stack > .chip,
#content tr[data-doc-id][data-status] .status-stack > .chip-sub {
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
}

/* Na mobilu nepoužívat zároveň dva různé stavové proužky. */
@media (max-width:640px) {
  #content tr[data-doc-id][data-status]::before {display:none!important}
}

/* ============================================================
   4) RESPONZIVITA
   ============================================================ */
@media (min-width:700px) and (max-width:1050px) {
  #workOrderDetailModal .modal-f .dg281-action-list,
  #workOrderDetailModal .modal-f .dg2812-action-layout,
  #workOrderDetailModal .modal-f .dg2828-unified-actions,
  #workOrderDetailModal .modal-f .dg2830-native-action-grid,
  #workOrderDetailModal .modal-f:not(:has(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid)),
  #docModal .modal-f,
  #docModal .modal-f > :is(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid) {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:10px!important;
  }
  #workOrderDetailModal .modal-f :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle),
  #docModal .modal-f :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle) {
    min-height:52px!important;
    padding:8px!important;
    font-size:clamp(10.5px,1.35vw,13px)!important;
  }
}

@media (min-width:560px) and (max-width:699px) {
  #workOrderDetailModal .modal-f .dg281-action-list,
  #workOrderDetailModal .modal-f .dg2812-action-layout,
  #workOrderDetailModal .modal-f .dg2828-unified-actions,
  #workOrderDetailModal .modal-f .dg2830-native-action-grid,
  #workOrderDetailModal .modal-f:not(:has(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid)),
  #docModal .modal-f,
  #docModal .modal-f > :is(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid) {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}

@media (max-width:559px) {
  #workOrderDetailModal .modal-f .dg281-action-list,
  #workOrderDetailModal .modal-f .dg2812-action-layout,
  #workOrderDetailModal .modal-f .dg2828-unified-actions,
  #workOrderDetailModal .modal-f .dg2830-native-action-grid,
  #workOrderDetailModal .modal-f:not(:has(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid)),
  #docModal .modal-f,
  #docModal .modal-f > :is(.dg281-action-list,.dg2812-action-layout,.dg2828-unified-actions,.dg2830-native-action-grid) {
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    max-width:none!important;
    gap:9px!important;
  }
  #workOrderDetailModal .modal-f :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle),
  #docModal .modal-f :is(button,a.btn,input[type="button"],input[type="submit"]):not(.dg281-action-toggle):not(.dg2842-drawer-toggle) {
    min-height:52px!important;
    font-size:13px!important;
  }
}
