.mobile-startup { display: none; }
:root:is([data-mobile-startup="loading"], [data-mobile-startup="error"]) .app-shell { visibility: hidden; }
:root:is([data-mobile-startup="loading"], [data-mobile-startup="error"]) .mobile-startup {
  position: fixed; inset: 0; z-index: 79; display: grid; place-content: center;
  justify-items: center; gap: 20px; padding: 24px; background: var(--ui-bg, #fff);
  color: var(--ui-value-primary, #293e48); text-align: center;
}
.mobile-startup .app-brand__mark { width: 48px; height: 48px; }
:root[data-mobile-startup="loading"] .mobile-startup .app-brand__mark { animation: mobile-startup-breathe 1.2s ease-in-out infinite alternate; }
.mobile-startup p { margin: 0; max-width: 28ch; }
.mobile-startup__error, .mobile-startup__retry { display: none; }
:root[data-mobile-startup="error"] .mobile-startup__loading { display: none; }
:root[data-mobile-startup="error"] :is(.mobile-startup__error,.mobile-startup__retry) { display: block; }
.mobile-startup__retry { min-height: 48px; padding: 10px 24px; border: 0; border-radius: 14px; background: var(--ui-accent); color: var(--ui-text-on-accent); font: inherit; cursor: pointer; }
:root:is([data-single-tab-state="blocked"], [data-entitlement-state="blocked"], [data-entitlement-state="install"]) .mobile-startup { display: none; }
@keyframes mobile-startup-breathe { from { opacity: .5; transform: scale(.96); } to { opacity: 1; transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { :root[data-mobile-startup="loading"] .mobile-startup .app-brand__mark { animation: none; } }
