#app-startup { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; overflow: auto; padding: 1.5rem; background: var(--background, #f5f0e8); color: var(--foreground, #293a2c); font-family: var(--font-body, sans-serif); }
.startup-content { display: grid; justify-items: center; gap: 1rem; width: 100%; max-width: 36rem; text-align: center; }
.startup-art { display: grid; place-items: center; width: 100%; min-height: 10rem; }
#startup-scene { grid-area: 1 / 1; width: 100%; height: min(60dvh, 28rem); }
#startup-static { grid-area: 1 / 1; width: min(18rem, 75vw); max-height: 8rem; object-fit: contain; }
#startup-static[hidden] { display: none; }
#startup-hint { margin: 0; font-size: .875rem; line-height: 1.5; }
#startup-retry { min-height: 2.75rem; padding: .5rem 1rem; border: 1px solid var(--control-border, currentColor); border-radius: 2rem; background: var(--card, transparent); color: inherit; font: inherit; cursor: pointer; }
#startup-retry:focus-visible { outline: 2px solid var(--ring, currentColor); outline-offset: 3px; }
#startup-retry[hidden], #startup-hint[hidden] { display: none; }
.startup-noscript { position: fixed; inset: 0; z-index: 1001; display: grid; place-items: center; padding: 2rem; background: var(--background, #f5f0e8); color: var(--foreground, #293a2c); font-family: sans-serif; }
