.map{--map-surface:#fff;--map-sunken:#f5f5f4;--map-text:#1c1917;--map-text-muted:#78716c;--map-border:#e7e5e4;--map-shape:#e7e5e4;--map-shape-hover:#d6d3d1;--map-shape-active:var(--brand,#b32133);--map-route:var(--brand,#b32133);--map-vacant:#f5f5f4;--map-plan-line:#52525b;--map-walkway:#2563eb;--map-graph:#16a34a;--map-step:#dc2626;--map-marker:#7c3aed;--map-entrance:#ea580c;--map-selected:#f59e0b;--map-standpoint:#dc2626;background:var(--map-sunken);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;display:block;position:relative;overflow:hidden}@media (prefers-color-scheme:dark){.map-page:not(.map-page--kiosk) .map{--map-surface:#1c1917;--map-sunken:#0c0a09;--map-text:#fafaf9;--map-text-muted:#a8a29e;--map-border:#292524}.map-page:not(.map-page--kiosk) .map__plan,.map-page:not(.map-page--kiosk) .map__shapes{filter:brightness(.72)saturate(1.1)}}.map__notice{z-index:3;max-width:22rem;color:var(--map-text);font:inherit;text-align:center;background:var(--map-surface);border:1px solid var(--map-border);cursor:pointer;border-radius:12px;padding:14px 20px;font-size:.9375rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 24px #0000001f}.map__notice[hidden]{display:none}.map--loading:after{z-index:3;background:var(--map-route);content:"";height:3px;animation:1.1s ease-in-out infinite map-progress;position:absolute;top:0;left:0;right:0}@keyframes map-progress{0%{transform-origin:0;transform:scaleX(0)}50%{transform-origin:0;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}.map__background{pointer-events:none;opacity:.9}.map__stage{width:100%;height:100%;display:block}.map__stage--animating .map__camera{transition:transform .42s cubic-bezier(.22,.61,.36,1)}.map__layer{opacity:0;pointer-events:none;transition:opacity .26s,transform .26s}.map__layer--visible{opacity:1;pointer-events:auto}.map__layer--above{transform:translateY(-1.5%)}.map__layer--below{transform:translateY(1.5%)}.map__shape--clickable{cursor:pointer;transition:fill .16s,opacity .16s}.map__shape--filled{fill:var(--space-fill)}.map__shape--clickable:hover{fill:var(--map-shape-hover)}.map__shape--filled:hover{opacity:.82}.map__shape--active,.map__shape--clickable.map__shape--active:hover,.map__shape--filled.map__shape--active:hover{opacity:1;stroke:var(--map-shape-active);stroke-width:5px;stroke-linejoin:round;vector-effect:non-scaling-stroke;paint-order:stroke;transform-box:fill-box;transform-origin:50%;animation:1.8s ease-in-out infinite map-shape-pulse}@keyframes map-shape-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.map__shape--dragging{cursor:grabbing}.map__standpoint{pointer-events:none}.map__standpoint-halo{fill:var(--map-standpoint,#dc2626);opacity:.28;transform-box:fill-box;transform-origin:50%;animation:1.8s ease-out infinite map-standpoint-pulse}.map__standpoint-heading{fill:var(--map-standpoint);opacity:.65}.map__standpoint-label{fill:var(--map-standpoint);paint-order:stroke;stroke:var(--map-surface);stroke-width:3px;stroke-linejoin:round;font-size:10px;font-weight:600}.map__standpoint-dot{fill:var(--map-standpoint,#dc2626);stroke:#fff;stroke-width:3px}@keyframes map-standpoint-pulse{0%{opacity:.4;transform:scale(.6)}to{opacity:0;transform:scale(1.9)}}.map__shape[data-status=vacant]{fill:var(--map-vacant)}.map__shape:focus-visible{outline:2px solid var(--map-shape-active);outline-offset:2px}.map--filtered .map__shape--clickable:not(.map__shape--match){opacity:.35}.map__pin{pointer-events:none}.map--edit .map__pin{pointer-events:auto;cursor:grab}.map--edit .map__pin--dragging{cursor:grabbing;opacity:.7}.map__pin-label{fill:var(--map-text);paint-order:stroke;stroke:var(--map-surface);stroke-width:3px;stroke-linejoin:round;font-size:11px;font-weight:500}.map__pin-dot{fill:var(--map-surface);stroke:var(--map-text-muted);stroke-width:1.5px}.map__pin-logo{pointer-events:none}.map__pin--active .map__pin-label{fill:var(--map-shape-active)}.map__route{fill:none;stroke:var(--map-route);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:10 14;animation:.9s linear infinite map-route-flow}.map__route-marker{fill:var(--map-surface);stroke:var(--map-route);stroke-width:3px}.map__route-end{fill:var(--map-route)}@keyframes map-route-flow{to{stroke-dashoffset:-24px}}@media (prefers-reduced-motion:reduce){.map__route{animation:none}.map__stage--animating .map__camera,.map__layer{transition:none}.map__standpoint-halo,.map__shape--active{animation:none}}.map__walkway{fill:none;stroke:var(--map-walkway);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.map__walkway--active{stroke:var(--map-selected);stroke-width:5px;opacity:1}.map__handle{fill:#fff;stroke:var(--map-walkway);stroke-width:2px;cursor:grab}.map__handle--active{fill:var(--map-selected);stroke:var(--map-selected);stroke-width:3px}.map__handle--dragging{fill:var(--map-walkway);cursor:grabbing}.map__vertex{fill:#fff;stroke:var(--map-selected);stroke-width:2px;cursor:grab}.map__edge{stroke:var(--map-graph);stroke-width:1.5px;opacity:.55}.map__edge--step{stroke:var(--map-step);stroke-dasharray:4 4}.map__node{fill:var(--map-graph);stroke:none;opacity:.8}.map__marker{fill:#fff;stroke:var(--map-marker);stroke-width:2px}.map__marker[data-type=kiosk]{stroke:var(--brand,#b32133)}.map__marker[data-type=entrance]{fill:var(--map-entrance);stroke:#fff;cursor:grab}.map__marker[data-type=landing]{fill:var(--map-selected);stroke:#fff;stroke-width:3px;stroke-dasharray:3 2}.map__marker--dragging{cursor:grabbing}.map__marker-label{fill:#52525b;paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round;font-size:10px}.map__draft-line{fill:none;stroke:var(--brand,#b32133);stroke-width:3px;stroke-dasharray:8 6}.map__draft-line--closed{fill:color-mix(in srgb, var(--brand,#b32133) 18%, transparent)}.map__draft-point{fill:var(--brand,#b32133);stroke:#fff;stroke-width:2px}.map__shape--drawn{fill:var(--map-shape);stroke:var(--map-text-muted);stroke-width:1px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}.fi-map-editor{grid-template-columns:1fr;gap:1rem;display:grid}.fi-map-editor__bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.fi-map-editor__tools{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.fi-map-editor__floors{min-width:0;margin-block-end:-.5rem;padding-block-end:.5rem;display:flex;overflow:auto visible}.fi-map-editor__floors>.fi-tabs{align-items:center;margin-inline:0}.fi-map-editor__add{margin-inline-start:.25rem;display:inline-flex}@media (width<=1023px){.fi-map-editor__floors{flex:100%;order:-1}}.fi-map-editor__hint{color:#71717a;margin:0;font-size:.8125rem}.fi-map-editor__work{grid-template-columns:1fr;align-items:start;gap:1rem;display:grid}@media (width>=1280px){.fi-map-editor__work{grid-template-columns:minmax(0,1fr) 22rem}}.fi-map-editor__canvas{background:#fff;border:1px solid #e4e4e7;border-radius:.75rem;height:min(72vh,900px);position:relative;overflow:hidden}.fi-map-editor__draw{gap:.5rem;display:flex;position:absolute;inset-block-start:.75rem;inset-inline-start:.75rem}.dark .fi-map-editor__draw .fi-btn:not(.fi-color){color:#09090b;background-color:#fff}.dark .fi-map-editor__draw .fi-btn:not(.fi-color):not([disabled]):hover{background-color:#fafafa}.fi-map-editor__zoom{flex-direction:column;gap:.25rem;display:flex;position:absolute;inset-block-end:.75rem;inset-inline-end:.75rem}.fi-map-editor__zoom button{color:#3f3f46;cursor:pointer;background:#ffffffeb;border:1px solid #e4e4e7;border-radius:.5rem;place-items:center;width:2.25rem;height:2.25rem;font-size:1rem;line-height:1;display:grid;box-shadow:0 1px 2px #0000000f}.fi-map-editor__zoom button:hover{background:#fff}.fi-map-editor__panels{grid-template-columns:1fr;gap:1rem;display:grid}@media (width>=768px) and (width<=1279px){.fi-map-editor__panels{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.fi-map-editor__legend{flex-wrap:wrap;gap:.35rem 1.25rem;margin:0 0 .5rem;padding:0;font-size:.875rem;list-style:none;display:flex}.fi-map-editor__legend li{align-items:center;gap:.5rem;display:flex}.fi-map-editor__swatch{background:var(--swatch,currentColor);border-radius:3px;width:14px;height:14px}.fi-map-editor__stats{grid-template-columns:repeat(2,1fr);gap:.5rem 1rem;margin:0;display:grid}.fi-map-editor__stats dt{color:#71717a;font-size:.75rem}.fi-map-editor__stats dd{margin:0;font-size:1.25rem;font-weight:600}.fi-map-editor__warn{color:#b91c1c}.fi-map-editor__actions{flex-wrap:wrap;gap:.5rem;margin-block-start:.75rem;display:flex}.fi-map-editor__landings{margin:0;padding-inline-start:1.25rem;font-size:.875rem;list-style:decimal}.fi-map-editor__landings span{color:#78716c;font-variant-numeric:tabular-nums;margin-inline-start:.35rem}.fi-map-editor__landing--here{font-weight:600}[x-cloak]{display:none!important}
