
/* Global mobile Safari form and viewport stability */
html,body{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}
body{min-height:100dvh;overscroll-behavior-x:none}
.app{width:100%;max-width:480px;min-height:100dvh}
.authGate{width:100%;height:var(--meus-viewport-height,100dvh);min-height:var(--meus-viewport-height,100dvh);overflow-x:hidden;overflow-y:auto;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}
.authCard{max-width:100%;max-height:calc(var(--meus-viewport-height,100dvh) - max(24px,env(safe-area-inset-top)) - max(24px,env(safe-area-inset-bottom)))}
.modal.on{height:var(--meus-viewport-height,100dvh);overscroll-behavior:contain}
.sheet{max-width:100%;max-height:calc(var(--meus-viewport-height,100dvh) - max(10px,env(safe-area-inset-top)));overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scroll-padding:20px 0 calc(28px + env(safe-area-inset-bottom))}
input,textarea,select{max-width:100%;transform:translateZ(0)}
textarea{resize:vertical}
@media(max-width:768px),(pointer:coarse){
  input,textarea,select,.input{font-size:16px!important;line-height:1.25!important}
  input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),select,.input{min-height:44px}
  textarea.input{min-height:96px;padding-top:11px;padding-bottom:11px}
  .compose .input,.replyBox .input{min-height:42px}
  body.meusKeyboardOpen .nav{opacity:0;pointer-events:none;transform:translate(-50%,120%)}
  body.meusKeyboardOpen .sheet{max-height:var(--meus-viewport-height,100dvh)}
}
