/* Layout guardrails shared by desktop and mobile.
   This keeps the harmless global protections that used to live at the top of
   mobile-browser-fix.css, without loading the old mobile override stack. */

html,
body {
  max-width: 100%;
  overflow-x: clip;
}

body {
  min-width: 0;
}

body *,
body *::before,
body *::after {
  box-sizing: border-box;
}

img,
svg,
video,
canvas,
iframe {
  max-width: 100%;
}

main,
section,
article,
aside,
header,
footer,
nav,
form,
fieldset,
.container,
.card,
[class*="card"],
[class*="wrap"],
[class*="shell"],
[class*="page"],
[class*="grid"],
[class*="row"],
[class*="hero"],
[class*="panel"],
[class*="box"],
[class*="modal"],
[class*="drawer"] {
  min-width: 0;
}

input,
select,
textarea,
button {
  max-width: 100%;
}

pre,
code,
.payload {
  max-width: 100%;
  overflow-x: auto;
}

.table-wrap,
.table-responsive,
.responsive-table,
.orders-table-wrap,
.fin-table-wrap,
[class*="table-wrap"],
[class*="table-responsive"] {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
