/* Captia · estilo Energía */
@font-face{font-family:"Inter";src:url("https://educalatina.com/wp-content/plugins/captia/assets/fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("https://educalatina.com/wp-content/plugins/captia/assets/fonts/space-grotesk.woff2") format("woff2");font-weight:300 700;font-display:swap}
:root{
  --bg:#14161C;--bg2:#0B0C10;--card:#1E2129;--soft:#252831;--line:#2A2E38;--line2:#3A3F4C;
  --text:#F4F2EE;--text2:#C9CCD4;--muted:#A9ADB8;--faint:#8B90A0;
  --accent:#FF6A3D;--accent-l:#FF8A63;--accent-xl:#FFB59E;--accent-bg:#2A2017;--accent-bg2:#33261C;
  --warn:#FFC24B;--warn-l:#FFDB94;--warn-bg:#2A2618;
  --ok:#9FE1CB;--ok-bg:#1A2420;--danger:#FF8A8A;--danger-bg:#2E1A1C;--info:#9CC3FF;--info-bg:#1A2233;
  --strong:#E4E2DD;--hover:#22252E;--msg-yo:#1F2B3A;--danger-line:#6B3A3A;--accent-line:#4A2E20;--on-accent:#14161C;--accent-h:#FF8A63;--focus:rgba(255,106,61,.18);--sombra:rgba(0,0,0,.45);
  color-scheme:dark;
  --r:12px;--r-lg:20px;--display:"Space Grotesk",system-ui,sans-serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.5}
a{color:var(--accent-l);text-decoration:none}a:hover{color:var(--accent-xl)}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;margin:0;line-height:1.15}
h1{font-size:32px;font-weight:700}h2{font-size:20px;font-weight:700}h3{font-size:16px;font-weight:600}
p{margin:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Estructura */
.cap-app{min-height:100vh;display:flex;flex-wrap:wrap}
.cap-nav{flex:1 1 220px;max-width:260px;background:var(--bg2);padding:24px 16px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;max-height:100vh;align-self:flex-start;min-height:100vh;overflow:auto}
.cap-brand{display:flex;align-items:center;gap:10px;padding:0 10px 20px;color:var(--text)}
.cap-brand b{font-family:var(--display);font-size:24px;font-weight:700;letter-spacing:-.8px}
.cap-brand small{display:block;font-size:12px;color:var(--muted);font-weight:500;letter-spacing:0}
.cap-nav a.it{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:0 12px;border-radius:var(--r);color:var(--text2);font-weight:500}
.cap-nav a.it:hover{background:var(--soft);color:var(--text)}
.cap-nav a.it.on{background:var(--accent-bg);color:var(--accent-l);font-weight:600}
.cap-nav .n{min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--accent);color:var(--on-accent);font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}
.cap-nav hr{border:0;height:1px;background:var(--line);margin:10px 0;width:100%}
.cap-nav .yo{margin-top:auto;padding:14px 12px 0;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.cap-nav .yo b{display:block;color:var(--text);font-weight:600}
.cap-main{flex:999 1 560px;min-width:0;padding:32px 40px 64px;display:flex;flex-direction:column;gap:24px}
.cap-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}
.cap-top .sub{font-size:14px;color:var(--muted);margin-bottom:6px}
.cap-top .acc{display:flex;flex-wrap:wrap;gap:10px}
.cap-back{font-size:14px;color:var(--muted)}
.cap-mnav{display:none}

/* Botones */
.cap-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 20px;border-radius:24px;border:0;background:var(--accent);color:var(--on-accent);font:inherit;font-size:14px;font-weight:700;cursor:pointer;text-decoration:none;white-space:nowrap}
.cap-btn:hover{background:var(--accent-h);color:var(--on-accent)}
.cap-btn.g{background:transparent;border:1px solid var(--line2);color:var(--text);font-weight:600}
.cap-btn.g:hover{background:var(--soft);color:var(--text)}
.cap-btn.d{background:transparent;border:1px solid var(--danger-line);color:var(--danger);font-weight:600}
.cap-btn.d:hover{background:var(--danger-bg)}
.cap-btn.sm{min-height:36px;padding:0 14px;font-size:13px}
.cap-btn[disabled]{opacity:.55;cursor:default}
.cap-link{background:none;border:0;padding:0;color:var(--accent-l);font:inherit;font-weight:600;cursor:pointer}

