.communication-module { min-width:0; }
.content:has([data-system-communication]) .system-tabs { flex-wrap:wrap; }
.communication-module :is(h2,h3,summary,.comm-device) { overflow-wrap:anywhere; }
.communication-module h2 { font-size:17px; margin:12px 0; }
.communication-module h3 { font-size:14px; margin:10px 0; }
.communication-module small { font-weight:400; font-size:12px; color:#617384; }
.comm-toolbar { display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin:14px 0; }
.comm-toolbar h2 { margin:0; }
.comm-tabs { display:flex; flex-wrap:wrap; gap:5px; border-bottom:1px solid #d7e0e7; padding-bottom:9px; }
.comm-tabs [aria-pressed="true"] { background:#e5f0f8; border-color:#17658f; color:#12567c; }
.comm-map { margin:18px 0; }
.comm-root { border-bottom:2px solid #286882; font-weight:700; padding:10px 0; }
.comm-uplink,.comm-unassigned { border-bottom:1px solid #d7e0e7; padding:12px 0; }
.comm-network { margin:12px 0 12px 16px; border-left:2px solid #b0c7d4; padding-left:14px; }
.comm-network summary { font-weight:600; cursor:pointer; padding:6px 0; }
.comm-network summary small { margin-left:8px; }
.comm-converter { margin-top:14px; border-top:1px solid #e3e8ee; }
.comm-bus { border-left:3px solid #bf8d42; padding-left:12px; margin:10px 0; }
.comm-device { display:grid; grid-template-columns:minmax(100px,1fr) minmax(100px,1fr) minmax(200px,2fr) 120px; gap:10px; align-items:center; border-bottom:1px solid #e7ecf0; padding:10px 0; font-size:13px; }
.comm-open-device { text-align:left; background:none; border:0; color:#125e87; padding:0; min-height:30px; box-shadow:none; }
.comm-table-scroll { overflow-x:auto; max-width:100%; }
.comm-table-scroll table { min-width:740px; }
.comm-registry > div { display:grid; grid-template-columns:minmax(140px,1fr) minmax(150px,3fr) auto; gap:12px; align-items:center; padding:14px 0; border-bottom:1px solid #dde5eb; }
.comm-registry span { overflow-wrap:anywhere; }
.comm-binding-fields { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; width:100%; }
.comm-binding-fields [hidden],.communication-module [hidden] { display:none !important; }
[data-comm-editor] [hidden] { display:none !important; }
.comm-object-modal { width:min(1150px,96vw); }
@media(max-width:600px) {
 .app-panel:has([data-system-communication]) .alarm-strip { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .app-panel:has([data-system-communication]) .alarm-cell { min-width:0; }
 .app-panel:has([data-system-communication]) .cell-label { overflow-wrap:anywhere; }
}
@media(max-width:850px) {
 .comm-device { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
 .comm-device span { overflow-wrap:anywhere; }
 .comm-binding-fields { grid-template-columns:minmax(0,1fr); }
 .comm-registry > div { grid-template-columns:minmax(0,1fr) auto; }
 .comm-registry span { grid-column:1/-1; }
 .comm-network { margin-left:3px; padding-left:9px; }
}
