.floor-wrap{position:relative;width:100%;overflow:hidden;border-radius:16px;isolation:isolate}
.floor-svg{display:block;width:100%;height:auto;font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;-webkit-tap-highlight-color:transparent;cursor:crosshair;outline:none;touch-action:manipulation}
.floor-svg:focus-visible{outline:2px solid #5486f2;outline-offset:-3px;border-radius:16px}
.floor-room{outline:none}.floor-room-surface{transition:stroke .18s ease}.floor-room:hover .floor-room-surface{stroke:#8bacf5;stroke-width:2.8px}.floor-room.is-active .floor-room-surface{stroke:#497feb;stroke-width:2.4px}.floor-room:focus-visible .floor-room-surface{stroke:#2355c7;stroke-width:4px;stroke-dasharray:6 4}
.floor-room-title{font-size:15px;font-weight:700;fill:#263b5a;letter-spacing:.5px}.floor-room-caption{font-size:9px;fill:#637996;letter-spacing:.15px}.floor-count{font-size:10px;font-weight:600;fill:#4b6482}.floor-decoration{pointer-events:none}
.floor-person{cursor:pointer;outline:none}.floor-svg .floor-person-body{filter:url(#resta-avatar-shadow)}.floor-person .floor-selection{opacity:0;transition:opacity .15s}.floor-person.is-self .floor-selection,.floor-person.is-selected .floor-selection,.floor-person:hover .floor-selection,.floor-person:focus-visible .floor-selection{opacity:1}.floor-person:focus-visible .floor-selection{stroke:#2563eb;stroke-width:3px}.floor-person.is-self{cursor:default}.floor-person-name{pointer-events:none}.floor-hair-back{opacity:0}.floor-person[data-facing="up"] .floor-face{opacity:0}.floor-person[data-facing="up"] .floor-hair-back{opacity:1}.floor-person[data-facing="left"] .floor-face{transform:translateX(-2px)}.floor-person[data-facing="right"] .floor-face{transform:translateX(2px)}
.floor-person-body .floor-leg,.floor-person-body .floor-arm{transform-box:fill-box;transform-origin:center top}.floor-person.is-walking .floor-leg-left,.floor-person.is-walking .floor-arm-right{animation:floor-step .35s ease-in-out infinite alternate}.floor-person.is-walking .floor-leg-right,.floor-person.is-walking .floor-arm-left{animation:floor-step .35s ease-in-out infinite alternate-reverse}.floor-person.is-walking .floor-person-body{animation:floor-bob .175s ease-in-out infinite alternate}.floor-destination{pointer-events:none}.floor-destination[hidden]{display:none}
@keyframes floor-step{from{transform:rotate(-15deg)}to{transform:rotate(15deg)}}@keyframes floor-bob{from{transform:translateY(0)}to{transform:translateY(-1.4px)}}
@media(prefers-reduced-motion:reduce){.floor-room-surface,.floor-person .floor-selection{transition:none}.floor-person *{animation:none!important}}

.floor-photo-body .floor-photo-image{opacity:1;pointer-events:none}.floor-photo-body{transform-origin:0 -24px}

.floor-person.is-remote{transition:transform 150ms linear;transform-origin:0 0;transform-box:view-box}.floor-person[data-status="away"] .floor-person-body{opacity:.56}.floor-status-dot{pointer-events:none;stroke:#fffdf8;stroke-width:.5px}
.floor-person.is-seated .floor-avatar-content{transform:scale(.82);transform-origin:0 0}.floor-person.is-seated[data-room="study"] .floor-avatar-content{transform:scale(.68)}
@media(prefers-reduced-motion:reduce){.floor-person.is-remote{transition:none}}

.floor-seat{cursor:pointer;outline:none}.floor-seat-hit{fill:transparent;stroke:transparent;stroke-width:2}.floor-seat-badge{fill:#fff;stroke:#b8cee9;stroke-width:1}.floor-seat-number{fill:#456b9e;font-size:10px;font-weight:700;pointer-events:none}.floor-seat:hover .floor-seat-hit,.floor-seat:focus-visible .floor-seat-hit{fill:#2563eb14;stroke:#3b79e5}.floor-seat:focus-visible .floor-seat-hit{stroke-width:3}.floor-seat.is-occupied{cursor:default}.floor-seat.is-occupied .floor-seat-badge{fill:#d9e5f5;stroke:#a4bad7}.floor-seat.is-own-seat .floor-seat-badge{fill:#2563eb;stroke:#1d4ed8}.floor-seat.is-own-seat .floor-seat-number{fill:#fff}.floor-seat.is-occupied:hover .floor-seat-hit{fill:transparent;stroke:transparent}.seat-status{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:650;color:#255ab3;background:#edf4ff;border:1px solid #d3e4fb;padding:7px 11px;border-radius:9px}.seat-status.is-standing{font-weight:500;color:#6c7e96;background:#f5f7fb;border-color:#e3e9f2}
