/* In browser tabs use the dynamic viewport to allow for browser chrome.
   Home Screen apps have no toolbar: use the large viewport instead. WebKit can
   report 100%/dvh/inset:0 one status-bar height short on a standalone cold start.
   Do not subtract safe-area insets from the world; only controls need padding. */
:root{--app-height:100vh}
@supports(height:100dvh){:root{--app-height:100dvh}}
@media(display-mode:standalone),(display-mode:fullscreen){:root{--app-height:100vh}}
:root.app-standalone{--app-height:100vh}
html,body{height:var(--app-height);min-height:var(--app-height);overscroll-behavior:none;background:#100c20}
/* A normal-flow shell avoids the undersized fixed-position viewport clipping
   box. Layout containment anchors its fixed HUD children to this full height. */
.arena-shell{position:relative;inset:auto;width:100%;height:var(--app-height);contain:layout paint;isolation:isolate}
#arena,.arena-shell>.vignette,.arena-shell>#loader{position:absolute;inset:0;width:100%;height:100%}
.app-standalone:not(.arena-fit) dialog.stream-dock[open]{height:var(--app-height)}
