/* V64 responsive safety layer — interaction logic is untouched. */
:root { --v64-safe-inline: max(10px, env(safe-area-inset-left)); }

html {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
}

body { max-width: 100%; }

button,
input,
select,
textarea,
[role="button"] {
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
}

button,
[role="button"] {
  overflow-wrap: normal;
  word-break: normal;
}

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

@media (max-width: 430px) {
  input,
  select,
  textarea { font-size: max(16px, 1em); }

  button,
  [role="button"] {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
}

@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
}
