.communications-shell{display:grid;gap:1rem}.communications-hero{align-items:center}.communications-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.communications-kpis article,.communications-panel{background:#fff;border:1px solid #dfe4ea;border-radius:14px;box-shadow:0 2px 8px rgba(15,23,42,.05)}.communications-kpis article{padding:1rem 1.1rem}.communications-kpis span,.communications-kpis small{display:block;color:#667085}.communications-kpis span{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.communications-kpis strong{display:block;font:700 1.8rem/1.15 Georgia,serif;color:#071d31;margin:.25rem 0}.communications-kpis small{font-size:.78rem}.communications-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:1rem}.communications-panel{padding:1.15rem}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;border-bottom:1px solid #e6e9ee;padding-bottom:.85rem;margin-bottom:1rem}.panel-heading h2{margin:.15rem 0 0;font-family:Georgia,serif;color:#071d31}.channel-badge{background:#eaf1f8;color:#164a75;border-radius:999px;padding:.35rem .65rem;font-size:.75rem;font-weight:800}.message-preview{background:#f7f8fa;border:1px solid #e2e6eb;border-radius:12px;padding:1rem}.message-subject{font-weight:800;color:#071d31;margin-top:0}.message-preview dl{margin:1rem 0 0}.message-preview dl div{display:flex;justify-content:space-between;gap:1rem;padding:.5rem 0;border-top:1px solid #e2e6eb}.message-preview dt{color:#667085}.message-preview dd{margin:0;text-align:right;font-weight:700}.campaign-actions{display:flex;justify-content:flex-end;gap:.65rem;margin-top:1rem}.communications-message{min-height:1.3rem;margin:.8rem 0 0;color:#667085}.communications-message.success{color:#157347}.communications-message.error{color:#a12222}.recipient-table,.history-table{width:100%;border-collapse:collapse;font-size:.88rem}.recipient-table th,.recipient-table td,.history-table th,.history-table td{text-align:left;padding:.65rem .45rem;border-bottom:1px solid #eaedf1}.recipient-table th,.history-table th{font-size:.72rem;text-transform:uppercase;color:#667085}.review-section+ .review-section{margin-top:1rem}.review-section h3{font-size:.9rem;margin:.2rem 0 .6rem}.review-section.excluded h3{color:#9f2c2c}.campaign-state{font-weight:800;text-transform:capitalize}.campaign-history{overflow:hidden}.communications-dialog{width:min(520px,calc(100% - 2rem));border:0;border-radius:14px;padding:0;box-shadow:0 24px 80px rgba(0,0,0,.3)}.communications-dialog::backdrop{background:rgba(7,29,49,.72)}.communications-dialog form{padding:1.4rem;position:relative}.dialog-close{position:absolute;right:.8rem;top:.6rem;border:0;background:transparent;font-size:1.7rem}.confirmation-summary{background:#f5f7fa;border-radius:10px;padding:1rem;margin:1rem 0}.confirmation-summary strong{font-size:1.5rem;color:#071d31}.confirmation-check{display:flex;align-items:flex-start;gap:.6rem;margin:1rem 0;line-height:1.4}.confirmation-check input{margin-top:.2rem}.dialog-actions{display:flex;justify-content:flex-end;gap:.6rem}.readonly-note{padding:.8rem;border-radius:9px;background:#fff7e1;color:#73550e;font-weight:700}@media(max-width:900px){.communications-kpis{grid-template-columns:repeat(2,1fr)}.communications-grid{grid-template-columns:1fr}}@media(max-width:520px){.communications-kpis{grid-template-columns:1fr}.campaign-actions,.dialog-actions{flex-direction:column}.campaign-actions .button,.dialog-actions .button{width:100%}.recipient-table th:nth-child(2),.recipient-table td:nth-child(2){display:none}}

/* FIX11HZ72O: compose + preview first; recipient ledger is supporting detail. */
.communications-grid{grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr)!important;align-items:start}.recipient-review{max-height:360px;overflow:auto}.communications-panel{min-width:0}.campaign-card .email-live-preview{margin-top:1rem}.communications-kpis article{padding:.8rem 1rem}@media(max-width:1000px){.communications-grid{grid-template-columns:1fr!important}.recipient-review{max-height:none}}
.recipient-summary{padding:.75rem .85rem;border:1px solid #e1e7ee;border-radius:10px;background:#f8fafc}.recipient-summary span{color:#667085}.recipient-ledger{margin-top:.65rem}.recipient-ledger>summary{cursor:pointer;font-weight:800;padding:.55rem 0}
