/* TIVOX · Simulador de Sentinel PLUS (copia jugable del HMI). Todo acotado bajo #tvx-sim. Colores: los del tema de Sentinel. */
#tvx-sim{
  --deep:#070A0F;--card:#101722;--panel:#141C2A;--borde:#1E2838;--acento:#00C8FF;--acento2:#0095C8;--ok:#00E676;--nok:#FF2D55;
  --tx:#E8EDF5;--tx2:#8494AD;--amar:#FFB020;
  position:relative;container-type:inline-size;background:var(--deep);color:var(--tx);border-radius:10px;overflow:hidden;
  font-family:'Hanken Grotesk','Segoe UI',system-ui,sans-serif;font-size:13px;line-height:1.35;height:min(900px,96vh);min-height:620px;
  display:grid;grid-template-columns:80px minmax(0,1fr);grid-template-rows:54px minmax(0,1fr) 26px;-webkit-tap-highlight-color:transparent;
}
#tvx-sim *{box-sizing:border-box}
#tvx-sim button{font:inherit;color:inherit;cursor:pointer}
#tvx-sim .mono{font-family:'JetBrains Mono',ui-monospace,Consolas,monospace}
/* Barra superior */
#tvx-sim .top{grid-column:1/3;display:flex;align-items:center;gap:14px;padding:0 14px;border-bottom:1px solid var(--borde);background:#0A0E15}
#tvx-sim .top .logo{background:#fff;border-radius:6px;height:38px;padding:3px 8px;display:flex;align-items:center}
#tvx-sim .top .logo img{height:30px;display:block}
#tvx-sim .marca{font-family:'Segoe Script','Brush Script MT',cursive;font-style:italic;font-size:28px;color:var(--acento);letter-spacing:.5px}
#tvx-sim .ins{font-size:9px;font-weight:800;border-radius:3px;padding:2px 5px;margin-left:2px}
#tvx-sim .ins.p{background:#1d6ff2;color:#fff}#tvx-sim .ins.s{background:#6366f1;color:#fff}
#tvx-sim .ver{font-size:10px;color:var(--tx2)}
#tvx-sim .top .centro{margin:0 auto;display:flex;gap:10px;align-items:center;color:var(--tx2)}
#tvx-sim .top .centro b{color:var(--acento)}
#tvx-sim .top .usr{color:var(--tx);display:flex;gap:6px;align-items:center}
#tvx-sim .sim-chip{background:rgba(255,176,32,.14);border:1px solid rgba(255,176,32,.5);color:var(--amar);border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700}
/* Barra lateral */
#tvx-sim .lat{grid-row:2/4;background:#0A0E15;border-right:1px solid var(--borde);display:flex;flex-direction:column;align-items:stretch;padding:8px 0;gap:4px}
#tvx-sim .nav{background:transparent;border:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 2px;color:var(--tx2);font-size:12px;font-weight:600;border-radius:8px;margin:0 6px}
#tvx-sim .nav svg{width:34px;height:34px}
#tvx-sim .nav.on{background:var(--panel);color:var(--tx)}
#tvx-sim .nav.off{opacity:.35;cursor:not-allowed}
#tvx-sim .nav:hover:not(.off){color:var(--tx)}
#tvx-sim .lat .yo{margin-top:auto;text-align:center;font-size:11px;color:var(--tx2);padding-bottom:6px}
#tvx-sim .lat .yo button{background:transparent;border:0;color:var(--acento);font-size:11px;font-weight:700;display:block;margin:2px auto 0}
/* Estado */
#tvx-sim .est{grid-column:2;display:flex;align-items:center;gap:10px;padding:0 12px;border-top:1px solid var(--borde);font-size:11px;color:var(--tx2);background:#0A0E15}
#tvx-sim .est .c{margin:0 auto;color:var(--acento)}
#tvx-sim .punto{width:8px;height:8px;border-radius:50%;background:var(--ok);display:inline-block}
/* Contenido */
#tvx-sim .main{min-width:0;min-height:0;overflow:hidden}
#tvx-sim .live{display:grid;grid-template-columns:minmax(0,1fr) 300px;height:100%;min-height:0}
#tvx-sim .cams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;min-height:0;overflow:auto}
#tvx-sim .cams.cuatro{grid-template-rows:repeat(2,minmax(0,1fr))}
#tvx-sim .cams.n1{grid-template-columns:minmax(0,1fr)}
#tvx-sim .cams.n3>:last-child{grid-column:1/-1}
#tvx-sim .cams.cuatro .log{max-height:56px}
#tvx-sim .cams.cuatro .buf{padding:3px 6px}
#tvx-sim .cams.cuatro .mini{width:66px;height:48px}
#tvx-sim .cam{background:var(--card);border:2px solid var(--borde);border-radius:8px;display:flex;flex-direction:column;min-height:0;position:relative}
#tvx-sim .cam.sel{border-color:var(--acento)}
#tvx-sim .cam-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;font-size:12px}
#tvx-sim .cam-h .n{font-weight:800}
#tvx-sim .cam-h .r{color:var(--tx2)}
#tvx-sim .cam-h .der{margin-left:auto;display:flex;gap:6px;align-items:center}
#tvx-sim .cnt{border-radius:5px;padding:2px 8px;font-weight:800;font-family:'JetBrains Mono',ui-monospace,monospace}
#tvx-sim .cnt.ok{background:rgba(0,230,118,.12);color:var(--ok)}#tvx-sim .cnt.nok{background:rgba(255,45,85,.14);color:var(--nok)}
#tvx-sim .bt{border:0;border-radius:5px;padding:4px 9px;font-size:11px;font-weight:700;background:var(--panel);color:var(--tx)}
#tvx-sim .bt.stop{background:#ff3b5c;color:#fff}#tvx-sim .bt.play{background:#22c55e;color:#062}
#tvx-sim .bt.byp.on{background:var(--amar);color:#241500}
#tvx-sim .bt[disabled]{opacity:.35;cursor:not-allowed}
#tvx-sim .res{position:absolute;right:10px;top:40px;z-index:2;border-radius:6px;padding:4px 12px;font-weight:800;font-size:15px}
#tvx-sim .res.ok{background:rgba(0,230,118,.15);color:var(--ok)}#tvx-sim .res.nok{background:rgba(255,45,85,.2);color:var(--nok)}
#tvx-sim .img{flex:1;min-height:150px;position:relative;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}
#tvx-sim .img img,#tvx-sim .img svg,#tvx-sim .mini img,#tvx-sim .det .foto img,#tvx-sim .det .foto svg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
#tvx-sim .det .foto{position:relative;aspect-ratio:1408/1024;background:#000;border-radius:6px;overflow:hidden}
#tvx-sim .velo{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.35)}
#tvx-sim .velo button{border:0;border-radius:14px;padding:22px 34px;font-size:18px;font-weight:800;color:#fff;display:flex;flex-direction:column;align-items:center;gap:6px}
#tvx-sim .velo .pp{background:rgba(34,197,94,.85)}#tvx-sim .velo .cx{background:rgba(255,112,96,.8)}
#tvx-sim .bypass-cinta{position:absolute;left:0;right:0;top:0;background:repeating-linear-gradient(45deg,#ffb020 0 14px,#2a1d00 14px 28px);color:#fff;text-align:center;font-weight:900;padding:4px;letter-spacing:2px;text-shadow:0 1px 2px #000;z-index:3}
#tvx-sim .buf{display:flex;gap:6px;align-items:center;justify-content:flex-end;padding:6px 8px;border-top:1px solid var(--borde)}
#tvx-sim .mini{position:relative;width:86px;height:62px;border:2px solid var(--nok);border-radius:5px;overflow:hidden;background:#000;padding:0}
#tvx-sim .mini svg{width:100%;height:100%;display:block}
#tvx-sim .mini span{position:absolute;font-size:9px;font-weight:800;color:#fff;background:rgba(0,0,0,.6);padding:0 3px}
#tvx-sim .mini .t{right:2px;top:2px;color:#ff8a9d}#tvx-sim .mini .i{left:2px;bottom:2px}
#tvx-sim .log{max-height:84px;overflow:auto;border-top:1px solid var(--borde);font-size:11px}
#tvx-sim .log div{display:grid;grid-template-columns:64px 190px minmax(0,1fr);gap:8px;padding:3px 8px;border-bottom:1px solid #0d131c;white-space:nowrap}
#tvx-sim .log div>span{overflow:hidden;text-overflow:ellipsis}
#tvx-sim .log .h{color:var(--tx2)}#tvx-sim .log .f{color:#ff6b84}#tvx-sim .log .o{color:#7ee2a8}
/* Panel de herramientas */
#tvx-sim .herr{background:var(--card);border-left:1px solid var(--borde);display:flex;flex-direction:column;min-height:0}
#tvx-sim .herr-c{padding:10px;border-bottom:1px solid var(--borde)}
#tvx-sim .herr-c h4{margin:0 0 4px;font-size:13px}
#tvx-sim .herr-c .cn{color:var(--acento);font-size:12px}
#tvx-sim .chk{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--tx2);margin:6px 0}
#tvx-sim .btn-a{background:var(--acento);color:#03202b;border:0;border-radius:5px;padding:5px 10px;font-weight:700;font-size:11px}
#tvx-sim .tools{flex:1;overflow:auto;padding:6px}
#tvx-sim .tool{background:var(--panel);border:1px solid var(--borde);border-radius:6px;padding:8px 9px;margin-bottom:6px}
#tvx-sim .tool .tt{display:flex;justify-content:space-between;align-items:center;gap:6px;font-weight:700}
#tvx-sim .tool .v{font-family:'JetBrains Mono',ui-monospace,monospace;font-weight:800}
#tvx-sim .tool .v.ok{color:var(--ok)}#tvx-sim .tool .v.nok{color:var(--nok)}
#tvx-sim .barra{position:relative;height:10px;border-radius:5px;background:#24303f;margin:14px 0 6px}
#tvx-sim .barra i{position:absolute;left:0;top:0;bottom:0;border-radius:5px;transition:width .25s}
#tvx-sim .barra b{position:absolute;top:-4px;width:3px;height:18px;background:var(--nok);border-radius:2px}
#tvx-sim .barra em{position:absolute;top:-15px;font-style:normal;font-size:9px;color:var(--nok);transform:translateX(-50%);font-weight:700}
#tvx-sim .tool .info{font-size:11px;color:var(--tx2)}
#tvx-sim .tool .info span{color:var(--acento)}
#tvx-sim .cfg{background:transparent;border:0;font-size:14px;padding:0 2px}
#tvx-sim .cfg[disabled]{opacity:.3;cursor:not-allowed}
#tvx-sim .ed{margin-top:8px;border-top:1px dashed var(--borde);padding-top:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:11px;color:var(--tx2)}
#tvx-sim .ed input[type=range]{flex:1;accent-color:var(--acento)}
#tvx-sim .ed .num{background:#0b1119;border:1px solid var(--borde);color:var(--tx);border-radius:5px;padding:4px 8px;min-width:58px;text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace}
#tvx-sim .ed input[type=text]{background:#0b1119;border:1px solid var(--borde);color:var(--tx);border-radius:5px;padding:4px 8px;width:120px}
#tvx-sim .ck{padding:10px;border-top:1px solid var(--borde)}
#tvx-sim .ck .g{display:flex;align-items:flex-end;gap:12px}
#tvx-sim .ck .oee{font-size:28px;font-weight:800;color:var(--amar);font-family:'Archivo',system-ui,sans-serif}
#tvx-sim .ck .k{font-size:10px;color:var(--tx2);text-align:center}
#tvx-sim .ck .k b{display:block;font-size:13px;color:var(--ok)}
#tvx-sim .ck .p{font-size:10px;color:var(--tx2);margin-top:6px}
/* Recetas */
#tvx-sim .rec{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;height:100%;overflow:auto;align-content:start}
#tvx-sim .rec .c{background:var(--card);border:1px solid var(--borde);border-radius:8px;padding:14px}
#tvx-sim .rec h3{margin:0 0 8px;color:var(--acento);font-size:16px}
#tvx-sim .rec .act{color:var(--ok);font-weight:800}
#tvx-sim .rec select{width:100%;padding:7px;border-radius:4px;border:1px solid #c9d2dc;margin:10px 0;font:inherit;color:#111;background:#f4f6f8}
#tvx-sim .rec .cargar{width:100%;background:var(--acento);border:0;border-radius:5px;padding:10px;color:#03202b;font-weight:800}
#tvx-sim .rec .nota{color:var(--tx2);font-size:12px;margin-top:8px}
/* Ventanas (dentro del contenedor) */
#tvx-sim .capa{position:absolute;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:30;padding:12px}
#tvx-sim .capa[hidden]{display:none}
#tvx-sim .login{background:#121a26;border:1px solid var(--borde);border-radius:10px;width:min(340px,100%);padding:22px 22px 18px;text-align:center;position:relative}
#tvx-sim .login .tit{font-size:12px;color:var(--tx2);text-align:left;margin:-8px 0 12px}
#tvx-sim .login .lg{background:#fff;border-radius:8px;display:inline-block;padding:6px 14px}
#tvx-sim .login .lg img{height:40px;display:block}
#tvx-sim .login label{display:block;text-align:left;font-size:12px;color:var(--tx2);margin:14px 0 6px}
#tvx-sim .login select{width:100%;padding:9px;border-radius:4px;border:0;font:inherit;background:#e9edf2;color:#111}
#tvx-sim .login .pin{width:100%;padding:10px;border-radius:4px;background:#1b2533;border:1px solid var(--borde);color:var(--tx2);text-align:center;font-family:'JetBrains Mono',ui-monospace,monospace;letter-spacing:4px}
#tvx-sim .login .acc{width:100%;margin-top:18px;background:var(--acento);border:0;border-radius:5px;padding:11px;color:#03202b;font-weight:800;font-size:14px}
#tvx-sim .login .coletilla{margin-top:10px;font-size:11px;color:var(--amar)}
#tvx-sim .login .err{margin-top:8px;font-size:12px;color:#ff6b84;min-height:16px}
#tvx-sim .kp{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#162131;border:1px solid var(--borde);border-radius:10px;padding:10px;width:230px;box-shadow:0 10px 40px rgba(0,0,0,.6)}
#tvx-sim .kp .d{background:#0b111a;border-radius:6px;padding:10px;text-align:right;font-size:20px;letter-spacing:6px;min-height:44px;margin-bottom:8px}
#tvx-sim .kp .g{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
#tvx-sim .kp button{background:#2a3647;border:0;border-radius:6px;padding:12px 0;font-size:18px;font-weight:700}
#tvx-sim .kp .bk{color:#ff6b84}#tvx-sim .kp .okb{color:var(--ok)}
#tvx-sim .vent{background:#121a26;border:1px solid var(--borde);border-radius:10px;width:min(560px,100%);max-height:100%;overflow:auto;padding:16px}
#tvx-sim .vent h3{margin:0 0 10px;font-size:16px}
#tvx-sim .bt-inst{background:transparent;border:1px solid var(--borde);border-radius:999px;padding:3px 10px;color:var(--tx);font-size:11px;font-weight:700;margin-left:6px;cursor:pointer}
#tvx-sim .bt-inst:hover{border-color:var(--acento);color:var(--acento)}
#tvx-sim .vent.det-v{width:min(900px,100%)}
#tvx-sim .det-h{margin:14px 0 6px;font-size:13px;color:var(--acento);letter-spacing:.5px;text-transform:uppercase}
#tvx-sim .det-g{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
#tvx-sim .det-c{margin:0;background:#0d141e;border:1px solid var(--borde);border-radius:8px;overflow:hidden}
#tvx-sim .det-c svg{display:block;width:100%;aspect-ratio:1408/1024;background:#000}
#tvx-sim .det-c figcaption{padding:6px 8px;font-size:12px;line-height:1.3}
#tvx-sim .det-c figcaption small{display:block;color:var(--tx2);font-size:11px;margin-top:2px}
#tvx-sim .vent.cf{width:min(900px,100%)}
#tvx-sim .cf-cuerpo{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}
#tvx-sim .cf-mini{background:#0a1018;border:1px solid var(--borde);border-radius:8px;padding:10px;position:sticky;top:0}
#tvx-sim .cf-pant{display:grid;grid-template-columns:1fr;gap:6px}
#tvx-sim .cf-pant.n2,#tvx-sim .cf-pant.n3,#tvx-sim .cf-pant.n4{grid-template-columns:1fr 1fr}
#tvx-sim .cf-mc{background:#0d141e;border:1px solid var(--borde);border-radius:5px;overflow:hidden;transition:opacity .2s,border-color .2s}
#tvx-sim .cf-mc.on{border-color:var(--acento);box-shadow:0 0 0 1px var(--acento)}
#tvx-sim .cf-mc.pend{opacity:.4}
#tvx-sim .cf-mh{font-size:10px;font-weight:700;padding:4px 6px;color:var(--tx);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:1px solid var(--borde)}
#tvx-sim .cf-mi{aspect-ratio:4/3;background:#000;display:flex;align-items:center;justify-content:center}
#tvx-sim .cf-mi img{width:100%;height:100%;object-fit:cover;display:block}
#tvx-sim .cf-op:disabled{opacity:.35;cursor:not-allowed;border-style:dashed}
#tvx-sim .cf-op:disabled:hover{border-color:var(--borde)}
@media (max-width:760px){#tvx-sim .cf-cuerpo{grid-template-columns:1fr}#tvx-sim .cf-mini{position:static;order:-1}#tvx-sim .cf-pant{grid-template-columns:repeat(4,minmax(0,1fr))!important}#tvx-sim .cf-mh{font-size:9px}}
#tvx-sim .vent.cf .et{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--tx2);font-weight:700;margin:4px 0 6px}
#tvx-sim .cf-pasos{display:flex;gap:4px;margin:2px 0 8px}
#tvx-sim .cf-pasos i{flex:1;height:4px;border-radius:2px;background:var(--borde)}
#tvx-sim .cf-pasos i.h{background:rgba(0,200,255,.45)}#tvx-sim .cf-pasos i.on{background:var(--acento)}
#tvx-sim .cf-paso{font-size:11px;color:var(--tx2);letter-spacing:.5px;text-transform:uppercase}
#tvx-sim .cf-tit{margin:6px 0 14px;font-size:18px}
#tvx-sim .cf-ops{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#tvx-sim .cf-ops.n4{grid-template-columns:repeat(4,minmax(0,1fr))}
#tvx-sim .cf-ops.v4{grid-template-columns:repeat(2,minmax(0,1fr))}
#tvx-sim .cf-op{background:#0d141e;border:1px solid var(--borde);border-radius:8px;padding:16px 10px;color:var(--tx);font-size:15px;font-weight:700;cursor:pointer;text-align:center;min-height:64px}
#tvx-sim .cf-op small{display:block;font-size:11px;font-weight:400;color:var(--tx2);margin-top:6px;line-height:1.35}
#tvx-sim .cf-op:hover{border-color:var(--acento)}
#tvx-sim .cf-op.on{border-color:var(--acento);background:rgba(0,200,255,.1);box-shadow:inset 0 0 0 1px var(--acento)}
#tvx-sim .cf-num{display:block;font-size:30px;line-height:1}
#tvx-sim .cf-atras{margin-top:14px;background:transparent;border:1px solid var(--borde);border-radius:6px;padding:8px 14px;color:var(--tx2);cursor:pointer}
#tvx-sim .cf-atras:hover{color:var(--tx);border-color:var(--tx2)}
@media (max-width:600px){#tvx-sim .cf-ops{grid-template-columns:1fr}#tvx-sim .cf-ops.n4{grid-template-columns:repeat(4,minmax(0,1fr))}}
#tvx-sim .vent.cf .cargar{width:100%;background:var(--acento);border:0;border-radius:5px;padding:10px;color:#03202b;font-weight:800;cursor:pointer}
#tvx-sim .vent .x{float:right;background:transparent;border:1px solid var(--borde);border-radius:6px;width:30px;height:30px;color:var(--tx2)}
#tvx-sim .lista button{display:block;width:100%;text-align:left;background:var(--panel);border:1px solid var(--borde);border-radius:6px;padding:10px 12px;margin-bottom:6px}
#tvx-sim .lista button:hover{border-color:var(--acento)}
#tvx-sim .lista small{display:block;color:var(--tx2);margin-top:2px}
#tvx-sim .det svg{width:100%;height:auto;border-radius:6px}
#tvx-sim .det .falla{fill:none;stroke:#ff3b3b;stroke-width:8}
#tvx-sim .det .falla-t{fill:#fff;font:bold 40px system-ui,sans-serif;paint-order:stroke;stroke:#b91c1c;stroke-width:9px}
#tvx-sim .det table{width:100%;border-collapse:collapse;margin-top:8px;font-size:12px}
#tvx-sim .det td{padding:4px 6px;border-top:1px solid var(--borde)}
#tvx-sim .instr{position:absolute;right:316px;bottom:36px;z-index:20;background:linear-gradient(90deg,#ff9f0a,#ff6b00);color:#1c0d00;border:0;border-radius:999px;padding:9px 16px;font-weight:800;box-shadow:0 6px 20px rgba(255,140,0,.35)}
#tvx-sim .aviso-t{position:absolute;left:50%;top:62px;transform:translateX(-50%);z-index:25;background:#2a1d00;border:1px solid var(--amar);color:#ffd27a;border-radius:8px;padding:8px 14px;font-weight:700;box-shadow:0 8px 24px rgba(0,0,0,.5)}
#tvx-sim .aviso-t[hidden]{display:none}
#tvx-sim .bloq{display:flex;align-items:center;justify-content:center;height:100%;color:var(--tx2);font-size:15px;text-align:center;padding:20px}
/* Reportes (como la web de informes de Sentinel) */
#tvx-sim .rp{display:flex;flex-direction:column;height:100%;min-height:0}
#tvx-sim .rp-nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:8px 12px;border-bottom:1px solid var(--borde);background:#0A0E15}
#tvx-sim .rp-logo{height:24px;background:#fff;border-radius:4px;padding:2px 6px}
#tvx-sim .rp-nav select{background:var(--panel);color:var(--tx);border:1px solid var(--borde);border-radius:6px;padding:5px 8px;font:inherit;font-weight:700}
#tvx-sim .rp-tab{background:transparent;border:0;border-radius:8px;padding:6px 10px;font-weight:700;color:var(--tx)}
#tvx-sim .rp-tab.on{background:var(--acento);color:#03202b}
#tvx-sim .rp-yo{margin-left:auto;font-size:11px;color:var(--tx2)}
#tvx-sim .rp-cuerpo{flex:1;overflow:auto;padding:14px;display:flex;flex-direction:column;gap:12px}
#tvx-sim .rp-ck{flex:1;border:0;width:100%;min-height:0;background:#0D1215}
#tvx-sim .rp-cab{background:var(--card);border:1px solid var(--borde);border-radius:12px;padding:14px;text-align:center}
#tvx-sim .rp-cab h2{margin:0 0 6px;font-size:22px}
#tvx-sim .rp-sub{color:var(--tx2);font-size:12px;display:flex;flex-wrap:wrap;gap:6px;justify-content:center;align-items:center}
#tvx-sim .pill{display:inline-block;background:var(--panel);border:1px solid var(--borde);border-radius:999px;padding:2px 10px;font-size:11px;color:var(--tx)}
#tvx-sim .rp-g2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}
#tvx-sim .rp-c{background:var(--card);border:1px solid var(--borde);border-radius:12px;padding:14px;min-width:0}
#tvx-sim .rp-c .et,#tvx-sim .rp-k .et{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--tx2);font-weight:700}
#tvx-sim .grande{font-size:32px;font-weight:800;margin:6px 0;font-family:'Archivo',system-ui,sans-serif}
#tvx-sim .grande small{font-size:13px;color:var(--tx2);font-weight:400}
#tvx-sim .rp-kv{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid var(--borde);padding-top:8px}
#tvx-sim .rp-k .v{font-size:15px;font-weight:800}
#tvx-sim .ok{color:var(--ok)}#tvx-sim .nok{color:var(--nok)}
#tvx-sim .rp-oee{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:14px;background:var(--card);border:1px solid var(--borde);border-radius:12px;padding:12px;font-size:11px;color:var(--tx2);text-transform:uppercase}
#tvx-sim .rp-oee b{display:block;font-size:20px;color:var(--tx)}
#tvx-sim .rp-oee .tot{background:linear-gradient(90deg,#6366f1,#4f8df7);border-radius:10px;padding:10px 26px;color:#e0e7ff}
#tvx-sim .rp-oee .tot b{font-size:26px;color:#fff}
#tvx-sim .rp-oee i{font-style:normal;font-size:16px}
#tvx-sim .rp-sec{margin:6px 0 0;font-size:17px;padding-left:10px;border-left:4px solid var(--acento)}
#tvx-sim .rp-fila{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
#tvx-sim .rp-n{font-size:11px;color:var(--tx2)}
#tvx-sim .rp-g{display:block;width:100%;height:auto;margin-top:6px}
#tvx-sim .rp-t{width:100%;border-collapse:collapse;font-size:12px}
#tvx-sim .rp-t th{text-align:left;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--tx2);background:var(--panel);padding:7px}
#tvx-sim .rp-t td{padding:6px 7px;border-top:1px solid var(--borde)}
#tvx-sim .chip{display:inline-block;background:var(--panel);border:1px solid var(--borde);border-radius:5px;padding:1px 6px;font-size:11px}
#tvx-sim .chip-r{display:inline-block;border:1px solid #f87171;color:#fca5a5;background:rgba(239,68,68,.12);border-radius:5px;padding:1px 6px;font-size:11px;font-weight:700}
#tvx-sim .rp-foto{background:transparent;border:0;font-size:16px}
#tvx-sim .rp-galcab{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--borde);padding-bottom:8px}
#tvx-sim .rp-galtit{font-size:18px;font-weight:800;display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#tvx-sim .tag{background:#4f46e5;border-radius:4px;padding:3px 9px;font-size:12px}
#tvx-sim .lnk{background:transparent;border:0;color:#a5b4fc;font-weight:700}
#tvx-sim .rp-fil{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;background:var(--card);border:1px solid var(--borde);border-radius:10px;padding:10px 12px}
#tvx-sim .rp-fil label{display:flex;flex-direction:column;gap:3px;font-size:11px;color:var(--tx2);font-weight:700}
#tvx-sim .rp-fil select{background:#0b1119;color:var(--tx);border:1px solid var(--borde);border-radius:6px;padding:6px 8px;font:inherit;min-width:150px}
#tvx-sim .rp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}
#tvx-sim .rp-card{background:var(--panel);border-radius:8px;overflow:hidden}
#tvx-sim .rp-img{display:block;padding:0;border:0;background:#000;width:100%;cursor:zoom-in;line-height:0}
#tvx-sim .rp-img img{width:100%;aspect-ratio:1408/1024;object-fit:contain;display:block}
#tvx-sim .rp-info{padding:7px;font-size:11px;color:#c3cbd6;display:flex;flex-direction:column;gap:2px}
#tvx-sim .rp-info .rz{color:#ef4444;font-weight:800}
#tvx-sim .rp-vacio{text-align:center;padding:40px;color:var(--tx2)}
#tvx-sim .rp-lock{background:var(--card);border:1px solid var(--borde);border-radius:10px;padding:10px 14px;font-weight:700}
#tvx-sim .rp-lbv{width:min(900px,100%)}

/* Móvil y tablet */
@container (max-width: 980px){
  #tvx-sim .live{grid-template-columns:1fr;overflow:auto}
  #tvx-sim .herr{border-left:0;border-top:1px solid var(--borde)}
  #tvx-sim .instr{right:12px}
}
@container (max-width: 700px){
  #tvx-sim{grid-template-columns:60px minmax(0,1fr);height:auto;min-height:0}
  #tvx-sim .cams,#tvx-sim .rec,#tvx-sim .rp-g2{grid-template-columns:1fr}
  #tvx-sim .rp-ck{min-height:600px}
  #tvx-sim .rp-t{display:block;overflow-x:auto}
  #tvx-sim .marca,#tvx-sim .ver,#tvx-sim .top .centro span{display:none}
  #tvx-sim .nav svg{width:26px;height:26px}
  #tvx-sim .img{min-height:220px}
  #tvx-sim .main{overflow:visible}
}
