/* Keep editable text comfortably sized on iPhone, including installed web apps.
   Intentional pinch-to-zoom remains available. */
@media(max-width:760px), (any-pointer:coarse){
 input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]):not([type=button]):not([type=submit]),
 textarea,select,[contenteditable=true]{font-size:16px!important}
 .field,.field input,.field select,.field textarea{min-width:0}
 #modal,.temporal-picker{
  position:fixed;inset:auto;margin:0;
  top:calc(var(--visible-top,0px) + 12px);
  width:min(620px,calc(var(--visible-width,100vw) - 24px));
  left:calc(var(--visible-left,0px) + (var(--visible-width,100vw) - min(620px,calc(var(--visible-width,100vw) - 24px))) / 2);
  max-width:calc(var(--visible-width,100vw) - 24px);
  max-height:calc(var(--visible-height,100dvh) - 24px);overflow:auto;overscroll-behavior:contain;
 }
 .temporal-picker{width:min(360px,calc(var(--visible-width,100vw) - 24px));left:calc(var(--visible-left,0px) + (var(--visible-width,100vw) - min(360px,calc(var(--visible-width,100vw) - 24px))) / 2)}
 #modal .panel-head{z-index:1}
 .catalog-results,.person-matches{max-height:min(285px,40dvh,var(--visible-height,100dvh) * .5);overflow-y:auto;overscroll-behavior:contain}
}
.viewport-popup{
 position:fixed!important;inset:auto;margin:0!important;padding:0;box-sizing:border-box;
 max-width:none;min-width:0;min-height:0;overflow:auto!important;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;
 background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #0003;z-index:1000;
}
.viewport-popup[hidden]{display:none!important}
.viewport-popup::backdrop{background:transparent;pointer-events:none}
.viewport-popup .choice-options,.viewport-popup .location-options,.viewport-popup [role=listbox]{max-height:none;overflow:visible}
.viewport-popup [role=option]{min-height:44px;overflow-wrap:anywhere;white-space:normal}