/* Tarjetas */
.cap-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:14px;min-width:0}
.cap-card>.hd{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.cap-cols{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}
.cap-cols>.w2{flex:2 1 440px;min-width:0}.cap-cols>.w1{flex:1 1 280px;min-width:0}
.cap-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.cap-kpi{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;flex-direction:column;gap:6px}
.cap-kpi span{font-size:13px;color:var(--muted)}
.cap-kpi b{font-family:var(--display);font-size:34px;font-weight:700;line-height:1.1}
.cap-kpi small{font-size:13px;color:var(--muted)}
.cap-bar{height:6px;border-radius:3px;background:var(--line)}.cap-bar i{display:block;height:6px;border-radius:3px;background:var(--warn)}

/* Filas tipo "pendiente" */
.cap-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:14px;background:var(--soft);color:var(--text)}
a.cap-row:hover{color:var(--text);filter:brightness(1.12)}
.cap-row.hot{background:var(--accent-bg)}.cap-row.warm{background:var(--warn-bg)}.cap-row.okk{background:var(--ok-bg)}
.cap-row .tx{flex-grow:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.cap-row .tx b{font-size:15px;font-weight:600}.cap-row .tx span{font-size:13px;color:var(--text2)}
.cap-row .go{font-size:14px;font-weight:600;color:var(--accent-l);white-space:nowrap}
.cap-dot{width:10px;height:10px;border-radius:5px;background:var(--faint);flex-shrink:0}
.cap-dot.hot{background:var(--accent)}.cap-dot.warm{background:var(--warn)}.cap-dot.okk{background:var(--ok)}

/* Etiquetas */
.cap-badge{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:13px;background:var(--soft);color:var(--text2);font-size:12px;font-weight:700;white-space:nowrap}
.cap-badge.hot{background:var(--accent-bg);color:var(--accent-l)}.cap-badge.warm{background:var(--warn-bg);color:var(--warn-l)}
.cap-badge.okk{background:var(--ok-bg);color:var(--ok)}.cap-badge.bad{background:var(--danger-bg);color:var(--danger)}.cap-badge.info{background:var(--info-bg);color:var(--info)}
.cap-chips{display:flex;flex-wrap:wrap;gap:8px}
.cap-chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;border-radius:18px;border:1px solid var(--line2);color:var(--text2);font-size:13px;font-weight:600}
.cap-chip:hover{color:var(--text);background:var(--soft)}
.cap-chip.on{background:var(--text);border-color:var(--text);color:var(--bg)}
.cap-chip.hot.on{background:var(--accent);border-color:var(--accent)}

/* Formularios */
.cap-form{display:flex;flex-direction:column;gap:18px}
.cap-f{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--strong)}
.cap-f .help{font-weight:400;color:var(--muted);font-size:13px}
.cap-in,.cap-f input[type=text],.cap-f input[type=email],.cap-f input[type=password],.cap-f input[type=number],.cap-f input[type=url],.cap-f input[type=tel],.cap-f input[type=time],.cap-f input[type=date],.cap-f input[type=search],.cap-f select,.cap-f textarea{width:100%;min-height:46px;padding:0 14px;border-radius:var(--r);border:1px solid var(--line2);background:var(--bg);color:var(--text);font:inherit;font-weight:400;font-size:15px}
.cap-f textarea{padding:12px 14px;line-height:1.5;min-height:110px;resize:vertical}
.cap-f input:focus,.cap-f select:focus,.cap-f textarea:focus,.cap-in:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}
.cap-check{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:var(--text2);font-weight:500;cursor:pointer}
.cap-check input{width:18px;height:18px;margin-top:2px;accent-color:var(--accent);flex-shrink:0}
.cap-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.cap-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.cap-dirty{font-size:13px;color:var(--warn-l);display:none}.is-dirty .cap-dirty{display:inline}
.cap-err{font-size:13px;color:var(--danger);font-weight:500}
.cap-opts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.cap-opt{display:flex;align-items:center;gap:10px;padding:14px;border-radius:14px;border:1px solid var(--line2);font-size:14px;font-weight:600;cursor:pointer}
.cap-opt:has(input:checked){border:2px solid var(--accent);background:var(--accent-bg);padding:13px}
.cap-opt input{accent-color:var(--accent)}

