/* The supplied logo animation plays above the page once per tab session. */
.ph-home .ph-startup { position: fixed; inset: 0; width: 100%; max-width: none; height: 100dvh; max-height: none; margin: 0; padding: 16px; border: 0; background: white; color: var(--ph-text-primary); overflow: hidden; opacity: 1; transition: opacity .2s ease; }
.ph-home .ph-startup[open] { display: grid; place-items: center; }
.ph-startup::backdrop { background: white; }
.ph-home .ph-startup.is-finished { opacity: 0; }
.ph-startup__logo { width: min(92vw,78svh,720px); aspect-ratio: 1; }
.ph-home .ph-startup__skip { position: absolute; right: max(20px,env(safe-area-inset-right)); bottom: max(20px,env(safe-area-inset-bottom)); min-width: 88px; min-height: 44px; padding: 10px 20px; border: 1px solid var(--ph-border-light); border-radius: 24px; background: white; color: var(--ph-text-primary); cursor: pointer; }
html:has(.ph-startup[open]), body:has(.ph-startup[open]) { overflow: hidden; }
@media (prefers-reduced-motion: reduce) { .ph-home .ph-startup { transition: none; } }
