/* Frozen responsive layer — phone, tablet, desktop */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  overflow-x: clip;
}

img,
video,
svg,
canvas {
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
}

.table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

body.admin-app .table-wrap {
  overflow: visible;
}

body.admin-app .spark {
  overflow: hidden;
}

@media (max-width: 720px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
  select,
  textarea {
    font-size: 16px;
  }

  button,
  .btn-gold,
  .btn-ghost,
  .btn-sm,
  .header-chip,
  .help-call,
  .help-plan,
  .slot-pill,
  .admin-nav-link {
    min-height: 44px;
  }

  body.admin-app .btn-sm,
  body.admin-app .admin-toolbar .btn-gold,
  body.admin-app .admin-toolbar .btn-ghost,
  body.admin-app .filter-form .btn-gold {
    min-height: 38px;
  }
}

@media (max-width: 480px) {
  .shell {
    padding-left: max(14px, env(safe-area-inset-left));
    padding-right: max(14px, env(safe-area-inset-right));
  }
}

input[type="checkbox"],
input[type="radio"] {
  -webkit-appearance: auto;
  appearance: auto;
  width: 15px;
  height: 15px;
  min-width: 15px;
  min-height: 15px;
  max-width: 15px;
  max-height: 15px;
  margin: 0;
  padding: 0;
  flex: 0 0 15px;
  vertical-align: middle;
  accent-color: var(--brand, #0B1F3A);
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
}
