.function-group-caption { grid-column: 1 / -1; padding: 5px 4px 1px; color: var(--muted); font-size: .73rem; font-weight: 600; }
.admin-column { grid-template-rows: auto auto minmax(0,1fr); }
.function-index-heading { flex-wrap: wrap; height: auto; }
.tabs.function-index { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); overflow-x: hidden; }
.device-module-banner { flex-basis: 100%; min-width: 0; margin: 0 0 8px; padding: 8px 10px; border: 1px solid var(--line); border-radius: 7px; background: var(--panel); }
.device-module-banner strong, .device-module-banner small { display: block; }
.device-module-banner small { margin-top: 4px; color: var(--muted); font-size: .75rem; }
.device-module-banner[hidden], .function-group-caption[hidden] { display: none; }
.agent-trace-source { max-width: 112px; min-height: 26px; padding: 2px 5px; font-size: 11px; }
.online-alert-button { width:auto; margin:0; padding:2px 5px; border:0; background:transparent; color:var(--muted); font-size:11px; }
.online-alert-button[data-sound-state="error"] { border-color:#d17b32; }
.online-alert-button[data-sound-state="playing"] { border-color:#4aaf83; }
