/* Keep the existing design; only adapt the embedded viewport and input ergonomics. */
html.max-miniapp { min-height: 100%; scroll-padding-bottom: max(24px, env(safe-area-inset-bottom, 0px)); }
.max-miniapp body {
 min-height: 100vh;
 min-height: 100dvh;
 padding-top: env(safe-area-inset-top, 0px);
 padding-right: env(safe-area-inset-right, 0px);
 padding-bottom: env(safe-area-inset-bottom, 0px);
 padding-left: env(safe-area-inset-left, 0px);
}
.max-miniapp .auth-dialog {
 box-sizing: border-box;
 width: min(460px, calc(100vw - 32px));
 max-height: calc(100vh - 32px);
 max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 32px);
 overflow-y: auto;
 overscroll-behavior: contain;
}
@media(max-width:600px) {
 .max-miniapp input:not([type="checkbox"]):not([type="radio"]),
 .max-miniapp textarea, .max-miniapp select { font-size: max(16px, 1em); }
 .max-miniapp :is(.btn,.button,.top-login,.menu-toggle,.nav-toggle) { min-height: 44px; }
 .max-miniapp #scanText { min-height: 180px; max-width: 100%; }
 .max-miniapp .ai-upload-grid img { max-width: 100%; }
}
