/* Ajustes de adaptación para escritorio, laptop, tablet y móvil. */
.final-shell {
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
}
.final-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  height: 100vh;
  max-height: 100vh;
  overflow: hidden;
}
.final-sidebar nav {
  min-height: 0;
  overflow-y: auto;
}
.workspace {
  width: 100%;
  min-width: 0;
  height: 100vh;
  overflow-x: hidden;
  overflow-y: auto;
}
.data-table,
.tickets-table-scroll,
.report-table-card .table-scroll {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  -webkit-overflow-scrolling: touch;
}
.subtabs {
  max-width: 100%;
  overflow-x: auto;
  white-space: nowrap;
}

@media (max-width: 1440px) {
  .final-shell .workspace > main {
    padding: 20px 22px 28px;
  }
  .page-head {
    margin-bottom: 18px;
  }
  .data-table table {
    min-width: 760px;
  }
  .data-table th,
  .data-table td {
    padding: 12px 16px;
  }
  .catalog-tabs,
  .subtabs {
    scrollbar-width: thin;
  }
}

@media (max-width: 900px) {
  .final-shell,
  .final-shell.collapsed {
    display: block;
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }
  .workspace {
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }
  .final-sidebar {
    position: fixed;
  }
}

@media (max-width: 600px) {
  .page-head > .button,
  .page-head > a.button {
    width: 100%;
  }
  .modal-card {
    width: calc(100vw - 20px);
    max-height: 94vh;
    overflow-y: auto;
  }
}

.mail-preview-wrap {
  height: min(620px, 68vh);
  overflow: hidden;
  background: #f3f6f8;
}

.mail-preview-frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #f3f6f8;
}

@media (max-width: 600px) {
  .mail-preview-wrap {
    height: 58vh;
  }
}