/* Avisos */
.cap-flash{display:block;padding:14px 16px;border-radius:14px;font-size:14px;line-height:1.5}
.cap-flash.ok{background:var(--ok-bg);color:var(--ok)}.cap-flash.err{background:var(--danger-bg);color:var(--danger)}
.cap-flash.warn{background:var(--warn-bg);color:var(--warn-l)}.cap-flash.info{background:var(--info-bg);color:var(--info)}

/* Tablas */
.cap-tw{overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.cap-t{width:100%;border-collapse:collapse;font-size:14px}
.cap-t th{text-align:left;font-size:12px;font-weight:600;color:var(--muted);padding:12px 16px;border-bottom:1px solid var(--line);white-space:nowrap}
.cap-t td{padding:14px 16px;border-bottom:1px solid var(--line);vertical-align:middle}
.cap-t tr:last-child td{border-bottom:0}
.cap-t tbody tr:hover td{background:var(--hover)}
.cap-t td.min{width:1%;white-space:nowrap}
.cap-t .s{display:block;font-size:12px;color:var(--muted)}

/* Pestañas */
.cap-tabs{display:flex;flex-wrap:wrap;gap:8px}
.cap-tabs a{min-height:38px;padding:0 16px;border-radius:19px;border:1px solid var(--line2);color:var(--strong);font-size:14px;font-weight:600;display:inline-flex;align-items:center}
.cap-tabs a.on{background:var(--text);border-color:var(--text);color:var(--bg)}

/* Vacío */
.cap-empty{padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;color:var(--text2)}
.cap-empty b{font-family:var(--display);font-size:20px;color:var(--text)}

/* Detalle */
.cap-state{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:14px 18px;border-radius:16px;background:var(--card);border:1px solid var(--line);font-size:14px;color:var(--text2)}
.cap-state b{color:var(--text)}
.cap-more{border:1px solid var(--line);border-radius:16px}
.cap-more>summary{cursor:pointer;padding:14px 18px;font-weight:600;color:var(--text2);list-style:none}
.cap-more>summary::-webkit-details-marker{display:none}
.cap-more>summary:before{content:"+ "}.cap-more[open]>summary:before{content:"− "}
.cap-more>div{padding:0 18px 18px;display:flex;flex-direction:column;gap:12px}
.cap-dl{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:10px 18px;font-size:14px}
.cap-dl dt{color:var(--muted)}.cap-dl dd{margin:0;min-width:0;overflow-wrap:anywhere}

/* Servicios */
.cap-svc{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:14px}
.cap-svc .hd{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center}
.cap-svc details{font-size:14px;color:var(--text2)}
.cap-svc details summary{cursor:pointer;color:var(--accent-l);font-weight:600}
.cap-svc ol{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:6px}
.cap-test{font-size:14px;padding:10px 14px;border-radius:12px;display:none}
.cap-test.ok{display:block;background:var(--ok-bg);color:var(--ok)}.cap-test.err{display:block;background:var(--danger-bg);color:var(--danger)}.cap-test.wait{display:block;background:var(--soft);color:var(--text2)}

/* Chat */
.cap-chat{display:flex;flex-direction:column;gap:12px}
.cap-msg{max-width:72%;padding:12px 16px;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}
.cap-msg.in{align-self:flex-start;background:var(--soft);border-radius:16px 16px 16px 4px}
.cap-msg.out{align-self:flex-end;background:var(--accent-bg2);border-radius:16px 16px 4px 16px}
.cap-msg.yo{align-self:flex-end;background:var(--msg-yo);border-radius:16px 16px 4px 16px}
.cap-msg-w{display:flex;flex-direction:column;gap:4px}.cap-msg-w.r{align-items:flex-end}
.cap-msg-w small{font-size:11px;color:var(--muted)}
.cap-sys{align-self:center;padding:6px 14px;border-radius:14px;background:var(--warn-bg);color:var(--warn-l);font-size:12px;font-weight:600;text-align:center}

/* Ingreso */
.cap-login{min-height:100vh;display:flex;flex-wrap:wrap}
.cap-login .izq{flex:1 1 480px;background:var(--bg2);padding:56px;display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.cap-login .der{flex:1 1 420px;padding:56px;display:flex;align-items:center;justify-content:center}
.cap-login .izq h1{font-size:52px;line-height:1.05;letter-spacing:-1.6px;max-width:520px}
.cap-login .izq h1 em{font-style:normal;color:var(--accent)}
.cap-login .izq p{font-size:18px;line-height:1.6;color:var(--text2);max-width:520px}
.cap-login .feat{display:flex;flex-direction:column;gap:14px}
.cap-login .feat div{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--strong)}
.cap-login .feat i{width:28px;height:28px;border-radius:14px;background:var(--accent-bg);color:var(--accent-l);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;font-style:normal}
.cap-login form{width:100%;max-width:400px}
.cap-secure{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;background:var(--ok-bg);color:var(--ok);font-size:13px}
.cap-code{display:flex;gap:10px}
.cap-code input{width:52px;height:60px;text-align:center;font-family:var(--display);font-size:26px;font-weight:700;border-radius:12px;border:1px solid var(--line2);background:var(--card);color:var(--text)}
.cap-code input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus)}

