/* Install help is hidden by default and offered only on iPhone/iPad browsers. */
button.portal-install-link { color:#087984; padding:8px 0; min-height:44px; background:transparent; border:0; font-size:13px; text-decoration:underline; text-underline-offset:3px; text-align:left; }
#account-menu .portal-install-link { padding:10px 12px; }
#portal-install-dialog { width:min(430px,calc(100vw - 32px)); max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom)); overflow:auto; padding:28px; border:1px solid #d5e7e6; border-radius:20px; background:#fff; color:#16324f; }
#portal-install-dialog::backdrop { background:#102c46a6; }
.portal-install-identity { display:flex; align-items:center; gap:16px; margin-bottom:24px; }
.portal-install-identity img { width:68px; height:68px; border-radius:16px; flex:none; }
#portal-install-dialog h2 { font-size:22px; margin:0 0 5px; }
#portal-install-dialog p { font-size:14px; line-height:1.65; margin:0; }
#portal-install-dialog ol { padding-left:23px; font-size:15px; line-height:1.7; margin:20px 0; }
#portal-install-dialog li { padding-left:4px; margin-bottom:12px; }
#portal-install-dialog .portal-install-note { padding:14px; background:#edf7f7; border-radius:10px; font-size:13px; }
#portal-install-dialog button { margin-top:22px; width:100%; min-height:46px; background:#087984; border-color:#087984; color:white; }
/* Only the installed iOS app opts into edge-to-edge display. Browser/desktop
   layout retains its original viewport and every existing breakpoint. */
@media (max-width:1050px) {
  html.portal-home-app { background:#fff; }
  .portal-home-app body { min-height:100dvh; padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left); }
  .portal-home-app body:has(#login:not([hidden])) { padding:calc(24px + env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
  .portal-home-app .topbar { top:env(safe-area-inset-top); }
  .portal-home-app .portal-sidebar { top:calc(84px + env(safe-area-inset-top)); }
  .portal-home-app .workspace-nav { left:env(safe-area-inset-left); bottom:env(safe-area-inset-bottom); }
  .portal-home-app .signed-in :is(#app,#leads-app) { min-height:calc(100dvh - var(--header-height) - env(safe-area-inset-top) - env(safe-area-inset-bottom)); }
}
@media (min-width:801px) and (max-width:1050px) {
  .portal-home-app .workspace-nav { top:calc(var(--header-height) + env(safe-area-inset-top)); }
}
@media (max-width:760px) {
  .portal-home-app .workspace-nav { top:auto; bottom:auto; }
}
