:root{color-scheme:dark;--magenta:#ff00b8;--acid:#c6ff00;--ink:#130014}*{box-sizing:border-box}body{margin:0;background:var(--magenta);color:var(--ink);font-family:Arial,Helvetica,sans-serif}header{padding:22px 24px}h1{margin:0;font-size:clamp(20px,3vw,36px);line-height:1.2;font-weight:800;letter-spacing:-.8px}h1 span{white-space:nowrap}main{padding:0 16px 16px}.map-shell{border:3px solid var(--ink);background:var(--ink);height:calc(100dvh - 103px);min-height:360px;display:flex;flex-direction:column}.map-toolbar{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 16px;background:var(--acid);color:var(--ink);border-bottom:3px solid var(--ink)}.map-label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--ink)}.status-dot.live{background:var(--magenta);box-shadow:0 0 0 2px var(--ink)}.status-dot.offline{border-radius:0;background:var(--magenta)}.map-actions{display:flex;gap:8px;align-items:center}button{font:inherit;cursor:pointer;border:2px solid var(--ink);background:var(--acid);color:var(--ink);min-height:36px;padding:6px 12px;font-size:12px;font-weight:700}button:hover{background:var(--ink);color:var(--acid)}button:focus-visible{outline:3px solid var(--magenta);outline-offset:3px}#fullscreen{display:flex;align-items:center;justify-content:center}button[hidden]{display:none!important}.map-stage{flex:1;min-height:0;position:relative;background:var(--ink)}iframe{display:block;border:0;width:100%;height:100%;background:var(--ink)}.map-message{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:var(--ink);color:var(--acid)}.map-message[hidden]{display:none}.map-message h2{font-size:22px;margin:0}#retry{margin-top:20px;border-color:var(--acid)}.map-shell:fullscreen{width:100%;height:100%;border:0}@media(max-width:600px){header{padding:16px}h1{font-size:20px;letter-spacing:-.4px}main{padding:0 8px 8px}.map-shell{height:calc(100dvh - 88px)}.map-toolbar{padding:6px 10px}.map-label{font-size:11px}.map-actions{gap:5px}.map-actions button{padding:6px 8px}}
