/* TabeleCSV v1.8
   Cel: zachować wygląd aktywnego motywu WordPress.
   Wtyczka nie narzuca kolorów tabeli, fontów, nagłówków ani tła strony.
   Dodaje wyłącznie układ, responsywność i menu filtrowania jak w Excelu. */

.uzd-csv-table-wrap,
.uzd-csv-table-wrap * { box-sizing: border-box; }

.uzd-csv-table-wrap { width: 100%; clear: both; }

.uzd-csv-full {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.uzd-csv-inner { width: 100%; max-width: 100%; }

.uzd-csv-full .uzd-csv-inner {
  padding-left: clamp(12px, 2.5vw, 44px);
  padding-right: clamp(12px, 2.5vw, 44px);
}

.uzd-csv-top { margin-bottom: 1rem; }

.uzd-csv-titlebar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 1rem;
  align-items: start;
  margin-bottom: 1rem;
}

.uzd-csv-title h2 { margin-top: 0; }

.uzd-csv-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(90px, 1fr));
  gap: .5rem;
  min-width: min(520px, 100%);
}

.uzd-csv-stat {
  border: 1px solid currentColor;
  border-color: color-mix(in srgb, currentColor 18%, transparent);
  border-radius: .75rem;
  padding: .65rem;
  text-align: center;
}

.uzd-csv-stat b { display: block; font-size: 1.15em; line-height: 1.1; }
.uzd-csv-stat span { display: block; font-size: .78em; opacity: .72; margin-top: .2rem; }

.uzd-csv-filter-builder.uzd-csv-excel-toolbar {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(160px, auto);
  gap: .65rem;
  align-items: end;
}

.uzd-csv-field,
.uzd-csv-field * { min-width: 0; }

.uzd-csv-field label {
  display: block;
  margin-bottom: .3rem;
  font-size: .82em;
  font-weight: 600;
}

.uzd-csv-field input,
.uzd-csv-field select,
.uzd-csv-field button { max-width: 100%; }

.uzd-csv-field input,
.uzd-csv-field select { width: 100%; }

.uzd-csv-field button { width: 100%; cursor: pointer; }
.uzd-csv-toolbar-actions { min-width: 170px; }
.uzd-csv-help { margin: .6rem 0 0; font-size: .92em; opacity: .78; }
.uzd-csv-count { margin: .75rem 0; }

.uzd-csv-tablebox {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  -webkit-overflow-scrolling: touch;
}

.uzd-csv-tablebox table {
  width: 100%;
  min-width: 760px;
}

.uzd-csv-tablebox th,
.uzd-csv-tablebox td { vertical-align: top; }

.uzd-csv-tablebox th {
  white-space: nowrap;
  position: relative;
}

.uzd-csv-th-label {
  display: inline-block;
  max-width: min(260px, 34vw);
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: middle;
}

.uzd-csv-excel-btn {
  margin-left: .35rem;
  min-width: 1.8rem;
  min-height: 1.8rem;
  padding: 0 .35rem;
  line-height: 1;
  cursor: pointer;
  vertical-align: middle;
}

.uzd-csv-excel-btn.uzd-csv-filter-active {
  outline: 2px solid currentColor;
  outline-offset: 1px;
}

.uzd-csv-main { font-weight: 600; }
.uzd-csv-yes, .uzd-csv-no { font-weight: 700; }
.uzd-csv-hidden { display: none !important; }

.uzd-csv-cards { display: none; gap: .75rem; }
.uzd-csv-card {
  border: 1px solid currentColor;
  border-color: color-mix(in srgb, currentColor 18%, transparent);
  border-radius: .75rem;
  padding: .85rem;
}
.uzd-csv-card h3 { margin-top: 0; margin-bottom: .6rem; }
.uzd-csv-cardgrid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .45rem .75rem;
}
.uzd-csv-cardgrid b { font-weight: 600; }

.uzd-csv-excel-menu,
.uzd-csv-excel-menu * { box-sizing: border-box; }

