/* Match original layout as closely as possible (desktop) */
html,
body {
  background-color: #f9f6ee;
  margin: 5px 0px 5px 2px;
  padding: 5px 0px 5px 2px;
  overflow: hidden;
}

section {
  display: flex;
  flex-flow: column;
  height: calc(100vh - 20px);
}

.tab-content {
  flex: 1;
  overflow-y: scroll;
}

/* Mobile: avoid clipped UI when browser bars change viewport height */
@media (max-width: 576px) {
  html,
  body {
    margin: 0;
    padding: 0.5rem;
    padding-left: max(0.5rem, env(safe-area-inset-left, 0px));
    padding-right: max(0.5rem, env(safe-area-inset-right, 0px));
    padding-bottom: max(0.5rem, env(safe-area-inset-bottom, 0px));
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  section {
    height: auto;
    min-height: calc(100dvh - 1rem);
    max-width: 100%;
    box-sizing: border-box;
  }

  .tab-content {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}

/* Keep tables responsive without forcing horizontal scroll */
.table-responsive {
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
}

/* Stop "Email" header / cells breaking one letter per line on narrow columns */
.table th.cd-col-email,
.table td.cd-col-email {
  min-width: 9.5rem;
  max-width: 14rem;
  white-space: normal;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.table th.cd-col-email {
  white-space: nowrap;
}

tr {
  cursor: default;
}

.myBtn {
  width: 70px;
}