.map{--map-surface:#a79c86;--map-grid:#3d314329;--map-border:#4f4855;--map-line:#514959;--map-room-surface:#eee3ca;--map-room-hover:#faf0d8;--map-room-selected:#c9e4d8;--map-room-border:#5d5564;--map-room-text:#28222d;--map-node-surface:#fff8e8;--map-accent:#287f6a;--map-accent-strong:#185847;--map-accent-soft:#287f6a33;--map-selection-contrast:#eafff7;--map-shadow:#2d233247;--map-highlight:#fffced94;--map-danger:#9f3934;--map-danger-soft:#f3cbc5;border:1px solid var(--map-border);background-color:var(--map-surface);background-image:radial-gradient(circle at 22% 28%, #8169a414, transparent 34%),radial-gradient(circle at 78% 68%, #5c7e910f, transparent 38%),linear-gradient(var(--map-grid) 1px, transparent 1px),linear-gradient(90deg, var(--map-grid) 1px, transparent 1px);overscroll-behavior-x:none;touch-action:none;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;cursor:grab;background-size:auto,auto,48px 48px,48px 48px;width:100%;height:100%;position:relative;overflow:hidden}.map.map--placing-room{cursor:crosshair}.map.map--space-pan,.map.map--read-only{cursor:grab}.map.map--space-pan .mapViewport,.map.map--read-only .mapViewport{pointer-events:none}.map.map--panning{cursor:grabbing}.map.map--loading{cursor:wait;justify-content:center;align-items:center;display:flex}.map .mapLoadingState{border:1px solid color-mix(in srgb, var(--map-border) 58%, transparent);background:color-mix(in srgb, var(--map-surface) 82%, transparent);color:var(--map-room-text);letter-spacing:.02em;border-radius:9px;align-items:center;gap:10px;padding:9px 13px;font-size:13px;font-weight:600;display:inline-flex;box-shadow:0 8px 24px #2019141f}.map .mapLoadingMark{background:var(--map-accent);width:9px;height:9px;box-shadow:0 0 14px color-mix(in srgb, var(--map-accent) 70%, transparent);border-radius:50%;animation:.9s ease-in-out infinite alternate map-loading-pulse}.map .mapViewport{transform-origin:0 0;will-change:transform;position:absolute;inset:0}.map .mapRoomPlacementPreview{z-index:7;box-sizing:border-box;border:2px dashed var(--map-accent-strong);background:color-mix(in srgb, var(--map-room-surface) 72%, transparent);color:var(--map-room-text);pointer-events:none;border-radius:6px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex;position:absolute;transform:translate(-50%,-50%)}.map .mapSvg{pointer-events:none;position:absolute;inset:0;overflow:visible}.map .mapSvgConnections{z-index:0}.map .mapSvgStubPaths{z-index:1}.map .mapSvgStubs{z-index:2}.map .mapSvgSelectedConnection{z-index:4}.map .mapSvgSelectedStub{z-index:5}.map .mapConnectionDragPath{stroke:var(--map-accent);stroke-width:2px;stroke-dasharray:4 5}.map .mapSnapTarget{stroke:var(--map-accent);stroke-width:2px;filter:drop-shadow(0 0 2px var(--map-node-surface))}.map.map--dark-palette{--map-surface:#25272c;--map-grid:#cdc2b21a;--map-border:#535864;--map-line:#8a8392;--map-room-surface:#3b3b40;--map-room-hover:#47484f;--map-room-selected:#274b43;--map-room-border:#8d8795;--map-room-text:#f2eadb;--map-node-surface:#eee3cc;--map-accent:#69c2a6;--map-accent-strong:#9bdcc7;--map-accent-soft:#69c2a638;--map-selection-contrast:#effff8;--map-shadow:#0406086b;--map-highlight:#fff9e71a;--map-danger:#ef8377;--map-danger-soft:#5e2d2a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@keyframes map-loading-pulse{0%{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
.connection .connectionClickTarget{cursor:pointer}.connection .connectionPath{stroke:var(--map-line);stroke-width:2px}.connection .connectionPathUnderlay{stroke:var(--map-accent-strong);stroke-width:5.5px;opacity:1}.connection .connectionPathDashed{stroke-dasharray:4 5}.connection .connectionPathDirectional{stroke-dasharray:50 50}.connection.connectionEditing .connectionPath{stroke:var(--map-line);stroke-width:3px;opacity:.68}.connection.connectionSelected .connectionPath{stroke:var(--map-accent);stroke-width:3.5px;opacity:1}.connectionMidpointGlyph{color:inherit}.connectionMidpointGlyphInner{transform-box:fill-box;transform-origin:50%;transition:transform .12s,filter .12s}.connectionMidpointGlyphOutline{fill:var(--map-line);stroke:none;transition:fill .12s}.connectionMidpointGlyphBody,.connectionMidpointGlyphFace{fill:var(--map-node-surface);stroke:none}.connectionMidpointGlyphIcon{color:var(--map-line);stroke:currentColor;fill:none;transition:color .12s}.connectionMidpointGlyphControl{cursor:pointer;pointer-events:all;outline:none}.connectionMidpointGlyphControl circle{fill:#0000}.connectionMidpointGlyphControl:focus-visible circle{stroke:var(--map-accent-strong);stroke-width:2px}.connection:has(.connectionMidpointGlyphControl:active) .connectionMidpointGlyphFace{fill:var(--map-room-hover)}.connectionSelected .connectionMidpointGlyphOutline{fill:var(--map-accent-strong)}.connectionSelected .connectionMidpointGlyphBody{fill:var(--map-accent)}.connectionSelected .connectionMidpointGlyphIcon{color:var(--map-accent-strong)}.connection:hover .connectionMidpointGlyphInner{transform:scale(1.06)}.connectionLayerTag{cursor:grab;pointer-events:all;touch-action:none;outline:none}.connectionLayerTag rect{fill:var(--map-room-surface);stroke:var(--map-line);stroke-width:1.5px;filter:drop-shadow(0 2px 3px var(--map-shadow));transition:fill .12s,stroke .12s}.connectionLayerTag .connectionLayerTagSelectionOutline{fill:none;stroke:var(--map-accent-strong);stroke-width:5px;display:none}.connectionLayerTag text{fill:var(--map-room-text);pointer-events:none;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:600}.connectionLayerTag .connectionLayerTagIcon{fill:none;stroke:var(--map-line);pointer-events:none}.connectionLayerTag:hover rect{fill:var(--map-room-hover)}.connectionLayerTag:focus-visible rect{stroke:var(--map-accent-strong);stroke-width:2.5px}.connectionLayerTagDragging{cursor:grabbing}.connectionSelected .connectionLayerTag rect{fill:var(--map-room-selected);stroke:var(--map-accent);stroke-width:3px;filter:drop-shadow(0 3px 7px var(--map-shadow))}.connectionSelected .connectionLayerTag .connectionLayerTagSelectionOutline{fill:none;stroke:var(--map-accent-strong);stroke-width:5px;filter:none;display:block}.connectionSelected .connectionLayerTagIcon{stroke:var(--map-accent-strong)}
.layerPreview{border:3px solid color-mix(in srgb, var(--map-border) 88%, var(--map-node-surface));min-width:0;min-height:0;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--map-node-surface) 30%, transparent),inset 0 0 18px color-mix(in srgb, var(--map-node-surface) 10%, transparent),0 4px 12px var(--map-shadow);cursor:default;isolation:isolate;border-radius:8px;position:relative}.layerPreview:focus-visible{outline:3px solid var(--map-accent);outline-offset:2px}.layerPreview .roomCardPreview{cursor:inherit;pointer-events:none}.layerPreview .roomCardPreview:hover{background:var(--map-room-surface);box-shadow:inset 0 1px 0 var(--map-highlight),0 2px 4px var(--map-shadow)}.layerPreview .connection,.layerPreview .connectionLayerTag{pointer-events:none}.layerPreview--clickable{cursor:pointer}.layerPreviewGlass{z-index:3;pointer-events:none;background:linear-gradient(125deg, color-mix(in srgb, var(--map-node-surface) 20%, transparent), transparent 32%),radial-gradient(circle at 78% 82%, color-mix(in srgb, var(--map-node-surface) 8%, transparent), transparent 42%);box-shadow:inset 0 1px 0 color-mix(in srgb, var(--map-node-surface) 42%, transparent),inset 0 -1px 0 color-mix(in srgb, var(--map-border) 12%, transparent);border-radius:4px;position:absolute;inset:0}.layerPreview--pannable{cursor:grab}.layerPreview--panning{cursor:grabbing}
