/* Shared by every document, including controls inserted after login. */
@media screen and (max-width: 768px) {
  [hidden] { display: none !important; }
  html body button,
  html body a[href],
  html body [role="button"],
  html body [role="switch"],
  html body [onclick],
  html body #alertSwitch,
  html body input:is(:not([type]), [type="text"], [type="email"], [type="password"], [type="search"], [type="tel"], [type="url"], [type="number"], [type="date"], [type="datetime-local"], [type="button"], [type="submit"], [type="reset"]),
  html body select,
  html body summary,
  html body label:has(input[type="file"]),
  html body .sb-item,
  html body .sb-qm,
  html body #fs-mob-btn {
    min-height: 44px !important;
    min-width: 44px !important;
    box-sizing: border-box;
  }

  /* Inline links and upload labels need a box for min-height to apply. */
  html body a[href],
  html body label:has(input[type="file"]) {
    display: inline-flex;
    align-items: center;
  }

  /* Allow taller controls to wrap inside narrow headers and action rows. */
  #fs-auth-links, #fsel-links, #fsip-links,
  #fs-live-account [data-cases] > div,
  #fs-live-alerts [data-alerts] > div,
  #fs-live-watches [data-watches] > div {
    flex-wrap: wrap;
  }

  #alertSwitch { padding-top: 13px; padding-bottom: 13px; }
}
