.maplibregl-map{isolation:isolate}.vb-marker{position:relative;width:38px;height:47px;cursor:pointer;filter:drop-shadow(0 3px 4px rgba(15,23,42,.35));transition:transform .15s ease}.vb-marker:hover{transform:scale(1.08)}.vb-marker--sel{transform:scale(1.15);z-index:10}.vb-marker__body{position:absolute;top:0;left:0;width:38px;height:38px;box-sizing:border-box;border-radius:50%;background:var(--c, #10b981);display:flex;align-items:center;justify-content:center}.vb-marker__disc{width:26px;height:26px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:hidden}.vb-marker__disc img{width:20px;height:20px;-o-object-fit:contain;object-fit:contain}.vb-marker__disc svg{width:15px;height:15px;color:var(--c, #10b981)}.vb-marker__initial{font-family:Inter Tight,Inter,sans-serif;font-weight:700;font-size:13px;line-height:1;color:var(--c, #10b981)}.vb-marker--sel .vb-marker__disc{width:28px;height:28px}.vb-marker__tip{position:absolute;left:50%;top:34px;transform:translate(-50%);width:0;height:0;border-left:9px solid transparent;border-right:9px solid transparent;border-top:13px solid var(--c, #10b981)}.vb-marker__badge{position:absolute;top:25px;left:25px;width:13px;height:13px;box-sizing:border-box;border-radius:50%;border:2px solid #fff;background:#94a3b8}.vb-marker[data-avail=available] .vb-marker__badge{background:#10b981}.vb-marker[data-avail=busy] .vb-marker__badge{background:#ef4444}.vb-marker[data-avail=offline] .vb-marker__badge{background:#f59e0b}.vb-marker[data-avail=unknown] .vb-marker__badge{background:#94a3b8}.vb-marker[data-disputed="1"] .vb-marker__body{outline:2px dashed #ef4444;outline-offset:2px;border-radius:50%}.vb-cluster{display:flex;align-items:center;justify-content:center;border-radius:9999px;font-weight:700;letter-spacing:-.02em;color:#fff;background:#1e293b;border:3px solid rgba(255,255,255,.95);box-shadow:0 4px 12px #0f172a66;cursor:pointer;transition:transform .15s ease}.vb-cluster:hover{transform:scale(1.06)}.vb-popup .maplibregl-popup-content{background:#fff;color:#0f172a;border-radius:11px;padding:8px 10px;border:1px solid rgba(15,23,42,.08);box-shadow:0 8px 24px #0f172a33}.vb-popup .maplibregl-popup-tip{display:none}.vb-popup--action.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{display:block;border-width:8px;border-top-color:#fff}.vb-popup--action.maplibregl-popup-anchor-top .maplibregl-popup-tip{display:block;border-width:8px;border-bottom-color:#fff}.vb-pop{min-width:168px;max-width:200px}.vb-popup--tw .maplibregl-popup-content{padding:11px 12px 10px;border-radius:13px;box-shadow:0 10px 30px #0f172a38}.vb-popup--tw[class*=popup-anchor-bottom] .maplibregl-popup-tip{display:block;border-width:7px;border-top-color:#fff}.vb-popup--tw[class*=popup-anchor-top] .maplibregl-popup-tip{display:block;border-width:7px;border-bottom-color:#fff}.vb-popup--tw.maplibregl-popup-anchor-left .maplibregl-popup-tip{display:block;border-width:7px;border-right-color:#fff}.vb-popup--tw.maplibregl-popup-anchor-right .maplibregl-popup-tip{display:block;border-width:7px;border-left-color:#fff}.vb-popup--tw .maplibregl-popup-close-button{top:5px;right:6px;width:20px;height:20px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:6px;font-size:16px;line-height:1;color:#64748b;background:transparent;transition:background .12s ease,color .12s ease}.vb-popup--tw .maplibregl-popup-close-button:hover{background:#0f172a0f;color:#334155}.vb-tw{min-width:224px;max-width:254px}.vb-tw__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding-right:20px}.vb-tw__title{font-size:14px;font-weight:700;color:#0f172a;line-height:1.25;letter-spacing:-.01em}.vb-tw__badge{display:inline-flex;align-items:center;margin-top:1px;gap:5px;padding:2px 7px;border-radius:999px;font-size:10.5px;font-weight:600;white-space:nowrap;flex:none}.vb-tw__dot{width:6px;height:6px;border-radius:50%;flex:none}.vb-tw__sub{font-size:10.5px;color:#64748b;margin-top:1px}.vb-tw__speed{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:baseline;-moz-column-gap:10px;column-gap:10px;row-gap:3px;margin-top:10px}.vb-tw__speed--solo{grid-template-columns:auto;justify-content:start}.vb-tw__lbl{font-size:9px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#64748b}.vb-tw__lbl--r{text-align:right}.vb-tw__nval{font-size:16px;font-weight:700;color:#0f172a;line-height:1.1;text-align:right;font-variant-numeric:tabular-nums}.vb-tw__now{font-size:26px;font-weight:700;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.vb-tw__unit{font-size:11px;font-weight:600;color:#64748b;margin-left:3px;letter-spacing:0}.vb-tw__rows{margin-top:10px;border:1px solid rgba(15,23,42,.09);border-radius:10px;overflow:hidden}.vb-tw__row{display:flex;align-items:center;gap:7px;padding:7px 9px;font-size:11.5px}.vb-tw__row+.vb-tw__row{border-top:1px solid rgba(15,23,42,.06)}.vb-tw__ric{flex:none;width:13px;height:13px;color:#94a3b8}.vb-tw__ric svg{width:100%;height:100%;display:block}.vb-tw__rlbl{color:#64748b}.vb-tw__row b{margin-left:auto;color:#0f172a;font-weight:600;text-align:right}.vb-tw__bar{height:5px;border-radius:999px;background:#0f172a14;overflow:hidden;margin-top:7px}.vb-tw__fill{height:100%;border-radius:999px}.vb-tw__meta{margin-top:6px;font-size:10.5px;color:#475569;font-variant-numeric:tabular-nums}.vb-tw__none{font-size:12px;color:#64748b;margin-top:9px}.vb-tw__note{display:flex;align-items:flex-start;gap:5px;font-size:10px;line-height:1.45;color:#64748b;margin-top:9px}.vb-tw__nic{flex:none;width:11px;height:11px;margin-top:1px;color:#94a3b8}.vb-tw__nic svg{width:100%;height:100%;display:block}.vb-tw__stale{font-size:10.5px;font-weight:600;margin-top:6px}.vb-tw__skel{margin-top:9px}.vb-tw__skel-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.vb-tw__skel-b{display:block;border-radius:5px;background:#0f172a12;animation:vb-tw-pulse 1.3s ease-in-out infinite}.vb-tw__skel-b--lbl{width:56px;height:9px}.vb-tw__skel-b--lbl+.vb-tw__skel-b--lbl{width:48px}.vb-tw__skel-b--big{width:74px;height:26px;margin-top:5px}.vb-tw__skel-b--ref{width:52px;height:16px;margin-top:5px}.vb-tw__skel-b--bar{height:5px;margin-top:7px;border-radius:999px}.vb-tw__skel-b--meta{width:104px;height:10px;margin-top:6px}.vb-tw__skel-rows{margin-top:10px;border:1px solid rgba(15,23,42,.07);border-radius:10px;overflow:hidden}.vb-tw__skel-b--row{height:28px;border-radius:0;background:#0f172a0a}.vb-tw__skel-b--row+.vb-tw__skel-b--row{border-top:1px solid rgba(15,23,42,.06)}@keyframes vb-tw-pulse{0%,to{opacity:1}50%{opacity:.45}}@media(prefers-reduced-motion:reduce){.vb-tw__skel-b{animation:none}}.vb-pop__op{font-size:9px;font-weight:500;color:#64748b;line-height:1.2}.vb-pop__name{font-size:11px;font-weight:600;color:#0f172a;margin:1px 0 4px;line-height:1.2}.vb-pop__row{display:flex;align-items:center;gap:5px;font-size:10px;color:#475569;margin-top:1px}.vb-pop__dot,.vb-pop__pwr{width:6.5px;height:6.5px;border-radius:50%;flex:none}.vb-pop__actions{display:flex;margin:8px -10px 0;border-top:1px solid #eef2f6}.vb-pop__act{flex:1;display:flex;align-items:center;justify-content:center;gap:3px;padding:8px 4px;border:none;background:none;cursor:pointer;font-size:11px;font-weight:600;color:#64748b;transition:background .15s}.vb-pop__act:hover{background:#f8fafc}.vb-pop__act--primary{color:#10b981}.vb-pop__sep{width:1px;background:#eef2f6}.vb-pop__ic{width:13px;height:13px;flex:none}.vb-pop__act--primary svg{stroke:#10b981;fill:none;stroke-width:2.5}.vb-pop__act:not(.vb-pop__act--primary) svg{fill:#64748b}.vb-userdot{width:18px;height:18px;border-radius:9999px;background:#3b82f6;border:3px solid #fff;box-shadow:0 0 0 4px #3b82f64d}.vb-selpulse{position:relative;width:64px;height:64px;pointer-events:none;z-index:4}.vb-selpulse:before,.vb-selpulse:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:3px solid rgba(16,185,129,.9);animation:vb-selpulse 2s ease-out infinite}.vb-selpulse:after{animation-delay:1s}@keyframes vb-selpulse{0%{transform:scale(.35);opacity:.9}70%{opacity:.3}to{transform:scale(1);opacity:0}}@media(prefers-reduced-motion:reduce){.vb-selpulse:before,.vb-selpulse:after{animation:none;transform:scale(.5);opacity:.6}}
