*{box-sizing:border-box}html,body{color:#f8faf7;background:#07110f;width:100%;height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden}button{font:inherit}#xr-canvas,.preview-canvas{width:100%;height:100%;display:block;position:fixed;inset:0}#xr-canvas{z-index:0}#app{z-index:20;pointer-events:none;position:fixed;inset:0}.hud{padding:max(18px, env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));pointer-events:none;grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.topbar{justify-content:space-between;align-items:start;gap:16px;display:flex}.eyebrow,.topbar h1,.reticle-hint p{text-shadow:0 1px 16px #00000059;margin:0}.eyebrow{color:#95e8ce;text-transform:uppercase;font-size:12px;font-weight:700}.topbar h1{letter-spacing:0;margin-top:4px;font-size:clamp(28px,6vw,48px);line-height:.95}.badge{color:#dffdf3;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#040c0a94;border:1px solid #ffffff38;border-radius:8px;min-width:76px;margin:0;padding:8px 12px;font-size:13px;font-weight:700}.reticle-hint{text-align:center;place-self:center;justify-items:center;gap:14px;max-width:min(360px,100vw - 44px);display:grid}.reticle-dot{border:2px solid #f4fffb;border-radius:50%;width:44px;height:44px;box-shadow:0 0 0 8px #53e7bf1f,0 0 36px #53e7bf6b}.reticle-dot:after{content:"";background:#f4fffb;border-radius:50%;width:8px;height:8px;margin:16px auto;display:block}.reticle-hint p{color:#effff9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#040c0a9e;border-radius:8px;padding:9px 13px;font-size:14px;font-weight:700}.is-placed .reticle-hint{opacity:0;transition:opacity .22s}.controls{pointer-events:auto;grid-template-columns:repeat(4,minmax(48px,auto));justify-self:center;gap:8px;width:min(430px,100%);display:grid}.controls button{color:#f7fffb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07110fc2;border:1px solid #ffffff2e;border-radius:8px;min-height:48px;font-size:15px;font-weight:800;box-shadow:0 14px 44px #00000047}.controls button:active{transform:translateY(1px)}.controls.is-hidden{display:none}@media (width<=430px){.controls{grid-template-columns:1fr 1fr 48px 48px}}
