:root{background:#03080e;color-scheme:dark}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;width:100%;height:100%;min-height:100%;overflow:hidden;background:#03080e;font-family:Inter,system-ui,Arial,sans-serif;touch-action:none;overscroll-behavior:none}
html{position:fixed;inset:0}
body{position:fixed;inset:0;width:100vw;height:100dvh;min-height:100svh;user-select:none;-webkit-user-select:none}
#app{position:fixed;inset:0;width:100vw;height:100dvh;min-height:100svh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#03080e}
html:fullscreen,html:fullscreen body,html:fullscreen #app,body.flr-fullscreen,#app:fullscreen{width:100vw!important;height:100vh!important;min-height:100vh!important;inset:0!important;background:#03080e}
canvas{display:block!important;margin:0!important;max-width:100vw!important;max-height:100vh!important;touch-action:none}
#rotate-device{display:none;position:fixed;inset:0;z-index:100000;background:radial-gradient(circle at 50% 45%,#123b43 0%,#07141d 48%,#02070c 100%);align-items:center;justify-content:center;color:#eafffb;text-align:center;padding:24px env(safe-area-inset-right) 24px env(safe-area-inset-left)}
.rotate-card{width:min(86vw,420px);padding:34px 24px;border:1px solid rgba(121,244,230,.35);border-radius:24px;background:rgba(4,16,24,.92);box-shadow:0 22px 80px rgba(0,0,0,.45),0 0 40px rgba(68,242,218,.08)}
.rotate-card strong{display:block;font-size:22px;letter-spacing:1.5px}.rotate-card span{display:block;margin-top:10px;color:#9bc9c8;font-size:15px}.rotate-icon{font-size:52px;line-height:1;margin-bottom:18px;color:#78f4e6;text-shadow:0 0 22px rgba(104,255,231,.45)}
#fullscreen-fallback{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:120000;border:1px solid rgba(117,238,255,.75);border-radius:18px;padding:16px 26px;background:rgba(4,19,29,.94);color:#edffff;font:700 18px/1 system-ui,sans-serif;letter-spacing:.7px;box-shadow:0 18px 60px rgba(0,0,0,.55),0 0 36px rgba(78,235,255,.14);touch-action:manipulation}
#fullscreen-fallback[hidden]{display:none!important}
#build-version{position:fixed;right:max(8px,env(safe-area-inset-right));top:max(8px,env(safe-area-inset-top));z-index:99999;font:11px monospace;color:#7ceeff;opacity:.55;pointer-events:none}
@media (orientation:portrait) and (pointer:coarse){#rotate-device{display:flex}}
@media (display-mode:standalone){body,#app{background:#02070c}}
