.dormitory-tree[data-v-261ab3ea]{background:#fff;border-radius:4px;height:100%;display:flex;flex-direction:column}.dormitory-tree-header[data-v-261ab3ea]{padding:16px;border-bottom:1px solid #e8e8e8}.dormitory-tree-content[data-v-261ab3ea]{flex:1;overflow-y:auto}.dormitory-tree .tree-list[data-v-261ab3ea]{padding:8px 0}.dormitory-tree .tree-list .tree-item[data-v-261ab3ea]{margin-bottom:0}.dormitory-tree .node-content[data-v-261ab3ea]{display:flex;align-items:center;padding:10px 14px;cursor:pointer;transition:all .2s ease;border-radius:4px;margin:2px 6px;border:1px solid transparent;position:relative;z-index:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.dormitory-tree .node-content[data-v-261ab3ea]:hover{background-color:#f5f5f5}.dormitory-tree .node-content.node-selected[data-v-261ab3ea]{background-color:#667eea;color:#fff}.dormitory-tree .node-content.node-selected .node-info .node-subtitle .subtitle-text[data-v-261ab3ea],.dormitory-tree .node-content.node-selected .node-info .node-title .title-text[data-v-261ab3ea]{color:#fff}.dormitory-tree .node-content.node-selected .node-info .node-count[data-v-261ab3ea]{background-color:hsla(0,0%,100%,.2);color:#fff}.dormitory-tree .node-content.node-all[data-v-261ab3ea]{background-color:#f5f5f5;margin:4px 8px;border-radius:6px}.dormitory-tree .node-content.node-all.node-selected[data-v-261ab3ea]{background-color:#667eea;color:#fff}.dormitory-tree .node-content.node-all.node-selected .node-count[data-v-261ab3ea]{background-color:hsla(0,0%,100%,.2);color:#fff}.dormitory-tree .node-content.node-floor[data-v-261ab3ea]{margin-left:24px}.dormitory-tree .node-content.node-floor.node-selected[data-v-261ab3ea]{background-color:#667eea;color:#fff}.dormitory-tree .node-content .expand-icon[data-v-261ab3ea]{width:16px;height:16px;display:flex;align-items:center;justify-content:center;margin-left:8px;cursor:pointer;transition:transform .2s ease;position:relative;z-index:2;flex-shrink:0}.dormitory-tree .node-content .expand-icon[data-v-261ab3ea]:hover{transform:scale(1.1)}.dormitory-tree .node-content .expand-icon .expand-arrow[data-v-261ab3ea]{width:0;height:0;border-left:5px solid #999;border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .2s ease}.dormitory-tree .node-content .expand-icon .expand-arrow.expanded[data-v-261ab3ea]{transform:rotate(90deg)}.dormitory-tree .node-content.node-selected .expand-icon .expand-arrow[data-v-261ab3ea]{border-left-color:#fff}.dormitory-tree .node-content.node-expanded .expand-icon .expand-arrow[data-v-261ab3ea]{border-left-color:#999}.dormitory-tree .node-content .expand-placeholder[data-v-261ab3ea]{width:16px;height:16px;margin-right:8px}.dormitory-tree .node-content .node-info[data-v-261ab3ea]{flex:1;display:flex;align-items:center;min-width:0;overflow:hidden}.dormitory-tree .node-content .node-info .node-text[data-v-261ab3ea]{display:flex;justify-content:center;flex:1;min-width:0}.dormitory-tree .node-content .node-info .node-title[data-v-261ab3ea]{font-size:14px;color:#333;line-height:1.4;flex:1;display:flex;align-items:center;min-width:0;gap:8px}.dormitory-tree .node-content .node-info .node-title .title-text[data-v-261ab3ea]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 1 auto}.dormitory-tree .node-content .node-info .node-subtitle[data-v-261ab3ea]{font-size:12px;color:#8c8c8c;line-height:1.4;display:flex;align-items:center;min-width:0;margin-top:2px}.dormitory-tree .node-content .node-info .node-subtitle .subtitle-text[data-v-261ab3ea]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dormitory-tree .node-content .node-info .node-count[data-v-261ab3ea]{font-size:12px;color:#999;background-color:#f0f0f0;padding:2px 8px;border-radius:12px;min-width:20px;text-align:center;flex-shrink:0;white-space:nowrap}.dormitory-tree .node-content .node-info .node-count.count-selected[data-v-261ab3ea]{background-color:hsla(0,0%,100%,.2);color:#fff}.dormitory-tree .node-children[data-v-261ab3ea]{max-height:0;opacity:0;overflow:hidden;transition:max-height .3s ease,opacity .3s ease}.dormitory-tree .node-children.children-expanded[data-v-261ab3ea]{max-height:10000px;opacity:1}.room-list[data-v-deb1287e]{background:#fff;border-radius:4px;padding:16px;display:flex;flex-direction:column;height:100%}.room-list-header[data-v-deb1287e]{margin-bottom:8px;display:flex;justify-content:space-between;align-items:center}.room-list-title[data-v-deb1287e]{font-size:16px;font-weight:700;margin:0}.room-list-summary[data-v-deb1287e]{font-size:14px;color:#666;font-weight:400}.room-list-content[data-v-deb1287e]{flex:1}.room-list-grid[data-v-deb1287e]{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.room-list-card[data-v-deb1287e]{border:2px solid #e8e8e8;border-radius:8px;padding:16px;background:#fff;transition:all .3s;cursor:pointer}.room-list-card[data-v-deb1287e]:hover{box-shadow:0 2px 8px rgba(0,0,0,.15)}.room-list-card--full[data-v-deb1287e]{border-color:#e74c3c}.room-list-card--vacancy[data-v-deb1287e]{border-color:#27ae60}.room-list-card--empty[data-v-deb1287e]{border-color:#ecf0f1}.room-list-card-header[data-v-deb1287e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.room-list-card-title[data-v-deb1287e]{font-size:16px;font-weight:700;color:#333}.room-list-card-tags[data-v-deb1287e]{display:flex;gap:8px}.room-list-card-tag[data-v-deb1287e]{padding:2px 8px;border-radius:12px;font-size:12px;color:#fff;white-space:nowrap}.room-list-card-tag.tag-personnel-local[data-v-deb1287e]{background-color:#667eea;border-radius:2px}.room-list-card-tag.tag-personnel-outsourced[data-v-deb1287e]{background-color:#ff7a00;border-radius:4px}.room-list-card-tag.tag-status-full[data-v-deb1287e]{background-color:#e74c3c;border-radius:16px}.room-list-card-tag.tag-status-vacancy[data-v-deb1287e]{background-color:#27ae60;border-radius:16px}.room-list-card-tag.tag-status-empty[data-v-deb1287e]{background-color:#ecf0f1;color:#666;border-radius:999px}.room-list-card-info[data-v-deb1287e]{margin-bottom:12px}.room-list-card-building[data-v-deb1287e]{font-size:12px;color:#95a5a6;margin-bottom:4px}.room-list-card-type[data-v-deb1287e]{font-size:14px;color:#333;margin-bottom:8px}.room-list-card-department[data-v-deb1287e]{font-size:14px;color:#666;margin-bottom:8px}.room-list-card-team[data-v-deb1287e]{font-size:12px;color:#666;margin-bottom:8px}.room-list-card-occupants[data-v-deb1287e]{margin-bottom:12px;min-height:40px}.room-list-occupants-label[data-v-deb1287e]{font-size:12px;color:#666;margin-bottom:8px}.room-list-occupants-list[data-v-deb1287e]{display:flex;flex-wrap:wrap;gap:8px}.room-list-occupant-tag[data-v-deb1287e]{padding:4px 12px;background-color:#f0f0f0;border-radius:4px;font-size:12px;color:#666;white-space:nowrap;line-height:1.5}.room-list-no-occupants[data-v-deb1287e]{font-size:12px;color:#999;padding:4px 12px;background-color:#f0f0f0;border-radius:4px;width:-moz-fit-content;width:fit-content}.room-list-card-footer[data-v-deb1287e]{display:flex;align-items:center}.room-list-vacancy-info[data-v-deb1287e]{font-size:12px;color:#2e7d32;font-weight:400;background-color:#e8f5e9;text-align:center;padding:4px 12px;border-radius:4px;width:100%}.room-list-pagination[data-v-deb1287e]{margin-top:16px;text-align:right}.search-bar[data-v-ad18b3ee]{background:#fff;padding:16px;margin-bottom:16px;border-radius:4px}.search-bar-form[data-v-ad18b3ee]{width:100%}.search-bar-input[data-v-ad18b3ee]{width:140px}.search-bar-select[data-v-ad18b3ee]{width:100px}.search-bar-btn[data-v-ad18b3ee]{margin-right:4px}.summary-cards[data-v-7428fc10]{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-bottom:16px}.summary-cards-item[data-v-7428fc10]{background:#fff;border-radius:6px;padding:16px;box-shadow:0 2px 8px rgba(0,0,0,.1);display:flex;flex-direction:column;justify-content:flex-start;cursor:pointer;transition:all .3s;border:2px solid transparent}.summary-cards-item[data-v-7428fc10]:hover{box-shadow:0 4px 12px rgba(0,0,0,.15);transform:translateY(-2px)}.summary-cards-item--active[data-v-7428fc10]{border-color:#1890ff;background:#e6f7ff;box-shadow:0 4px 12px rgba(24,144,255,.2)}.summary-cards-label[data-v-7428fc10]{font-size:14px;color:#666;margin-bottom:12px;line-height:1.4;font-weight:700}.summary-cards-value[data-v-7428fc10]{font-size:28px;font-weight:700;color:#333;line-height:1.2}.summary-cards-sub-label[data-v-7428fc10]{font-size:12px;color:#52c41a;margin-top:8px;line-height:1.4}.overview-dormitory-management[data-v-5d9be15e]{padding:16px;background:#f0f2f5;height:100%}.overview-dormitory-management-content[data-v-5d9be15e]{display:flex;height:calc(100vh - 300px);margin-top:16px;padding:8px;background:#fff;border-radius:8px}.overview-dormitory-management-sidebar[data-v-5d9be15e]{width:260px;flex-shrink:0;border-right:1px solid #e8e8e8}.overview-dormitory-management-main[data-v-5d9be15e]{flex:1;display:flex;flex-direction:column;gap:16px}