.floor-map-button{padding:9px 14px;min-height:40px;border:1px solid #cad3de;border-radius:6px;background:#fff;color:#203952;font:600 13px/1.4 system-ui;cursor:pointer}.floor-map-button:hover{background:#edf3fa}.floor-map-button[aria-pressed=true]{background:#183e68;color:#fff;border-color:#183e68}.floor-map-button:disabled{opacity:.5;cursor:default}.floor-map-switch,.floor-map-tools,.floor-editor-toolbar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin:15px 0}.floor-map-view[hidden],.floor-map-switch~[hidden],.floor-editor [hidden]{display:none!important}.floor-map-scroll{width:100%;max-height:70vh;overflow:auto;background:#fafcff;border:1px solid #cbd5e1;border-radius:8px}.floor-map-canvas{display:block;width:100%;min-width:800px;height:auto;max-height:none;font-family:system-ui,sans-serif}.floor-map-scroll.is-fit .floor-map-canvas{min-width:0}.floor-map-table{cursor:pointer}.floor-map-table rect,.floor-map-table ellipse{fill:#e6f2eb;stroke:#4c8767;stroke-width:3}.floor-map-table.state-occupied rect,.floor-map-table.state-occupied ellipse{fill:#fde8e5;stroke:#b74e45}.floor-map-table.state-reserved rect,.floor-map-table.state-reserved ellipse{fill:#fff1cc;stroke:#b68a31}.floor-map-table.state-cleaning rect,.floor-map-table.state-cleaning ellipse{fill:#dcecf9;stroke:#4b7faa}.floor-map-table.state-blocked rect,.floor-map-table.state-blocked ellipse{fill:#e8e8ea;stroke:#7b7e85}.floor-map-table text{font-size:17px;font-weight:650;fill:#203246;pointer-events:none}.floor-map-table .floor-map-seats{font-size:13px;font-weight:400}.floor-map-table:focus,.floor-map-feature:focus{outline:none}.floor-map-table:focus rect,.floor-map-table:focus ellipse,.floor-map-table.is-selected rect,.floor-map-table.is-selected ellipse,.floor-map-feature.is-selected rect{stroke:#134cd1;stroke-width:6;stroke-dasharray:9 4}.floor-map-feature rect{fill:#e5e9ee;stroke:#a2afbc;stroke-width:2}.floor-map-feature.feature-wall rect{fill:#536171;stroke:#435061}.floor-map-feature.feature-door rect{fill:#fff9e4;stroke:#af8b39;stroke-dasharray:8 4}.floor-map-feature.feature-counter rect{fill:#cfbca2;stroke:#8e785d}.floor-map-feature.feature-area rect{fill:#e8ecf7;stroke:#a8b9dc;fill-opacity:.65;stroke-dasharray:10 5}.floor-map-feature.feature-label rect{fill:#fff;fill-opacity:.85;stroke:none}.floor-map-feature text{font-size:17px;fill:#283a50;pointer-events:none}.floor-map-list{display:flex;flex-wrap:wrap;gap:8px}.floor-map-room h3,.floor-map-unplaced h3{font-size:18px}.floor-map-expanded{position:fixed!important;inset:12px!important;z-index:2000!important;overflow:auto;padding:20px;background:#fff;box-shadow:0 0 0 15px #162331a6;border-radius:10px;margin:0!important}.floor-map-expanded .floor-map-scroll{max-height:80vh}.floor-editor{padding:22px;background:#fff;border:1px solid #d6dfeb;border-radius:10px;margin-bottom:24px;color:#24364b}.floor-editor h2{margin-top:0;font-size:25px}.floor-editor-description{max-width:950px;line-height:1.7}.floor-editor-grid{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}.floor-editor-panel{background:#f4f7fb;padding:15px;border:1px solid #dce4ed;border-radius:7px}.floor-editor-panel label{display:block;font-size:12px;margin:10px 0 5px}.floor-editor-panel input,.floor-editor-panel select,.floor-editor-toolbar select,.floor-editor-toolbar input{max-width:100%;min-height:38px;border:1px solid #bdcad9;border-radius:5px;padding:6px;color:#263b52;background:#fff}.floor-editor-panel input,.floor-editor-panel select{width:100%}.floor-editor-table-tray{display:flex;gap:7px;flex-direction:column;max-height:300px;overflow:auto}.floor-editor .floor-map-canvas{touch-action:none;user-select:none}.floor-editor .floor-map-feature{cursor:move}.floor-editor-property-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.floor-editor-notice{padding:12px 15px;background:#eef5fc;border:1px solid #b8d1ec;border-radius:5px;margin:12px 0}.floor-editor-notice.is-error{background:#fff0ed;color:#8e302b;border-color:#e5aaa3}.floor-editor-unsaved{font-weight:600;color:#8f5b16}.floor-editor-legend{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;margin-top:12px}.floor-editor-legend span:before{content:'';display:inline-block;width:12px;height:12px;background:var(--map-state);margin-right:5px;border:1px solid #8493a5}.floor-editor button:focus-visible,.floor-map-button:focus-visible{outline:3px solid #ba9658;outline-offset:2px}@media(max-width:800px){.floor-editor-grid{grid-template-columns:minmax(0,1fr)}.floor-editor-table-tray{flex-direction:row;max-height:180px;flex-wrap:wrap}.floor-editor-panel{min-width:0}.floor-map-expanded{inset:5px!important;padding:12px}.floor-editor{padding:15px}.floor-editor-toolbar label{width:100%}}

.floor-map-legend{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.floor-map-legend span{padding:5px 10px;border:1px solid #a8b8b0;border-radius:16px;background:#e5f3e9;color:#21372b}.floor-map-legend .state-occupied{background:#fde8e5}.floor-map-legend .state-reserved{background:#fff0c8}.floor-map-legend .state-cleaning{background:#dcecf9}.floor-map-legend .state-blocked{background:#eee}.floor-map-feature.feature-wall text{fill:#fff}