/* Página simple (errores, públicas) */
.cap-simple{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px}
.cap-simple .box{max-width:520px;width:100%;display:flex;flex-direction:column;gap:18px}

/* Celular */
@media (max-width:820px){
  .cap-nav{display:none}
  .cap-mnav{display:block;width:100%;background:var(--bg2);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
  .cap-mnav summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer}
  .cap-mnav summary::-webkit-details-marker{display:none}
  .cap-mnav .menu{padding:4px 12px 14px;display:flex;flex-direction:column;gap:2px}
  .cap-mnav .menu a.it{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:0 12px;border-radius:12px;color:var(--text2)}
  .cap-mnav .menu a.it.on{background:var(--accent-bg);color:var(--accent-l)}
  .cap-main{padding:20px 16px 48px}
  h1{font-size:26px}
  .cap-login .izq,.cap-login .der{padding:28px 16px}
  .cap-login .izq{gap:24px}.cap-login .izq h1{font-size:34px}.cap-login .izq .feat,.cap-login .izq .pie{display:none}
  .cap-code{gap:6px}.cap-code input{width:44px;height:54px;font-size:22px}
  .cap-msg{max-width:88%}
  .cap-card{padding:18px}
}

/* 1.2: piezas comunes que repetían varios módulos (Redes, Empresas, Campañas, Abono). */
[hidden]{display:none!important}
.mut{color:var(--muted);font-size:14px}
.cap-fs{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:8px}
.cap-fs legend{font-size:14px;font-weight:600;color:var(--strong);margin-bottom:8px}
.cap-opt.off,.cap-opt:has(input:disabled){opacity:.55;cursor:not-allowed}
button.cap-chip{background:transparent;font:inherit;font-size:13px;font-weight:600;color:var(--text2);cursor:pointer}
button.cap-chip.on{background:var(--text);color:var(--bg)}
.cap-f input[type=color]{width:56px;height:44px;padding:4px;border-radius:12px}