.uzd-csv-excel-menu {
  position: absolute;
  z-index: 999999;
  max-height: min(520px, calc(100vh - 24px));
  overflow: hidden;
  border: 1px solid currentColor;
  border-color: color-mix(in srgb, currentColor 22%, transparent);
  border-radius: .75rem;
  padding: .75rem;
  background: Canvas;
  color: CanvasText;
  box-shadow: 0 12px 34px rgba(0,0,0,.16);
}

.uzd-csv-excel-menu-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  margin-bottom: .6rem;
}

.uzd-csv-excel-menu-head strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.uzd-csv-excel-menu-head button {
  min-width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: 999px;
  line-height: 1;
  cursor: pointer;
}

.uzd-csv-excel-menu input[type="search"] { width: 100%; margin-bottom: .55rem; }

.uzd-csv-excel-tools,
.uzd-csv-excel-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .45rem;
  margin: .55rem 0;
}

.uzd-csv-excel-tools button,
.uzd-csv-excel-actions button { cursor: pointer; }

.uzd-csv-excel-values {
  max-height: 260px;
  overflow: auto;
  border: 1px solid currentColor;
  border-color: color-mix(in srgb, currentColor 14%, transparent);
  border-radius: .55rem;
  padding: .35rem;
}

.uzd-csv-excel-option {
  display: flex;
  align-items: flex-start;
  gap: .45rem;
  padding: .25rem .2rem;
  cursor: pointer;
  line-height: 1.25;
}

.uzd-csv-excel-option input { margin-top: .15rem; }
.uzd-csv-excel-option span { overflow-wrap: anywhere; }
.uzd-csv-excel-empty { padding: .7rem; opacity: .72; }

