.table-row-controls {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 4px;
        white-space: nowrap;
      }

.msweb-dt-fit-parent {
        position: relative;
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
        overflow: hidden;
      }

      .msweb-dt-fit-parent.msweb-dt-fit-parent--overflow {
        overflow: auto;
      }

      .msweb-dt-fit-parent > .dt-container,
      .msweb-dt-fit-parent > .dataTables_wrapper {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
        width: 100%;
      }

      .msweb-dt-fit-parent .dt-scroll,
      .msweb-dt-fit-parent .dataTables_scroll {
        display: flex;
        flex: 1 1 auto;
        flex-direction: column;
        min-height: 0;
      }

      .msweb-dt-fit-parent .dt-scroll-head,
      .msweb-dt-fit-parent .dt-scroll-foot,
      .msweb-dt-fit-parent .dataTables_scrollHead,
      .msweb-dt-fit-parent .dataTables_scrollFoot {
        flex: 0 0 auto;
      }

      .msweb-dt-fit-parent .dt-scroll-body,
      .msweb-dt-fit-parent .dataTables_scrollBody {
        flex: 1 1 auto;
        min-height: 0;
        overflow-y: auto;
      }

      .msweb-dt-horizontal-scroll-hint {
        display: flex;
        position: absolute;
        left: 50%;
        z-index: 4;
        transform: translateX(-50%);
        align-items: center;
        justify-content: center;
        gap: 6px;
        max-width: calc(100% - 24px);
        padding: 0 12px;
        border: 1px solid rgba(49, 92, 246, 0.24);
        border-radius: 999px;
        background: rgba(239, 244, 255, 0.88);
        color: #3152c8;
        font-size: 11px;
        font-weight: 500;
        line-height: 1.25;
        text-align: center;
        white-space: nowrap;
        box-shadow: 0 6px 18px rgba(15, 23, 42, 0.1);
        opacity: 0;
        visibility: hidden;
        transition:
          opacity 200ms ease,
          visibility 0s linear 200ms;
        pointer-events: none;
      }

      .msweb-dt-horizontal-scroll-hint--top {
        top: 8px;
      }

      .msweb-dt-horizontal-scroll-hint--bottom {
        bottom: 8px;
      }

      .msweb-dt-horizontal-scroll-hint__icon {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 18px;
        height: 18px;
        color: currentColor;
        font-size: 12px;
        line-height: 1;
      }

      @media (max-width: 680px) {
        .msweb-dt-has-horizontal-scroll:not(.msweb-dt-horizontal-scroll-hint-dismissed) > .msweb-dt-horizontal-scroll-hint {
          opacity: 1;
          visibility: visible;
          transition-delay: 0s;
        }
      }

      @media (prefers-reduced-motion: reduce) {
        .msweb-dt-horizontal-scroll-hint {
          transition: none;
        }
      }

      [data-theme="dark"] .msweb-dt-horizontal-scroll-hint,
      .theme-dark .msweb-dt-horizontal-scroll-hint {
        background: rgba(30, 27, 75, 0.88);
        border-color: rgba(129, 140, 248, 0.3);
        color: #c4b5fd;
      }

      [data-theme="dark"] .msweb-dt-horizontal-scroll-hint__icon,
      .theme-dark .msweb-dt-horizontal-scroll-hint__icon {
        color: #c4b5fd;
      }

.dt-col-vis {
        position: relative;
      }

@media (max-width: 680px) {
  .dt-topbar {
    flex: 0 0 auto;
    flex-direction: column;
    align-items: stretch !important;
    gap: 8px;
  }

  .dt-topbar > .dt-controls-custom,
  .dt-topbar > .dt-controls-length,
  .dt-topbar > .dt-controls-search {
    flex: 0 0 auto !important;
    align-self: stretch;
    width: 100% !important;
    height: auto;
    min-height: 0;
    margin: 0 !important;
  }

  .dt-topbar > .dt-controls-custom {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
    padding: 0;
  }

  .dt-topbar > .dt-controls-custom > * {
    width: 100%;
    max-width: 100%;
  }

  .dt-topbar > .dt-controls-search .input-wrapper {
    width: 100%;
    height: auto;
  }
}
      .dt-col-vis__btn {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 3px 10px;
        height: 28px;
        border: 1px solid var(--border, #d1d5db);
        border-radius: 4px;
        background: var(--bg-card, #fff);
        color: var(--text-primary, #374151);
        font-size: 13px;
        font-family: inherit;
        cursor: pointer;
        white-space: nowrap;
        user-select: none;
      }
      .dt-col-vis__btn:hover {
        background: var(--bg-subtle, #f9fafb);
        border-color: var(--border, #adb5bd);
      }
      .dt-col-vis__btn::after {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-top: 5px solid currentColor;
        opacity: 0.5;
      }
      .dt-col-vis .dt-col-vis__dropdown {
        display: none;
        position: absolute;
        top: calc(100% + 4px);
        left: 0;
        z-index: 1000;
        min-width: 180px;
        padding: 4px;
        background: var(--bg-card, #fff);
        border: 1px solid var(--border, #e2e8f0);
        border-radius: 8px;
        box-shadow: 0 4px 16px rgba(0,0,0,.12);
        flex-direction: column;
        align-items: flex-start;
      }
      .dt-col-vis .dt-col-vis__dropdown--open {
        display: flex;
      }
      [data-theme="dark"] .dt-col-vis .dt-col-vis__dropdown {
        background: #0f1f35;
        border-color: #1e3a5f;
        box-shadow: 0 4px 16px rgba(0,0,0,.4);
      }
      .dt-col-vis__item {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 8px;
        padding: 6px 10px;
        font-size: 13px;
        cursor: pointer;
        white-space: nowrap;
        border-radius: 5px;
        color: var(--text-primary, #374151);
        text-align: left;
      }
      .dt-col-vis__item:hover {
        background: var(--bg-subtle, #f8fafc);
      }
      [data-theme="dark"] .dt-col-vis__item:hover {
        background: rgba(255,255,255,.06);
      }
      .dt-col-vis__item input[type="checkbox"] {
        margin: 0;
        cursor: pointer;
        accent-color: var(--color-primary, #2563eb);
      }
