*{box-sizing:border-box}html,body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;background:#1c1e21;height:100%;margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}#view{touch-action:none;cursor:grab;width:100%;height:100%;display:block;position:fixed;inset:0}#view.dragging{cursor:grabbing}#room,#controls button,#help,.room-label{color:#fff;background:#181a1db8;border-radius:8px}#room{left:calc(12px + env(safe-area-inset-left));top:calc(12px + env(safe-area-inset-top));pointer-events:none;padding:8px 12px;font-size:15px;font-weight:600;position:fixed}#map{right:calc(12px + env(safe-area-inset-right));top:calc(12px + env(safe-area-inset-top));pointer-events:none;background:#f3f1ec;border:1px solid #00000059;border-radius:8px;width:132px;position:fixed}#controls{right:calc(12px + env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));flex-direction:column;align-items:stretch;gap:8px;display:flex;position:fixed}#controls button{min-width:104px;min-height:44px;font:inherit;cursor:pointer;touch-action:manipulation;border:1px solid #ffffff40;padding:10px 16px;font-size:15px;font-weight:600}#controls button:hover{background:#181a1de6}#controls button:focus-visible{outline-offset:2px;outline:2px solid #fff}#stick{left:calc(20px + env(safe-area-inset-left));bottom:calc(24px + env(safe-area-inset-bottom));touch-action:none;background:#181a1d61;border:2px solid #ffffff8c;border-radius:50%;width:120px;height:120px;display:none;position:fixed}#knob{pointer-events:none;background:#ffffffd9;border-radius:50%;width:52px;height:52px;margin:-26px 0 0 -26px;position:absolute;top:50%;left:50%}body.touch #stick{display:block}body.top #stick,body.top #map,body.top #help{display:none}#help{left:50%;bottom:calc(18px + env(safe-area-inset-bottom));white-space:nowrap;pointer-events:none;padding:7px 12px;font-size:13px;transition:opacity .6s;position:fixed;transform:translate(-50%)}#help.hidden{opacity:0}body.touch #help{bottom:auto;top:calc(56px + env(safe-area-inset-top));left:calc(12px + env(safe-area-inset-left));transform:none}#labels{pointer-events:none;display:none;position:fixed;inset:0}body.top #labels{display:block}.room-label{white-space:nowrap;border-radius:6px;padding:3px 7px;font-size:12px;font-weight:600;position:absolute;transform:translate(-50%,-50%)}@media (width<=520px){#map{width:104px}#room{white-space:nowrap;text-overflow:ellipsis;max-width:calc(100vw - 140px);font-size:13px;overflow:hidden}.room-label{padding:2px 4px;font-size:9px}}@media (aspect-ratio<=1){body.top #controls{top:calc(54px + env(safe-area-inset-top));bottom:auto;left:calc(12px + env(safe-area-inset-left));pointer-events:none;flex-flow:wrap;justify-content:flex-end}body.top #controls button{pointer-events:auto}}#vignette{pointer-events:none;background:radial-gradient(#0000 55%,#00000047 100%);display:none;position:fixed;inset:0}body.real:not(.top) #vignette{display:block}@media (width<=520px){#controls button{min-height:40px;padding:8px 12px;font-size:14px}}
