.booking-communications>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.booking-communications>header h2{margin:.15rem 0}.booking-communications>header p{margin:.2rem 0;color:var(--muted,#62717c)}
.communications-context{display:grid;gap:14px;margin-top:18px;padding:18px;border:1px solid #d6e2e7;border-radius:16px;background:linear-gradient(145deg,#f7fafb,#eef5f7)}.communications-context>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.communications-context h3{margin:.15rem 0;font-size:1.15rem}.communications-context-actions{display:flex;flex-wrap:wrap;gap:8px}.communications-context-grid,.communications-consent{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.communications-consent{grid-template-columns:repeat(2,minmax(0,1fr))}.communications-context article{min-width:0;padding:13px;border:1px solid #dce7eb;border-radius:12px;background:#fff}.communications-context article span,.communications-context article strong,.communications-context article small{display:block}.communications-context article span{color:#6c7c86;font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.communications-context article strong{margin-top:5px;font-size:.96rem}.communications-context article small{margin-top:4px;color:#64747e;overflow-wrap:anywhere}.communications-context-empty{margin:0;color:#64747e}
.communications-list{display:grid;gap:12px;margin-top:18px}.communications-empty,.communications-warning{padding:18px;border-radius:12px;background:#f1f5f7;color:#50616d}.communications-warning{background:#fff4dc;color:#765817}
.communication-card{border:1px solid #d9e2e7;border-left:4px solid #8294a0;border-radius:14px;padding:16px;background:#fff;min-width:0}.communication-card.is-sent,.communication-card.is-delivered,.communication-card.is-approved,.communication-card.is-published{border-left-color:#2d8569}.communication-card.is-failed,.communication-card.is-declined{border-left-color:#c7554d}.communication-card.is-pending-provider,.communication-card.is-unsent,.communication-card.is-changed,.communication-card.is-waiting{border-left-color:#c48a23}.communication-card.is-received,.communication-card.is-viewed{border-left-color:#2d78a1}
.communication-card>header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start}.communication-card>header strong,.communication-card>header small{display:block}.communication-card>header small,.communication-card>header i{color:#667680;font-size:.78rem;font-style:normal}.communication-channel{padding:6px 8px;border-radius:8px;background:#e6f0f6;color:#17597f;font-size:.7rem;font-weight:800;letter-spacing:.08em}.communication-channel.is-email{background:#eee9fb;color:#65449a}
.communication-channel.is-portal{background:#e6f4f2;color:#226b61}.communication-channel.is-dashboard{background:#fff0d5;color:#815b15}.communication-provider-state{padding:9px 11px;border-radius:9px;background:#f0f5f7;color:#4d5e68;font-size:.82rem}
.communication-card dl{display:flex;flex-wrap:wrap;gap:8px 24px;margin:14px 0}.communication-card dl div{min-width:150px}.communication-card dt{font-size:.68rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#70808a}.communication-card dd{margin:2px 0;font-size:.88rem;overflow-wrap:anywhere}.communication-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.5;background:#f7f9fa;border-radius:10px;padding:12px;margin:10px 0}.communication-subject,.communication-error{font-size:.86rem}.communication-error{color:#8b342e;background:#fff1ef;padding:10px;border-radius:8px}
.communication-card details{margin:10px 0}.communication-card details ol{display:grid;gap:8px;padding-left:22px}.communication-card details li span,.communication-card details li small{display:block;color:#64747e;font-size:.78rem}.communication-retry-note{display:block;color:#71808a;margin-top:10px}
@media(max-width:980px){.communications-context-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.booking-communications>header,.communications-context>header{align-items:stretch;flex-direction:column}.communications-context-grid,.communications-consent{grid-template-columns:1fr}.communications-context-actions{display:grid}.communication-card>header{grid-template-columns:auto 1fr}.communication-card>header>i{grid-column:2}.communication-card dl{display:grid;grid-template-columns:1fr}.communication-card{padding:13px}}
