.room-settings-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.admin-room-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.room-settings-actions .danger-button, .admin-room-row .danger-button { padding: 10px 14px; border: 1px solid var(--danger); border-radius: 10px; color: var(--danger); background: var(--danger-soft); font: inherit; cursor: pointer; }
.room-settings-actions .danger-button:disabled, .admin-room-row .danger-button:disabled { opacity: .6; cursor: wait; }
.feedback-page { min-height: 0; overflow: auto; padding: clamp(16px, 4vw, 36px); color: var(--text); }
.feedback-page > header, .feedback-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 18px; }
.feedback-page h1 { margin: 0 auto 0 0; }
.feedback-topic-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 14px; }
.feedback-topic-card, .feedback-event { display: block; padding: 18px; border: 1px solid var(--line); border-radius: 12px; color: inherit; background: var(--surface); overflow-wrap: anywhere; text-decoration: none; }
.feedback-topic-card:hover { border-color: var(--primary); }
.feedback-topic-card p { color: var(--muted); }
.feedback-topic-detail { max-width: 900px; margin-inline: auto; }
.feedback-topic-detail p { white-space: pre-wrap; overflow-wrap: anywhere; }
.feedback-topic-detail h2 { overflow-wrap: anywhere; }
.feedback-events { display: grid; gap: 12px; margin-block: 20px; }
.feedback-event small { color: var(--muted); }
.feedback-event.internal { border-style: dashed; }
.feedback-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 21px; height: 21px; padding: 0 5px; border-radius: 12px; background: var(--danger); color: white; font-size: 0.75rem; }
.feedback-sidebar-button { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 14px; margin-bottom: 6px; }
.community-dialog { width: min(94vw, 500px); max-height: 85dvh; overflow: auto; background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 16px; padding: 22px; }
.community-dialog::backdrop { background: #0007; }
.community-dialog header, .community-dialog footer { display: flex; gap: 10px; align-items: center; justify-content: space-between; flex-wrap: wrap; }
.community-dialog audio, .room-audio-player { display: block; width: min(100%, 300px); max-width: 100%; }
.room-delivery { font-size: 0.75rem; color: var(--muted); display: flex; gap: 10px; align-items: center; }
.room-delivery.failed { color: var(--danger); }
.room-pending-list { max-height: 140px; overflow: auto; padding-inline: 14px; }
.room-pending-item { padding: 8px; border-top: 1px solid var(--line); overflow-wrap: anywhere; }
.chat-room-slot-label { white-space: normal; overflow-wrap: anywhere; text-overflow: clip; font-size: 0.6875rem; }
@media (max-width: 600px) {
    .chat-room-header { flex-wrap: wrap; gap: 8px; }
    .chat-room-header-actions { flex-wrap: wrap; }
    .chat-room-message-row { max-width: 92%; }
    .chat-room-message-bubble { min-width: 0; }
    .room-audio-player { width: 230px; max-width: 100%; }
    .chat-room-composer-row { gap: 3px; }
    .chat-room-composer-row .icon-button { width: 30px; min-width: 30px; }
}
.admin-room-list-views { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.admin-room-list-views button[aria-pressed="true"] { background: var(--primary); color: var(--on-primary, #fff); }
.admin-room-list-views + .admin-room-list { margin-top: 10px; padding-top: 0; border-top: 0; }
.admin-room-summary { display: grid; flex: 1 1 220px; min-width: 0; gap: 6px; overflow-wrap: anywhere; }
.admin-room-row > button { flex: 0 0 auto; }
.admin-room-list[aria-busy="true"] { opacity: .65; }
.admin-room-field { min-width: 0; align-self: start; }
.admin-room-field input, .admin-room-field select { width: 100%; min-width: 0; }
.admin-room-field small { font-size: .75rem; line-height: 1.5; overflow-wrap: anywhere; }
#adminChatRoomForm .model-form-grid { align-items: start; }
.admin-room-field > label, #adminRoomCustomThemeField > label { font-weight: 600; }
