/* Keep intrinsic form widths inside the viewport, including native iOS selects. */
dialog{box-sizing:border-box;min-width:0;width:calc(100% - 32px);max-width:600px;max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;margin:auto}
dialog.wide-modal{width:calc(100% - 32px);max-width:880px}
dialog form,dialog fieldset,dialog section,dialog .fieldrow,dialog .fieldrow>div,dialog .inline,dialog .inline>*{min-width:0;max-width:100%;box-sizing:border-box}
dialog input:not([type=checkbox]):not([type=radio]):not([type=color]),dialog select,dialog textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
dialog .fieldrow{grid-template-columns:repeat(2,minmax(0,1fr))}
dialog .inline{flex-wrap:wrap}
dialog fieldset{overflow-wrap:anywhere}
dialog .segment-choices{max-width:100%}
dialog .segment-choice{max-width:100%;white-space:normal}
dialog .segment-choice input{flex:0 0 18px;width:18px;height:18px}
dialog .actions{bottom:-28px;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;background:var(--surface,#fff);padding-bottom:max(16px,env(safe-area-inset-bottom))}
.install-app-button{position:fixed;right:18px;bottom:max(18px,env(safe-area-inset-bottom));z-index:12;box-shadow:0 3px 15px #0002;font-size:12px}
@media(max-width:640px){dialog,dialog.wide-modal{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:18px;border-radius:12px}dialog .fieldrow{grid-template-columns:minmax(0,1fr)}dialog .actions{bottom:-18px}dialog input,dialog select,dialog textarea{font-size:16px}dialog .inline>input{flex:1 1 180px}dialog .actions button{min-height:44px}.main{min-width:0}.content{min-width:0}.install-app-button{right:12px;bottom:max(12px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){dialog[open]{animation:none}}
/* 16px at rest AND focus prevents the native input magnification on iOS.
   Do not disable user scaling: pinch zoom and accessibility remain available. */
@media(max-width:900px),(pointer:coarse){
 html{ -webkit-text-size-adjust:100%;text-size-adjust:100%}
 body input:not([type=checkbox]):not([type=radio]),body select,body textarea,body [contenteditable=true]{font-size:16px!important}
 body input:focus,body select:focus,body textarea:focus{font-size:16px!important}
}
