
#view-communication{padding-bottom:120px}
.nx-comm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0 12px}
.nx-comm-kpi{border:1px solid var(--theme-line);border-radius:16px;padding:15px 16px;background:var(--theme-surface);display:flex;flex-direction:column;gap:4px}
.nx-comm-kpi span{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.055em;color:var(--theme-muted)}
.nx-comm-kpi strong{font-size:25px;line-height:1.05;color:var(--theme-text)}
.nx-comm-kpi small{font-size:11px;color:var(--theme-muted)}
.nx-comm-state{min-height:38px;border:1px solid var(--theme-line);border-radius:12px;padding:9px 12px;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--theme-muted);margin-bottom:12px}
.nx-comm-state i{width:7px;height:7px;border-radius:50%;background:#8c9390;display:block}
.nx-comm-state.loading i{animation:nxPulse 1s infinite}
.nx-comm-state.ok i{background:#2e9b63}
.nx-comm-state.error i{background:#d15b51}
.nx-comm-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}
.nx-comm-tabs button{border:1px solid var(--theme-line);background:var(--theme-surface);color:var(--theme-text);border-radius:11px;padding:9px 12px;font:inherit;font-size:12px;cursor:pointer}
.nx-comm-tabs button.active{border-color:var(--theme-accent);background:color-mix(in srgb,var(--theme-accent) 10%,var(--theme-surface));color:var(--theme-accent)}
.nx-comm-tabs b{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;border-radius:999px;background:var(--theme-surface-2);margin-left:5px;font-size:10px}
.nx-comm-shell{display:grid;grid-template-columns:minmax(300px,38%) minmax(0,62%);min-height:520px;border:1px solid var(--theme-line);border-radius:18px;overflow:hidden;background:var(--theme-surface)}
.nx-comm-list{border-right:1px solid var(--theme-line);overflow:auto;max-height:660px}
.nx-comm-row{width:100%;border:0;border-bottom:1px solid var(--theme-line);background:transparent;text-align:left;padding:14px 15px;display:grid;grid-template-columns:38px 1fr auto;gap:10px;cursor:pointer;color:var(--theme-text)}
.nx-comm-row:hover,.nx-comm-row.active{background:var(--theme-surface-2)}
.nx-comm-row.unread .nx-comm-row-main strong{font-weight:800}
.nx-comm-avatar{width:36px;height:36px;border:1px solid var(--theme-line);border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:14px;background:var(--theme-bg)}
.nx-comm-row-main{min-width:0;display:flex;flex-direction:column;gap:4px}
.nx-comm-row-main strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nx-comm-row-main span{font-size:11px;color:var(--theme-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nx-comm-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.nx-comm-row-side time{font-size:10px;color:var(--theme-muted)}
.nx-comm-badge{font-size:9px;border:1px solid var(--theme-line);border-radius:999px;padding:3px 6px;color:var(--theme-muted)}
.nx-comm-badge.allegro{color:#e24d20;border-color:color-mix(in srgb,#e24d20 35%,var(--theme-line))}
.nx-comm-reader{min-width:0;display:flex;flex-direction:column;max-height:660px}
.nx-comm-reader-empty{height:100%;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:var(--theme-muted);text-align:center;padding:30px}
.nx-comm-reader-empty strong{color:var(--theme-text);font-size:16px}
.nx-comm-reader-head{padding:16px 18px;border-bottom:1px solid var(--theme-line);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.nx-comm-reader-head h3{margin:0 0 4px;font-size:16px}
.nx-comm-reader-head p{margin:0;font-size:11px;color:var(--theme-muted)}
.nx-comm-messages{padding:18px;overflow:auto;flex:1;display:flex;flex-direction:column;gap:10px;background:color-mix(in srgb,var(--theme-bg) 45%,var(--theme-surface))}
.nx-comm-message{max-width:78%;border:1px solid var(--theme-line);border-radius:15px;padding:10px 12px;background:var(--theme-surface)}
.nx-comm-message.out{align-self:flex-end;background:color-mix(in srgb,var(--theme-accent) 8%,var(--theme-surface))}
.nx-comm-message.in{align-self:flex-start}
.nx-comm-message p{margin:0;white-space:pre-wrap;font-size:12px;line-height:1.48}
.nx-comm-message small{display:block;margin-top:6px;color:var(--theme-muted);font-size:9px}
.nx-comm-compose{border-top:1px solid var(--theme-line);padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--theme-surface)}
.nx-comm-compose textarea{width:100%;min-height:84px;resize:vertical;border:1px solid var(--theme-line);border-radius:12px;padding:10px 11px;background:var(--theme-bg);color:var(--theme-text);font:inherit;font-size:12px;outline:none}
.nx-comm-compose textarea:focus{border-color:var(--theme-accent)}
.nx-comm-compose-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}
.nx-comm-compose-actions small{color:var(--theme-muted);font-size:10px}
.nx-comm-compose-actions div{display:flex;gap:7px}
.nx-comm-refresh.is-refreshing{opacity:.65;pointer-events:none}
@media(max-width:1050px){.nx-comm-kpis{grid-template-columns:repeat(2,1fr)}.nx-comm-shell{grid-template-columns:1fr}.nx-comm-list{border-right:0;border-bottom:1px solid var(--theme-line);max-height:300px}.nx-comm-reader{max-height:none}}
