*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background:#000;color:#fff}body{font-family:system-ui,-apple-system,Segoe UI,sans-serif}button{font:inherit;cursor:pointer}.menu-screen{min-height:100dvh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2.5rem;padding:1.5rem;background:#000;color:#fff}.splash-enter{padding:0;border:0;background:none;width:min(32rem,90vw);-webkit-tap-highlight-color:transparent;transition:transform .15s ease}.splash-enter img{display:block;width:100%;height:auto;max-height:80dvh;object-fit:contain}.splash-enter:hover,.splash-enter:focus-visible{transform:scale(1.03);outline:none}.splash-enter:active{transform:scale(.97)}.mode-screen{position:relative;min-height:100dvh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:5.5rem 1.5rem 1.5rem;background:#000;color:#fff;text-align:center}.mode-screen h1{margin:0;font-size:clamp(1.75rem,5vw,2.75rem)}.mode-screen p{margin:0;font-size:1.1rem;color:#ffe600}.back-to-menu{position:fixed;top:max(1rem,env(safe-area-inset-top));left:max(1rem,env(safe-area-inset-left));z-index:1000;min-height:2.25rem;padding:.4rem .9rem;border:2px solid #000;border-radius:999px;background:#ffe600;color:#000;font-size:.85rem;font-weight:800;box-shadow:0 0 0 3px #fff}.back-to-menu:hover,.back-to-menu:focus-visible{background:#fff;outline:none}.back-to-menu:active{background:#000;color:#ffe600;border-color:#ffe600}.scene-viewer{position:relative;padding:0;height:100dvh;min-height:100dvh;display:block;overflow:hidden}.scene-viewer-stage{position:absolute;top:0;right:0;bottom:0;left:0}.scene-viewer canvas{display:block;touch-action:none}.ar-passthrough{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0;background:#000}.floor-place-ar .scene-viewer-stage{z-index:1;background:transparent}.floor-place-ar canvas{background:transparent!important}.ar-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem;padding:5.5rem 1.5rem 1.5rem;pointer-events:none}.group-buttons{position:absolute;left:0;right:0;bottom:max(1.5rem,env(safe-area-inset-bottom));z-index:3;display:flex;justify-content:center;gap:1rem}.group-button{width:3.5rem;height:3.5rem;border:3px solid #000;border-radius:50%;background:#ffe600;color:#000;font-size:1.25rem;font-weight:800;box-shadow:0 0 0 3px #fff}.group-button:active{background:#000;color:#ffe600;border-color:#ffe600}.group-button.is-placed{cursor:default;background:#0009;color:#ffe600;border-color:#ffe600;box-shadow:none}.ar-aim{width:4.5rem;height:4.5rem;border:3px solid #ffe600;border-radius:50%;box-shadow:0 0 0 3px #000}.ar-status{margin:0;max-width:22rem;padding:.65rem .9rem;background:#000000b3;color:#fff;font-size:.95rem;font-weight:600}.ar-status-error{color:#ffe600}.joystick-hud{position:fixed;left:max(1.25rem,env(safe-area-inset-left));bottom:max(1.5rem,env(safe-area-inset-bottom));width:160px;height:160px;z-index:900;touch-action:none}
