.meeting-room-list {
    display: grid;
    gap: 12px;
    max-height: 560px;
    overflow-y: auto;
    padding-right: 4px;
}

.meeting-room-card {
    width: 100%;
    padding: 16px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 16px;
    background: rgba(255, 255, 255, .04);
    color: white;
    text-align: left;
    transition: .25s;
    min-width: 0;
}

.meeting-room-card:hover {
    border-color: rgba(79, 209, 208, .55);
    background: rgba(79, 209, 208, .08);
}

.meeting-room-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
}

.meeting-room-card strong,
.meeting-room-card span,
.meeting-room-card small {
    display: block;
}

.meeting-room-card-header strong {
    font-size: 16px;
    overflow-wrap: anywhere;
}

.meeting-room-card-header span,
.meeting-room-card p,
.meeting-room-card small {
    color: #9fb5bf;
}

.meeting-room-card p {
    margin: 12px 0;
    overflow-wrap: anywhere;
}

.meeting-room-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.meeting-room-amenities {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.meeting-room-amenities span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 999px;
    background: rgba(255, 255, 255, .05);
    color: #d8e7ee;
    font-size: 12px;
}

.meeting-room-availability {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid rgba(79, 209, 208, .28);
    border-radius: 14px;
    background: rgba(79, 209, 208, .08);
    color: #dffefe;
}

.meeting-room-bookings-table {
    min-width: 760px;
}

.meeting-room-bookings-table td:first-child,
.meeting-room-bookings-table td:nth-child(2) {
    max-width: 220px;
    overflow-wrap: anywhere;
}

.meeting-room-detail-page {
    max-width: 1480px;
    margin: 0 auto;
}

.workspace-back-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px;
    color: #4fd1d0;
    font-weight: 700;
    text-decoration: none;
}

.room-detail-hero,
.room-detail-section-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
    gap: 24px;
    margin-bottom: 24px;
}

.room-detail-overview p {
    margin-bottom: 18px;
    color: #c7d8df;
    line-height: 1.7;
}

.room-detail-visual {
    position: relative;
    min-height: clamp(260px, 28vw, 360px);
    container-type: inline-size;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 20px;
    background:
        linear-gradient(135deg, rgba(79, 209, 208, .16), rgba(255, 255, 255, .04)),
        rgba(255, 255, 255, .05);
}

.room-detail-screen {
    position: absolute;
    top: clamp(24px, 8%, 36px);
    left: 50%;
    width: min(64%, 380px);
    height: clamp(44px, 16%, 68px);
    transform: translateX(-50%);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 12px;
    background: rgba(8, 16, 22, .65);
}

.room-detail-table {
    position: absolute;
    left: clamp(64px, 18%, 160px);
    right: clamp(64px, 18%, 160px);
    top: clamp(104px, 36%, 138px);
    bottom: clamp(58px, 18%, 82px);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 28px;
    background: rgba(255, 255, 255, .08);
    box-shadow: inset 0 0 40px rgba(79, 209, 208, .12);
}

.room-detail-seat {
    position: absolute;
    width: clamp(38px, 8cqw, 56px);
    height: clamp(38px, 8cqw, 56px);
    border-radius: 16px;
    border: 1px solid rgba(79, 209, 208, .35);
    background: rgba(79, 209, 208, .14);
}

.room-detail-seat.seat-1 {
    left: clamp(24px, 15%, 128px);
    top: clamp(108px, 37%, 142px);
}

.room-detail-seat.seat-2 {
    right: clamp(24px, 15%, 128px);
    top: clamp(108px, 37%, 142px);
}

.room-detail-seat.seat-3 {
    left: clamp(24px, 15%, 128px);
    bottom: clamp(56px, 20%, 82px);
}

.room-detail-seat.seat-4 {
    right: clamp(24px, 15%, 128px);
    bottom: clamp(56px, 20%, 82px);
}

.room-detail-capacity {
    position: absolute;
    right: 22px;
    bottom: 22px;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border: 1px solid rgba(255, 255, 255, .1);
    border-radius: 14px;
    background: rgba(8, 16, 22, .72);
    color: #f7fbff;
}

.room-next-booking {
    display: grid;
    gap: 4px;
    margin-top: 20px;
    padding: 16px;
    border: 1px solid rgba(79, 209, 208, .24);
    border-radius: 16px;
    background: rgba(79, 209, 208, .08);
}

.room-next-booking span,
.room-next-booking small,
.room-schedule-row span,
.room-schedule-row small,
.room-history-row span {
    color: #9fb5bf;
}

.room-schedule-list,
.room-history-list {
    display: grid;
    gap: 12px;
}

.room-schedule-row,
.room-history-row {
    display: grid;
    gap: 14px;
    align-items: center;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 16px;
    background: rgba(255, 255, 255, .04);
    width: 100%;
    color: inherit;
    text-align: left;
}

.room-schedule-row {
    grid-template-columns: 44px minmax(0, 1fr) auto;
}

.room-history-row {
    grid-template-columns: minmax(0, 1fr) auto;
}

button.room-schedule-row,
button.room-history-row {
    cursor: pointer;
}

button.room-schedule-row:hover,
button.room-history-row:hover {
    border-color: rgba(79, 209, 208, .34);
}

.room-schedule-row strong,
.room-history-row strong,
.room-schedule-row span,
.room-schedule-row small,
.room-history-row span {
    display: block;
}

.room-schedule-icon {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 14px;
    background: rgba(79, 209, 208, .12);
    color: #4fd1d0;
}

