/* The installed iPhone viewport alone owns the top inset. Do not infer device
   identity from width and do not invent a fixed inset when WebKit reports zero. */
html.iphone-pwa {
  --pwa-safe-top: env(safe-area-inset-top, 0px);
  --erp-legacy-safe-top: 0px;
  --erp-viewport-height: var(--erp-visible-height, calc(100vh - var(--pwa-safe-top)));
  height:100%;
  overflow:hidden;
}
@supports (height:100dvh) {
  html.iphone-pwa { --erp-viewport-height:var(--erp-visible-height, calc(100dvh - var(--pwa-safe-top))); }
}
html.iphone-pwa::before {
  content:"";
  position:fixed;
  inset:0 0 auto;
  height:var(--pwa-safe-top);
  background-color:var(--pwa-header-color,#f4f7fb);
  background-image:var(--pwa-header-image,none);
  background-size:100% var(--pwa-header-paint-height,100%);
  background-position:top center;
  pointer-events:none;
}
html.iphone-pwa body {
  position:fixed;
  inset:var(--pwa-safe-top) 0 0;
  width:100%;
  height:var(--erp-viewport-height);
  min-height:0;
  margin:0;
  overflow:hidden;
  /* Fixed navigation, full-screen overlays and portaled controls share the
     same usable viewport, with the original bottom edge and scroll areas. */
  transform:translateZ(0);
}
html.iphone-pwa .clerk-mobile-dashboard .home-header { --clerk-status-bar-inset:0px; }
html.iphone-pwa .tracker-dashboard .home-header { --workbench-status-bar-inset:0px; }
