.communications-page { max-width: 1500px; }
.communications-page .grid-2 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); align-items: start; }
.communication-page-links { display: flex; flex-wrap: wrap; gap: .5rem; }
.communications-layout { display: grid; grid-template-columns: minmax(17rem, .72fr) minmax(35rem, 1.65fr); gap: 1rem; align-items: start; }
.communication-list-panel, .communication-editor { min-width: 0; }
.communication-panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: .75rem; }
.communication-panel-heading h2 { margin-top: 0; }
.communication-status { display: inline-flex; align-items: center; min-height: 1.8rem; padding: .18rem .55rem; border: 1px solid var(--stone-edge); border-radius: 999px; color: var(--text-muted); font-size: .78rem; white-space: nowrap; text-transform: uppercase; }
.communication-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: .5rem; max-height: 70vh; overflow: auto; }
.communication-list-item { display: grid; grid-template-columns: minmax(0, 1fr); gap: .15rem; width: 100%; min-width: 0; overflow-wrap: anywhere; text-align: left; padding: .75rem; color: var(--text); background: var(--panel-recess); border: 1px solid var(--stone-edge); border-radius: 6px; cursor: pointer; font: inherit; }
.communication-list-item:hover, .communication-list-item.selected { border-color: var(--gold); background: var(--stone-hover); }
:root[data-theme="light"] button.communication-list-item { color: var(--text); background: var(--panel-recess); }
:root[data-theme="light"] button.communication-list-item:hover, :root[data-theme="light"] button.communication-list-item.selected { background: var(--stone-hover); }
.communication-list-title { color: var(--heading); font-family: var(--font-display); text-transform: uppercase; letter-spacing: .03em; }
.communication-list-meta { color: var(--text-muted); font-size: .78rem; overflow-wrap: anywhere; }
.status-pill { display: inline-flex; border: 1px solid currentColor; border-radius: 999px; padding: .05rem .38rem; text-transform: uppercase; font-size: .68rem; letter-spacing: .04em; }
.status-draft, .status-queued { color: var(--gold); }
.status-scheduled, .status-provider-accepted, .status-waiting { color: var(--teal-tint); }
.status-published, .status-collected, .status-open { color: var(--moss-tint); }
:root[data-theme="light"] .status-published, :root[data-theme="light"] .status-collected, :root[data-theme="light"] .status-open { color: var(--forest); }
.status-withdrawn, .status-cancelled, .status-failed, .status-resolved { color: var(--red-tint); }
:root[data-theme="light"] .status-draft, :root[data-theme="light"] .status-queued { color: var(--copper); }
:root[data-theme="light"] .status-scheduled, :root[data-theme="light"] .status-provider-accepted, :root[data-theme="light"] .status-waiting { color: #0A4FC2; }
:root[data-theme="light"] .status-withdrawn, :root[data-theme="light"] .status-cancelled, :root[data-theme="light"] .status-failed, :root[data-theme="light"] .status-resolved { color: var(--red-danger); }
.communication-fieldset { min-width: 0; margin: .9rem 0; padding: .8rem; border: 1px solid var(--stone-edge); border-radius: 6px; }
.communications-page .field, .communication-translations > *, .reward-row > * { min-width: 0; }
.communication-fieldset legend { padding: 0 .35rem; color: var(--heading); font-family: var(--font-display); text-transform: uppercase; font-size: .8rem; letter-spacing: .05em; }
.communication-translations, #reward-fields { display: grid; gap: .7rem; }
.translation-row, .reward-row { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 1.35fr); gap: .55rem; align-items: end; padding: .65rem; border: 1px solid var(--stone-edge); background: var(--panel-recess); border-radius: 5px; }
.translation-body { grid-column: span 2; }
.reward-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.translation-remove, .reward-remove { margin-bottom: .2rem; }
.communication-actions { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: .8rem; align-items: center; }
.communication-actions .danger-text { color: var(--red-tint); }
.communication-review { margin-top: 1rem; padding: .9rem; border: 1px solid var(--rim); background: var(--panel-recess); border-radius: 6px; }
.communication-review h3 { color: var(--heading); }
.review-grid { display: grid; grid-template-columns: repeat(4, minmax(8rem, 1fr)); gap: .6rem; margin: .75rem 0; }
.review-grid > div { display: grid; gap: .12rem; padding: .55rem; border: 1px solid var(--stone-edge); border-radius: 5px; }
.review-grid strong { color: var(--heading); font-size: 1.1rem; }
.review-grid code { overflow-wrap: anywhere; }
.review-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr)); gap: .7rem; margin: .75rem 0; }
.review-detail-grid > div { padding: .65rem; border: 1px solid var(--stone-edge); border-radius: 5px; }
.review-detail-grid h4, .review-translations h4 { margin: 0 0 .35rem; color: var(--heading); font-family: var(--font-display); text-transform: uppercase; font-size: .8rem; letter-spacing: .04em; }
.review-detail-grid ul { margin: .25rem 0; padding-left: 1.15rem; }
.review-translations { display: grid; gap: .6rem; }
.review-translation { padding: .65rem; border: 1px solid var(--stone-edge); border-radius: 5px; background: var(--input-bg); }
.review-translation strong { color: var(--heading); }
.review-translation p { white-space: pre-wrap; overflow-wrap: anywhere; }
.review-translation img { display: block; max-width: min(100%, 24rem); max-height: 12rem; object-fit: contain; margin-top: .4rem; border: 1px solid var(--stone-edge); background: var(--panel-recess); }
.support-toolbar { display: flex; flex-wrap: wrap; align-items: end; gap: .8rem; margin-bottom: 1rem; }
.support-toolbar .field { min-width: 10rem; margin: 0; }
.support-toolbar .support-search { flex: 1; min-width: 16rem; }
.support-toolbar input, .support-toolbar select { min-width: 0; max-width: 100%; }
@media (max-width: 540px) { .support-toolbar .field { flex: 1 1 100%; min-width: 0; width: 100%; } .support-toolbar .support-search { flex-basis: 100%; } }
.support-thread { display: grid; gap: .65rem; max-height: 40rem; overflow: auto; padding: .1rem; }
.support-context { padding-bottom: .5rem; border-bottom: 1px solid var(--stone-edge); }
.support-message { padding: .65rem .75rem; border-left: 3px solid var(--teal); background: var(--panel-recess); border-radius: 0 5px 5px 0; }
.support-message.support-player { border-left-color: var(--gold); }
.support-message header { display: flex; justify-content: space-between; gap: 1rem; color: var(--heading); font-size: .8rem; }
.support-message time { color: var(--text-muted); font-weight: 600; }
.support-message p { white-space: pre-wrap; overflow-wrap: anywhere; }
.support-notes { margin: .35rem 0 0; padding-left: 1.2rem; color: var(--gold-tint); font-size: .85rem; }
.support-notes li { margin: .25rem 0; white-space: pre-wrap; overflow-wrap: anywhere; }
.delivery-summary { display: flex; flex-wrap: wrap; gap: .7rem; margin-bottom: .8rem; }
.delivery-summary span { padding: .5rem .75rem; background: var(--panel-recess); border: 1px solid var(--stone-edge); border-radius: 5px; color: var(--text-muted); }
.delivery-summary b { color: var(--heading); margin-right: .25rem; }
.communication-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); gap: .75rem; }
.communication-metrics > div { min-width: 0; padding: .75rem; border: 1px solid var(--stone-edge); border-radius: 5px; background: var(--panel-recess); }
.communication-metrics dt { color: var(--text-muted); font-size: .8rem; }
.communication-metrics dd { margin: .3rem 0 0; color: var(--heading); font-size: 1.25rem; font-weight: 700; }
.delivery-table td, .delivery-table th { vertical-align: top; }
.delivery-error, .delivery-audit { max-width: 24rem; overflow-wrap: anywhere; }
.delivery-error { color: var(--red-tint); }
.communication-confirmation { position: fixed; inset: 0; z-index: 1000; display: grid; place-items: center; background: #000b; padding: 1.5rem; }
.communication-confirmation > section { width: min(100%, 38rem); max-height: 85vh; overflow-y: auto; overflow-x: hidden; box-sizing: border-box; background: var(--panel-recess); }
.communication-confirmation p { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 1180px) { .communications-layout { grid-template-columns: 1fr; } .communication-list { max-height: 24rem; } }
@media (max-width: 760px) { .translation-row, .reward-row { grid-template-columns: 1fr 1fr; } .translation-body { grid-column: span 2; } .translation-remove, .reward-remove { grid-column: 2; justify-self: start; } .review-grid, .review-detail-grid { grid-template-columns: 1fr 1fr; } .delivery-table { min-width: 1100px; } }
@media (max-width: 540px) { .translation-row, .reward-row, .review-grid, .review-detail-grid { grid-template-columns: minmax(0, 1fr); } .translation-body, .translation-remove, .reward-remove { grid-column: 1; } .communication-panel-heading, .support-message header { flex-wrap: wrap; } .support-toolbar .support-search { min-width: 0; width: 100%; } }
.communications-page [hidden] { display: none !important; }
