.booking-conversation { width:min(720px,calc(100% - 24px)); max-height:calc(100dvh - 24px); padding:0; border:1px solid #d5e2ee; border-radius:22px; color:#162a54; background:#f5f7fb; }
.booking-conversation::backdrop { background:#10254188; }
.conversation-shell { display:flex; flex-direction:column; height:min(850px,calc(100dvh - 26px)); }
.conversation-head { display:flex; align-items:flex-start; gap:16px; justify-content:space-between; padding:20px 22px 12px; background:#fff; }
.conversation-head h2 { margin:0 0 8px; font-size:22px; }
.conversation-head p { margin:5px 0; overflow-wrap:anywhere; }
#conversationPeriod { font-size:13px; color:#52647c; }
.conversation-context { padding:8px 22px; background:#eaf1fb; font-size:13px; }
.conversation-context p { margin:6px 0; overflow-wrap:anywhere; }
#conversationParticipants { color:#52647c; }
.conversation-log { flex:1; min-height:100px; overflow-y:auto; padding:20px; display:flex; flex-direction:column; gap:14px; }
.conversation-message { align-self:flex-start; max-width:86%; padding:13px 15px; border:1px solid #dce5ef; border-radius:16px 16px 16px 4px; background:#fff; overflow-wrap:anywhere; }
.conversation-message[data-own=true] { align-self:flex-end; background:#075783; border-color:#075783; border-radius:16px 16px 4px 16px; color:#fff; }
.conversation-message strong { font-size:12px; display:block; }
.conversation-message .message-body { white-space:pre-wrap; margin:8px 0; }
.conversation-message time,.conversation-message .message-readers { display:block; font-size:11px; margin-top:6px; }
.conversation-message time { opacity:.85; }
.conversation-composer { display:block; padding:14px 20px 18px; background:#fff; border-top:1px solid #dce5ef; }
.conversation-head,.conversation-context,.conversation-composer { flex-shrink:0; }
.conversation-composer>p { margin:0 0 8px; }
.conversation-composer label { display:block; font-size:13px; font-weight:600; }
.conversation-compose-row { display:flex; align-items:flex-end; gap:10px; margin-top:8px; }
.conversation-compose-row textarea { flex:1; min-width:0; resize:vertical; max-height:150px; font:inherit; padding:12px; border:1px solid #b8cce0; border-radius:12px; }
#conversationTyping { font-size:12px; color:#52647c; }
#conversationApprove { margin-top:10px; }
#conversationOlder { margin:10px 20px 0; align-self:flex-start; }
.conversation-inbox-list { padding:18px; display:flex; flex-direction:column; gap:12px; overflow-wrap:anywhere; }
.conversation-inbox-item { text-align:left; display:flex; flex-direction:column; gap:6px; white-space:normal; }
#conversationInboxError { margin:16px; }
@media(max-width:480px) { .conversation-head { padding:16px; gap:8px; } .conversation-head h2{font-size:18px}.conversation-log{padding:12px}.conversation-composer{padding:12px}.conversation-message{max-width:94%}.conversation-compose-row{flex-wrap:wrap}.conversation-compose-row textarea{flex-basis:100%}.conversation-compose-row button{margin-left:auto} }