@supports not (border-color: color-mix(in srgb, currentColor 18%, transparent)) {
  .uzd-csv-stat,
  .uzd-csv-card,
  .uzd-csv-excel-menu,
  .uzd-csv-excel-values { border-color: #ddd; }
}

@media (max-width: 1100px) {
  .uzd-csv-titlebar { grid-template-columns: 1fr; }
  .uzd-csv-stats { min-width: 0; }
}

@media (max-width: 760px) {
  .uzd-csv-full .uzd-csv-inner { padding-left: 10px; padding-right: 10px; }
  .uzd-csv-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .uzd-csv-filter-builder.uzd-csv-excel-toolbar { grid-template-columns: 1fr; }
  .uzd-csv-toolbar-actions { min-width: 0; }
  .uzd-csv-tablebox { display: block; }
  .uzd-csv-tablebox table { min-width: 860px; }
  .uzd-csv-cards { display: none; }
  .uzd-csv-excel-menu {
    position: fixed;
    left: 10px !important;
    right: 10px !important;
    top: 10px !important;
    width: auto !important;
    max-height: calc(100vh - 20px);
  }
  .uzd-csv-excel-values { max-height: min(52vh, 360px); }
}

/* TabeleCSV v1.8 — ustawienia wyglądu z panelu administracyjnego */
.uzd-csv-table-wrap.uzd-csv-has-border .uzd-csv-tablebox table {
  border-collapse: collapse;
}

.uzd-csv-table-wrap.uzd-csv-has-border .uzd-csv-tablebox th,
.uzd-csv-table-wrap.uzd-csv-has-border .uzd-csv-tablebox td {
  border: 1px solid var(--uzd-csv-border-color, #dddddd);
}

.uzd-csv-table-wrap .uzd-csv-tablebox th,
.uzd-csv-table-wrap .uzd-csv-tablebox td {
  padding: var(--uzd-csv-cell-padding, 10px);
}

.uzd-csv-table-wrap.uzd-csv-has-zebra .uzd-csv-tablebox tbody tr:nth-child(even) td {
  background-color: var(--uzd-csv-zebra-color, #f7f7f7);
}

.uzd-csv-table-wrap.uzd-csv-custom-header .uzd-csv-tablebox thead th {
  background-color: var(--uzd-csv-header-bg, inherit);
  color: var(--uzd-csv-header-text, inherit);
}

.uzd-csv-table-wrap.uzd-csv-rounded .uzd-csv-tablebox {
  border: 1px solid var(--uzd-csv-border-color, #dddddd);
  border-radius: .85rem;
}

.uzd-csv-table-wrap.uzd-csv-plugin-css .uzd-csv-tablebox table {
  border-collapse: collapse;
  background: #ffffff;
}

.uzd-csv-table-wrap.uzd-csv-plugin-css .uzd-csv-tablebox th {
  font-weight: 700;
  background: var(--uzd-csv-header-bg, #f2f2f2);
  color: var(--uzd-csv-header-text, inherit);
}

/* TabeleCSV v1.8 — czcionka i wyrównanie z panelu administracyjnego */
.uzd-csv-table-wrap.uzd-csv-custom-font {
  font-family: var(--uzd-csv-font-family-resolved, inherit);
}

.uzd-csv-table-wrap[style*="--uzd-csv-font-family:system"] { --uzd-csv-font-family-resolved: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:arial"] { --uzd-csv-font-family-resolved: Arial, Helvetica, sans-serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:verdana"] { --uzd-csv-font-family-resolved: Verdana, Geneva, sans-serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:tahoma"] { --uzd-csv-font-family-resolved: Tahoma, Geneva, sans-serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:georgia"] { --uzd-csv-font-family-resolved: Georgia, "Times New Roman", serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:times"] { --uzd-csv-font-family-resolved: "Times New Roman", Times, serif; }
.uzd-csv-table-wrap[style*="--uzd-csv-font-family:courier"] { --uzd-csv-font-family-resolved: "Courier New", Courier, monospace; }

.uzd-csv-table-wrap.uzd-csv-align-table .uzd-csv-tablebox th,
.uzd-csv-table-wrap.uzd-csv-align-table .uzd-csv-tablebox td,
.uzd-csv-table-wrap.uzd-csv-align-table .uzd-csv-cardgrid {
  text-align: var(--uzd-csv-table-align, inherit);
}

.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-tablebox thead th {
  text-align: var(--uzd-csv-header-align, inherit);
}

.uzd-csv-table-wrap.uzd-csv-align-body .uzd-csv-tablebox tbody td,
.uzd-csv-table-wrap.uzd-csv-align-body .uzd-csv-card,
.uzd-csv-table-wrap.uzd-csv-align-body .uzd-csv-cardgrid {
  text-align: var(--uzd-csv-body-align, inherit);
}

/* TabeleCSV v1.7 — ustawienia administracyjne, zawijanie tekstu i responsywność */
.uzd-csv-table-wrap.uzd-csv-custom-font,
.uzd-csv-table-wrap.uzd-csv-custom-font .uzd-csv-tablebox table,
.uzd-csv-table-wrap.uzd-csv-custom-font input,
.uzd-csv-table-wrap.uzd-csv-custom-font select,
.uzd-csv-table-wrap.uzd-csv-custom-font button {
  font-family: var(--uzd-csv-font-family, inherit);
}

.uzd-csv-table-wrap.uzd-csv-align-table .uzd-csv-tablebox table { text-align: var(--uzd-csv-table-align, inherit); }
.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-tablebox th { text-align: var(--uzd-csv-header-align, inherit); }
.uzd-csv-table-wrap.uzd-csv-align-body .uzd-csv-tablebox td { text-align: var(--uzd-csv-body-align, inherit); }

.uzd-csv-mobile-filters { display: none; margin-top: .75rem; }
.uzd-csv-mobile-filters label { display: block; margin-bottom: .35rem; font-weight: 600; }
.uzd-csv-mobile-filter-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; align-items: center; }
.uzd-csv-mobile-filter-row select,
.uzd-csv-mobile-filter-row button { min-height: 40px; }

.uzd-csv-cards { display: none; }
.uzd-csv-card { margin: 0 0 .75rem; }
.uzd-csv-card h3 { margin-top: 0; }
.uzd-csv-cardgrid { display: grid; grid-template-columns: 1fr; gap: .35rem; }

@media (max-width: 760px) {
  .uzd-csv-responsive-scroll .uzd-csv-tablebox { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .uzd-csv-responsive-scroll .uzd-csv-tablebox table { min-width: 860px; }
  .uzd-csv-responsive-scroll .uzd-csv-cards,
  .uzd-csv-responsive-scroll .uzd-csv-mobile-filters { display: none; }

  .uzd-csv-responsive-cards .uzd-csv-tablebox { display: none; }
  .uzd-csv-responsive-cards .uzd-csv-cards { display: grid; gap: .75rem; }
  .uzd-csv-responsive-cards .uzd-csv-mobile-filters { display: block; }
  .uzd-csv-responsive-cards .uzd-csv-card {
    border: 1px solid var(--uzd-csv-border-color, currentColor);
    padding: var(--uzd-csv-cell-padding, 10px);
    border-radius: .75rem;
  }
  .uzd-csv-responsive-cards.uzd-csv-has-zebra .uzd-csv-card:nth-child(even) {
    background: var(--uzd-csv-zebra-color, #f7f7f7);
  }
}


/* TabeleCSV v1.7 — dopasowanie tabeli do szerokości strony i zawijanie tekstu */
.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-tablebox {
  overflow-x: visible;
}

.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-tablebox table,
.uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox table {
  width: 100%;
  min-width: 0 !important;
  max-width: 100%;
  table-layout: fixed;
}

.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-tablebox th,
.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-tablebox td {
  white-space: normal !important;
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}

.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-th-label {
  display: inline;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  line-height: 1.25;
}

.uzd-csv-table-wrap.uzd-csv-wrap-text .uzd-csv-excel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-left: .25rem;
  vertical-align: middle;
  flex: 0 0 auto;
}

.uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox {
  overflow-x: visible;
}

.uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-cards,
.uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-mobile-filters {
  display: none;
}

@media (max-width: 760px) {
  .uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox {
    display: block;
    overflow-x: visible;
  }
  .uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox table {
    min-width: 0 !important;
    width: 100%;
    table-layout: fixed;
    font-size: clamp(11px, 2.8vw, 14px);
  }
  .uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox th,
  .uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-tablebox td {
    padding: max(5px, calc(var(--uzd-csv-cell-padding, 10px) * .65));
  }
  .uzd-csv-table-wrap.uzd-csv-responsive-fit .uzd-csv-excel-btn {
    min-width: 1.45rem;
    min-height: 1.45rem;
    padding: 0 .25rem;
    font-size: .9em;
  }
}


/* TabeleCSV v1.8 — filtr pod nazwą nagłówka, równa linia przycisków */
.uzd-csv-table-wrap .uzd-csv-tablebox thead th {
  vertical-align: bottom;
}

.uzd-csv-table-wrap .uzd-csv-th-inner {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-end;
  gap: .35rem;
  min-height: 100%;
}

.uzd-csv-table-wrap .uzd-csv-th-label {
  display: block;
  width: 100%;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.25;
}

.uzd-csv-table-wrap .uzd-csv-th-filter-row {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 2rem;
  width: 100%;
  margin-top: auto;
}

.uzd-csv-table-wrap .uzd-csv-excel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  flex: 0 0 auto;
}

.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-th-label {
  text-align: var(--uzd-csv-header-align, inherit);
}

.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-th-filter-row {
  justify-content: center;
}

@media (max-width: 760px) {
  .uzd-csv-table-wrap .uzd-csv-th-inner { gap: .25rem; }
  .uzd-csv-table-wrap .uzd-csv-th-filter-row { min-height: 1.7rem; }
}


/* TabeleCSV v1.9 — dwa wiersze nagłówka: nazwy + równa linia filtrów */
.uzd-csv-table-wrap .uzd-csv-tablebox thead .uzd-csv-head-row-labels th {
  vertical-align: bottom;
  padding-bottom: .35rem;
}

.uzd-csv-table-wrap .uzd-csv-tablebox thead .uzd-csv-head-row-filters th {
  vertical-align: top;
  padding-top: 0;
  padding-bottom: var(--uzd-csv-cell-padding, 10px);
}

.uzd-csv-table-wrap .uzd-csv-th-label-cell {
  white-space: normal !important;
}

.uzd-csv-table-wrap .uzd-csv-head-row-labels .uzd-csv-th-label {
  display: block;
  width: 100%;
  max-width: none;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  line-height: 1.25;
}

.uzd-csv-table-wrap .uzd-csv-th-filter-cell {
  text-align: center;
}

.uzd-csv-table-wrap .uzd-csv-th-filter-cell .uzd-csv-th-filter-row {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2rem;
}

.uzd-csv-table-wrap .uzd-csv-th-filter-cell .uzd-csv-excel-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-head-row-labels th {
  text-align: var(--uzd-csv-header-align, inherit);
}

.uzd-csv-table-wrap.uzd-csv-align-header .uzd-csv-head-row-filters th {
  text-align: center;
}

@media (max-width: 760px) {
  .uzd-csv-table-wrap .uzd-csv-tablebox thead .uzd-csv-head-row-labels th {
    padding-bottom: .2rem;
  }
  .uzd-csv-table-wrap .uzd-csv-tablebox thead .uzd-csv-head-row-filters th {
    padding-top: 0;
  }
  .uzd-csv-table-wrap .uzd-csv-th-filter-cell .uzd-csv-th-filter-row {
    min-height: 1.7rem;
  }
}


/* TabeleCSV v1.10 — wysokość nagłówka, wielkość czcionki i wyrównanie ikon */
.uzd-csv-table-wrap.uzd-csv-custom-font-size .uzd-csv-tablebox table,
.uzd-csv-table-wrap.uzd-csv-custom-font-size .uzd-csv-cards,
.uzd-csv-table-wrap.uzd-csv-custom-font-size .uzd-csv-filter-builder {
  font-size: var(--uzd-csv-font-size, inherit);
}

.uzd-csv-table-wrap.uzd-csv-custom-header-height .uzd-csv-tablebox thead .uzd-csv-head-row-labels th {
  height: var(--uzd-csv-header-height, auto);
}

.uzd-csv-table-wrap .uzd-csv-th-filter-cell .uzd-csv-th-filter-row {
  justify-content: var(--uzd-csv-filter-align, center);
}

.uzd-csv-table-wrap .uzd-csv-head-row-filters .uzd-csv-th-filter-cell {
  background: color-mix(in srgb, currentColor 5%, transparent);
  border-top: 1px solid color-mix(in srgb, currentColor 16%, transparent);
}

/* Bardziej excelowy wygląd drugiego wiersza filtrów */
.uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-head-row-filters th {
  padding-top: .32rem !important;
  padding-bottom: .32rem !important;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, Canvas 96%, currentColor 4%) 0%,
      color-mix(in srgb, Canvas 90%, currentColor 10%) 100%);
  border-top: 1px solid color-mix(in srgb, currentColor 20%, transparent);
  border-bottom: 1px solid color-mix(in srgb, currentColor 22%, transparent);
}

.uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-excel-btn {
  min-width: 2.05rem;
  min-height: 1.75rem;
  border: 1px solid color-mix(in srgb, currentColor 30%, transparent);
  border-radius: .28rem;
  background:
    linear-gradient(180deg,
      color-mix(in srgb, Canvas 98%, currentColor 2%) 0%,
      color-mix(in srgb, Canvas 88%, currentColor 12%) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    0 1px 2px rgba(0,0,0,.08);
  font-weight: 700;
}

.uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-excel-btn:hover,
.uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-excel-btn:focus {
  background:
    linear-gradient(180deg,
      color-mix(in srgb, Canvas 92%, currentColor 8%) 0%,
      color-mix(in srgb, Canvas 82%, currentColor 18%) 100%);
}

.uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-excel-btn.uzd-csv-filter-active {
  outline: none;
  border-color: currentColor;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.35),
    0 0 0 2px color-mix(in srgb, currentColor 22%, transparent);
}

@supports not (background: color-mix(in srgb, Canvas 96%, currentColor 4%)) {
  .uzd-csv-table-wrap .uzd-csv-head-row-filters .uzd-csv-th-filter-cell,
  .uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-head-row-filters th {
    background: #f5f5f5;
    border-color: #dddddd;
  }
  .uzd-csv-table-wrap.uzd-csv-excel-filter-style .uzd-csv-excel-btn {
    background: #ffffff;
    border-color: #bbbbbb;
  }
}

@media (max-width: 760px) {
  .uzd-csv-table-wrap.uzd-csv-custom-font-size .uzd-csv-tablebox table {
    font-size: min(var(--uzd-csv-font-size, 14px), 14px);
  }
  .uzd-csv-table-wrap.uzd-csv-custom-header-height .uzd-csv-tablebox thead .uzd-csv-head-row-labels th {
    height: auto;
    min-height: calc(var(--uzd-csv-header-height, 0px) * .65);
  }
}


/* TabeleCSV v1.15 — sortowanie, paginacja, eksport, druk, ustawienia kolumn */
.uzd-csv-filter-builder.uzd-csv-excel-toolbar {
  grid-template-columns: minmax(240px, 1fr) repeat(3, minmax(120px, auto));
}

.uzd-csv-th-label-cell[data-uzd-sort] {
  user-select: none;
}

.uzd-csv-sort-indicator {
  font-size: .85em;
  opacity: .75;
  white-space: nowrap;
}

.uzd-csv-sort-active .uzd-csv-th-label {
  text-decoration: underline;
  text-underline-offset: .2em;
}

.uzd-csv-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  align-items: center;
  justify-content: flex-end;
  margin: .75rem 0;
}

.uzd-csv-pagination button,
.uzd-csv-pagination select {
  min-height: 34px;
}

.uzd-csv-pagination [data-uzd-page-info] {
  font-weight: 600;
  opacity: .86;
}

@media print {
  body * { visibility: hidden !important; }
  .uzd-csv-table-wrap,
  .uzd-csv-table-wrap * { visibility: visible !important; }
  .uzd-csv-table-wrap {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    margin: 0 !important;
  }
  .uzd-csv-filter-builder,
  .uzd-csv-help,
  .uzd-csv-head-row-filters,
  .uzd-csv-pagination,
  .uzd-csv-mobile-filters {
    display: none !important;
  }
}

@media (max-width: 760px) {
  .uzd-csv-filter-builder.uzd-csv-excel-toolbar {
    grid-template-columns: 1fr;
  }
  .uzd-csv-pagination {
    justify-content: stretch;
  }
  .uzd-csv-pagination button,
  .uzd-csv-pagination label {
    flex: 1 1 auto;
  }
}


/* TabeleCSV v1.16–v1.20 — udogodnienia dla odwiedzającego */
.uzd-csv-visitor-tools,
.uzd-csv-quick-filters,
.uzd-csv-range-object-filters,
.uzd-csv-active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  margin: .65rem 0;
}

.uzd-csv-visitor-tools button,
.uzd-csv-chip,
.uzd-csv-active-chip,
.uzd-csv-no-results button {
  cursor: pointer;
}

.uzd-csv-chip,
.uzd-csv-active-chip {
  border: 1px solid color-mix(in srgb, currentColor 22%, transparent);
  border-radius: 999px;
  background: Canvas;
  color: CanvasText;
  padding: .42rem .72rem;
  font-weight: 600;
}

.uzd-csv-chip-active,
.uzd-csv-active-chip {
  border-color: currentColor;
  box-shadow: inset 0 0 0 1px currentColor;
}

.uzd-csv-active-title {
  font-weight: 700;
  margin-right: .25rem;
}

.uzd-csv-visitor-filter {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
  align-items: center;
  border: 1px solid color-mix(in srgb, currentColor 14%, transparent);
  border-radius: .7rem;
  padding: .5rem .65rem;
}

.uzd-csv-visitor-filter input[type="number"] {
  width: 7.5rem;
}

.uzd-csv-no-results {
  border: 1px solid color-mix(in srgb, currentColor 20%, transparent);
  border-radius: .75rem;
  padding: 1rem;
  margin: .75rem 0;
  display: grid;
  gap: .4rem;
  background: color-mix(in srgb, Canvas 94%, currentColor 6%);
}

.uzd-csv-detail-row td {
  background: color-mix(in srgb, Canvas 94%, currentColor 6%);
}

.uzd-csv-detail-panel {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: .45rem .8rem;
  padding: .65rem;
}

.uzd-csv-table-wrap.uzd-csv-view-cards .uzd-csv-tablebox,
.uzd-csv-table-wrap.uzd-csv-view-cards .uzd-csv-pagination {
  display: none;
}

.uzd-csv-table-wrap.uzd-csv-view-cards .uzd-csv-cards {
  display: grid;
  gap: .75rem;
}

.uzd-csv-senior-mode {
  font-size: 120% !important;
  line-height: 1.55;
  filter: contrast(1.08);
}

.uzd-csv-senior-mode .uzd-csv-tablebox th,
.uzd-csv-senior-mode .uzd-csv-tablebox td,
.uzd-csv-senior-mode .uzd-csv-card {
  padding: max(12px, var(--uzd-csv-cell-padding, 10px)) !important;
}

.uzd-csv-senior-mode .uzd-csv-tablebox table,
.uzd-csv-senior-mode .uzd-csv-card,
.uzd-csv-senior-mode .uzd-csv-stat {
  background: #fff !important;
  color: #000 !important;
}

.uzd-csv-senior-mode .uzd-csv-tablebox th {
  background: #000 !important;
  color: #fff !important;
}

.uzd-csv-senior-mode button,
.uzd-csv-senior-mode input,
.uzd-csv-senior-mode select {
  min-height: 44px;
  font-size: 1em;
}

@media (max-width: 760px) {
  .uzd-csv-visitor-tools,
  .uzd-csv-quick-filters,
  .uzd-csv-range-object-filters,
  .uzd-csv-active-filters {
    align-items: stretch;
  }
  .uzd-csv-visitor-tools button,
  .uzd-csv-chip,
  .uzd-csv-active-chip,
  .uzd-csv-visitor-filter {
    flex: 1 1 100%;
  }
  .uzd-csv-visitor-filter input[type="number"],
  .uzd-csv-visitor-filter select {
    width: 100%;
  }
}


/* TabeleCSV v1.23 — konfigurowalne przypięte filtry nad tabelą */
.uzd-csv-range-object-filters .uzd-csv-visitor-filter input[type="search"],
.uzd-csv-range-object-filters .uzd-csv-visitor-filter select {
  min-width: 180px;
}

.uzd-csv-range-object-filters .uzd-csv-visitor-filter input[type="number"] {
  min-width: 100px;
}


/* TabeleCSV v1.28 — przełączniki kolumn na froncie */
.uzd-csv-column-switchers {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  align-items: center;
  margin: .65rem 0;
}

.uzd-csv-column-switcher select {
  min-width: 180px;
}

.uzd-csv-col-hidden {
  display: none !important;
}

@media (max-width: 760px) {
  .uzd-csv-column-switchers .uzd-csv-visitor-filter {
    flex: 1 1 100%;
  }
  .uzd-csv-column-switcher select {
    width: 100%;
  }
}


/* TabeleCSV v1.31 — kolejność i wyrównanie elementów nad tabelą */
.uzd-csv-top {
  display: flex;
  flex-direction: column;
}

.uzd-csv-layout-block {
  width: 100%;
}

.uzd-csv-layout-block.uzd-csv-filter-builder,
.uzd-csv-layout-block.uzd-csv-visitor-tools,
.uzd-csv-layout-block.uzd-csv-range-object-filters,
.uzd-csv-layout-block.uzd-csv-column-switchers,
.uzd-csv-layout-block.uzd-csv-active-filters {
  justify-content: var(--uzd-layout-justify, flex-start);
}

.uzd-csv-layout-block[style*="align-self:stretch"] {
  width: 100%;
}

.uzd-csv-layout-block[style*="text-align:center"] .uzd-csv-stats {
  margin-left: auto;
  margin-right: auto;
}

.uzd-csv-layout-block[style*="text-align:right"] .uzd-csv-stats {
  margin-left: auto;
}

.uzd-csv-layout-block[style*="text-align:center"].uzd-csv-titlebar {
  justify-items: center;
}

.uzd-csv-layout-block[style*="text-align:right"].uzd-csv-titlebar {
  justify-items: end;
}
