[hidden]{display:none!important}
:root{--bg:#131826;--panel:#1C2233;--borde:#262E41;--txt:#ADB5BD;--claro:#EFEFEF;--gris:#808080;--azul:#337AB7;--azulm:#438CCB;--celeste:#29B6F6;--rojo:#D32F2F;--verde:#43A047;--naranja:#FB8C00;--amarillo:#F0AD4E;--link:#5DADE2;--linea:#222A3D;--sub:#2D3750;--inp:#4A5368;--hov:rgba(255,255,255,.04);--code:#141A28;--grid:#2D3750;--eje:#8893A0;--prog:#F5F5F5;--sh:none;--dd:#232A3D}
:root[data-theme=light]{--bg:#EEEEEE;--panel:#FFFFFF;--borde:#E3E3E3;--txt:#666;--claro:#3C4858;--gris:#555;--link:#337AB7;--linea:#EEEEEE;--sub:#E3E3E3;--inp:#C8C8C8;--hov:rgba(0,0,0,.035);--code:#F7F9FB;--grid:#E6E6E6;--eje:#888;--prog:#E9ECEF;--sh:0 1px 4px rgba(0,0,0,.14);--dd:#fff}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--txt);font-family:Roboto,Helvetica,Arial,sans-serif;font-size:14px;font-weight:300}
a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}
b,strong{font-weight:700}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
button,input,select,textarea{font:inherit}
code{font-family:ui-monospace,Consolas,monospace;font-size:12.5px}
.mut{color:var(--eje)}.sm{font-size:12px}.nw{white-space:nowrap}.w150{min-width:150px}.mb{margin-bottom:15px}.pad{padding:0 15px}
.flag{display:inline-block;width:20px;height:15px;vertical-align:middle;line-height:0;box-shadow:0 0 0 1px rgba(0,0,0,.15)}.flag svg{width:20px;height:15px}
.blink{animation:blink 1s steps(2) infinite}@keyframes blink{50%{opacity:.2}}

/* ---------- Inicio de sesión (igual a MediaCP) ---------- */
.lg{position:relative;min-height:100vh;background:#131826;overflow:hidden;display:flex;align-items:center;justify-content:center}
.lg-bg{position:fixed;inset:0;z-index:1;background:url(/marca/login-bg) center center/cover no-repeat,linear-gradient(180deg,#2B3A55 0%,#55657E 45%,#1E2638 100%);filter:brightness(.7) contrast(1.2)}
:root[data-theme=light] .lg-bg{filter:none}
.lg-wrap{position:relative;z-index:2;width:100%;max-width:390px;padding:20px 15px}
.lg-card{background:rgba(28,34,51,.65);padding:25px 35px;border-radius:5px;box-shadow:0 1px 5px rgba(0,0,0,.02);color:#ADB5BD}
:root[data-theme=light] .lg-card{background:#fff;color:#555}
.lg-logo{margin-bottom:25px;text-align:center}.lg-logo img{display:block;margin:0 auto;max-width:210px;height:auto}
.lg-brand{display:inline-flex;align-items:center;gap:10px;font-size:26px;font-weight:400;color:#EFEFEF}.lg-brand i{color:#29B6F6}:root[data-theme=light] .lg-brand{color:#3C4858}
.lg-h{margin:0 0 15px;font-size:22px;font-weight:300;color:#EFEFEF}:root[data-theme=light] .lg-h{color:#333}.lg-p{margin:0 0 14px;line-height:1.5}
.alert{border-radius:4px;padding:10px 12px;margin:0 0 15px;font-weight:400;line-height:1.45}.alert.info{background:#29B6F6;color:#fff}.alert.bad{background:#D32F2F;color:#fff}.alert.ok{background:#43A047;color:#fff}
.lg-card .alert{margin:0 -10px 15px;padding:10px}
.lg-in{position:relative;display:block;margin-bottom:8px}.lg-in>i{position:absolute;left:15px;top:13px;font-size:14px;color:#EFEFEF;max-width:24px}:root[data-theme=light] .lg-in>i{color:#555}
.lg-in input,.lg-in select{display:block;width:100%;height:40px;padding:10px 18px 10px 35px;font-size:14px;font-weight:400;color:#EFEFEF;border:0;border-radius:0;outline:0;background-color:transparent;background-image:linear-gradient(#337AB7,#337AB7),linear-gradient(#D2D2D2,#D2D2D2);background-size:0 2px,100% 1px;background-repeat:no-repeat;background-position:center bottom,center calc(100% - 1px);transition:background .3s ease-out}
:root[data-theme=light] .lg-in input,:root[data-theme=light] .lg-in select{color:#333}
.lg-in input:focus,.lg-in select:focus{background-size:100% 2px,100% 1px;box-shadow:0 0 0 2px rgba(138,180,248,.4)}.lg-in input::placeholder{color:#ADB5BD}:root[data-theme=light] .lg-in input::placeholder{color:#999}
.lg-in select{appearance:none;cursor:pointer}.lg-in select option{background:#262E41;color:#EFEFEF}:root[data-theme=light] .lg-in select option{background:#fff;color:#333}
.lg-flag{position:absolute;left:8px;top:12px}
.lg-btn{display:block;width:100%;height:40px;margin-top:15px;padding:10px 18px;background:#337AB7;border:1px solid #2E6DA4;border-radius:4px;color:#fff;font-size:14px;cursor:pointer}
.lg-btn:hover{background:#286090;border-color:#204D74}.lg-btn:disabled{opacity:.65}.lg-btn i{margin-left:4px}
.lg-extra{text-align:center;margin:12px 0 0;font-size:13px}
.lg-foot{margin:15px 0;text-align:center;font-size:85%;color:#fff;font-weight:700}
.lg-theme{position:fixed;right:16px;top:14px;z-index:3;background:rgba(0,0,0,.35);border:0;color:#fff;width:38px;height:38px;border-radius:50%;cursor:pointer}
.g-recaptcha{margin:10px 0}

/* ---------- Estructura ---------- */
.mc{display:flex;min-height:100vh}
.rail{width:80px;flex:0 0 80px;background:var(--bg);display:flex;flex-direction:column;align-items:center;padding-top:22px;position:sticky;top:0;height:100vh;z-index:30}
:root[data-theme=light] .rail{background:#fff;box-shadow:1px 0 6px rgba(0,0,0,.08)}
.rail .logo{color:var(--azul);font-weight:700;font-size:10px;margin-bottom:34px;display:flex;flex-direction:column;align-items:center;gap:4px;max-width:76px;overflow:hidden;text-align:center;width:auto!important;height:auto!important;background:none!important;box-shadow:none!important}.rail .logo i{font-size:18px}.rail .logo img{max-width:70px;max-height:40px}
.rail .logo span{position:static;opacity:1;background:none;color:var(--azul);padding:0;transform:none;font-size:10px}
.rail>a,.rail-btn{width:50px;height:50px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--claro);margin-bottom:10px;position:relative;font-size:18px;background:none;border:0;cursor:pointer}
.rail>a:hover,.rail-btn:hover{background:var(--hov);text-decoration:none}.rail>a.on,.rail-btn.on{background:var(--celeste);color:#fff;box-shadow:0 4px 12px rgba(41,182,246,.35)}
.rail>a:not(.logo) span,.rail-btn span{position:absolute;left:58px;top:50%;transform:translateY(-50%);background:#000;color:#fff;font-size:12px;padding:5px 9px;border-radius:3px;white-space:nowrap;opacity:0;pointer-events:none;transition:.15s;z-index:20;font-weight:400}.rail>a:not(.logo):hover span,.rail-btn:hover span{opacity:1}
.rail-sub{position:relative}.flyout{display:none;position:absolute;left:62px;top:0;background:var(--dd);border:1px solid var(--borde);border-radius:4px;box-shadow:0 8px 24px rgba(0,0,0,.35);min-width:230px;padding:6px 0;z-index:40}
.rail-sub.open .flyout{display:block}.rail-sub.open .rail-btn span{opacity:0}.flyout b{display:block;padding:8px 16px;color:var(--claro);font-size:13px}.flyout a{display:block;padding:9px 16px;color:var(--txt)}.flyout a:hover{background:var(--hov);color:var(--claro);text-decoration:none}
.main{flex:1;min-width:0;padding:0 16px 30px 15px}
.asuser{background:#FB8C00;color:#fff;padding:8px 14px;border-radius:0 0 4px 4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-weight:400}
.navbar{display:flex;align-items:flex-start;gap:14px;padding:10px 0;min-height:96px}
.navbar .ttl{flex:1;min-width:0}.navbar h1{margin:0;color:var(--claro);font-size:18px;font-weight:500;padding:10px 15px 6px 5px}
.crumb{display:flex;gap:6px;align-items:center;padding:0 5px;color:var(--claro);font-family:'Open Sans',Roboto,sans-serif;font-weight:400;font-size:13px;flex-wrap:wrap}.crumb .sep{color:var(--eje)}
.navbar .tools{display:flex;align-items:center;gap:12px;padding-top:12px}
.search{display:flex;align-items:center;gap:8px}.search input{width:230px;background:transparent;border:0;border-bottom:1px solid var(--inp);color:var(--claro);padding:4px 2px;outline:0}
.round{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.1);border:0;color:#bbb;display:flex;align-items:center;justify-content:center;cursor:pointer}:root[data-theme=light] .round{background:rgba(0,0,0,.06);color:#555}
.navbar .user{color:var(--claro);font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:6px}.navbar .user:hover{text-decoration:none}
.icobtn{background:none;border:0;color:var(--claro);cursor:pointer;font-size:15px;padding:4px;display:inline-flex;align-items:center}
.langdd{position:relative}.dd{display:none;position:absolute;top:100%;right:0;margin-top:6px;background:var(--dd);border:1px solid var(--borde);border-radius:4px;box-shadow:0 8px 24px rgba(0,0,0,.3);min-width:200px;padding:5px 0;z-index:50}
.langdd.open .dd,.menu-dd.open .dd{display:block}.dd>a,.dd>button{display:flex;align-items:center;gap:10px;width:100%;padding:8px 14px;color:var(--txt);background:none;border:0;text-align:left;cursor:pointer;font-size:13px;white-space:nowrap}
.dd>a:hover,.dd>button:hover{background:var(--hov);color:var(--claro);text-decoration:none}.dd .on{color:var(--claro);font-weight:500}.dd .dang{color:#E57373}.dd small{color:var(--eje)}.dd i{width:16px;text-align:center}
.menu-dd{position:relative;display:inline-block}
.poweredby{text-align:right;color:var(--link);font-size:11px;margin-top:20px}

/* ---------- Paneles ---------- */
.panel{background:var(--panel);border:1px solid var(--borde);border-radius:4px;margin-bottom:20px;box-shadow:var(--sh)}
:root[data-theme=light] .panel,:root[data-theme=light] .smenu,:root[data-theme=light] .stat{border-color:transparent;border-radius:6px}
.panel>.ph{padding:14px 15px;border-bottom:1px solid var(--borde);color:var(--claro);font-size:15px;font-weight:400;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.panel>.ph small{font-size:11px;color:var(--txt)}.ph .right{margin-left:auto;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.ph-big{font-size:20px;font-weight:300}
.panel>.pb{padding:15px}.panel>.pb.np{padding:0}
.panel.prim{border-color:var(--azul)}.panel.prim>.ph{background:var(--azul);color:#fff;border-radius:3px 3px 0 0}.panel.prim>.ph h3{margin:0;font-size:24px;font-weight:300}
.panel.tabbed{border-top-left-radius:0;border-top-right-radius:0}
h2.t,h3.t{color:var(--claro);font-size:24px;font-weight:300;margin:20px 15px 10px}h2.t0{color:var(--claro);font-size:20px;font-weight:300;margin:14px 0 10px}
h4.sub{color:var(--claro);font-size:16px;font-weight:400;margin:18px 0 6px;padding-bottom:6px;border-bottom:1px solid var(--borde)}
.hint{color:var(--eje);font-size:12.5px;line-height:1.5}
.svc{display:grid;grid-template-columns:225px minmax(0,1fr);gap:15px;align-items:start}
.smenu{background:var(--panel);border:1px solid var(--borde);border-radius:4px;overflow:hidden;box-shadow:var(--sh)}
.smenu .sh{padding:12px 10px 14px;text-align:center;color:var(--claro);border-bottom:1px solid var(--borde)}.smenu .sh b{display:block;font-size:15px;font-weight:500;margin-bottom:4px;word-break:break-all}.smenu .sh b i{color:#4FC3F7;margin-right:6px}.smenu .sh small{font-size:11.7px;color:var(--txt)}
.smenu a{display:flex;align-items:center;min-height:41px;color:var(--gris);padding:6px 15px;font-weight:300}.smenu a i{width:32px;flex:0 0 32px;color:var(--claro);font-size:14px}
.smenu a:hover{background:var(--hov);text-decoration:none;color:var(--claro)}.smenu a.on{background:var(--azulm);color:#fff}.smenu a.on i{color:#fff}
:root[data-theme=light] .smenu a i{color:#555}:root[data-theme=light] .smenu a.on i{color:#fff}
.smenu hr{border:0;border-top:1px solid var(--borde);margin:0}.smenu .warn i{color:var(--amarillo)!important}.smenu .dang i{color:#E57373!important}
.tabs{background:var(--azul);border-radius:4px 4px 0 0;padding:0 15px;display:flex;flex-wrap:wrap;gap:2px}
.tabs a,.tabs button{color:#fff;font-size:12px;font-weight:500;text-transform:uppercase;padding:14px 15px;border-radius:4px;background:none;border:0;cursor:pointer;display:flex;align-items:center;gap:6px}
.tabs a:hover,.tabs button:hover{background:rgba(255,255,255,.1);text-decoration:none}.tabs .on{background:rgba(255,255,255,.2)}
.panel>.tabs{border-radius:3px 3px 0 0}
.row{display:flex;flex-wrap:wrap;margin:0 -15px}.c3,.c4,.c6,.c9,.c12{padding:0 15px;min-width:0}
.c3{flex:0 0 25%;max-width:25%}.c4{flex:0 0 33.333%;max-width:33.333%}.c6{flex:0 0 50%;max-width:50%}.c9{flex:0 0 75%;max-width:75%}.c12{flex:0 0 100%}
.panel .row{margin:0}
.kvr{display:flex;align-items:center;padding:6px 0;min-height:33px;gap:8px}.kvr>strong{flex:0 0 120px;padding-left:15px;color:var(--txt)}.kvr>span{flex:1;text-align:right;min-width:0;overflow-wrap:anywhere}.kvr>.pg{flex:1}
.ov .kvr>span{padding-right:4px}
.prog{height:20px;background:var(--prog);border-radius:4px;overflow:hidden;position:relative;margin-top:3px}.prog i{position:absolute;left:0;top:0;bottom:0;background:var(--azul)}
.prog span{position:relative;display:block;color:#fff;font-size:12px;line-height:20px;padding:0 6px;white-space:nowrap;text-shadow:0 0 3px rgba(0,0,0,.6)}
.prog.lo span{color:#333;text-shadow:none}.prog.warn i{background:var(--amarillo)}.prog.bad i{background:var(--rojo)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:3px;padding:7px 14px;font-size:11px;font-weight:400;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;color:#fff;background:var(--azul);text-decoration:none!important;line-height:1.3;white-space:nowrap}
.btn:hover{filter:brightness(1.1)}.btn:disabled{opacity:.5;cursor:default}.btn-ok{background:#43A047}.btn-red{background:var(--rojo)}.btn-or{background:var(--naranja)}.btn-info{background:#00ACC1}.btn-gray{background:#4A5368}.btn-def{background:transparent;color:var(--claro);box-shadow:inset 0 0 0 1px var(--inp)}
.btn-lg{padding:10px 18px;font-size:12px}.btn-sm{padding:5px 10px}.bgrp{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.blk100{display:flex;width:100%;margin-bottom:8px}
.status{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 15px;flex-wrap:wrap}.dot{width:10px;height:10px;border-radius:50%;background:#757575;display:inline-block}.dot.on{background:#66BB6A;box-shadow:0 0 6px #66BB6A}.dot.red{background:#EF5350}
.player{background:#000;position:relative;aspect-ratio:16/9;width:100%}.player video,.player iframe{width:100%;height:100%;display:block;background:#000;border:0}.player.sm{max-width:640px}
.player .off{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#8D99A6;text-align:center;font-size:13px;padding:10px}.player .off i{font-size:28px}
.ls p{margin:10px 0;line-height:1.5}.ls .kvr{flex-wrap:wrap}.ls .kvr>strong{flex:0 0 100%;padding-left:0;color:var(--claro)}.ls .copy{width:100%}
.copy{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.copy input{flex:1;min-width:0;background:transparent;border:0;border-bottom:1px solid var(--inp);color:var(--claro);font-family:ui-monospace,Consolas,monospace;font-size:12.5px;padding:4px 2px;outline:0}
.copybtn{background:none;border:0;color:var(--link);cursor:pointer;padding:2px 4px;font-size:15px}
.kvr.cp>strong{flex:0 0 160px}.ls .kvr.cp{flex-wrap:nowrap}.ls .kvr.cp>strong{flex:0 0 105px;font-size:13px}
hr.sep{border:0;border-top:1px solid var(--sub);margin:20px 15px}
.map{height:320px;background:var(--panel);margin:0 15px 15px;border-radius:3px;overflow:hidden}.leaflet-container{background:#cfe3f3!important;font-family:inherit}:root:not([data-theme=light]) .leaflet-container{background:#1C2233!important}
.chart{width:100%;height:auto;max-height:300px;display:block}
.del-row{text-align:right;padding:6px 15px 15px}
.tw{overflow-x:auto}
table.t{width:100%;border-collapse:collapse}table.t th{color:var(--txt);font-weight:700;text-align:left;padding:12px 10px;border-bottom:1px solid var(--borde);font-size:13px;white-space:nowrap}
table.t td{padding:10px;border-bottom:1px solid var(--borde);vertical-align:middle}table.t tr:hover td{background:var(--hov)}table.t tr.susp td{opacity:.6}
table.kv td:first-child{width:45%}table.click tr{cursor:pointer}
.av{width:30px;height:30px;border-radius:50%;background:#000;color:#fff;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.av.sm{width:22px;height:22px;font-size:8px}:root[data-theme=light] .av{background:#3C4858}
.tico{color:#4FC3F7;font-size:18px}
.tag{display:inline-block;font-size:11px;font-weight:500;border-radius:3px;padding:2px 7px;background:var(--sub);color:var(--claro);white-space:nowrap}.tag.green{background:#2E7D32;color:#fff}.tag.red{background:#C62828;color:#fff}.tag.or{background:#EF6C00;color:#fff}
.sw{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--txt);font-size:12px;white-space:nowrap}.sw i{width:30px;height:16px;border-radius:8px;background:#555;position:relative;display:inline-block}.sw i::after{content:'';position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:.15s}.sw.on i{background:#66BB6A}.sw.on i::after{left:16px}
.tg{display:inline-flex;align-items:center;gap:10px;cursor:pointer;padding-top:4px;position:relative}.tg input{position:absolute;opacity:0;width:1px;height:1px}.tg i{width:36px;height:18px;border-radius:9px;background:#777;position:relative;display:inline-block;transition:.15s;flex:0 0 36px}.tg i::after{content:'';position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:.15s}
.tg input:checked+i{background:var(--azul)}.tg input:checked+i::after{left:20px}.tg input:focus-visible+i{outline:2px solid var(--celeste);outline-offset:2px}
/* Tarjetas del inicio */
.stat{display:flex;align-items:stretch;background:var(--panel);border:1px solid var(--borde);border-radius:4px;margin-bottom:20px;position:relative;padding:14px 15px 14px 0;min-height:86px;box-shadow:var(--sh);color:inherit}.stat:hover{text-decoration:none}
.stat .ic{width:52px;height:52px;border-radius:3px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:24px;margin:-28px 0 0 15px;box-shadow:0 6px 16px rgba(0,0,0,.35);flex:0 0 52px}
.stat .tx{flex:1;text-align:right;padding-left:10px}.stat .tx small{display:block;color:var(--txt);font-size:12px}.stat .tx b{display:block;color:var(--claro);font-size:22px;font-weight:300;margin-top:6px}
.gs .btn{display:flex;width:100%;margin-bottom:8px;padding:8px}.gs p{margin:0 0 12px;line-height:1.5}
.top-item{display:flex;align-items:center;gap:12px;padding:12px 10px;border-bottom:1px solid var(--borde);color:inherit}.top-item:hover{text-decoration:none;background:var(--hov)}.top-item b{display:block;color:var(--claro);font-weight:500}.top-item small{color:var(--txt);font-size:11px}.top-item .go{margin-left:auto;color:var(--claro)}
.login-item{display:flex;align-items:center;gap:10px;padding:10px 8px;border-bottom:1px solid var(--borde);font-size:12px}.login-item .av{flex:0 0 30px}.login-item .w{flex:1;min-width:0}.login-item .w a,.login-item .w small{display:block}.login-item>small{color:var(--txt);white-space:nowrap}
.donut{display:block;margin:6px auto}.empty{text-align:center;color:var(--txt);padding:26px}.empty.sm{padding:4px}
.ann{border-left:3px solid var(--celeste);padding:6px 12px;margin-bottom:12px;line-height:1.5}.ann b{color:var(--claro);display:block;margin-bottom:4px}.ann small{color:var(--eje)}
/* Formularios (estilo MediaCP: etiqueta a la izquierda, campo con línea) */
.fr{display:flex;align-items:flex-start;gap:15px;padding:12px 0;border-bottom:1px solid var(--linea)}.fr>label{flex:0 0 33%;color:var(--claro);font-weight:500;padding-top:6px}.fr>label small{display:block;color:var(--txt);font-weight:300;font-size:12px;margin-top:3px;line-height:1.4}
.fr>.fv{flex:1;min-width:0}
.fv input[type=text],.fv input[type=number],.fv input[type=password],.fv input[type=email],.fv input[type=url],.fv input[type=date],.fv input[type=datetime-local],.fv select,.fv textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--inp);color:var(--claro);padding:6px 2px;outline:0;border-radius:0}
.fv select{background:var(--panel);cursor:pointer}.fv select option{background:var(--panel)}.fv textarea{border:1px solid var(--inp);border-radius:3px;min-height:90px;padding:8px;resize:vertical}
.fv input:focus,.fv select:focus,.fv textarea:focus{border-color:var(--celeste)}
.fv input[readonly]{color:var(--txt)}.fv .ro{padding-top:6px;color:var(--claro)}.fv input[type=file]{color:var(--txt);max-width:260px}
:root:not([data-theme=light]) input[type=date],:root:not([data-theme=light]) input[type=datetime-local]{color-scheme:dark}
.ckr{display:inline-flex;align-items:center;gap:8px;padding:5px 12px 5px 0;cursor:pointer}.ckr.inl{font-size:12px;font-weight:400;margin-left:10px}.ckgrid{display:flex;flex-wrap:wrap;gap:0 6px}
textarea.code{width:100%;min-height:74px;background:var(--code);border:1px solid var(--sub);color:var(--claro);font-family:ui-monospace,Consolas,monospace;font-size:12px;border-radius:3px;padding:8px;margin-bottom:6px}
.foot-act{display:flex;justify-content:center;gap:10px;padding:18px 0 4px;flex-wrap:wrap}
.brandrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.bprev{display:inline-block;background:#262E41 center/contain no-repeat;border-radius:3px}.bprev.logo{width:150px;height:40px}.bprev.login-bg{width:160px;height:90px;background-size:cover}.bprev.ico{width:32px;height:32px}.bprev.wm{max-width:120px;max-height:60px;background:repeating-conic-gradient(#888 0 25%,#bbb 0 50%) 0 0/16px 16px}
.plug{background:var(--hov);border-radius:4px;padding:12px 15px;margin-bottom:6px}.plug b{color:var(--claro);font-size:15px}.plug p{margin:6px 0 0}
/* Asistente */
.wiz{max-width:720px;margin:0 auto}.wt{text-align:center;color:var(--claro);font-size:24px;font-weight:300;margin:6px 0}.wp{text-align:center}.wh{text-align:center;color:var(--claro);font-size:17px;font-weight:300;margin:6px 0 14px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0 22px}.steps span{text-align:center;padding:9px;border-radius:20px;font-size:11px;font-weight:500;text-transform:uppercase;color:var(--txt)}.steps .on{background:#E91E63;color:#fff}.steps .done{color:var(--claro)}
.picks{display:flex;flex-direction:column;gap:4px;max-height:340px;overflow:auto}.pick{display:flex;gap:10px;align-items:center;padding:9px 12px;border-radius:4px;cursor:pointer}.pick:hover{background:var(--hov)}.pick b{color:var(--claro)}
.types{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.type{border:1px solid transparent;border-radius:4px;padding:16px;text-align:center;cursor:pointer;background:none;color:var(--txt);display:block}.type:hover{text-decoration:none;background:var(--hov)}.type.on{border-color:var(--celeste);background:rgba(41,182,246,.08)}.type .tico{font-size:34px;display:block;margin-bottom:10px}.type b{display:block;color:var(--claro);margin-bottom:6px;font-size:12px;text-transform:uppercase}.type small{font-size:12px;line-height:1.4}
.ev-tag{font-size:11px;font-weight:700;border-radius:3px;padding:2px 6px}.ev-tag.SOURCE{background:#1E4E2C;color:#8EE0A2}.ev-tag.SERVICE{background:#1F3B5C;color:#9CC9F5}.ev-tag.TV{background:#3E2A5C;color:#CFB2F5}.ev-tag.LIMIT,.ev-tag.DENIED{background:#5C1F24;color:#F5A3A9}
:root[data-theme=light] .ev-tag.SOURCE{background:#E3F4E6;color:#2E7D32}:root[data-theme=light] .ev-tag.SERVICE{background:#E3EFFB;color:#1F5E99}:root[data-theme=light] .ev-tag.TV{background:#EFE6FB;color:#6A1B9A}:root[data-theme=light] .ev-tag.LIMIT,:root[data-theme=light] .ev-tag.DENIED{background:#FBE5E7;color:#B3261E}
.evf{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:12px 15px;border-bottom:1px solid var(--borde)}.ph .evf{padding:0;border:0;margin-left:auto}.evf label{display:flex;gap:6px;align-items:center;font-size:12px}.evf input,.evf select{background:transparent;border:0;border-bottom:1px solid var(--inp);color:var(--claro);padding:4px 2px}.evf select option{background:var(--panel)}
.fa-circle-check.ok{color:#43A047;font-size:18px}.fa-circle-xmark.bad{color:#E53935;font-size:18px}
/* Widgets */
.wbox{margin-bottom:18px}.wbox h4{color:var(--claro);font-weight:400;margin:8px 0}.wprev{background:var(--hov);border-radius:4px;padding:8px;margin-bottom:8px}.wprev small{display:block;color:var(--eje);margin-bottom:4px}
.tgtypes{display:flex;flex-wrap:wrap;gap:6px}.tgtypes .btn{text-transform:none;font-size:13px;padding:10px 14px}
/* Administrador de archivos */
.ftool{display:flex;gap:8px;flex-wrap:wrap;padding:12px 15px;border-bottom:1px solid var(--borde)}.ftool label.btn{cursor:pointer}
.fcrumb{padding:10px 15px;font-size:13px;color:var(--eje)}
.drop{border:2px dashed transparent;transition:.15s}.drop.over{border-color:var(--celeste);background:rgba(41,182,246,.06)}
table.files .ck{width:34px}.fic{color:var(--eje);margin-right:4px;width:18px;text-align:center}.fic.dir{color:#FFC107}
.upl{padding:10px 15px;border-bottom:1px solid var(--borde)}.uprow{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:12px;align-items:center;padding:4px 0}.uprow>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.uprow.bad .prog i{background:var(--rojo);width:100%!important}
/* Programación de TV */
.calnav{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.calnav h3{margin:0;color:var(--claro);font-weight:300;font-size:18px}.calnav h3::first-letter{text-transform:uppercase}
.week{border:1px solid var(--borde);border-radius:4px;overflow:hidden}.week .wh{display:grid;grid-template-columns:52px repeat(var(--cols),1fr);border-bottom:1px solid var(--borde)}.week .wh div{padding:8px 4px;text-align:center;font-size:12px;color:var(--claro);text-transform:capitalize}.week .wh .today{background:rgba(41,182,246,.15)}
.week .wb{display:grid;grid-template-columns:52px repeat(var(--cols),1fr);max-height:620px;overflow-y:auto}.hours div{font-size:10px;color:var(--eje);text-align:right;padding-right:6px;border-top:1px solid var(--linea);box-sizing:border-box}
.col{position:relative;border-left:1px solid var(--borde)}.slot{position:absolute;left:0;right:0;border-top:1px solid var(--linea);cursor:pointer}.slot:hover{background:var(--hov)}
.blk{position:absolute;left:3px;right:3px;border-radius:3px;color:#fff;padding:2px 5px;font-size:11px;overflow:hidden;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.3);z-index:2}.blk b{display:block;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.blk small{opacity:.9}.blk.act{outline:2px solid #fff}
.nowline{position:absolute;left:0;right:0;height:2px;background:#E53935;z-index:3;pointer-events:none}
.month{display:grid;grid-template-columns:repeat(7,1fr);border:1px solid var(--borde);border-radius:4px;overflow:hidden}.month .mh{padding:8px;text-align:center;font-size:12px;color:var(--claro);border-bottom:1px solid var(--borde);text-transform:capitalize}
.mc-day{min-height:92px;border-right:1px solid var(--linea);border-bottom:1px solid var(--linea);padding:4px;cursor:pointer;display:flex;flex-direction:column;gap:2px;min-width:0}.mc-day:hover{background:var(--hov)}.mc-day b{font-size:12px;color:var(--claro);font-weight:500}.mc-day.out{opacity:.4}.mc-day.today b{background:var(--celeste);color:#fff;border-radius:10px;padding:0 6px;align-self:flex-start}
.mc-day .ev{font-size:10.5px;color:#fff;border-radius:2px;padding:1px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plrow{display:flex;align-items:center;gap:8px;padding:7px 4px;border-bottom:1px solid var(--linea);color:inherit}.plrow:hover{text-decoration:none;background:var(--hov)}.plrow b{display:block;color:var(--claro);font-weight:500}.plrow small{font-size:11px;color:var(--eje)}.dotc{width:10px;height:10px;border-radius:50%;flex:0 0 10px}
.builder{display:grid;grid-template-columns:1fr 1fr;gap:15px}.builder h4{color:var(--claro);font-weight:400;margin:0 0 8px;display:flex;align-items:center;flex-wrap:wrap}.builder h4 small{color:var(--eje);margin-left:4px}
.libtool{display:flex;gap:8px;margin-bottom:8px}.libtool input{flex:1;background:transparent;border:0;border-bottom:1px solid var(--inp);color:var(--claro);padding:5px 2px;outline:0}
.lst{border:1px solid var(--borde);border-radius:4px;max-height:520px;min-height:200px;overflow-y:auto}.li{display:flex;align-items:center;gap:10px;padding:7px 10px;border-bottom:1px solid var(--linea)}.li>span{flex:1;min-width:0}.li b{display:block;color:var(--claro);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.li small{font-size:11px;color:var(--eje)}
.li.drag{opacity:.4}.li.over{box-shadow:inset 0 2px 0 var(--celeste)}.grip{color:var(--eje);cursor:grab}
/* Ventana modal */
.modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:100;display:flex;align-items:flex-start;justify-content:center;padding:6vh 14px;overflow-y:auto}
.modal{background:var(--panel);border:1px solid var(--borde);border-radius:6px;width:100%;max-width:560px;box-shadow:0 18px 50px rgba(0,0,0,.5)}.modal.wide{max-width:820px}
.modal .mh{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--borde)}.modal .mh h4{margin:0;color:var(--claro);font-weight:400;font-size:17px;overflow-wrap:anywhere}.modal .x{background:none;border:0;color:var(--claro);font-size:24px;cursor:pointer;line-height:1}
.modal .mb{padding:16px 18px}
#toast{position:fixed;right:18px;bottom:18px;background:#2B344B;color:#fff;border-radius:4px;padding:12px 16px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none;max-width:380px;z-index:200;box-shadow:0 6px 20px rgba(0,0,0,.4)}#toast.on{opacity:1;transform:none}#toast.bad{background:var(--rojo)}
@media(max-width:1200px){.c4,.c3{flex:0 0 50%;max-width:50%}.c9{flex:0 0 100%;max-width:100%}.c9+.c3{flex:0 0 100%;max-width:100%}}
@media(max-width:900px){.svc{grid-template-columns:1fr}.builder{grid-template-columns:1fr}.search{display:none}}
@media(max-width:800px){.rail{width:56px;flex-basis:56px}.rail>a:not(.logo),.rail-btn{width:42px;height:42px}.rail .logo span{display:none}.c4,.c6,.c3,.c9{flex:0 0 100%;max-width:100%}.fr{flex-direction:column;gap:4px}.fr>label{flex:none}.navbar{min-height:auto;flex-wrap:wrap}.navbar .user .un{display:none}.kvr.cp>strong{flex:0 0 100%}.kvr.cp{flex-wrap:wrap}.uprow{grid-template-columns:1fr}.flyout{left:50px}}
.bggal{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.bgpick{cursor:pointer;border-radius:4px;overflow:hidden;border:3px solid transparent;display:block}.bgpick input{position:absolute;opacity:0}.bgpick span{display:block;aspect-ratio:16/10;background:#333 center/cover}.bgpick.on{border-color:var(--celeste)}.bgpick:has(input:focus-visible){outline:2px solid var(--celeste)}
/* ---------- Celulares (como MediaCP: menú lateral oculto con botón, menú del servicio desplegable) ---------- */
.svc>*{min-width:0}.burger,.smenu-tg{display:none}
@media(max-width:800px){
html,body{overflow-x:hidden}
.rail{position:fixed;left:-90px;top:0;bottom:0;height:100%;width:80px;flex-basis:80px;transition:left .2s;box-shadow:none}.mc.nav-open .rail{left:0;box-shadow:4px 0 18px rgba(0,0,0,.45)}
.rail>a:not(.logo),.rail-btn{width:50px;height:50px}.rail .logo span{display:block}
.mc.nav-open::after{content:'';position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:25}
.main{padding:0 10px 24px}.burger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:0;background:none;color:var(--claro);font-size:20px;cursor:pointer;margin:6px 0 0 -4px}
.navbar{gap:6px;padding:6px 0}.navbar .ttl{order:2;flex:1 1 calc(100% - 60px)}.navbar .tools{order:3;width:100%;justify-content:flex-end;padding-top:0;gap:14px}.burger{order:1}
.navbar h1{font-size:17px;padding:8px 6px 4px}
.smenu-tg{display:flex;width:100%;align-items:center;justify-content:center;gap:8px;background:var(--azul);color:#fff;border:0;padding:10px;font-size:12px;text-transform:uppercase;cursor:pointer}
.smenu:not(.open)>a,.smenu:not(.open)>hr{display:none}
.tabs{padding:0 6px}.tabs a,.tabs button{padding:12px 10px;font-size:11px}
.panel>.pb{padding:12px}.status{justify-content:flex-start}.kvr>strong{flex:0 0 110px;padding-left:4px}
.stat .tx b{font-size:20px}.flyout{position:fixed;left:84px;top:auto}
table.t th,table.t td{padding:8px 6px}
.map{margin:0 0 12px;height:240px}h2.t,h3.t{margin:16px 0 8px;font-size:20px}hr.sep{margin:16px 0}
.week .wb{max-height:480px}.calnav{justify-content:center}.modal-bg{padding:2vh 8px}
}
