/* Wizyty: tabela ma zachować czytelne szerokości kolumn i przewijać się poziomo.
   Paski przewijania są osobnymi elementami nad i pod tabelą, więc nigdy nie
   przykrywają komórek ani przypiętych kolumn. */

[data-visits-inline-root] .visits-table-card,
[data-visits-inline-root] .visits-table-responsive {
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

[data-visits-inline-root] .visits-table-scroll-viewport {
  overflow-x: auto !important;
  overflow-y: visible;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

[data-visits-inline-root] .visits-table-scroll-viewport::-webkit-scrollbar {
  height: 0;
}

[data-visits-inline-root] .visits-horizontal-scroll {
  position: relative;
  z-index: 1;
  display: block;
  min-width: 0;
  height: 20px;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scrollbar-width: auto;
  scrollbar-color: var(--app-border-strong, var(--bs-secondary-color)) var(--app-surface-soft, var(--bs-tertiary-bg));
  background: var(--app-surface-solid, var(--bs-body-bg));
}

[data-visits-inline-root] .visits-horizontal-scroll--top {
  margin-bottom: .45rem;
}

[data-visits-inline-root] .visits-horizontal-scroll--bottom {
  margin-top: .45rem;
}

[data-visits-inline-root] .visits-horizontal-scroll__spacer {
  height: 1px;
  pointer-events: none;
}

[data-visits-inline-root] .visits-horizontal-scroll[hidden] {
  display: none !important;
}

@media (min-width: 768px) {
  [data-visits-inline-root] .visits-table {
    width: max-content !important;
    min-width: 100% !important;
    max-width: none !important;
    table-layout: fixed !important;
  }

  [data-visits-inline-root] .visits-table > :not(caption) > * > *:not(.table-action-cell) {
    min-width: 8rem !important;
    max-width: none !important;
    overflow: visible;
  }

  [data-visits-inline-root] .visits-table thead th[data-table-column-original="1"] { min-width: 5rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="2"] { min-width: 10rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="3"] { min-width: 12rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="4"] { min-width: 9rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="5"] { min-width: 14rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="6"] { min-width: 9rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="7"] { min-width: 11rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="8"] { min-width: 10rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="9"] { min-width: 9rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="10"] { min-width: 10rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="11"] { min-width: 11rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="12"],
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="13"] { min-width: 16rem !important; }
  [data-visits-inline-root] .visits-table thead th[data-table-column-original="14"] { min-width: 10rem !important; }

  [data-visits-inline-root] .visits-table .visits-family-cell { min-width: 12rem !important; }
  [data-visits-inline-root] .visits-table .visits-address-cell { min-width: 14rem !important; }
  [data-visits-inline-root] .visits-table .visits-volunteer-cell { min-width: 16rem !important; }

  /* Akcje pozostają domyślnie kompaktowe. Ręczna szerokość ustawiona
     separatorem jest nakładana inline i zachowuje się jak w Excelu. */
}

/* Maskuje subpikselową szczelinę przy prawej krawędzi przypiętej kolumny.
   Przy zoomie/DPI przeglądarka może zaokrąglić right:0 i pokazać 1–2 px
   przewijanej treści za kolumną Akcje. Pseudo-element zachodzi po 3 px na
   komórkę i poza nią, dziedzicząc jej tło także przy hover i w ciemnym motywie. */
.table-has-pinned-columns .table-column-pinned--right::after {
  content:"";
  position:absolute;
  top:-1px;
  right:-3px;
  bottom:-1px;
  width:6px;
  background-color:inherit;
  pointer-events:none;
}

@media (max-width: 767.98px) {
  [data-visits-inline-root] .visits-horizontal-scroll {
    display: none !important;
  }

  [data-visits-inline-root] .visits-table-scroll-viewport {
    overflow: visible !important;
    scrollbar-width: auto;
  }

  .mobile-card-table .table-column-pinned--right::after {
    display:none!important;
  }
}
