.globe-viewport-shell,.globe-viewport{z-index:0;width:100%;height:100%;position:absolute;inset:0}.globe-viewport{background:radial-gradient(circle at 50% 48%,#113342 0,#061722 36%,#01060b 72%)}.globe-viewport .maplibregl-canvas{outline:none}.globe-runtime{z-index:5;right:max(20px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));max-width:min(420px,100vw - 40px);min-height:36px;color:var(--text-secondary);letter-spacing:.04em;pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:8px 13px;font-size:11px;display:flex;position:absolute}.globe-runtime__indicator{background:#f0c66c;border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 12px #f0c66c8c}.globe-controls{z-index:5;left:max(64px, calc(env(safe-area-inset-left) + 64px));bottom:max(20px, env(safe-area-inset-bottom));gap:8px;display:flex;position:absolute}.globe-performance{z-index:5;top:max(20px, env(safe-area-inset-top));right:max(20px, env(safe-area-inset-right));width:min(290px,100vw - 40px);color:var(--text-secondary);pointer-events:none;border-radius:16px;padding:12px 14px;font-size:11px;position:absolute}.globe-performance__title{color:var(--text-primary);letter-spacing:.1em;text-transform:uppercase;margin:0 0 9px;font-size:10px;font-weight:650}.globe-performance__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;display:grid}.globe-performance__metrics div{min-width:0}.globe-performance__metrics dt,.globe-performance__metrics dd{margin:0}.globe-performance__metrics dt{opacity:.68;margin-bottom:3px}.globe-performance__metrics dd{color:var(--text-primary);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.globe-control{min-height:44px;color:var(--text-primary);cursor:pointer;border-radius:999px;padding:9px 15px;transition:background-color .16s,border-color .16s,transform .16s}.globe-control:hover:not(:disabled){border-color:var(--glass-interactive-border);background:var(--glass-interactive-bg)}.globe-control:active:not(:disabled){transform:scale(.97)}.globe-control:focus-visible{outline:2px solid var(--glass-focus);outline-offset:3px}.globe-control:disabled{opacity:.42;cursor:wait}.globe-layer-panel{z-index:6;left:max(64px, calc(env(safe-area-inset-left) + 64px));bottom:calc(max(20px, env(safe-area-inset-bottom)) + 56px);border-radius:18px;width:min(248px,100vw - 84px);padding:12px;position:absolute}.globe-layer-panel fieldset{border:0;min-width:0;margin:0;padding:0}.globe-layer-panel legend{color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;padding:0 6px;font-size:11px;font-weight:650}.globe-layer-option{min-height:48px;color:var(--text-primary);cursor:pointer;border-radius:12px;align-items:center;gap:11px;padding:7px 8px;display:flex}.globe-layer-option:hover{background:var(--glass-interactive-bg)}.globe-layer-option:has(input:focus-visible){outline:2px solid var(--glass-focus);outline-offset:1px}.globe-layer-option input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.globe-layer-option span{gap:2px;min-width:0;display:grid}.globe-layer-option strong,.globe-layer-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.globe-layer-option strong{font-size:13px;font-weight:620}.globe-layer-option small{color:var(--text-secondary);font-size:10px}.globe-layer-option:has(input:disabled){opacity:.45;cursor:wait}.globe-runtime--loading .globe-runtime__indicator{animation:1.2s ease-in-out infinite globe-runtime-pulse}.globe-runtime--ready .globe-runtime__indicator{background:var(--accent);box-shadow:0 0 12px #72e0c4b3}.globe-runtime--error{color:#ffebe8e6;pointer-events:auto;background:#371518d1;border-color:#ff918447;border-radius:18px}.globe-runtime--error .globe-runtime__indicator{background:#ff8f82;box-shadow:0 0 12px #ff665b8c}@keyframes globe-runtime-pulse{50%{opacity:.45;transform:scale(.78)}}@media (prefers-reduced-motion:reduce){.globe-runtime--loading .globe-runtime__indicator{animation:none}.globe-control{transition:none}}@media (max-width:640px){.globe-runtime,.globe-controls{bottom:calc(max(20px, env(safe-area-inset-bottom)) + 52px)}.globe-performance{top:auto;right:max(20px, env(safe-area-inset-right));bottom:calc(max(20px, env(safe-area-inset-bottom)) + 108px)}.globe-layer-panel{bottom:calc(max(20px, env(safe-area-inset-bottom)) + 108px)}}
