/* ===== dynamic grid (target-table viewer) – shared styles ===== */
/* vše pod vlastním prefixem, ať to nezasahuje jiné popupy/komponenty */

:root {
  --ttv-radius: 10px;
  --ttv-border: #e6e6e6;
  --ttv-bg: #ffffff;
  --ttv-muted: #6b7280;  /* tailwind-ish gray-500 */
}

/* hlavní kontejner gridu (pro jistotu plná výška) */
#grid-targettable,
#grid-targettable .dx-datagrid {
  height: 100%;
}

/* ===== Column Chooser (custom dropdown) ===== */

.ttv-colchooser {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 8px 10px 12px;
  background: var(--ttv-bg);
  border-radius: var(--ttv-radius);
}

/* horní akční lišta */
.ttv-bar {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* odtlačí tlačítko Close doprava */
.ttv-flexspacer {
  flex: 1 1 auto;
}

/* search pole */
.ttv-search {
  /* dxTextBox už má vlastní styl; jen jemný spacing */
  margin-top: 2px;
}

/* scrollovatelná část se seznamem sloupců */
.ttv-scroll {
  max-height: 56vh;            /* klidně uprav podle chuti */
  overflow: auto;              /* nativní scroll */
  border: 1px solid var(--ttv-border);
  border-radius: var(--ttv-radius);
  background: var(--ttv-bg);
  padding: 6px;
}

/* zjemnění listu uvnitř */
.ttv-scroll .dx-list {
  border: 0;
}

.ttv-scroll .dx-list-item {
  padding: 8px 10px;
  border-radius: 8px;
}

.ttv-scroll .dx-list-item:hover {
  background: #f7f7f8;
}

/* disabled (essential) položky – jen ztlumit text */
.ttv-scroll .dx-state-disabled {
  opacity: .65;
}

/* titulek popupu DevExtreme */
.dx-overlay-content .dx-popup-title {
  font-weight: 600;
}

/* jemný stín popupu (v některých tématech je tlumený) */
.dx-overlay-content.dx-popup-normal {
  box-shadow:
    0 10px 15px -3px rgba(0,0,0,.1),
    0 4px 6px -4px rgba(0,0,0,.1);
  border-radius: var(--ttv-radius);
}

/* kompaktnější datagrid header i řádky (volitelné; klidně smaž) */
/* #grid-targettable .dx-datagrid-headers .dx-row > td {
  padding-top: 6px;
  padding-bottom: 6px;
}
#grid-targettable .dx-datagrid-rowsview .dx-row > td {
  padding-top: 6px;
  padding-bottom: 6px;
} */

/* lepší responsivita popupu na menších displejích */
@media (max-width: 1024px) {
  .dx-overlay-content .dx-popup-content {
    padding: 8px;
  }
  .ttv-scroll { max-height: 52vh; }
}

/* dark-mode (pokud máš tmavý layout; jinak můžeš smazat) */
@media (prefers-color-scheme: dark) {
  :root {
    --ttv-border: #343a40;
    --ttv-bg: #181a1b;
    --ttv-muted: #9aa0a6;
  }
  .ttv-scroll .dx-list-item:hover {
    background: #202225;
  }
}

.ttv-chooser__bar{
  display:flex;
  align-items:center;
  gap:6px;
  padding:6px 8px;
  border-bottom:1px solid rgba(0,0,0,.06);
}
.ttv-chooser__spacer{ flex:1; }