/* TechRib IoT Cloud — cards automáticos unificados ao padrão oficial.
   O escopo fica restrito a #techribUniversal e aos diálogos tr-universal. */
#techribUniversal[hidden]{display:none!important}
.tr-universal-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 11px}
.tr-universal-heading h2{font-size:16px;font-weight:800;margin:0 0 3px}
.tr-universal-heading small{font-size:11px;color:var(--iot-muted,var(--tr-muted))}
.tr-universal-heading>button,.tr-universal-events{width:auto!important;padding:8px 12px!important;min-height:34px;font-size:11px!important;border:1px solid var(--iot-border,var(--tr-border));border-radius:9px;background:var(--iot-raised,var(--tr-raised))!important;color:var(--iot-text,var(--tr-text))!important}
.tr-universal-heading>button:hover,.tr-universal-events:hover{border-color:var(--iot-accent,var(--tr-accent))}
.tr-universal-events{margin-top:11px}
.tr-universal-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;align-items:stretch}
.tr-universal-card.bench-channel{position:relative;--tile-accent:#54c4a4;display:flex;flex-direction:column;gap:6px;min-width:0;min-height:116px;padding:11px 9px;border:1px solid var(--iot-border,var(--tr-border));border-radius:calc(var(--iot-radius,14px) - 2px);background:var(--iot-card,var(--tr-card));color:var(--iot-text,var(--tr-text));box-shadow:var(--iot-shadow,var(--tr-shadow));overflow:visible;transition:transform .16s,border-color .16s,background .16s}
.tr-universal-card.bench-channel:hover{transform:translateY(-2px);border-color:var(--tile-accent)}
.tr-universal-card.bench-channel.on{background:color-mix(in srgb,var(--tile-accent) 13%,var(--iot-card,var(--tr-card)));border-color:color-mix(in srgb,var(--tile-accent) 55%,var(--iot-border,var(--tr-border)))}
.tr-universal-card.bench-channel[data-availability=offline],.tr-universal-card.bench-channel[data-availability=stale]{opacity:.75}
.tr-universal-card.tr-universal-wide{grid-column:span 2;min-height:158px;padding:12px;gap:7px}
.tr-universal-card .bench-channel-top{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}
.tr-universal-card .bench-channel-icon,.tr-universal-card .tr-universal-icon-action{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;min-height:30px;padding:0!important;border:0!important;border-radius:10px!important;background:var(--iot-raised,var(--tr-raised))!important;color:var(--iot-muted,var(--tr-muted))!important}
.tr-universal-card .bench-channel-icon svg,.tr-universal-card .tr-universal-icon-action svg{width:17px!important;height:17px!important}
.tr-universal-card.on .bench-channel-icon,.tr-universal-card.on .tr-universal-icon-action{background:var(--tile-accent)!important;color:#0c2632!important}
.tr-universal-card .tr-universal-icon-action{cursor:pointer}
.tr-universal-card .tr-universal-icon-action:disabled{opacity:.55;cursor:wait}
.tr-universal-card .bench-channel-number{flex:0 1 auto;max-width:calc(100% - 40px);font-size:9px;color:var(--iot-muted,var(--tr-muted));overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.tr-universal-card .bench-channel-name{font-size:11px;font-weight:850;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0!important;padding-right:10px}
.tr-universal-card .bench-channel-sub{font-size:9px;color:var(--iot-muted,var(--tr-muted));line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tr-universal-card .bench-channel-foot{margin-top:auto;padding-top:7px;border-top:1px solid var(--iot-border,var(--tr-border))}
.tr-universal-card .bench-channel-foot .bench-toggle{width:100%!important;min-height:22px!important;padding:0!important;display:flex;justify-content:space-between;align-items:center;gap:6px;background:transparent!important;border:0!important;color:var(--iot-muted,var(--tr-muted))!important;font-size:9px!important}
.tr-universal-card.on .bench-channel-foot .bench-toggle{color:var(--tile-accent)!important}
.tr-universal-card .bench-channel-foot .bench-toggle:disabled{opacity:.6;cursor:not-allowed}
.tr-universal-card .bench-channel-foot .bench-switch{flex:0 0 31px;width:31px;height:19px}
.tr-universal-card.on .bench-channel-foot .bench-switch{background:var(--tile-accent)}
.tr-universal-card .bench-edit.tr-universal-edit{position:absolute;right:6px;top:44px;z-index:2;display:grid;place-items:center;width:23px!important;min-height:23px!important;height:23px;padding:3px!important;background:var(--iot-raised,var(--tr-raised))!important;color:var(--iot-muted,var(--tr-muted))!important;border:1px solid var(--iot-border,var(--tr-border))!important;border-radius:7px!important;opacity:.72}
.tr-universal-card .bench-edit.tr-universal-edit svg{width:14px!important;height:14px!important}
.tr-universal-card .bench-edit.tr-universal-edit:hover,.tr-universal-card .bench-edit.tr-universal-edit:focus-visible{opacity:1;border-color:var(--tile-accent)!important}
.tr-universal-card.tr-universal-wide .bench-edit.tr-universal-edit{top:13px;right:12px}
.tr-universal-card .tr-universal-reading{font-size:18px;font-weight:800;line-height:1.3;overflow-wrap:anywhere;margin-top:4px}
.tr-universal-card .tr-universal-reading.tr-universal-active{color:var(--tile-accent)}
.tr-universal-card .tr-universal-reading.tr-universal-inactive{color:var(--iot-muted,var(--tr-muted))}
.tr-universal-card .tr-universal-location{display:block;font-size:9px;color:var(--iot-muted,var(--tr-muted));overflow-wrap:anywhere}
.tr-universal-card meter{width:100%;height:7px;accent-color:var(--tile-accent)}
.tr-universal-gauge{display:flex;align-items:center;gap:11px;padding:4px 0 1px;min-width:0;flex:1}
.tr-universal-gauge-ring{flex:0 0 76px;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--tile-accent) 0 var(--reading-percent),color-mix(in srgb,var(--iot-muted,var(--tr-muted)) 17%,transparent) var(--reading-percent) 100%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tile-accent) 20%,transparent)}
.tr-universal-gauge-value{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;padding:5px;background:var(--iot-card,var(--tr-card));text-align:center;font-size:13px;font-weight:850;line-height:1.2;overflow-wrap:anywhere}
.tr-universal-gauge-caption{min-width:0;color:var(--iot-muted,var(--tr-muted));font-size:10px;line-height:1.45;overflow-wrap:anywhere}
.tr-universal-details{margin-top:3px;padding-top:7px;border-top:1px solid var(--iot-border,var(--tr-border));font-size:10px}
.tr-universal-details summary{cursor:pointer;color:var(--iot-muted,var(--tr-muted));font-weight:750}
.tr-universal-details dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;margin:9px 0;font-size:10px}
.tr-universal-details dt{overflow-wrap:anywhere}.tr-universal-details dd{margin:0;overflow-wrap:anywhere;text-align:right;font-weight:700}
.tr-universal-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}
.tr-universal-actions button{width:auto!important;min-height:27px!important;padding:5px 8px!important;font-size:10px!important;border:1px solid var(--iot-border,var(--tr-border))!important;background:var(--iot-raised,var(--tr-raised))!important;color:var(--iot-text,var(--tr-text))!important}
/* RGB: círculo de matizes + seletor nativo + cores rápidas e brilho. Sem comandos fictícios. */
.tr-universal-rgb-panel{margin-top:4px;display:grid;gap:9px}
.tr-universal-rgb-main{display:flex;align-items:center;gap:12px;min-width:0}
.tr-universal-color-wheel{position:relative;flex:0 0 86px;width:86px;height:86px;margin:0!important;padding:0!important;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:conic-gradient(#f44336,#ffca28,#66df73,#1fcdda,#3c79f8,#af5ce0,#f44336);box-shadow:0 0 0 2px color-mix(in srgb,var(--iot-border,var(--tr-border)) 80%,transparent),0 3px 18px #0003}
.tr-universal-color-center{display:block;width:62px;height:62px;border-radius:50%;background:var(--universal-rgb);border:7px solid var(--iot-card,var(--tr-card));box-shadow:inset 0 0 0 1px #ffffff40}
.tr-universal-color-wheel input[type=color]{position:absolute!important;inset:0;width:100%!important;height:100%!important;opacity:.01;padding:0!important;margin:0!important;cursor:pointer}
.tr-universal-color-wheel:focus-within{outline:3px solid var(--iot-accent,var(--tr-accent));outline-offset:3px}
.tr-universal-color-wheel:has(input:disabled){opacity:.65;cursor:default}
.tr-universal-rgb-side{min-width:0;flex:1;display:grid;gap:5px}
.tr-universal-rgb-side>strong{font-size:11px;font-weight:800}
.tr-universal-rgb-code{font:700 10px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--iot-muted,var(--tr-muted))}
.tr-universal-presets{display:flex;gap:4px;flex-wrap:wrap}
.tr-universal-preset{flex:0 0 18px;width:18px!important;height:18px!important;min-height:18px!important;padding:0!important;border:2px solid color-mix(in srgb,var(--iot-text,var(--tr-text)) 30%,transparent)!important;border-radius:50%!important;box-shadow:0 0 0 1px #0003}
.tr-universal-apply{width:auto!important;min-height:25px!important;padding:4px 9px!important;font-size:9px!important;border-radius:8px!important;background:var(--tile-accent)!important;color:#102437!important}
.tr-universal-apply:disabled{opacity:.5;cursor:not-allowed}
.tr-universal-brightness{padding-top:8px;border-top:1px solid var(--iot-border,var(--tr-border));display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 8px;align-items:center}
.tr-universal-brightness label{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;font-size:10px!important;margin:0!important;color:var(--iot-muted,var(--tr-muted))}
.tr-universal-brightness input[type=range]{width:100%!important;min-width:0!important;margin:0!important;padding:0!important;accent-color:var(--tile-accent)}
.tr-universal-control-state{font-size:9px;color:var(--iot-muted,var(--tr-muted));line-height:1.4;overflow-wrap:anywhere}
.tr-universal-command{margin-top:9px;padding-top:8px;border-top:1px solid var(--iot-border,var(--tr-border));display:grid;gap:6px}
.tr-universal-command label{display:grid;gap:4px;font-size:10px}
.tr-universal-command input:not([type=checkbox]),.tr-universal-command select{width:100%;min-width:0}
.tr-universal-command button{min-height:32px;font-size:10px}.tr-universal-command output{margin-left:auto}
/* Editor: mesma biblioteca de ícones e opções de cor do card oficial. */
.tr-universal-dialog{width:min(630px,calc(100vw - 24px));max-height:88vh;overflow:auto;padding:19px;border:1px solid var(--tr-border);border-radius:17px;background:var(--tr-card);color:var(--tr-text);box-shadow:0 20px 70px #0008}
.tr-universal-dialog::backdrop{background:#061322b8;backdrop-filter:blur(3px)}
.tr-universal-dialog h2{font-size:18px;margin:0 0 10px}
.tr-universal-dialog>button{width:auto!important;float:right;padding:5px 9px!important;min-height:30px;background:var(--tr-raised)!important;color:var(--tr-text)!important;border:1px solid var(--tr-border)!important;font-size:11px}
.tr-universal-dialog-intro{font-size:12px;color:var(--tr-muted);line-height:1.4;clear:both}
.tr-universal-edit-form{display:grid;gap:8px;clear:both}
.tr-universal-edit-form>label{display:grid;gap:5px;font-size:11px;font-weight:750;margin:0}
.tr-universal-edit-form input:not([type=color]),.tr-universal-edit-form select{width:100%;margin:0!important;min-width:0;padding:9px}
.tr-universal-picker-title{font-size:11px;margin-top:4px}
.tr-universal-picker-tools{display:flex;gap:8px}.tr-universal-picker-tools input{flex:1}.tr-universal-picker-tools select{width:185px!important;max-width:42%}
.tr-universal-icon-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(95px,1fr));gap:7px;max-height:180px;overflow:auto;padding:8px;border:1px solid var(--tr-border);border-radius:10px;background:var(--tr-surface)}
.tr-universal-icon-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:63px;padding:7px 5px!important;background:var(--tr-raised)!important;color:var(--tr-text)!important;border:1px solid var(--tr-border)!important;border-radius:10px;font-size:9px!important;line-height:1.2}
.tr-universal-icon-option svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8}
.tr-universal-icon-option[aria-pressed=true]{border-color:var(--tr-accent)!important;background:var(--tr-accent-soft)!important;box-shadow:inset 0 0 0 1px var(--tr-accent)}
.tr-universal-icon-option span{text-align:center;overflow-wrap:anywhere}
.tr-universal-color-picker{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.tr-universal-color-option{width:27px!important;height:27px!important;min-height:27px!important;padding:0!important;background:var(--tile-accent)!important;border:2px solid var(--tr-card)!important;border-radius:50%!important;box-shadow:0 0 0 1px var(--tr-border)!important}
.tr-universal-color-option[aria-pressed=true]{box-shadow:0 0 0 2px var(--tr-accent)!important}
.tr-universal-color-picker label{display:flex;align-items:center;gap:6px;font-size:10px;margin:0 0 0 auto}
.tr-universal-color-picker input[type=color]{width:36px!important;height:32px!important;padding:2px!important;margin:0!important}
.tr-universal-form-error{color:var(--tr-danger);font-size:11px;margin:0;min-height:0}
.tr-universal-form-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.tr-universal-form-actions button{width:auto!important;padding:9px 12px!important;min-height:35px;font-size:11px}
.tr-universal-form-actions button:first-child{background:var(--tr-raised)!important;color:var(--tr-text)!important;border:1px solid var(--tr-border)!important}
.tr-universal-dialog svg{max-width:100%;color:inherit}
/* Manter o V2 no editor visual compatível com cards existentes. */
.trv-universal-card.tr-universal-card{min-height:116px;padding:11px 9px!important}.trv-universal-card .tr-universal-details{width:100%}
@media(max-width:1240px){.tr-universal-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:900px){.tr-universal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.tr-universal-card .bench-edit.tr-universal-edit{opacity:1}}
@media(max-width:550px){.tr-universal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tr-universal-card.tr-universal-wide{grid-column:span 2}.tr-universal-heading{align-items:flex-end}.tr-universal-picker-tools{flex-wrap:wrap}.tr-universal-picker-tools select{width:100%!important;max-width:100%}.tr-universal-gauge-ring{flex-basis:70px;width:70px;height:70px}.tr-universal-gauge-value{width:58px;height:58px}}
@media(max-width:360px){.tr-universal-card.tr-universal-wide{padding:9px}.tr-universal-color-wheel{width:70px;height:70px;flex-basis:70px}.tr-universal-color-center{width:48px;height:48px}}

/* V2.1: dimensões iguais aos canais oficiais. Controles avançados são acessíveis em diálogos. */
.tr-universal-grid{align-items:stretch}
.tr-universal-card.bench-channel,.tr-universal-card.tr-universal-wide{
 grid-column:span 1!important;box-sizing:border-box;min-height:136px!important;height:136px!important;
 max-height:136px!important;overflow:hidden!important;gap:4px!important;padding:9px 8px!important;
}
.tr-universal-card .bench-channel-top{flex:0 0 28px}
.tr-universal-card .bench-channel-icon,.tr-universal-card .tr-universal-icon-action{flex-basis:28px;width:28px;height:28px;min-height:28px}
.tr-universal-card .bench-channel-name{padding-right:22px;font-size:10px}
.tr-universal-card .tr-universal-reading{font-size:13px;margin-top:2px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tr-universal-card .bench-channel-foot{padding-top:3px;flex:0 0 24px;margin-top:auto}
.tr-universal-card .bench-channel-foot .bench-toggle{min-height:20px!important}
.tr-universal-card .bench-edit.tr-universal-edit,.tr-universal-card.tr-universal-wide .bench-edit.tr-universal-edit{top:39px;right:7px}
.tr-universal-card .tr-universal-location{display:none}
.tr-universal-card .tr-universal-gauge{min-height:0;gap:7px;padding:1px 0}
.tr-universal-card .tr-universal-gauge-ring{width:46px;height:46px;flex-basis:46px}
.tr-universal-card .tr-universal-gauge-value{width:38px;height:38px;font-size:9px;padding:3px}
.tr-universal-card .tr-universal-gauge-caption{font-size:9px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.tr-universal-card .tr-universal-actions{margin-top:auto}
.tr-universal-card .tr-universal-actions button{min-height:20px!important;padding:2px 5px!important;font-size:9px!important}
.tr-universal-card .tr-universal-mini-details{font-size:9px!important;line-height:1.2!important;min-height:19px!important;width:auto!important;max-width:80px;padding:2px 4px!important;text-align:left;background:transparent!important;border:0!important;color:var(--iot-muted,var(--tr-muted))!important;cursor:pointer}
.tr-universal-card .tr-universal-mini-details:hover{text-decoration:underline}
.tr-universal-card .tr-universal-rgb-compact{min-height:38px;display:flex;align-items:center;gap:7px;min-width:0;margin-top:1px}
.tr-universal-card .tr-universal-rgb-mini-wheel{width:37px!important;height:37px!important;min-height:37px!important;flex:0 0 37px;border:0!important;border-radius:50%!important;padding:0!important;display:grid;place-items:center;background:conic-gradient(#ff4545,#ffd02e,#52df7c,#1fd7d9,#4779ff,#ad59e5,#ff4545)!important;cursor:pointer}
.tr-universal-card .tr-universal-rgb-mini-center{width:26px;height:26px;border-radius:50%;border:4px solid var(--iot-card,var(--tr-card));background:var(--universal-rgb)}
.tr-universal-card .tr-universal-rgb-quick{display:grid;gap:4px;min-width:0;flex:1}
.tr-universal-card .tr-universal-rgb-compact-head{display:flex;justify-content:space-between;gap:2px;color:var(--iot-muted,var(--tr-muted));font-size:8px}
.tr-universal-card .tr-universal-rgb-swatches{display:flex;gap:3px;min-width:0}
.tr-universal-card .tr-universal-rgb-swatch{width:13px!important;height:13px!important;flex:0 1 13px;min-width:8px!important;min-height:13px!important;border-radius:50%!important;background:var(--rgb-swatch)!important;border:1px solid #ffffff54!important;padding:0!important}
.tr-universal-card .tr-universal-rgb-swatch:disabled{opacity:.4}
.tr-universal-card.tr-universal-pending{border-style:dashed!important}
.tr-universal-card.tr-universal-pending .bench-channel-foot .bench-state{font-weight:850;color:var(--tile-accent)}
.tr-universal-dialog .tr-universal-rgb-panel{padding:12px;border:1px solid var(--tr-border);border-radius:13px;margin:10px 0}
.tr-universal-dialog .tr-universal-rgb-main{align-items:center}
.tr-universal-dialog .tr-universal-details-state{display:grid;grid-template-columns:1fr auto;gap:7px;font-size:11px}
.tr-universal-dialog .tr-universal-details-state dd{margin:0;text-align:right;font-weight:700}
.tr-universal-mode-section{border:1px solid var(--tr-border);border-radius:12px;display:grid;gap:9px;margin:10px 0;padding:12px}
.tr-universal-mode-section legend{font-size:11px;font-weight:800;padding:0 5px}
.tr-universal-mode-section label{display:grid;gap:5px;font-size:11px;font-weight:700}
.tr-universal-mode-section button{min-height:32px!important;width:fit-content!important;padding:6px 12px!important;font-size:11px!important}
.tr-universal-mode-status{font-size:10px;color:var(--tr-muted);margin:0;line-height:1.5}
@media(max-width:550px){.tr-universal-card.tr-universal-wide{grid-column:span 1!important}}

.tr-universal-card .tr-universal-mini-details{position:absolute!important;top:10px!important;right:48px!important;width:20px!important;height:20px!important;min-height:20px!important;text-align:center!important;padding:0!important;border-radius:7px!important;font-size:15px!important;z-index:2}
.tr-universal-card .tr-universal-actions{position:absolute;right:7px;top:72px;margin:0!important;z-index:1}
.tr-universal-card .tr-universal-gauge{padding-bottom:2px;flex:0 0 auto}
/* Não comprimir nome e tipo do componente para encaixar os controles. */
.tr-universal-card.bench-channel,.tr-universal-card.tr-universal-wide{padding:7px 8px!important;gap:3px!important}
.tr-universal-card .bench-channel-top{flex:0 0 25px!important}
.tr-universal-card .bench-channel-icon,.tr-universal-card .tr-universal-icon-action{width:25px;height:25px;min-height:25px;flex-basis:25px}
.tr-universal-card .bench-channel-name{flex:0 0 auto;min-height:13px;line-height:13px!important}
.tr-universal-card .bench-channel-sub{flex:0 0 auto;min-height:11px;line-height:11px!important}
.tr-universal-card .tr-universal-rgb-compact{min-height:32px;height:32px;margin:0}
.tr-universal-card .tr-universal-rgb-mini-wheel{width:32px!important;height:32px!important;min-height:32px!important;flex-basis:32px}
.tr-universal-card .tr-universal-rgb-mini-center{width:23px;height:23px;border-width:3px}
.tr-universal-card .bench-channel-foot{flex:0 0 22px!important;min-height:22px;margin-top:auto}
.tr-universal-card .bench-edit.tr-universal-edit,.tr-universal-card.tr-universal-wide .bench-edit.tr-universal-edit{top:33px}

/* Discreto estado provisório, sem rótulo "Ligando..." no card. */
.tr-universal-card.tr-universal-physical-pending{border-color:var(--tile-accent)!important;}
.tr-universal-card.tr-universal-physical-pending .bench-channel-foot{opacity:.88;}
.tr-universal-card.tr-universal-command-error{border-color:var(--tr-danger,#e57979)!important;}

/* TechRib 2026-10-22: ajuste fino de proporcao.
   Mantem feedback visual imediato, mas restringe o ajuste de tamanho aos switches 1..8 da grade smart-v3.
   Nao alterar RGB/persiana nem os demais cards especializados. */
#techribUniversal .tr-universal-grid{align-items:stretch}
#techribUniversal .tr-universal-card .bench-channel-foot{margin-top:auto}
#techribUniversal .tr-universal-card.tr-universal-pending{border-style:solid!important;border-color:var(--tile-accent)!important;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tile-accent) 32%,transparent),0 6px 18px #0002}
#techribUniversal .tr-universal-card.tr-universal-pending .bench-toggle:disabled{opacity:1!important;cursor:progress}
#techribUniversal .tr-universal-card.tr-universal-pending .bench-state{color:var(--tile-accent)!important}
.techrib-v3 #techribUniversal .trv3-lights .tr-universal-card.bench-channel[data-template="switch"]{height:149px!important;min-height:149px!important;max-height:149px!important;aspect-ratio:auto!important;justify-content:flex-start}
@media(max-width:650px){.techrib-v3 #techribUniversal .trv3-lights .tr-universal-card.bench-channel[data-template="switch"]{height:142px!important;min-height:142px!important;max-height:142px!important}}
/* O texto deve acompanhar o fundo/tema, nunca a regra global de botoes Mushroom. */
html[data-iot-theme="mushroom"] #techribUniversal .tr-universal-card button:not(.tr-universal-rgb-swatch),
html[data-iot-theme="industrial"] #techribUniversal .tr-universal-card button:not(.tr-universal-rgb-swatch){color:var(--iot-text,var(--tr-text))!important}
html[data-iot-theme="mushroom"] #techribUniversal .tr-universal-card.on .bench-toggle,
html[data-iot-theme="industrial"] #techribUniversal .tr-universal-card.on .bench-toggle{color:var(--tile-accent)!important}

#techribUniversal .tr-universal-card.tr-universal-clickable:not(.offline){cursor:pointer}
#techribUniversal .tr-universal-card.tr-universal-clickable button{cursor:pointer}

/* PATCH03: controle compacto de cover real; sem porcentagem nem estimativa. */
.tr-universal-card[data-component-type="cover"]{gap:3px!important}
.tr-universal-card[data-component-type="cover"] .tr-cover-control{margin-top:auto}
.tr-cover-control{display:grid;gap:4px;min-width:0;width:100%;font-size:10px;color:var(--iot-text,var(--tr-text,currentColor))}
.tr-cover-reported{font-size:9px;line-height:1.2;min-height:12px;overflow-wrap:anywhere}
.tr-cover-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:3px;min-width:0}
.tr-cover-actions button.tr-cover-action{display:block;min-width:0;width:100%!important;min-height:25px!important;height:auto!important;padding:3px 1px!important;border-radius:6px!important;border:1px solid var(--iot-border,var(--tr-border,#60708070))!important;background:var(--iot-raised,var(--tr-raised,#253d50))!important;color:var(--iot-text,var(--tr-text,currentColor))!important;font-size:9px!important;font-weight:750!important;line-height:1.2!important;white-space:nowrap;cursor:pointer}
.tr-cover-actions button.tr-cover-stop{border-color:var(--tile-accent,#dc9b48)!important}
.tr-cover-actions button:disabled{opacity:.45;cursor:not-allowed}
.tr-cover-command-status{font-size:9px;line-height:1.2;min-height:11px;overflow-wrap:anywhere}
.tr-cover-position-warning{font-size:8px;line-height:1.1;opacity:.7}
/* Os controles devem caber no card pequeno sem cortar a acao Parar. */
#techribUniversal .tr-universal-card[data-component-type="cover"],
.trv .trv-universal-card[data-template="cover"]{min-height:175px!important;height:auto!important;max-height:none!important;overflow:visible!important}
.trv .trv-universal-card[data-template="cover"]{gap:5px}
@media(max-width:550px){.tr-cover-actions{gap:2px}.tr-cover-actions button.tr-cover-action{font-size:8px!important}}