/* 1.4: modo diurno. Claro elegido, o Automático con el equipo en modo claro. */
:root[data-tema="claro"]{--bg:#F4F2EE;--bg2:#FFFFFF;--card:#FFFFFF;--soft:#ECE9E3;--line:#E2DED6;--line2:#CFCAC0;--text:#14161C;--text2:#3A3F4C;--muted:#5B606C;--faint:#626774;--accent:#FF6A3D;--accent-l:#A8380F;--accent-xl:#8A2C0A;--accent-bg:#FFE9DF;--accent-bg2:#FFDCCC;--warn:#FFC24B;--warn-l:#875A00;--warn-bg:#FFF3D6;--ok:#17704F;--ok-bg:#DFF3EA;--danger:#B42A22;--danger-bg:#FBE5E3;--info:#1F55A6;--info-bg:#E2ECFA;--strong:#22252E;--hover:#F4F2EE;--msg-yo:#E2ECFA;--danger-line:#E3A9A4;--accent-line:#F6C3AE;--on-accent:#14161C;--accent-h:#FF8457;--focus:rgba(255,106,61,.28);--sombra:rgba(20,22,28,.12);color-scheme:light}
@media (prefers-color-scheme:light){:root[data-tema="auto"]{--bg:#F4F2EE;--bg2:#FFFFFF;--card:#FFFFFF;--soft:#ECE9E3;--line:#E2DED6;--line2:#CFCAC0;--text:#14161C;--text2:#3A3F4C;--muted:#5B606C;--faint:#626774;--accent:#FF6A3D;--accent-l:#A8380F;--accent-xl:#8A2C0A;--accent-bg:#FFE9DF;--accent-bg2:#FFDCCC;--warn:#FFC24B;--warn-l:#875A00;--warn-bg:#FFF3D6;--ok:#17704F;--ok-bg:#DFF3EA;--danger:#B42A22;--danger-bg:#FBE5E3;--info:#1F55A6;--info-bg:#E2ECFA;--strong:#22252E;--hover:#F4F2EE;--msg-yo:#E2ECFA;--danger-line:#E3A9A4;--accent-line:#F6C3AE;--on-accent:#14161C;--accent-h:#FF8457;--focus:rgba(255,106,61,.28);--sombra:rgba(20,22,28,.12);color-scheme:light}}
:root[data-tema="claro"] .cap-nav,:root[data-tema="claro"] .cap-login .izq{box-shadow:inset -1px 0 0 var(--line)}
@media (prefers-color-scheme:light){:root[data-tema="auto"] .cap-nav,:root[data-tema="auto"] .cap-login .izq{box-shadow:inset -1px 0 0 var(--line)}}
/* Selector de modo en el menú */
.cap-tema{display:flex;gap:4px;margin:10px 0 6px;padding:3px;border-radius:16px;background:var(--soft);border:1px solid var(--line)}
.cap-tema button{flex:1;min-height:40px;border:0;border-radius:13px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:0 6px}
.cap-tema button:hover{color:var(--text)}
.cap-tema button[aria-pressed="true"]{background:var(--card);color:var(--text);box-shadow:0 1px 3px var(--sombra)}
.cap-mnav .cap-tema{margin:10px 12px 4px}
.cap-tema .ic-auto{display:inline-block;width:10px;height:10px;border-radius:50%;border:1.5px solid currentColor;background:linear-gradient(90deg,currentColor 50%,transparent 50%)}

/* 1.5: caras */
.cap-cara{flex:none;border-radius:50%;display:inline-block;vertical-align:middle}.cap-cara .cap-cara-ojo{transform-box:fill-box;transform-origin:center;animation:cap-parpadeo 5s infinite}.cap-cara .cap-cara-ojos{transition:transform .2s}.cap-cara .cap-cara-recta,.cap-cara .cap-cara-sonrisa{display:none}.cap-cara.pensando .cap-cara-ojos{transform:translateY(-2.5px)}.cap-cara.pensando .cap-cara-normal,.cap-cara.sonrie .cap-cara-normal{display:none}.cap-cara.pensando .cap-cara-recta{display:inline}.cap-cara.sonrie .cap-cara-sonrisa{display:inline}@keyframes cap-parpadeo{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}@media (prefers-reduced-motion:reduce){.cap-cara .cap-cara-ojo{animation:none}.cap-cara .cap-cara-ojos{transition:none}}
/* 1.5: Nico */
.cap-nico{display:flex;align-items:center;gap:10px;margin:0;font-size:14px;color:var(--text2);line-height:1.4;min-width:0}.cap-nico[hidden]{display:none}.cap-nico b{color:var(--strong);font-weight:700}.cap-nico>span{min-width:0;overflow-wrap:anywhere}.cap-nico-aviso{display:flex;align-items:center;gap:12px}.cap-nico-aviso b{font-weight:700}