/* ============================================================
   VIFER LABS — Portal de cliente · hoja de estilos completa
   Tokens VIFER (variante cálida) — no tocar sin motivo.
   ============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#050608;--s1:#0a0c10;--s2:#11161d;--s3:#161c25;
  --fg:#f4efe6;--fg2:#a7a199;--fg3:#6b6760;
  --cy:#00c2d1;--cyb:#2bd9e6;--cyt:rgba(0,194,209,.12);
  --ok:#4dd599;--wa:#f0b34a;--er:#ff5d5d;--am:#f0a500;--pu:#a78bfa;
  --bd:rgba(244,239,230,.09);--bdm:rgba(244,239,230,.16);--bdc:rgba(0,194,209,.28);
  --r:8px;--rl:12px;--rx:12px;--sw:220px;--th:52px;
  --font-display:'Bebas Neue','Big Shoulders Display','Arial Narrow',sans-serif;
}
html,body,#root{height:100%;background:var(--bg);color:var(--fg);font-family:'Outfit',sans-serif;font-size:14px;overflow:hidden}
/* SHELL */
.shell{display:grid;grid-template-columns:var(--sw) 1fr;grid-template-rows:var(--th) 26px 1fr;height:100vh}
/* TICKER — cinta de terminal bajo la topbar */
.ticker{grid-column:1/-1;grid-row:2;background:var(--bg);border-bottom:1px solid var(--bd);overflow:hidden;position:relative;display:flex;align-items:center}
.ticker::before{content:'EN VIVO';position:absolute;left:0;top:0;bottom:0;z-index:2;display:flex;align-items:center;padding:0 12px;background:var(--s1);border-right:1px solid var(--bd);font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.14em;color:var(--cy)}
.ticker.demo::before{content:'SIMULACIÓN';color:var(--wa)}
.ticker-track{display:flex;gap:0;white-space:nowrap;animation:tkscroll 60s linear infinite;padding-left:110px}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes tkscroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tk-item{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg2);padding:0 22px;border-right:1px solid var(--bd);cursor:pointer}
.tk-item:hover{color:var(--fg)}
.tk-item .tk-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}
.tk-item b{color:var(--fg);font-weight:600}
.tk-item .tk-val{color:var(--cy);font-weight:700}
/* HERO CHART — 30 días, la primera impresión */
.hero-chart{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px 18px 8px;margin-bottom:24px;position:relative;overflow:hidden}
.hero-chart::before{content:'';position:absolute;inset:0;background:radial-gradient(60% 80% at 85% 0%,rgba(0,194,209,.05),transparent 60%);pointer-events:none}
.hero-chart-hd{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.hero-chart-t{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--fg3)}
.hero-chart-legend{display:flex;gap:14px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--fg3)}
.hero-chart-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px;vertical-align:-1px}
/* TOPBAR */
.tbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;background:var(--s1);border-bottom:1px solid var(--bd);padding-right:20px;z-index:50}
.tbar-brand{display:flex;align-items:center;gap:10px;width:var(--sw);padding:0 18px;border-right:1px solid var(--bd);height:100%}
.tbar-logo{width:30px;height:30px;border-radius:8px;background:var(--cy);display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:13px;color:var(--bg);flex-shrink:0}
.tbar-right{display:flex;align-items:center;gap:10px}
.tbar-upd{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3)}
@media(max-width:1100px){.tbar-upd{display:none}}
/* saldo en vivo */
.tbar-saldo{display:flex;align-items:center;gap:7px;background:var(--s2);border:1px solid var(--bd);border-radius:20px;padding:5px 11px 5px 9px;cursor:pointer;transition:.15s}
.tbar-saldo:hover{border-color:var(--cy)}
.tbar-saldo-ico{color:var(--cy);font-family:'IBM Plex Mono',monospace;font-size:12px}
.tbar-saldo-n{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:700;color:var(--fg)}
.tbar-saldo-bar{width:34px;height:5px;border-radius:4px;background:var(--s3);overflow:hidden}
.tbar-saldo-bar i{display:block;height:100%;border-radius:4px;transition:width .5s}
/* botón icono (ayuda) */
.tbar-icon{width:30px;height:30px;border-radius:9px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2);font-size:14px;font-weight:700;cursor:pointer;transition:.15s}
.tbar-icon:hover{border-color:var(--cy);color:var(--cy)}
/* perfil */
.tbar-prof{position:relative}
.tbar-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--cy),#0090a8);color:#04181c;font-weight:800;font-size:14px;cursor:pointer;border:2px solid transparent;transition:.15s}
.tbar-avatar:hover,.tbar-avatar.on{border-color:var(--cyb)}
.tbar-prof-back{position:fixed;inset:0;z-index:90}
.tbar-prof-menu{position:absolute;top:42px;right:0;z-index:91;width:250px;background:var(--s2);border:1px solid var(--bdm);border-radius:14px;padding:8px;box-shadow:0 18px 44px rgba(0,0,0,.55)}
.tbar-prof-hd{display:flex;gap:11px;align-items:flex-start;padding:10px 10px 12px;border-bottom:1px solid var(--bd);margin-bottom:6px}
.tbar-prof-av{width:40px;height:40px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--cy),#0090a8);color:#04181c;font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center}
.tbar-prof-id{min-width:0;display:flex;flex-direction:column}
.tbar-prof-id b{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbar-prof-id span{font-size:10.5px;color:var(--fg3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tbar-prof-item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:none;border:none;color:var(--fg);font-size:12.5px;font-family:Outfit,sans-serif;padding:9px 10px;border-radius:9px;cursor:pointer}
.tbar-prof-item:hover{background:var(--s3)}
.tbar-prof-ic{width:18px;text-align:center;color:var(--fg2);font-family:'IBM Plex Mono',monospace;font-size:12px}
.tbar-prof-item.danger{color:var(--er)}
.tbar-prof-item.danger .tbar-prof-ic{color:var(--er)}
.tbar-prof-sep{height:1px;background:var(--bd);margin:6px 4px}
.tbar-btn{display:flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--cy);cursor:pointer;padding:6px 12px;border-radius:var(--r);border:1px solid var(--bdc);background:var(--cyt);transition:background .15s;font-family:'Outfit',sans-serif}
.tbar-btn:hover{background:rgba(0,194,209,.2)}
/* MODE BADGE — la firma de confianza del portal */
.mode-badge{display:inline-flex;align-items:center;gap:7px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;border:1px solid var(--bdm);color:var(--fg3)}
.mode-badge .live-dot{width:6px;height:6px}
.mode-badge.real{color:var(--ok);border-color:rgba(77,213,153,.3);background:rgba(77,213,153,.07)}
.mode-badge.real .live-dot{background:var(--ok)}
.mode-badge.demo{color:var(--wa);border-color:rgba(240,179,74,.3);background:rgba(240,179,74,.07)}
.mode-badge.demo .live-dot{background:var(--wa)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);animation:pulse 2s ease-in-out infinite}
/* SIDEBAR */
.side{background:var(--s1);border-right:1px solid var(--bd);overflow-y:auto;display:flex;flex-direction:column;padding:16px 0}
.side::-webkit-scrollbar{display:none}
.side-org{padding:0 16px 14px;border-bottom:1px solid var(--bd);margin-bottom:14px}
.side-org-lbl{font-size:9px;font-weight:600;color:var(--fg3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}
.side-org-name{font-size:13px;font-weight:700}
.plan-badge{display:inline-flex;align-items:center;gap:4px;margin-top:5px;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:999px}
.plan-badge.trial{color:var(--ok);background:rgba(77,213,153,.12);border:1px solid rgba(77,213,153,.32)}
.plan-badge.demo{color:var(--am);background:rgba(240,165,0,.1);border:1px solid rgba(240,165,0,.25)}
.plan-badge.basic{color:var(--fg2);background:rgba(244,239,230,.06);border:1px solid var(--bd)}
.plan-badge.pro{color:var(--cy);background:var(--cyt);border:1px solid var(--bdc)}
.plan-badge.custom{color:var(--pu);background:rgba(167,139,250,.1);border:1px solid rgba(167,139,250,.28)}
.nav-sec{padding:0 16px;margin-bottom:18px}
.nav-sec-title{font-size:9px;font-weight:700;color:var(--fg3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:5px;padding-left:5px}
.nav-sec-signature .nav-sec-title{font-size:10px;font-weight:800;letter-spacing:.13em}
.nav-sec-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--sig);box-shadow:0 0 9px var(--sig);margin-right:6px;vertical-align:middle}
.nav-sec-signature{padding:2px 0 2px;border-left:2px solid color-mix(in srgb,var(--sig) 55%,transparent);margin-left:-2px;padding-left:2px}
.nav-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:var(--r);font-size:13px;font-weight:500;color:var(--fg2);cursor:pointer;transition:all .12s;position:relative}
.nav-item:hover{background:var(--s2);color:var(--fg)}
.nav-item.act{background:rgba(0,194,209,.1);color:var(--cy);font-weight:600}
.nav-item.locked{opacity:.72;cursor:pointer}
.nav-item.locked:hover{opacity:1}
.nav-lock{margin-left:auto;position:relative;width:9px;height:8px;flex-shrink:0;border:1.4px solid var(--fg3);border-radius:2px;margin-top:1px}
.nav-lock::before{content:'';position:absolute;left:50%;top:-4px;transform:translateX(-50%);width:5px;height:5px;border:1.4px solid var(--fg3);border-bottom:none;border-radius:3px 3px 0 0}
.nav-item.locked:hover .nav-lock,.nav-item.locked:hover .nav-lock::before{border-color:var(--cy)}
.nav-ico{font-size:13px;width:16px;text-align:center;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.nav-item.act .nav-ico{color:var(--cy)}
.nav-badge{margin-left:auto;min-width:18px;height:18px;border-radius:9px;background:var(--cy);color:var(--bg);font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px}
.side-footer{margin-top:auto;padding:14px 16px 0;border-top:1px solid var(--bd)}
/* Selector de vista de plan (demostración en vivo B/P/E) */
.plan-switch{margin-bottom:12px}
.plan-switch-lbl{font-size:8.5px;font-weight:700;color:var(--fg3);text-transform:uppercase;letter-spacing:.1em;margin-bottom:6px}
.plan-switch-row{display:flex;gap:4px}
.plan-switch-btn{flex:1;padding:6px 4px;border-radius:6px;border:1px solid var(--bd);background:var(--s2);color:var(--fg3);font-size:9.5px;font-weight:700;letter-spacing:.04em;cursor:pointer;font-family:'IBM Plex Mono',monospace;transition:all .12s;text-transform:uppercase}
.plan-switch-btn:hover{border-color:var(--bdm);color:var(--fg2)}
.plan-switch-btn.act{background:var(--cyt);border-color:var(--bdc);color:var(--cy)}
/* Gate con contenido (qué hay dentro del apartado bloqueado) */
.gatep{max-width:760px;margin:26px auto 0}
/* vista previa animada del feature bloqueado (cine del Studio) */
.gatep-split{margin-bottom:14px}
.gatep-preview{position:relative;border:1px solid var(--bdc);border-radius:var(--rx);overflow:hidden;background:var(--s1);padding:38px 16px 16px}
.gatep-preview.anim{border:none;background:transparent;padding:0}
.gatep-preview-tag{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:7px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--pu);background:color-mix(in srgb,var(--pu) 10%,var(--s2));border-bottom:1px solid color-mix(in srgb,var(--pu) 24%,transparent);padding:8px 14px}
.gatep-preview-tag .gi{color:var(--pu);font-family:'IBM Plex Mono',monospace}
.gatep-updowngrade{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:10px;font-size:12px;color:var(--fg2)}
.gatep-updowngrade b{color:var(--fg)}
.gatep-need b{color:var(--pu)}
.gatep-arrow{color:var(--fg3)}
/* contenido del mock (borroso de fondo) */
.gm-chat{display:flex;flex-direction:column;gap:7px}
.gm-bub{max-width:78%;padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.4}
.gm-bub.a{align-self:flex-start;background:var(--s3);color:var(--fg)}
.gm-bub.u{align-self:flex-end;background:linear-gradient(135deg,var(--cy),#0090a8);color:#04181c}
.gm-rows{display:flex;flex-direction:column;gap:8px}
.gm-lead{display:flex;align-items:center;gap:12px;background:var(--s2);border:1px solid var(--bd);border-radius:9px;padding:9px 12px;font-size:12px}
.gm-lead span{flex:1;color:var(--fg2)}
.gm-score{width:80px;height:6px;border-radius:4px;background:var(--s3);overflow:hidden}
.gm-score i{display:block;height:100%;border-radius:4px;background:var(--cy)}
.gm-lead b{font-family:'IBM Plex Mono',monospace;font-size:12px}
.gm-inv{display:flex;align-items:center;gap:12px;background:var(--s2);border:1px solid var(--bd);border-radius:9px;padding:9px 12px;font-size:12px}
.gm-inv-n{flex:1;color:var(--fg2)}
.gm-inv b{font-family:'IBM Plex Mono',monospace}
.gm-inv-t{font-family:'IBM Plex Mono',monospace;font-size:10px}
.gm-code{background:var(--s2);border:1px solid var(--bd);border-radius:9px;padding:13px 15px;font-family:'IBM Plex Mono',monospace;font-size:11px;line-height:1.6;color:var(--ok);white-space:pre-wrap}
.gatep-hero{background:linear-gradient(135deg,rgba(167,139,250,.1),rgba(0,194,209,.05));border:1px solid rgba(167,139,250,.3);border-radius:var(--rx);padding:26px 28px;margin-bottom:14px}
.gatep-plan{font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--pu);text-transform:uppercase;margin-bottom:8px}
.gatep-title{font-size:22px;font-weight:800;display:flex;align-items:center;gap:10px;margin-bottom:14px}
.gatep-title .gi{font-family:'IBM Plex Mono',monospace;color:var(--pu);font-size:19px}
.gatep-bullet{display:flex;gap:10px;align-items:flex-start;padding:8px 0;font-size:13px;color:var(--fg2);line-height:1.5;border-bottom:1px solid var(--bd)}
.gatep-bullet:last-child{border-bottom:none}
.gatep-bullet .gb{color:var(--ok);font-size:11px;margin-top:3px;flex-shrink:0}
.gatep-ctas{display:flex;gap:10px;margin-top:16px}
/* Mini distribución horizontal (Resumen estilo HQ) */
.mini-dist{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:14px 16px}
.mini-dist-t{font-size:10px;font-weight:700;color:var(--fg3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px;display:flex;justify-content:space-between}
.md-row{display:grid;grid-template-columns:86px 1fr 26px;align-items:center;gap:8px;margin-bottom:7px}
.md-row:last-child{margin-bottom:0}
.md-lbl{font-size:10.5px;color:var(--fg2);font-family:'IBM Plex Mono',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.md-track{height:6px;background:var(--s3);border-radius:3px;overflow:hidden}
.md-fill{height:100%;border-radius:3px;transition:width .4s ease}
.md-val{font-size:10px;color:var(--fg3);font-family:'IBM Plex Mono',monospace;text-align:right}
/* Tabla de módulos (Resumen) */
.mod-table{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);overflow:hidden}
.mod-hd,.mod-row{display:grid;grid-template-columns:2.2fr 1fr 1fr 1.2fr 90px;gap:0;padding:10px 16px;align-items:center}
.mod-hd{background:var(--s2);border-bottom:1px solid var(--bd)}
.mod-hd span{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--fg3)}
.mod-row{border-bottom:1px solid var(--bd);cursor:pointer;transition:background .12s}
.mod-row:hover{background:var(--s2)}
.mod-row:last-child{border-bottom:none}
/* Objetivos del CEO (Informe) */
.goal-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--bd)}
.goal-row:last-child{border-bottom:none}
.goal-name{font-size:12.5px;font-weight:600;width:190px;flex-shrink:0}
.goal-track{flex:1;height:8px;background:var(--s3);border-radius:4px;overflow:hidden}
.goal-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--cy),var(--ok));transition:width .5s ease}
.goal-num{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg2);width:76px;text-align:right;flex-shrink:0}
.goal-inp{width:64px;background:var(--s2);border:1px solid var(--bdm);border-radius:6px;padding:4px 8px;color:var(--fg);font-size:11px;font-family:'IBM Plex Mono',monospace;outline:none;text-align:right}
/* Delta chips (comparativa periodo) */
.delta{display:inline-flex;align-items:center;gap:3px;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;padding:2px 8px;border-radius:999px}
.delta.up{color:var(--ok);background:rgba(77,213,153,.1)}
.delta.down{color:var(--er);background:rgba(255,93,93,.08)}
.delta.flat{color:var(--fg3);background:var(--s2)}
/* Slider umbral (Operaciones P8) */
.thr-wrap{background:var(--s2);border:1px solid var(--bd);border-radius:var(--r);padding:14px 16px;margin-top:10px}
.thr-val{font-family:var(--font-display);font-size:26px;color:var(--cy);text-align:center;margin-bottom:2px}
input[type=range].thr-slider{width:100%;height:6px;border-radius:3px;background:var(--s3);appearance:none;-webkit-appearance:none;outline:none}
input[type=range].thr-slider::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--cy);cursor:pointer;box-shadow:0 0 0 4px rgba(0,194,209,.2)}
/* Timeline ecosistema */
.eco-tl{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px 20px;margin-top:18px}
.eco-tl-row{display:flex;gap:12px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--bd);font-size:12px}
.eco-tl-row:last-child{border-bottom:none}
.eco-tl-dot{width:8px;height:8px;border-radius:50%;margin-top:4px;flex-shrink:0}
/* Proyección: line chart */
.proj-chart{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:18px 20px}
/* Comparador de planes */
.cmp-table{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);overflow:hidden;margin-bottom:20px}
.cmp-hd,.cmp-row{display:grid;grid-template-columns:2.4fr 1fr 1fr 1fr;gap:0;align-items:center}
.cmp-hd{background:var(--s2);border-bottom:1px solid var(--bd);padding:12px 18px}
.cmp-hd .cp{font-family:var(--font-display);font-size:16px;letter-spacing:.04em;text-align:center}
.cmp-hd .cp.cur{color:var(--cy)}
.cmp-row{padding:9px 18px;border-bottom:1px solid var(--bd);font-size:12.5px;color:var(--fg2)}
.cmp-row:last-child{border-bottom:none}
.cmp-cell{text-align:center;font-family:'IBM Plex Mono',monospace;font-size:12px}
.cmp-cell.y{color:var(--ok)}.cmp-cell.n{color:var(--fg3);opacity:.5}
.cmp-col-cur{background:rgba(0,194,209,.04)}
/* ═══ STUDIO (playground de creación) ═══ */
.studio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px}
.studio-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:22px;cursor:pointer;transition:all .18s;position:relative;overflow:hidden}
.studio-card:hover{transform:translateY(-3px);border-color:var(--bdc);box-shadow:0 18px 50px rgba(0,0,0,.45)}
.studio-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--sc,#00c2d1),transparent 70%)}
.studio-ico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace;margin-bottom:12px}
.studio-name{font-size:15px;font-weight:800;margin-bottom:4px}
.studio-tag{font-size:11.5px;color:var(--fg2);line-height:1.5;margin-bottom:12px}
.studio-eta{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--fg3)}
.studio-cta{font-size:11px;font-weight:700;color:var(--cy);margin-top:10px}
/* Wizard */
.wiz{max-width:1240px}
.wiz-review{max-width:820px}
.wiz-live{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px;position:sticky;top:16px;overflow:hidden}
.wiz-live::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--lc,#00c2d1),transparent 70%)}
.wiz-steps{display:flex;gap:6px;margin-bottom:18px}
.wiz-step{flex:1;height:4px;border-radius:2px;background:var(--s3);transition:background .3s}
.wiz-step.on{background:var(--cy)}
.wiz-panel{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:24px}
.wiz-q{font-size:15px;font-weight:700;margin-bottom:14px}
.wiz-summary{background:var(--s2);border:1px solid var(--bd);border-radius:var(--r);padding:14px 16px;margin-bottom:14px}
.wiz-sum-row{display:flex;gap:10px;padding:6px 0;border-bottom:1px solid var(--bd);font-size:12.5px}
.wiz-sum-row:last-child{border-bottom:none}
.wiz-sum-k{color:var(--fg3);width:170px;flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;padding-top:1px}
.wiz-sum-v{color:var(--fg)}
/* Mis creaciones (tracking) */
.crea-row{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px 18px;margin-bottom:10px}
.crea-hd{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.crea-stages{display:flex;align-items:center;gap:0}
.crea-stage{display:flex;flex-direction:column;align-items:center;gap:5px;flex:1;position:relative}
.crea-stage::before{content:'';position:absolute;top:8px;left:-50%;width:100%;height:2px;background:var(--s3)}
.crea-stage:first-child::before{display:none}
.crea-stage.done::before{background:var(--ok)}
.crea-dot{width:16px;height:16px;border-radius:50%;background:var(--s3);border:2px solid var(--bdm);z-index:1;display:flex;align-items:center;justify-content:center;font-size:8px;color:var(--bg)}
.crea-stage.done .crea-dot{background:var(--ok);border-color:var(--ok)}
.crea-stage.cur .crea-dot{background:var(--cyt);border-color:var(--cy);animation:pulse 1.6s ease-in-out infinite}
.crea-lbl{font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg3);text-align:center}
.crea-stage.done .crea-lbl,.crea-stage.cur .crea-lbl{color:var(--fg2)}
/* ═══ SHOWROOM (piezas reales embebidas) ═══ */
.show-shell{display:grid;grid-template-columns:250px 1fr;gap:14px;height:calc(100vh - 220px);min-height:480px}
.show-list{overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:2px}
.show-list::-webkit-scrollbar{width:3px}
.show-item{background:var(--s1);border:1px solid var(--bd);border-left:3px solid transparent;border-radius:var(--rl);padding:12px 14px;cursor:pointer;transition:all .13s}
.show-item:hover{border-color:var(--bdm);transform:translateX(2px)}
.show-item.act{border-color:var(--bdc);border-left-color:var(--cy);background:rgba(0,194,209,.06);box-shadow:0 4px 16px rgba(0,194,209,.08)}
.show-item-name{font-size:12.5px;font-weight:700}
.show-item-tag{font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--fg3);margin-top:2px;text-transform:uppercase;letter-spacing:.05em}
.show-item-desc{font-size:10.5px;color:var(--fg2);margin-top:6px;line-height:1.45}
.show-stage{background:var(--s1);border:1px solid color-mix(in srgb,var(--sc) 26%,var(--bd));border-radius:var(--rx);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 0 34px color-mix(in srgb,var(--sc) 10%,transparent)}
.show-bar{display:flex;align-items:center;gap:9px;padding:9px 14px;border-bottom:1px solid var(--bd);background:var(--s2)}
.show-dots{display:flex;gap:5px}
.show-dots i{width:9px;height:9px;border-radius:50%;background:var(--s3)}
.show-dots i:nth-child(1){background:rgba(255,93,93,.7)}
.show-dots i:nth-child(2){background:rgba(240,179,74,.7)}
.show-dots i:nth-child(3){background:rgba(77,213,153,.7)}
.show-url{flex:1;display:flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg2);background:var(--bg);border:1px solid var(--bd);border-radius:20px;padding:5px 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.show-lock{color:var(--ok);font-size:11px;flex-shrink:0}
.show-live{display:flex;align-items:center;gap:5px;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--ok);flex-shrink:0}
.show-live-dot{width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 7px var(--ok);animation:demoPulse 1.5s infinite}
.show-tgl{flex-shrink:0;background:var(--s1);border:1px solid var(--bdm);color:var(--fg2);border-radius:8px;font-size:10.5px;font-weight:600;padding:5px 10px;cursor:pointer;font-family:Outfit,sans-serif;transition:.15s}
.show-tgl:hover{border-color:var(--sc);color:var(--fg)}
.show-canvas{flex:1;position:relative;background:#0a0c10;display:flex}
.show-frame{flex:1;border:none;width:100%;background:#0a0c10}
.show-canvas.mob{background:radial-gradient(120% 100% at 50% 0%,color-mix(in srgb,var(--sc) 10%,var(--bg)),var(--bg) 70%);align-items:center;justify-content:center;padding:20px 0}
.show-canvas.mob .show-frame{width:340px;height:100%;max-height:680px;border:9px solid #0c0f16;border-radius:34px;box-shadow:0 20px 60px rgba(0,0,0,.6),0 0 0 1px color-mix(in srgb,var(--sc) 30%,transparent)}
.show-notch{position:absolute;top:26px;left:50%;transform:translateX(-50%);width:110px;height:22px;background:#0c0f16;border-radius:0 0 14px 14px;z-index:2}
/* ═══ SITUACIONES (tour guiado) ═══ */
.tourbar{position:fixed;bottom:24px;left:244px;right:96px;max-width:720px;background:var(--s1);border:1px solid var(--bdc);border-radius:14px;box-shadow:0 18px 60px rgba(0,0,0,.55),0 0 0 1px rgba(0,194,209,.12);z-index:120;padding:14px 18px;display:flex;align-items:center;gap:14px;animation:fadeup .25s ease-out both}
.tour-num{width:34px;height:34px;border-radius:50%;background:var(--cyt);border:1px solid var(--bdc);color:var(--cy);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:15px;flex-shrink:0}
.tour-body{flex:1;min-width:0}
.tour-title{font-size:13px;font-weight:800}
.tour-desc{font-size:11.5px;color:var(--fg2);margin-top:2px;line-height:1.45}
.tour-progress{display:flex;gap:4px;margin-top:7px}
.tour-pb{height:3px;flex:1;border-radius:2px;background:var(--s3)}
.tour-pb.on{background:var(--cy)}
.tour-x{color:var(--fg3);cursor:pointer;font-size:14px;padding:4px;flex-shrink:0}
.tour-x:hover{color:var(--er)}
/* Tarjetas de situación (Resumen) */
.sit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.sit-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px 18px;cursor:pointer;transition:all .16s;position:relative;overflow:hidden}
.sit-card:hover{border-color:var(--bdc);transform:translateY(-2px)}
.sit-card::after{content:'▶';position:absolute;right:14px;bottom:12px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--sc,#00c2d1);opacity:.7}
.sit-ico{font-family:'IBM Plex Mono',monospace;font-size:16px;margin-bottom:8px}
.sit-t{font-size:13px;font-weight:800;margin-bottom:3px}
.sit-d{font-size:11px;color:var(--fg2);line-height:1.45}
.sit-steps{font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--fg3);margin-top:8px}
.status-row{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--ok);margin-bottom:8px}
.status-row.demo{color:var(--wa)}
.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.signout{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fg3);cursor:pointer;padding:8px 10px;border-radius:var(--r);transition:all .12s}
.signout:hover{background:var(--s2);color:var(--er)}
/* MAIN */
.main{overflow-y:auto;background:var(--bg);padding:24px 28px}
.main::-webkit-scrollbar{width:4px}
.main::-webkit-scrollbar-thumb{background:var(--s3);border-radius:2px}
.page-hd{margin-bottom:22px;display:flex;align-items:flex-start;justify-content:space-between}
.page-title{font-size:20px;font-weight:700;margin-bottom:2px}
.page-sub{font-size:13px;color:var(--fg2)}
/* El veredicto: una frase con lo unico que importa al entrar. Manda sobre el
   resto de la pantalla, por eso es mas grande que el subtitulo. */
.page-verdict{font-size:17px;line-height:1.45;color:var(--fg2);margin:6px 0 4px;max-width:70ch}
.page-verdict b{color:var(--fg);font-weight:600;font-variant-numeric:tabular-nums}
.page-verdict b.ok{color:var(--ok)}
.page-verdict b.wa{color:var(--wa)}
@media (max-width:700px){.page-verdict{font-size:15px}}
/* KPI GRID */
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:26px}
.kpi-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:18px 20px;animation:fadeup .22s ease-out both;position:relative;overflow:hidden}
.kpi-ico{width:30px;height:30px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:14px;margin-bottom:8px;font-family:'IBM Plex Mono',monospace}
.kpi-lbl{font-size:12px;color:var(--fg2);margin-bottom:4px}
.kpi-val{font-family:var(--font-display);font-size:34px;font-weight:400;line-height:1;letter-spacing:.01em}
.kpi-hint{font-size:11px;color:var(--fg3);margin-top:4px}
.kpi-spark{position:absolute;right:14px;bottom:12px;width:74px;height:26px;opacity:.9}
.cy{color:var(--cy)}.am{color:var(--am)}.ok{color:var(--ok)}.pu{color:var(--pu)}.er{color:var(--er)}
/* SECTION */
.sec{margin-bottom:26px}
.sec-hd{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:11px}
.sec-title{font-size:15px;font-weight:700}
.sec-link{font-size:12px;color:var(--cy);cursor:pointer;font-weight:600}
/* WF GRID / LIST */
.wf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.wf-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:15px 17px;display:flex;align-items:center;gap:13px;cursor:pointer;transition:all .15s}
.wf-card:hover{border-color:var(--bdm);background:var(--s2)}
.wf-ico{width:38px;height:38px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.wf-name{font-size:13px;font-weight:700;margin-bottom:2px}
.wf-meta{font-size:11px;color:var(--fg3)}
.wf-status{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;flex-shrink:0}
.wf-status.active{color:var(--ok);background:rgba(77,213,153,.1);border:1px solid rgba(77,213,153,.28)}
.wf-status.paused{color:var(--wa);background:rgba(240,179,74,.1);border:1px solid rgba(240,179,74,.25)}
.wf-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.wf-status.active .wf-status-dot{animation:pulse 2s ease-in-out infinite}
.wf-list{display:flex;flex-direction:column;gap:9px}
.wf-row{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:14px 17px;display:flex;align-items:center;gap:13px;cursor:pointer;transition:all .15s}
.wf-row:hover{border-color:var(--bdm)}
.wf-stats{display:flex;gap:18px;margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3);flex-shrink:0}
.wf-stats span{display:flex;flex-direction:column;align-items:flex-end}
.wf-stats b{color:var(--fg);font-size:12px}
/* ACTIVITY */
.act-list{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:0 17px}
.act-row{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--bd)}
.act-row:last-child{border-bottom:none}
.act-ico{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;margin-top:2px;font-family:'IBM Plex Mono',monospace}
.act-ico.warn{background:rgba(240,179,74,.12);color:var(--wa)}.act-ico.ok{background:rgba(77,213,153,.1);color:var(--ok)}.act-ico.info{background:rgba(0,194,209,.1);color:var(--cy)}.act-ico.er{background:rgba(255,93,93,.1);color:var(--er)}
.act-t{font-size:13px;font-weight:600;margin-bottom:2px}
.act-d{font-size:11px;color:var(--fg2)}
.act-time{font-size:10px;color:var(--fg3);white-space:nowrap;flex-shrink:0;margin-top:3px;font-family:'IBM Plex Mono',monospace}
/* GATE */
.gate{background:var(--s1);border:1px dashed rgba(167,139,250,.3);border-radius:var(--rx);padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:11px}
.gate-ico{font-size:34px;font-family:'IBM Plex Mono',monospace;color:var(--pu)}
.gate-t{font-size:16px;font-weight:700}
.gate-s{font-size:13px;color:var(--fg2);max-width:320px;line-height:1.5}
.gate-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;border-radius:var(--r);background:var(--pu);color:var(--bg);font-weight:700;font-size:13px;cursor:pointer;border:none;transition:opacity .15s;margin-top:4px;font-family:'Outfit',sans-serif}
.gate-btn:hover{opacity:.88}
/* BUTTONS */
.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;border-radius:var(--r);font-size:13px;font-weight:600;cursor:pointer;border:none;font-family:'Outfit',sans-serif;transition:all .15s}
.btn.p{background:var(--cy);color:var(--bg)}.btn.p:hover{background:var(--cyb)}
.btn.s{background:var(--s2);color:var(--fg);border:1px solid var(--bdm)}.btn.s:hover{background:var(--s3)}
.btn.ok{background:transparent;color:var(--ok);border:1px solid rgba(77,213,153,.4)}.btn.ok:hover{background:rgba(77,213,153,.12)}
.btn.er{background:transparent;color:var(--er);border:1px solid rgba(255,93,93,.4)}.btn.er:hover{background:rgba(255,93,93,.12)}
.btn:disabled{opacity:.45;cursor:default}
/* CHAT WIDGET */
.chat-fab{position:fixed;bottom:24px;right:24px;width:48px;height:48px;border-radius:50%;background:var(--cy);color:var(--bg);display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;box-shadow:0 0 0 1px rgba(0,194,209,.28),0 0 24px rgba(0,194,209,.20);z-index:100;transition:transform .15s;border:none}
.chat-fab:hover{transform:scale(1.08)}
.chat-unread{position:absolute;top:-2px;right:-2px;width:16px;height:16px;border-radius:50%;background:var(--er);color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg)}
.chat-panel{position:fixed;bottom:84px;right:24px;width:320px;height:440px;background:var(--s1);border:1px solid var(--bdm);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5);display:flex;flex-direction:column;z-index:100;overflow:hidden}
.chat-hd{padding:13px 15px;border-bottom:1px solid var(--bd);display:flex;align-items:center;gap:10px}
.chat-ava{width:30px;height:30px;border-radius:50%;background:var(--cy);display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--bg);flex-shrink:0;font-weight:700}
.chat-hn{font-size:13px;font-weight:700}
.chat-hs{font-size:10px;color:var(--ok)}
.chat-x{margin-left:auto;font-size:16px;cursor:pointer;color:var(--fg3);padding:4px}
.chat-msgs{flex:1;overflow-y:auto;padding:13px;display:flex;flex-direction:column;gap:9px}
.chat-msgs::-webkit-scrollbar{width:3px}
.bubble{padding:9px 12px;border-radius:12px;font-size:12px;line-height:1.5;max-width:84%}
.bubble.bot{background:var(--s2);color:var(--fg);border-bottom-left-radius:3px;align-self:flex-start}
.bubble.user{background:var(--cy);color:var(--bg);border-bottom-right-radius:3px;align-self:flex-end}
.chat-inp-row{padding:10px;border-top:1px solid var(--bd);display:flex;gap:7px}
.chat-inp{flex:1;background:var(--s2);border:1px solid var(--bdm);border-radius:9px;padding:7px 11px;color:var(--fg);font-size:12px;outline:none;font-family:'Outfit',sans-serif}
.chat-inp::placeholder{color:var(--fg3)}
.chat-send{width:32px;height:32px;border-radius:9px;background:var(--cy);color:var(--bg);border:none;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}
/* LOGIN */
/* La entrada: a la izquierda que es esto (con el registro moviendose), a la
   derecha la tarjeta. En movil se apila y la izquierda queda de cabecera. */
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:48px;padding:40px 6vw;background:radial-gradient(ellipse 70% 60% at 18% 40%,rgba(0,194,209,.10),transparent 60%),var(--bg)}
.login-page::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.5;background-image:linear-gradient(rgba(244,239,230,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(244,239,230,.03) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 20% 45%,#000,transparent 70%);mask-image:radial-gradient(ellipse 70% 70% at 20% 45%,#000,transparent 70%)}
.login-side{position:relative;z-index:1}
.login-side-in{max-width:520px;margin-left:auto}
.login-h1{font-family:var(--font-display);font-size:clamp(44px,5vw,74px);line-height:.94;letter-spacing:.01em;margin:22px 0 14px;text-transform:uppercase}
.login-h1 em{font-style:normal;color:var(--cy)}
.login-lead{font-size:15px;color:var(--fg2);margin:0 0 26px;max-width:46ch}
.login-proof{list-style:none;margin:0 0 30px;padding:0;display:grid;gap:11px}
.login-proof li{display:flex;gap:11px;align-items:flex-start;font-size:13.5px;color:var(--fg2)}
.login-proof li span{width:6px;height:6px;margin-top:7px;flex:0 0 auto;border-radius:99px;background:var(--cy);box-shadow:0 0 0 3px var(--cyt)}
.login-log{background:linear-gradient(180deg,var(--s1),rgba(10,12,16,.55));border:1px solid var(--bd);border-radius:var(--rl);overflow:hidden;max-width:440px}
.login-log-hd{display:flex;align-items:center;gap:9px;padding:11px 15px;border-bottom:1px solid var(--bd);font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg2)}
.login-log-hd small{margin-left:auto;font-size:9px;color:var(--fg3);letter-spacing:.08em}
.login-log-dot{width:6px;height:6px;border-radius:99px;background:var(--ok);box-shadow:0 0 0 3px rgba(77,213,153,.14)}
.login-log-row{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:10px 15px;border-bottom:1px solid var(--bd);font-size:12.5px;color:var(--fg2);opacity:0;transform:translateY(6px);animation:login-in .5s cubic-bezier(.16,1,.3,1) forwards}
.login-log-row:last-child{border-bottom:0}
.login-log-row b{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:500;color:var(--fg);font-variant-numeric:tabular-nums}
.login-log-row .st{font-family:'IBM Plex Mono',monospace;font-style:normal;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border-radius:99px;border:1px solid rgba(77,213,153,.36);color:var(--ok);background:rgba(77,213,153,.08)}
.login-log-row .st.wa{border-color:rgba(240,179,74,.38);color:var(--wa);background:rgba(240,179,74,.08)}
.login-log-row.r0{animation-delay:.06s}.login-log-row.r1{animation-delay:.16s}.login-log-row.r2{animation-delay:.26s}
.login-log-row.r3{animation-delay:.36s}.login-log-row.r4{animation-delay:.46s}
@keyframes login-in{to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.login-log-row{animation:none;opacity:1;transform:none}}
.login-card{position:relative;z-index:1;background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:34px 30px;width:100%;max-width:400px;box-shadow:0 24px 70px rgba(0,0,0,.55)}
.login-logo{display:flex;align-items:center;gap:10px;margin-bottom:4px}
.login-logo-ico{width:36px;height:36px;border-radius:9px;background:var(--cy);display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-weight:600;font-size:15px;color:var(--bg)}
.login-brand{font-size:16px;font-weight:700}
.login-brand span{color:var(--cy)}
.login-t{font-size:21px;font-weight:700;margin-bottom:4px}
.login-s{font-size:13px;color:var(--fg2);margin-bottom:22px}
.login-f{display:flex;flex-direction:column;gap:5px;margin-bottom:13px}
.login-lbl{font-size:10px;font-weight:600;color:var(--fg2);text-transform:uppercase;letter-spacing:.06em}
.login-inp{background:var(--s2);border:1px solid var(--bdm);border-radius:var(--r);padding:10px 13px;color:var(--fg);font-size:13px;font-family:'Outfit',sans-serif;outline:none;transition:border-color .15s;width:100%}
.login-inp:focus{border-color:var(--bdc)}
.login-inp::placeholder{color:var(--fg3)}
.login-btn{width:100%;padding:12px;border-radius:var(--r);background:var(--cy);color:var(--bg);font-size:14px;font-weight:700;border:none;cursor:pointer;margin-top:6px;transition:background .15s;font-family:'Outfit',sans-serif}
.login-btn:hover{background:var(--cyb)}
.login-err{font-size:12px;color:var(--er);margin-top:-6px}
.login-div{display:flex;align-items:center;gap:10px;margin:16px 0;color:var(--fg3);font-size:11px}
.login-div::before,.login-div::after{content:'';flex:1;height:1px;background:var(--bd)}
.login-google{width:100%;padding:10px;border-radius:var(--r);background:var(--s2);border:1px solid var(--bdm);color:var(--fg);font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:7px;font-family:'Outfit',sans-serif;transition:background .15s}
.login-google:hover{background:var(--s3)}
.login-ft{text-align:center;margin-top:18px;font-size:12px;color:var(--fg3)}
.login-ft a{color:var(--cy);cursor:pointer}
.login-hint{display:block;font-size:10px;color:var(--fg3);margin-top:5px}
/* CITAS */
.cita-row{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:14px 17px;display:flex;align-items:center;gap:14px;transition:all .15s;cursor:pointer}
.cita-row:hover{border-color:var(--bdm)}
.cita-hora{width:55px;text-align:center;flex-shrink:0}
.cita-h{font-size:17px;font-weight:700;color:var(--cy)}
.cita-dur{font-size:10px;color:var(--fg3)}
.vline{width:1px;background:var(--bd);align-self:stretch;flex-shrink:0;margin:0 2px}
/* TABS */
.tabs{display:flex;gap:3px;background:var(--s1);border-radius:var(--r);padding:3px;width:fit-content;margin-bottom:18px}
.tab{padding:6px 15px;border-radius:6px;border:none;cursor:pointer;font-family:'Outfit',sans-serif;font-weight:600;font-size:13px;background:transparent;transition:all .15s}
.tab.act{background:var(--s3);color:var(--fg)}
.tab:not(.act){color:var(--fg3)}
/* ANIM */
@keyframes fadeup{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.kpi-card:nth-child(1){animation-delay:.04s}.kpi-card:nth-child(2){animation-delay:.08s}.kpi-card:nth-child(3){animation-delay:.12s}.kpi-card:nth-child(4){animation-delay:.16s}
@keyframes rowflash{0%{background:rgba(0,194,209,.14)}100%{background:transparent}}
.row-flash{animation:rowflash 1.6s ease-out}
/* SKELETON */
@keyframes shimmer{0%{background-position:-400px 0}100%{background-position:400px 0}}
.skel{border-radius:var(--r);background:linear-gradient(90deg,var(--s1) 25%,var(--s2) 37%,var(--s1) 63%);background-size:800px 100%;animation:shimmer 1.3s linear infinite}
.skel-row{height:52px;margin-bottom:9px}
/* TOAST */
.toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,20px);z-index:400;font-family:'IBM Plex Mono',monospace;font-size:12px;padding:11px 20px;border-radius:999px;background:var(--s2);border:1px solid var(--bdm);color:var(--fg);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;max-width:90vw}
.toast.show{opacity:1;transform:translate(-50%,0)}
.toast.ok{border-color:rgba(77,213,153,.4);color:var(--ok)}
.toast.err{border-color:rgba(255,93,93,.4);color:var(--er)}
.vconfetti{position:fixed;width:7px;height:7px;border-radius:2px;pointer-events:none;z-index:500}
/* ROI HERO */
.roi-hero{background:linear-gradient(135deg,rgba(0,194,209,.1) 0%,rgba(77,213,153,.06) 100%);border:1px solid rgba(0,194,209,.25);border-radius:12px;padding:24px 28px;margin-bottom:24px;display:flex;align-items:center;gap:0;animation:fadeup .3s ease-out both}
.roi-main{flex:1}
.roi-eyebrow{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cy);margin-bottom:8px}
.roi-headline{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.roi-invested{font-size:13px;color:var(--fg3)}
.roi-arrow{font-size:22px;color:var(--fg3);margin:0 4px}
.roi-generated{font-family:var(--font-display);font-size:48px;font-weight:400;color:var(--ok);letter-spacing:.01em;line-height:1}
.roi-x{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--ok);background:rgba(77,213,153,.12);border:1px solid rgba(77,213,153,.3);border-radius:999px;padding:3px 10px;margin-left:6px}
.roi-sub{font-size:12px;color:var(--fg2);margin-top:6px}
.roi-how{font-size:10px;color:var(--fg3);margin-top:6px;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}
.roi-divider{width:1px;background:rgba(0,194,209,.2);height:72px;margin:0 28px;flex-shrink:0}
.roi-stats{display:flex;gap:28px}
.roi-stat{text-align:center}
.roi-stat-val{font-size:22px;font-weight:800;color:var(--fg);letter-spacing:-.02em}
.roi-stat-lbl{font-size:10px;color:var(--fg3);margin-top:2px}
/* ALERTS */
.alert-strip{display:flex;flex-direction:column;gap:8px;margin-bottom:24px}
.alert-card{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;border:1px solid;animation:fadeup .2s ease-out both;cursor:pointer;transition:filter .12s}
.alert-card:hover{filter:brightness(1.08)}
.alert-card.urgent{background:rgba(255,93,93,.07);border-color:rgba(255,93,93,.3)}
.alert-card.warn{background:rgba(240,179,74,.06);border-color:rgba(240,179,74,.25)}
.alert-card.info{background:rgba(0,194,209,.06);border-color:rgba(0,194,209,.2)}
.alert-ico{font-size:15px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.alert-card.urgent .alert-ico{color:var(--er)}.alert-card.warn .alert-ico{color:var(--wa)}.alert-card.info .alert-ico{color:var(--cy)}
.alert-body{flex:1;min-width:0}
.alert-t{font-size:13px;font-weight:700}
.alert-d{font-size:11px;color:var(--fg2);margin-top:1px}
.alert-act{flex-shrink:0;padding:6px 14px;border-radius:8px;border:none;font-size:12px;font-weight:700;cursor:pointer;font-family:'Outfit',sans-serif;white-space:nowrap;transition:opacity .12s}
.alert-act:hover{opacity:.8}
.alert-act.red{background:rgba(255,93,93,.18);color:#ff8a8a}
.alert-act.amber{background:rgba(240,179,74,.18);color:var(--wa)}
.alert-act.cyan{background:var(--cyt);color:var(--cy)}
/* PIPELINE */
.pipeline-list{display:flex;flex-direction:column;gap:0;background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);overflow:hidden}
.pipeline-hd{display:grid;grid-template-columns:2fr 1.2fr 1fr 1.2fr 100px;gap:0;padding:10px 18px;border-bottom:1px solid var(--bd);background:var(--s2)}
.pipeline-hd span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--fg3)}
.lead-row{display:grid;grid-template-columns:2fr 1.2fr 1fr 1.2fr 100px;gap:0;padding:13px 18px;border-bottom:1px solid var(--bd);align-items:center;cursor:pointer;transition:background .12s}
.lead-row:last-child{border-bottom:none}
.lead-row:hover{background:var(--s2)}
.lead-name{font-size:13px;font-weight:700}
.lead-emp{font-size:11px;color:var(--fg3);margin-top:1px}
.lead-chip{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.lead-chip.hot{color:#ff8a8a;background:rgba(255,93,93,.12);border:1px solid rgba(255,93,93,.3)}
.lead-chip.warm{color:var(--wa);background:rgba(240,179,74,.1);border:1px solid rgba(240,179,74,.25)}
.lead-chip.cold{color:var(--fg3);background:rgba(255,255,255,.05);border:1px solid var(--bd)}
.lead-chip.won{color:var(--ok);background:rgba(77,213,153,.1);border:1px solid rgba(77,213,153,.28)}
.lead-action{display:flex;gap:6px}
.lead-btn{width:30px;height:30px;border-radius:8px;border:1px solid var(--bd);background:var(--s2);color:var(--fg2);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;transition:all .12s;font-family:'IBM Plex Mono',monospace}
.lead-btn:hover{background:var(--cyt);border-color:var(--bdc);color:var(--cy)}
.lead-detail{grid-column:1/-1;background:var(--s2);border-radius:var(--r);padding:14px 16px;margin-top:10px}
.score-bar{height:6px;background:var(--s3);border-radius:3px;overflow:hidden;margin-top:4px}
.score-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--cy),var(--ok))}
/* NAT FEED */
.nat-feed{display:flex;flex-direction:column;gap:0;background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:0 18px}
.nat-row{display:flex;align-items:flex-start;gap:12px;padding:13px 0;border-bottom:1px solid var(--bd)}
.nat-row:last-child{border-bottom:none}
.nat-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:5px}
.nat-dot.ok{background:var(--ok)}.nat-dot.warn{background:var(--wa)}.nat-dot.er{background:var(--er)}.nat-dot.info{background:var(--cy)}
.nat-msg{font-size:13px;color:var(--fg);line-height:1.5;flex:1}
.nat-msg b{color:var(--fg);font-weight:700}
.nat-msg em{color:var(--ok);font-style:normal;font-weight:600}
.nat-time{font-size:10px;color:var(--fg3);white-space:nowrap;font-family:'IBM Plex Mono',monospace;margin-top:2px;flex-shrink:0}
/* INFORME */
.informe-card{background:var(--s1);border:1px solid var(--bd);border-radius:12px;overflow:hidden;margin-bottom:20px}
.informe-header{background:linear-gradient(135deg,rgba(0,194,209,.1),rgba(167,139,250,.06));padding:22px 24px;border-bottom:1px solid var(--bd);display:flex;align-items:center;justify-content:space-between}
.informe-week{font-size:12px;color:var(--cy);font-weight:700;letter-spacing:.04em;margin-bottom:2px}
.informe-title{font-size:18px;font-weight:800}
.informe-pdf-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--r);background:var(--s2);border:1px solid var(--bdm);color:var(--fg);font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;font-family:'Outfit',sans-serif}
.informe-pdf-btn:hover{background:var(--s3);border-color:var(--bdc);color:var(--cy)}
.informe-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid var(--bd)}
.informe-kpi{padding:18px 22px;border-right:1px solid var(--bd);text-align:center}
.informe-kpi:last-child{border-right:none}
.informe-kpi-val{font-family:var(--font-display);font-size:30px;font-weight:400;letter-spacing:.01em;margin-bottom:3px}
.informe-kpi-lbl{font-size:11px;color:var(--fg3)}
.informe-highlights{padding:20px 24px;display:flex;flex-direction:column;gap:10px}
.informe-hl{display:flex;align-items:flex-start;gap:10px}
.informe-hl-ico{width:24px;height:24px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.informe-hl-t{font-size:13px;font-weight:600;color:var(--fg)}
.informe-hl-s{font-size:11px;color:var(--fg2);margin-top:1px}
/* ONBOARDING */
.onboard-bar{background:linear-gradient(135deg,rgba(167,139,250,.1),rgba(0,194,209,.06));border:1px solid rgba(167,139,250,.28);border-radius:12px;padding:16px 20px;margin-bottom:20px;animation:fadeup .25s ease-out both}
.onboard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.onboard-title{font-size:13px;font-weight:700;color:var(--pu)}
.onboard-pct{font-size:12px;font-weight:700;color:var(--fg2)}
.onboard-track{height:6px;background:rgba(255,255,255,.08);border-radius:3px;margin-bottom:12px;overflow:hidden}
.onboard-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--pu),var(--cy));transition:width .6s ease}
.onboard-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}
.onboard-step{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:9px;font-weight:600;text-align:center;color:var(--fg3)}
.onboard-step.done{color:var(--ok)}
.onboard-step.todo{color:var(--pu);cursor:pointer}
.onboard-step-ico{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-family:'IBM Plex Mono',monospace}
.onboard-step.done .onboard-step-ico{background:rgba(77,213,153,.15);border:1px solid rgba(77,213,153,.35)}
.onboard-step.todo .onboard-step-ico{background:rgba(167,139,250,.1);border:1px dashed rgba(167,139,250,.4)}
.onboard-step.pending .onboard-step-ico{background:rgba(255,255,255,.05);border:1px solid var(--bd)}
/* INTEGRATIONS */
.int-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.int-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:18px 20px;display:flex;align-items:flex-start;gap:14px;transition:border-color .15s}
.int-card:hover{border-color:var(--bdm)}
.int-logo{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.int-body{flex:1;min-width:0}
.int-name{font-size:14px;font-weight:700;margin-bottom:2px}
.int-desc{font-size:11px;color:var(--fg3);line-height:1.4}
.int-sync{font-size:10px;color:var(--fg3);margin-top:5px;font-family:'IBM Plex Mono',monospace}
.int-status{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;margin-top:6px}
.int-status.ok{color:var(--ok);background:rgba(77,213,153,.1);border:1px solid rgba(77,213,153,.28)}
.int-status.err{color:var(--er);background:rgba(255,93,93,.1);border:1px solid rgba(255,93,93,.28)}
.int-status.soon{color:var(--fg3);background:rgba(255,255,255,.05);border:1px solid var(--bd)}
.int-status.warn{color:var(--wa);background:rgba(240,179,74,.1);border:1px solid rgba(240,179,74,.28)}
.int-act{margin-left:auto;flex-shrink:0;padding:6px 12px;border-radius:var(--r);font-size:11px;font-weight:700;cursor:pointer;border:1px solid;background:transparent;font-family:'Outfit',sans-serif;transition:all .15s}
.int-act.connect{color:var(--cy);border-color:var(--bdc)}.int-act.connect:hover{background:var(--cyt)}
.int-act.done{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok) 10%,transparent);cursor:default}
.int-summary{display:flex;align-items:center;gap:6px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:14px 20px;margin-bottom:16px;flex-wrap:wrap}
.int-sum-stat{flex:1;min-width:110px;text-align:center}
.int-sum-stat b{display:block;font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:800;line-height:1}
.int-sum-stat span{display:block;font-size:11px;color:var(--fg2);margin-top:4px}
.int-sum-sep{width:1px;align-self:stretch;background:var(--bd);margin:4px 0}
@media(max-width:640px){.int-sum-sep{display:none}}
/* ROADMAP */
.roadmap{display:flex;flex-direction:column;gap:0;position:relative;padding-left:28px}
.roadmap::before{content:'';position:absolute;left:10px;top:20px;bottom:20px;width:2px;background:linear-gradient(to bottom,var(--cy),rgba(167,139,250,.3));border-radius:1px}
.rm-item{position:relative;padding:0 0 28px 24px;animation:fadeup .2s ease-out both}
.rm-item:last-child{padding-bottom:0}
.rm-dot{position:absolute;left:-18px;top:4px;width:16px;height:16px;border-radius:50%;border:2px solid;display:flex;align-items:center;justify-content:center;font-size:8px;font-weight:900;background:var(--bg)}
.rm-dot.done{border-color:var(--ok);background:rgba(77,213,153,.2);color:var(--ok)}
.rm-dot.active{border-color:var(--cy);background:var(--cyt);color:var(--cy);box-shadow:0 0 12px rgba(0,194,209,.35)}
.rm-dot.next{border-color:var(--pu);background:rgba(167,139,250,.1);color:var(--pu)}
.rm-dot.future{border-color:var(--bd);background:var(--s2);color:var(--fg3)}
.rm-card{background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:16px 18px}
.rm-card.active{border-color:rgba(0,194,209,.3);background:rgba(0,194,209,.04)}
.rm-card.done{opacity:.75}
.rm-week{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px}
.rm-week.done{color:var(--ok)}.rm-week.active{color:var(--cy)}.rm-week.next{color:var(--pu)}.rm-week.future{color:var(--fg3)}
.rm-title{font-size:14px;font-weight:700;margin-bottom:4px}
.rm-items{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.rm-it{font-size:12px;color:var(--fg2);display:flex;align-items:center;gap:6px}
.rm-roi{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:11px;font-weight:700;color:var(--ok);background:rgba(77,213,153,.08);border:1px solid rgba(77,213,153,.2);border-radius:8px;padding:3px 9px}
/* TEST AGENT */
.agent-test-shell{display:grid;grid-template-columns:1fr 280px;gap:16px;height:calc(100% - 120px)}
.agent-test-chat{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);display:flex;flex-direction:column;overflow:hidden}
.agent-test-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.agent-test-msgs::-webkit-scrollbar{width:3px}
.agent-test-msgs::-webkit-scrollbar-thumb{background:var(--s3)}
.test-bubble{padding:10px 14px;border-radius:12px;font-size:13px;line-height:1.5;max-width:82%}
.test-bubble.user{background:var(--cy);color:var(--bg);border-bottom-right-radius:4px;align-self:flex-end}
.test-bubble.agent{background:var(--s2);color:var(--fg);border-bottom-left-radius:4px;align-self:flex-start;border:1px solid var(--bd)}
.test-bubble.typing{color:var(--fg3);font-style:italic}
.agent-test-inp{display:flex;gap:8px;padding:12px;border-top:1px solid var(--bd)}
.agent-meta{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}
.agent-meta::-webkit-scrollbar{display:none}
.meta-section{display:flex;flex-direction:column;gap:6px}
.meta-label{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg3);margin-bottom:2px}
.meta-val{font-size:12px;color:var(--fg);background:var(--s2);border:1px solid var(--bd);border-radius:var(--r);padding:7px 10px;font-family:'IBM Plex Mono',monospace;line-height:1.4}
.meta-chip{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:3px 8px;border-radius:999px;background:rgba(0,194,209,.1);color:var(--cy);border:1px solid rgba(0,194,209,.2)}
.chip-suggest{font-family:'Outfit',sans-serif;font-size:12px;background:var(--s2);border:1px solid var(--bdm);color:var(--fg2);border-radius:999px;padding:7px 13px;cursor:pointer;transition:all .15s}
.chip-suggest:hover{border-color:var(--bdc);color:var(--cy)}
/* PROYECCION */
.proy-hero{background:linear-gradient(135deg,rgba(77,213,153,.1),rgba(0,194,209,.06));border:1px solid rgba(77,213,153,.28);border-radius:12px;padding:24px 28px;margin-bottom:22px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:0}
.proy-now{padding-right:28px;border-right:1px solid rgba(77,213,153,.2)}
.proy-arrow{display:flex;align-items:center;justify-content:center;font-size:28px;color:var(--ok)}
.proy-future{padding-left:28px}
.proy-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg3);margin-bottom:6px}
.proy-val{font-family:var(--font-display);font-size:40px;font-weight:400;letter-spacing:.01em;line-height:1;margin-bottom:4px}
.proy-val.now{color:var(--cy)}.proy-val.fut{color:var(--ok)}
.proy-hint{font-size:12px;color:var(--fg2)}
.scenario-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:22px}
.scenario-card{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:18px;cursor:pointer;transition:all .15s;position:relative}
.scenario-card:hover,.scenario-card.sel{border-color:rgba(77,213,153,.4);background:rgba(77,213,153,.05)}
.scenario-card.sel::after{content:'Seleccionado';position:absolute;top:10px;right:10px;font-size:9px;font-weight:700;color:var(--ok)}
.sc-ico{font-size:20px;margin-bottom:8px;font-family:'IBM Plex Mono',monospace;color:var(--cy)}
.sc-title{font-size:13px;font-weight:700;margin-bottom:4px}
.sc-desc{font-size:11px;color:var(--fg2);line-height:1.4;margin-bottom:10px}
.sc-roi{font-size:18px;font-weight:800;color:var(--ok);margin-bottom:2px}
.sc-roi-lbl{font-size:10px;color:var(--fg3)}
.sc-setup{font-size:10px;color:var(--cy);margin-top:8px;font-weight:600}
/* BENCH */
.bench-row{display:flex;align-items:center;gap:12px;padding:13px 18px;background:var(--s1);border:1px solid var(--bd);border-radius:12px;margin-bottom:8px}
.bench-metric{font-size:12px;font-weight:600;color:var(--fg2);width:160px;flex-shrink:0}
.bench-bar-wrap{flex:1;height:8px;background:rgba(255,255,255,.07);border-radius:4px;overflow:visible;position:relative}
.bench-bar-sector{height:100%;border-radius:4px;background:rgba(255,255,255,.15)}
.bench-bar-you{position:absolute;top:0;height:100%;border-radius:4px;background:linear-gradient(90deg,var(--cy),var(--ok))}
.bench-label-s{font-size:10px;color:var(--fg3);width:60px;text-align:right;flex-shrink:0}
.bench-label-y{font-size:10px;font-weight:700;color:var(--ok);width:60px;text-align:right;flex-shrink:0}
/* SOPORTE */
.ticket-list{display:flex;flex-direction:column;gap:8px}
.ticket-card{background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:15px 18px;display:flex;align-items:flex-start;gap:13px;cursor:pointer;transition:all .15s}
.ticket-card:hover{border-color:var(--bdm)}
.ticket-prio{width:3px;height:40px;border-radius:2px;flex-shrink:0;margin-top:2px}
.ticket-prio.alta{background:var(--er)}.ticket-prio.media{background:var(--wa)}.ticket-prio.baja{background:var(--cy)}.ticket-prio.done{background:var(--ok)}
.ticket-ico{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;background:var(--s2);font-family:'IBM Plex Mono',monospace}
.ticket-body{flex:1;min-width:0}
.ticket-title{font-size:13px;font-weight:700;margin-bottom:2px}
.ticket-meta{font-size:11px;color:var(--fg3)}
.ticket-status{flex-shrink:0;align-self:flex-start}
.sla-bar{background:var(--s1);border:1px solid rgba(77,213,153,.25);border-radius:12px;padding:16px 20px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.sla-item{text-align:center;flex:1}
.sla-val{font-size:22px;font-weight:800;color:var(--ok);margin-bottom:2px}
.sla-lbl{font-size:10px;color:var(--fg3)}
.sla-sep{width:1px;height:40px;background:var(--bd);flex-shrink:0}
/* API */
.api-endpoint{background:var(--s1);border:1px solid var(--bd);border-radius:12px;overflow:hidden;margin-bottom:12px}
.api-ep-hd{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--s2);border-bottom:1px solid var(--bd);cursor:pointer}
.api-method{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;padding:3px 8px;border-radius:5px}
.api-method.get{background:rgba(77,213,153,.15);color:var(--ok)}.api-method.post{background:rgba(167,139,250,.15);color:var(--pu)}
.api-path{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--cy)}
.api-desc{font-size:11px;color:var(--fg3);margin-left:auto}
.api-body{padding:14px 16px;display:flex;gap:14px;flex-direction:column}
.api-response{background:var(--bg);border:1px solid var(--bd);border-radius:var(--r);padding:12px;font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--ok);line-height:1.6;white-space:pre;overflow-x:auto}
/* ECOSISTEMA */
.eco-status-bar{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:26px}
.eco-status-item{background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:10px 12px;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .15s}
.eco-status-item:hover{border-color:var(--bdm);background:var(--s2)}
.eco-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.eco-status-dot.ok{background:var(--ok);box-shadow:0 0 6px var(--ok)}
.eco-status-dot.warn{background:var(--wa)}.eco-status-dot.off{background:var(--fg3)}.eco-status-dot.lock{background:var(--bd)}
.eco-status-ico{font-size:12px;font-family:'IBM Plex Mono',monospace;color:var(--fg2)}
.eco-status-lbl{font-size:10px;font-weight:700;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.eco-status-cnt{margin-left:auto;font-size:10px;font-weight:800;color:var(--fg2);font-family:'IBM Plex Mono',monospace}
.eco-folder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.eco-folder{border-radius:12px;padding:24px;cursor:pointer;transition:all .18s;position:relative;overflow:hidden;border:1px solid transparent}
.eco-folder:hover{transform:translateY(-3px);border-color:var(--bdc)}
.eco-folder.locked{opacity:.55;cursor:default}
.eco-folder-glow{position:absolute;top:-30px;right:-30px;width:120px;height:120px;border-radius:50%;opacity:.15;filter:blur(30px);pointer-events:none}
.eco-folder-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px}
.eco-folder-ico{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.eco-folder-badge{display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.eco-folder-count{font-size:22px;font-weight:900;letter-spacing:-.02em;line-height:1}
.eco-folder-count-lbl{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;opacity:.6}
.eco-folder-name{font-size:16px;font-weight:800;margin-bottom:4px;letter-spacing:-.01em}
.eco-folder-desc{font-size:11px;opacity:.65;line-height:1.4;margin-bottom:16px}
.eco-folder-metrics{display:flex;gap:8px;flex-wrap:wrap}
.eco-metric-chip{font-size:10px;font-weight:700;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15)}
.eco-folder-action{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.1)}
.eco-folder-cta{font-size:11px;font-weight:700;opacity:.8}
.eco-folder-arrow{font-size:16px;opacity:.6}
.eco-detail-header{display:flex;align-items:center;gap:14px;margin-bottom:24px}
.eco-back-btn{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--fg2);cursor:pointer;padding:7px 12px;background:var(--s1);border:1px solid var(--bd);border-radius:var(--r);transition:all .12s;flex-shrink:0}
.eco-back-btn:hover{color:var(--fg);border-color:var(--bdm)}
.eco-detail-title{font-size:22px;font-weight:800;display:flex;align-items:center;gap:10px}
.eco-detail-badge{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;border:1px solid}
.eco-items-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.eco-item{background:var(--s1);border:1px solid var(--bd);border-radius:12px;overflow:hidden;transition:all .15s;cursor:default}
.eco-item:hover{border-color:var(--bdm);transform:translateY(-1px)}
.eco-item-accent{height:4px;width:100%}
.eco-item-body{padding:18px 20px}
.eco-item-header{display:flex;align-items:flex-start;gap:13px;margin-bottom:14px}
.eco-item-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.eco-item-info{flex:1;min-width:0}
.eco-item-name{font-size:14px;font-weight:800;margin-bottom:2px}
.eco-item-type{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--fg3)}
.eco-item-status{flex-shrink:0}
.eco-item-desc{font-size:12px;color:var(--fg2);line-height:1.5;margin-bottom:14px}
.eco-item-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:12px;background:var(--s2);border-radius:10px;margin-bottom:14px}
.eco-item-met{text-align:center}
.eco-item-met-val{font-size:16px;font-weight:800;font-family:'IBM Plex Mono',monospace}
.eco-item-met-lbl{font-size:9px;color:var(--fg3);margin-top:1px}
.eco-item-actions{display:flex;gap:7px;flex-wrap:wrap}
.eco-item-btn{display:flex;align-items:center;gap:5px;padding:7px 13px;border-radius:8px;font-size:11px;font-weight:700;cursor:pointer;border:1px solid;font-family:'Outfit',sans-serif;transition:all .12s;white-space:nowrap}
.eco-item-btn.primary{background:var(--cyt);border-color:var(--bdc);color:var(--cy)}
.eco-item-btn.secondary{background:rgba(255,255,255,.04);border-color:var(--bd);color:var(--fg2)}
.eco-item-btn:hover{opacity:.8}
.eco-request-banner{background:linear-gradient(135deg,rgba(0,194,209,.06),rgba(167,139,250,.04));border:1px dashed rgba(0,194,209,.3);border-radius:12px;padding:22px 24px;display:flex;align-items:center;gap:18px;margin-top:18px}
.eco-req-ico{font-size:24px;flex-shrink:0;font-family:'IBM Plex Mono',monospace;color:var(--cy)}
.eco-req-body{flex:1}
.eco-req-t{font-size:14px;font-weight:700;margin-bottom:3px}
.eco-req-s{font-size:12px;color:var(--fg2)}
/* ═══ CANVAS DE WORKFLOWS (adaptado de workflow-editor) ═══ */
.wfc-wrap{position:relative;background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);overflow:hidden;height:380px;background-image:radial-gradient(rgba(244,239,230,.05) 1px,transparent 1px);background-size:26px 26px}
.wfc-inner{position:absolute;top:0;left:0;transform-origin:0 0}
svg.wfc-edges{position:absolute;top:0;left:0;overflow:visible;pointer-events:none}
.edge-path{fill:none;stroke:var(--bdm);stroke-width:2}
.edge-path.branch-ok{stroke:rgba(77,213,153,.4)}
.edge-path.branch-wa{stroke:rgba(240,179,74,.4)}
.edge-flow{fill:none;stroke:var(--cy);stroke-width:2;stroke-dasharray:6 10;opacity:.9;animation:flow 1.4s linear infinite}
@keyframes flow{to{stroke-dashoffset:-160}}
.wfc-node{position:absolute;width:168px;background:var(--s2);border:1px solid var(--bdm);border-radius:var(--rl);padding:12px 14px;cursor:pointer;user-select:none;box-shadow:0 8px 24px rgba(0,0,0,.4);transition:border-color .15s;z-index:2}
.wfc-node:hover{border-color:var(--bdc)}
.wfc-node.selected{border-color:var(--cy);box-shadow:0 0 0 1px var(--bdc),0 0 32px rgba(0,194,209,.18)}
.wfc-node-type{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:5px;display:flex;align-items:center;gap:6px}
.wfc-node-type.trigger{color:var(--pu)}.wfc-node-type.data{color:var(--cy)}.wfc-node-type.ai{color:var(--ok)}.wfc-node-type.gate{color:var(--wa)}.wfc-node-type.write{color:var(--fg2)}
.wfc-node-title{font-size:11.5px;font-weight:600;line-height:1.3;color:var(--fg)}
.wfc-gate-live{margin-top:6px;font-family:'IBM Plex Mono',monospace;font-size:9px;display:flex;gap:8px}
.wfc-gate-live .g-ok{color:var(--ok)}.wfc-gate-live .g-wa{color:var(--wa)}
/* GAUGE */
.gauge{position:relative;width:64px;height:64px;flex-shrink:0}
.gauge svg{transform:rotate(-90deg)}
.gauge-val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-size:16px}
/* DRAWER LATERAL */
.overlay{position:fixed;inset:0;background:rgba(3,4,6,.7);backdrop-filter:blur(4px);z-index:200;opacity:0;pointer-events:none;transition:opacity .2s}
.overlay.open{opacity:1;pointer-events:auto}
.drawer{position:fixed;top:0;right:0;bottom:0;width:min(460px,92vw);background:var(--s1);border-left:1px solid var(--bdm);z-index:201;transform:translateX(100%);transition:transform .25s cubic-bezier(.16,1,.3,1);overflow-y:auto;box-shadow:-20px 0 60px rgba(0,0,0,.5)}
.drawer.open{transform:translateX(0)}
.drawer-hd{display:flex;align-items:flex-start;justify-content:space-between;padding:22px 22px 16px;border-bottom:1px solid var(--bd)}
.drawer-hd h3{font-size:18px;font-weight:800}
.drawer-close{width:32px;height:32px;border-radius:50%;background:transparent;border:1px solid var(--bdm);color:var(--fg2);cursor:pointer;font-size:14px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.drawer-close:hover{border-color:var(--bdc);color:var(--cy)}
.drawer-body{padding:18px 22px}
.dblock{margin-bottom:20px}
.dblock-lbl{font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg3);margin-bottom:8px}
.kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.kv{background:var(--s2);border:1px solid var(--bd);border-radius:var(--r);padding:9px 11px}
.kv .k{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg3)}
.kv .v{font-size:13px;color:var(--fg);margin-top:2px;font-weight:500}
/* TRANSCRIPT BUBBLES (drawer citas) */
.tr-bubbles{display:flex;flex-direction:column;gap:8px}
.tr-b{padding:8px 12px;border-radius:11px;font-size:12px;line-height:1.5;max-width:88%}
.tr-b.pac{background:var(--s2);align-self:flex-start;border-bottom-left-radius:3px;border:1px solid var(--bd)}
.tr-b.age{background:rgba(0,194,209,.12);align-self:flex-end;border-bottom-right-radius:3px;border:1px solid rgba(0,194,209,.2);color:var(--fg)}
.tr-who{font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);margin-bottom:2px}
.decision-box{border-radius:var(--r);padding:14px;border:1px solid;margin-top:12px}
.decision-box.ok{background:rgba(77,213,153,.06);border-color:rgba(77,213,153,.28)}
.decision-box.wa{background:rgba(240,179,74,.06);border-color:rgba(240,179,74,.28)}
.decision-box.er{background:rgba(255,93,93,.06);border-color:rgba(255,93,93,.28)}
.decision-box .dtitle{font-weight:600;font-size:13px;margin-bottom:3px}
.decision-box.ok .dtitle{color:var(--ok)}.decision-box.wa .dtitle{color:var(--wa)}.decision-box.er .dtitle{color:var(--er)}
.decision-box p{font-size:12px;color:var(--fg2);line-height:1.5}
.act-btns{display:flex;gap:10px;margin-top:12px}
.act-btn{flex:1;padding:10px;border-radius:var(--r);font-weight:600;font-size:12.5px;border:1px solid;cursor:pointer;background:transparent;font-family:'Outfit',sans-serif;transition:background .15s}
.act-btn.ok{color:var(--ok);border-color:rgba(77,213,153,.4)}.act-btn.ok:hover{background:rgba(77,213,153,.12)}
.act-btn.er{color:var(--er);border-color:rgba(255,93,93,.4)}.act-btn.er:hover{background:rgba(255,93,93,.12)}
.act-btn:disabled{opacity:.4;cursor:default}
/* PIPELINE 5 ETAPAS (documentos) */
.pipeline-live{background:var(--s2);border:1px solid var(--bd);border-radius:var(--rl);padding:14px 16px;display:flex;justify-content:space-between;position:relative;margin-top:14px}
.pl-step{display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;position:relative;z-index:2}
.pl-dot{width:26px;height:26px;border-radius:50%;background:var(--s3);border:2px solid var(--bdm);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--fg3);transition:all .35s cubic-bezier(.16,1,.3,1)}
.pl-step.active .pl-dot{border-color:var(--cy);color:var(--cy);background:var(--cyt);animation:plpulse 1.1s ease-in-out infinite}
@keyframes plpulse{0%,100%{box-shadow:0 0 0 3px rgba(0,194,209,.10)}50%{box-shadow:0 0 0 8px rgba(0,194,209,.16)}}
.pl-step.done .pl-dot{border-color:var(--ok);color:var(--ok);background:rgba(77,213,153,.1);animation:none}
.pl-step.err .pl-dot{border-color:var(--er);color:var(--er);background:rgba(255,93,93,.1);animation:none}
.pl-lbl{font-family:'IBM Plex Mono',monospace;font-size:8px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg3);text-align:center;line-height:1.3}
.pl-line{position:absolute;top:27px;left:8%;right:8%;height:2px;background:var(--bdm);z-index:1}
.pl-line-fill{position:absolute;top:0;left:0;height:100%;background:var(--ok);width:0%;transition:width .5s cubic-bezier(.16,1,.3,1)}
/* ECOSYSTEM MAP v2 — dinámico por tenant, con inspector */
.ecomap-wrap{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:24px}
.ecomap-wrap.insp-open{grid-template-columns:1fr 270px}
.ecomap{position:relative;background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);height:380px;overflow:hidden;background-image:radial-gradient(rgba(244,239,230,.05) 1px,transparent 1px);background-size:24px 24px}
.ecomap-node.mini{min-width:96px;padding:7px 10px}
.ecomap-node.mini .en-name{font-size:9.5px}
.ecomap-node.mini .en-meta{font-size:8px}
.ecomap-node.sel{border-color:var(--cy);box-shadow:0 0 0 1px var(--bdc),0 0 28px rgba(0,194,209,.2)}
.ecomap-legend{position:absolute;top:10px;right:12px;display:flex;gap:12px;font-family:'IBM Plex Mono',monospace;font-size:8.5px;color:var(--fg3);background:rgba(5,6,8,.6);padding:4px 10px;border-radius:999px;border:1px solid var(--bd)}
.ecomap-legend i{display:inline-block;width:6px;height:6px;border-radius:50%;margin-right:4px}
.ecomap-insp{background:var(--s1);border:1px solid var(--bdc);border-radius:var(--rx);padding:16px;display:flex;flex-direction:column;gap:10px;animation:fadeup .2s ease-out both;height:380px;overflow-y:auto}
.ecomap-insp::-webkit-scrollbar{width:3px}
.emi-hd{display:flex;align-items:center;gap:9px}
.emi-ico{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:15px;flex-shrink:0}
.emi-name{font-size:13.5px;font-weight:800}
.emi-sub{font-size:10px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.emi-met{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--bd);font-size:12px}
.emi-met:last-child{border-bottom:none}
.emi-met b{font-family:'IBM Plex Mono',monospace}
/* INVENTARIO del ecosistema — una fila por pieza, 3 estados de acción */
.inv-list{display:flex;flex-direction:column;gap:9px}
.inv-row{display:flex;align-items:center;gap:16px;background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:15px 18px;transition:all .15s;position:relative;overflow:hidden}
.inv-row::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--pc,#00c2d1);opacity:.6}
.inv-row:hover{border-color:var(--bdm);transform:translateX(2px)}
.inv-ico{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:17px;flex-shrink:0}
.inv-body{flex:1;min-width:0}
.inv-name{font-size:13.5px;font-weight:800;display:flex;align-items:center}
.inv-pyme{font-size:12px;color:var(--fg2);margin-top:3px;line-height:1.45}
.inv-metric{text-align:right;flex-shrink:0;min-width:110px}
.inv-metric-val{font-family:var(--font-display);font-size:22px;line-height:1}
.inv-metric-lbl{font-size:9.5px;color:var(--fg3);margin-top:2px;font-family:'IBM Plex Mono',monospace}
.inv-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0;min-width:132px}
.ecomap-node{position:absolute;background:var(--s2);border:1px solid var(--bdm);border-radius:var(--rl);padding:10px 14px;cursor:pointer;z-index:2;transition:border-color .15s,transform .15s;text-align:center;min-width:120px}
.ecomap-node:hover{border-color:var(--bdc);transform:translateY(-2px)}
.ecomap-node .en-ico{font-family:'IBM Plex Mono',monospace;font-size:13px;margin-bottom:3px}
.ecomap-node .en-name{font-size:11px;font-weight:700}
.ecomap-node .en-meta{font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--fg3);margin-top:2px}
.ecomap-node .en-dot{position:absolute;top:8px;right:8px;width:7px;height:7px;border-radius:50%;animation:pulse 2s ease-in-out infinite}
.ecomap-node.here{border-color:var(--bdc);box-shadow:0 0 24px rgba(0,194,209,.15)}
/* BRIEFING */
.brief-form{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:22px;max-width:640px}
.brief-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.brief-field label{font-size:10px;font-weight:600;color:var(--fg3);text-transform:uppercase;letter-spacing:.06em}
.brief-field input,.brief-field textarea,.brief-field select{background:var(--s2);border:1px solid var(--bdm);border-radius:var(--r);padding:10px 13px;color:var(--fg);font-size:13px;font-family:'Outfit',sans-serif;outline:none;width:100%}
.brief-field input:focus,.brief-field textarea:focus{border-color:var(--bdc)}
.brief-field textarea{resize:vertical;min-height:110px}
.brief-types{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:14px}
.brief-type{background:var(--s2);border:1px solid var(--bdm);border-radius:var(--r);padding:12px 8px;text-align:center;cursor:pointer;transition:all .15s;font-size:12px;font-weight:600;color:var(--fg2)}
.brief-type:hover{border-color:var(--bdc)}
.brief-type.sel{border-color:var(--cy);background:var(--cyt);color:var(--cy)}
.brief-type .bt-ico{font-family:'IBM Plex Mono',monospace;font-size:16px;display:block;margin-bottom:5px}
/* FACTURACION */
.fact-plan{background:linear-gradient(135deg,rgba(0,194,209,.08),rgba(167,139,250,.05));border:1px solid var(--bdc);border-radius:var(--rx);padding:22px 24px;margin-bottom:20px;display:flex;align-items:center;gap:20px}
.fact-products{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.fact-product{background:var(--s1);border:1px solid var(--bd);border-radius:var(--rx);padding:20px;position:relative;overflow:hidden}
.fact-product.current{border-color:var(--bdc)}
.fact-product .fp-name{font-family:var(--font-display);font-size:22px;letter-spacing:.02em;margin-bottom:2px}
.fact-product .fp-price{font-size:15px;font-weight:800;color:var(--cy);margin-bottom:10px}
.fact-product .fp-price small{font-size:11px;color:var(--fg3);font-weight:500}
.fact-product ul{list-style:none;display:flex;flex-direction:column;gap:5px}
.fact-product li{font-size:12px;color:var(--fg2);display:flex;gap:7px;align-items:baseline}
.fact-product li::before{content:'\2713';color:var(--ok);font-size:10px}
.fact-current-tag{position:absolute;top:12px;right:12px;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--ok);background:rgba(77,213,153,.1);border:1px solid rgba(77,213,153,.3);border-radius:999px;padding:3px 9px}
/* PRINT */
@media print{
  body{background:#fff;color:#000}
  .shell{display:block}
  .side,.tbar,.chat-fab,.chat-panel,.btn,.alert-act,.tbar-btn,.mode-badge,.informe-pdf-btn{display:none!important}
  .main{padding:0;overflow:visible;height:auto}
  .informe-card{border:1px solid #ddd;page-break-inside:avoid}
  .informe-header{background:#f8f9fa!important;border-bottom:2px solid #00c2d1}
  .informe-kpi-val{color:#00c2d1!important}
  .informe-kpi-lbl,.informe-hl-s{color:#555!important}
  .informe-hl-t{color:#000!important}
  .roi-hero{background:#f0fffe!important;border:1px solid #00c2d1!important}
  .roi-generated{color:#4dd599!important}
}

/* Ecosistema — sala de máquinas: latido vivo */
.eco-pulse{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:5px;vertical-align:middle;animation:ecoPulse 1.6s ease-in-out infinite}
@keyframes ecoPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(77,213,153,.5)}50%{opacity:.55;box-shadow:0 0 0 5px rgba(77,213,153,0)}}

/* Solicitudes — muro de posibilidades: cada idea se ilumina por turnos */
.brief-idea{display:flex;gap:10px;align-items:flex-start;padding:9px 11px;border-radius:10px;cursor:pointer;
  border:1px solid var(--bd);background:var(--s2);margin-bottom:7px;transition:all .18s;
  animation:ideaGlow 7.2s ease-in-out infinite}
.brief-idea:hover{border-color:var(--ic);background:color-mix(in srgb,var(--ic) 8%,var(--s2));transform:translateX(3px)}
@keyframes ideaGlow{0%,88%,100%{border-color:var(--bd);box-shadow:none}92%,96%{border-color:var(--ic);box-shadow:0 0 14px color-mix(in srgb,var(--ic) 35%,transparent)}}

/* Ecomap inspector nivel 10000 + sala de máquinas presentación */
.ecomap-insp{gap:10px}
.ecomap-node{transition:transform .15s, box-shadow .15s}
.ecomap-node:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.35)}
.ecomap-node.sel{box-shadow:0 0 0 1.5px var(--cy), 0 0 22px rgba(0,194,209,.25)}

/* ═══════════════ CAPA PLUS: notificaciones + buscador global ═══════════════ */
/* Buscador (Ctrl+K) en la topbar */
.cmd-trigger{display:flex;align-items:center;gap:8px;background:var(--s1);border:1px solid var(--bdm);border-radius:10px;
  padding:7px 12px;color:var(--fg3);font-size:12.5px;cursor:pointer;min-width:200px;transition:border-color .15s,color .15s;font-family:'Outfit',sans-serif}
.cmd-trigger:hover{border-color:var(--bdc);color:var(--fg2)}
.cmd-trigger-tx{flex:1;text-align:left}
.cmd-trigger kbd,.cmd-inp-row kbd{font-family:'IBM Plex Mono',monospace;font-size:10px;background:var(--s2);border:1px solid var(--bdm);border-radius:5px;padding:2px 6px;color:var(--fg3)}
@media(max-width:720px){.cmd-trigger{min-width:0}.cmd-trigger-tx,.cmd-trigger kbd{display:none}}
.cmd-overlay{position:fixed;inset:0;background:rgba(4,7,13,.6);backdrop-filter:blur(3px);z-index:200;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}
.cmd-box{width:min(600px,92vw);background:linear-gradient(180deg,var(--s1),var(--s2));border:1px solid var(--bdc);border-radius:16px;box-shadow:0 40px 90px rgba(0,0,0,.55);overflow:hidden;animation:cmdIn .18s ease}
@keyframes cmdIn{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
.cmd-inp-row{display:flex;align-items:center;gap:11px;padding:15px 18px;border-bottom:1px solid var(--bd)}
.cmd-inp-ico{color:var(--cy);font-size:17px}
.cmd-inp{flex:1;background:none;border:none;outline:none;color:var(--fg);font-size:16px;font-family:'Outfit',sans-serif}
.cmd-list{max-height:52vh;overflow-y:auto;padding:8px}
.cmd-row{display:flex;align-items:center;gap:12px;padding:10px 13px;border-radius:10px;cursor:pointer}
.cmd-row.sel{background:var(--s2)}
.cmd-row-ico{width:30px;height:30px;border-radius:8px;background:var(--s2);display:flex;align-items:center;justify-content:center;color:var(--cy);font-family:'IBM Plex Mono';flex-shrink:0}
.cmd-row.sel .cmd-row-ico{background:rgba(0,194,209,.14)}
.cmd-row-tx{flex:1;min-width:0}
.cmd-row-t{font-size:13.5px;font-weight:600}
.cmd-row-s{font-size:11px;color:var(--fg3)}
.cmd-row-tag{font-family:'IBM Plex Mono';font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:6px;background:var(--s2);color:var(--fg3)}
.cmd-row-tag.data{color:var(--cy)}
.cmd-empty{padding:30px;text-align:center;color:var(--fg3);font-size:13px}
.cmd-foot{display:flex;justify-content:space-between;padding:9px 16px;border-top:1px solid var(--bd);font-family:'IBM Plex Mono';font-size:10px;color:var(--fg3)}

/* Campana + panel de notificaciones */
.notif-wrap{position:relative;display:flex}
.notif-bell{position:relative;background:var(--s1);border:1px solid var(--bdm);border-radius:10px;width:38px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--fg2);transition:border-color .15s}
.notif-bell:hover{border-color:var(--bdc)}
.notif-ico{font-size:16px}
.notif-badge{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--er,#ff5a5a);color:#fff;font-size:10px;font-weight:700;font-family:'IBM Plex Mono';display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--bg)}
.notif-scrim{position:fixed;inset:0;z-index:150}
.notif-panel{position:absolute;top:44px;right:0;width:360px;max-width:92vw;background:linear-gradient(180deg,var(--s1),var(--s2));border:1px solid var(--bdc);border-radius:14px;box-shadow:0 30px 70px rgba(0,0,0,.5);z-index:160;overflow:hidden;animation:cmdIn .16s ease}
.notif-hd{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;border-bottom:1px solid var(--bd);font-size:13px}
.notif-clear{font-size:11px;color:var(--cy);cursor:pointer}
.notif-list{max-height:52vh;overflow-y:auto}
.notif-item{display:flex;align-items:center;gap:11px;padding:12px 16px;border-bottom:1px solid var(--bd);cursor:pointer;transition:background .12s}
.notif-item:hover{background:var(--s2)}
.notif-item.unread{background:rgba(0,194,209,.05)}
.notif-item.unread .notif-t{color:var(--fg)}
.notif-i{font-size:16px;font-family:'IBM Plex Mono';flex-shrink:0}
.notif-tx{flex:1;min-width:0}
.notif-t{font-size:12.5px;font-weight:600;color:var(--fg2)}
.notif-s{font-size:11px;color:var(--fg3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.notif-go{color:var(--fg3);flex-shrink:0}
.notif-empty{padding:30px 16px;text-align:center;color:var(--fg3);font-size:12.5px}
.notif-grp{margin-bottom:4px}
.notif-grp-t{display:flex;align-items:center;justify-content:space-between;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);padding:9px 14px 5px}
.notif-grp-t span{background:var(--s3);border-radius:20px;padding:1px 7px;color:var(--fg2)}
.notif-ft{padding:11px 16px;text-align:center;font-size:12px;color:var(--cy);cursor:pointer;border-top:1px solid var(--bd)}
.notif-ft:hover{background:var(--s2)}

/* Calendario mensual (Citas · vista Mes) */
.cal{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.cal-hd{display:flex;align-items:center;justify-content:center;gap:18px;margin-bottom:12px}
.cal-mon{font-family:'Outfit',sans-serif;font-size:15px;font-weight:700;text-transform:capitalize;min-width:170px;text-align:center}
.cal-nav{background:var(--s2);border:1px solid var(--bdm);border-radius:8px;width:30px;height:30px;color:var(--fg2);cursor:pointer;font-size:16px}
.cal-nav:hover{border-color:var(--bdc);color:var(--cy)}
.cal-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-bottom:6px}
.cal-dow span{text-align:center;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3);letter-spacing:.04em}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.cal-cell{min-height:64px;background:var(--s2);border:1px solid var(--bd);border-radius:9px;padding:6px 7px;position:relative;transition:border-color .12s}
.cal-cell.empty{background:transparent;border:none}
.cal-cell.has{cursor:pointer}
.cal-cell.has:hover{border-color:var(--bdc)}
.cal-cell.today{border-color:var(--cy);box-shadow:0 0 0 1px var(--cy) inset}
.cal-num{font-size:12px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.cal-cell.today .cal-num{color:var(--cy);font-weight:700}
.cal-dots{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}
.cal-dot{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;min-width:18px;height:18px;border-radius:6px;display:flex;align-items:center;justify-content:center;padding:0 4px}
.cal-dot.ok{background:rgba(77,213,153,.16);color:var(--ok)}
.cal-dot.wa{background:rgba(240,179,74,.16);color:var(--wa)}

/* Detalle de integración (modal) */
.int-scrim{position:fixed;inset:0;background:rgba(4,7,13,.6);backdrop-filter:blur(3px);z-index:190;display:flex;align-items:center;justify-content:center;padding:20px}
.int-detail{position:relative;width:min(440px,94vw);background:linear-gradient(180deg,var(--s1),var(--s2));border:1px solid var(--bdc);border-radius:16px;box-shadow:0 40px 90px rgba(0,0,0,.55);padding:24px;animation:cmdIn .18s ease}
.int-x{position:absolute;top:14px;right:16px;background:none;border:none;color:var(--fg3);font-size:22px;cursor:pointer;line-height:1}
.int-x:hover{color:var(--fg)}

/* ═══════════════ MI AGENTE (Chat / Voz) ═══════════════ */
.ag-modes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}
.ag-mode{display:flex;align-items:center;gap:13px;background:var(--s1);border:1.5px solid var(--bd);border-radius:15px;padding:15px 18px;cursor:pointer;transition:.18s;text-align:left}
.ag-mode:hover{border-color:var(--bdc)}
.ag-mode.on{border-color:var(--cy);background:linear-gradient(160deg,rgba(0,194,209,.10),var(--s1) 60%);box-shadow:0 0 20px rgba(0,194,209,.10)}
.ag-mode-ico{width:46px;height:46px;border-radius:13px;background:var(--s2);display:flex;align-items:center;justify-content:center;font-size:21px;color:var(--cy);flex-shrink:0;font-family:'IBM Plex Mono',monospace}
.ag-mode.on .ag-mode-ico{background:linear-gradient(135deg,var(--cy),#007a85);color:var(--bg)}
.ag-mode-tx{flex:1;display:flex;flex-direction:column}
.ag-mode-tx b{font-size:15px}.ag-mode-tx small{font-size:11px;color:var(--fg3)}
.ag-mode-badge{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;padding:3px 8px;border-radius:20px;color:var(--fg3);border:1px solid var(--bd)}
.ag-mode-badge.on{color:var(--ok);border-color:rgba(77,213,153,.4);background:rgba(77,213,153,.08)}
.ag-tabs{display:flex;gap:6px;border-bottom:1px solid var(--bd);margin-bottom:18px}
.ag-tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--fg3);font-size:13.5px;font-weight:600;padding:10px 16px;cursor:pointer;font-family:Outfit,sans-serif}
.ag-tab.on{color:var(--fg);border-bottom-color:var(--cy)}
.ag-probar-hd{font-size:12.5px;color:var(--fg2);margin-bottom:14px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--cy);border-radius:10px;padding:11px 15px}
.ag-tester{display:grid;grid-template-columns:1fr 260px;gap:14px}
@media(max-width:820px){.ag-tester{grid-template-columns:1fr}}
.ag-tester.compact{grid-template-columns:1fr;max-width:340px;margin:0 auto}

/* ─── FLOTA DE AGENTES IA (3 columnas = 3 personas con CV) ─── */
.flt-intro{background:linear-gradient(120deg,color-mix(in srgb,var(--cy) 10%,var(--s1)),var(--s1) 60%);border:1px solid var(--bd);border-left:3px solid var(--cy);border-radius:14px;padding:14px 18px;font-size:13px;color:var(--fg2);line-height:1.6;margin-bottom:18px}
.flt-intro-ic{color:var(--cy);font-family:'IBM Plex Mono',monospace;margin-right:6px}
.flt-intro b{color:var(--fg)}
.flt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:1180px){.flt-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.flt-grid{grid-template-columns:1fr}}
.flt-card{--c:#00c2d1;position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,color-mix(in srgb,var(--c) 8%,var(--s1)),var(--s1) 58%);border:1px solid color-mix(in srgb,var(--c) 24%,var(--bd));border-radius:20px;padding:18px;overflow:hidden;transition:.2s}
.flt-card:hover{border-color:color-mix(in srgb,var(--c) 44%,transparent);transform:translateY(-3px);box-shadow:0 16px 40px -18px color-mix(in srgb,var(--c) 60%,transparent)}
.flt-glow{position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 26%,transparent),transparent 70%);pointer-events:none}
.flt-top{display:flex;gap:13px;align-items:flex-start;position:relative;z-index:1}
.flt-portrait{position:relative;flex-shrink:0}
.flt-face{border-radius:16px;display:block;border:1px solid color-mix(in srgb,var(--c) 34%,transparent)}
.flt-online{position:absolute;bottom:-7px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:4px;font-size:9px;font-family:'IBM Plex Mono',monospace;background:var(--s3);border:1px solid var(--bd);border-radius:20px;padding:2px 7px;color:var(--ok);white-space:nowrap}
.flt-online i{width:5px;height:5px;border-radius:50%;background:var(--ok);box-shadow:0 0 6px var(--ok);animation:pulse 1.6s infinite}
.flt-id{flex:1;min-width:0;padding-top:2px}
.flt-chan{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--c);display:flex;align-items:center;gap:5px}
.flt-chan-ico{font-size:12px}
.flt-nm{font-family:'Bebas Neue',sans-serif;font-size:30px;line-height:1;margin-top:3px}
.flt-tag{font-size:10.5px;color:var(--fg2);margin-top:3px;line-height:1.3}
.flt-gender{display:flex;flex-direction:column;gap:5px;flex-shrink:0}
.flt-gbtn{width:30px;height:30px;border-radius:9px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2);font-size:15px;cursor:pointer;transition:.15s;display:flex;align-items:center;justify-content:center}
.flt-gbtn:hover{border-color:var(--bdm)}
.flt-gbtn.on{background:color-mix(in srgb,var(--c) 18%,transparent);border-color:var(--c);color:var(--c)}
.flt-skills{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 4px;position:relative;z-index:1}
.flt-skill{font-size:10px;padding:4px 9px;border-radius:20px;background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);color:var(--fg)}
.flt-seg{display:flex;gap:4px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:4px;margin:14px 0}
.flt-seg-b{flex:1;padding:8px 6px;border:none;background:transparent;color:var(--fg2);font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;border-radius:8px;cursor:pointer;transition:.15s}
.flt-seg-b:hover{color:var(--fg)}
.flt-seg-b.on{background:color-mix(in srgb,var(--c) 20%,transparent);color:var(--c)}
.flt-body{flex:1}
.flt-pitch{font-size:12.5px;color:var(--fg2);line-height:1.55}
.flt-como-t,.flt-cfg-t{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3);margin:14px 0 8px}
.flt-como{display:flex;flex-direction:column;gap:9px}
.flt-step{display:flex;align-items:flex-start;gap:9px}
.flt-step-n{width:19px;height:19px;flex-shrink:0;border-radius:6px;color:#06121a;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;margin-top:1px}
.flt-step-ic{font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--c);flex-shrink:0;margin-top:1px}
.flt-step-tx{min-width:0}
.flt-step-tx b{display:block;font-size:12px;font-weight:700}
.flt-step-tx span{display:block;font-size:10.5px;color:var(--fg3);line-height:1.35;margin-top:1px}
.flt-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:15px}
.flt-fact{background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 8px;text-align:center}
.flt-fact b{display:block;font-family:'IBM Plex Mono',monospace;font-size:14px;font-weight:800;line-height:1}
.flt-fact span{display:block;font-size:9px;color:var(--fg3);margin-top:3px}
.flt-cta,.flt-hire,.flt-adv{width:100%;margin-top:15px;padding:11px;border-radius:11px;font-family:Outfit,sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s}
.flt-cta,.flt-hire{background:var(--c);border:none;color:#06121a}
.flt-cta:hover,.flt-hire:hover{filter:brightness(1.08)}
.flt-adv{background:transparent;border:1px solid var(--bdm);color:var(--fg2)}
.flt-adv:hover{border-color:var(--c);color:var(--c)}
.flt-roles{display:flex;flex-direction:column;gap:7px}
.flt-role{position:relative;text-align:left;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 12px;cursor:pointer;transition:.15s}
.flt-role:hover{border-color:var(--bdm)}
.flt-role.on{background:color-mix(in srgb,var(--c) 12%,transparent);border-color:var(--c)}
.flt-role b{display:block;font-size:12.5px}
.flt-role span{display:block;font-size:10.5px;color:var(--fg2);margin-top:1px}
.flt-role-ck{position:absolute;top:9px;right:11px;color:var(--c);font-style:normal;font-weight:800}
.flt-chipsel{display:flex;flex-wrap:wrap;gap:6px}
.flt-chipb{font-size:11px;padding:6px 10px;border-radius:9px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2);cursor:pointer;transition:.15s}
.flt-chipb:hover{border-color:var(--bdm)}
.flt-chipb.on{background:color-mix(in srgb,var(--c) 16%,transparent);border-color:var(--c);color:var(--fg)}
.flt-packs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.flt-pack{text-align:left;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 10px;cursor:pointer;transition:.15s}
.flt-pack:hover{border-color:var(--bdm)}
.flt-pack.on{background:color-mix(in srgb,var(--c) 14%,transparent);border-color:var(--c)}
.flt-pack-ic{font-family:'IBM Plex Mono',monospace;color:var(--c);font-size:14px}
.flt-pack b{display:block;font-size:11.5px;margin-top:3px}
.flt-pack small{display:block;font-size:9.5px;color:var(--fg3)}
.flt-test-hd{font-size:12px;color:var(--fg2);margin-bottom:12px;line-height:1.4}
.ag-chat{background:var(--s1);border:1px solid var(--bd);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;height:460px}
.ag-chat-hd{display:flex;align-items:center;gap:11px;padding:12px 15px;background:var(--s2);border-bottom:1px solid var(--bd)}
.ag-av{width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg,var(--cy),#007a85);display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--bg)}
.ag-chat-nm{font-size:13.5px;font-weight:700;display:flex;align-items:center;gap:7px}
.ag-live-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 7px var(--ok)}
.ag-chat-sub{font-size:10.5px;color:var(--fg3)}
.ag-mode-tag{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--fg3);border:1px solid var(--bd);border-radius:20px;padding:3px 8px}
.ag-chat-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:9px;background:linear-gradient(var(--bg),var(--s1))}
.ag-bub{max-width:78%;padding:9px 13px;border-radius:14px;font-size:13px;line-height:1.45}
.ag-bub.agent{align-self:flex-start;background:var(--s2);border:1px solid var(--bdm);border-radius:3px 14px 14px 14px}
.ag-bub.user{align-self:flex-end;background:linear-gradient(135deg,var(--cy),#0090a0);color:var(--bg);border-radius:14px 14px 3px 14px}
.ag-dots{display:inline-flex;gap:3px}.ag-dots i{width:5px;height:5px;border-radius:50%;background:var(--fg3);animation:agBlink 1.2s infinite}
.ag-dots i:nth-child(2){animation-delay:.2s}.ag-dots i:nth-child(3){animation-delay:.4s}
@keyframes agBlink{0%,60%,100%{opacity:.3}30%{opacity:1}}
.ag-chips{display:flex;gap:7px;flex-wrap:wrap;padding:0 14px 10px}
.ag-chip{background:var(--s2);border:1px solid var(--bdm);border-radius:20px;padding:6px 12px;font-size:11.5px;color:var(--fg2);cursor:pointer}
.ag-chip:hover{border-color:var(--cy);color:var(--cy)}
.ag-chat-inp{display:flex;gap:8px;padding:11px 13px;border-top:1px solid var(--bd);background:var(--s2)}
.ag-chat-inp input{flex:1;background:var(--bg);border:1px solid var(--bdm);border-radius:20px;padding:9px 14px;color:var(--fg);font-size:13px;outline:none;font-family:Outfit,sans-serif}
.ag-chat-inp button{width:38px;border:none;border-radius:50%;background:var(--cy);color:var(--bg);font-size:14px;cursor:pointer}
.ag-live{background:var(--s1);border:1px solid var(--bd);border-radius:16px;padding:16px}
.ag-live-t{font-size:10px;font-weight:700;color:var(--cy);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
.ag-live-row{display:flex;justify-content:space-between;font-size:12.5px;padding:8px 0;border-bottom:1px solid var(--bd)}
.ag-live-row b{font-family:'IBM Plex Mono',monospace;color:var(--fg)}
.ag-live-note{font-size:11px;color:var(--fg3);margin-top:12px;line-height:1.5}
.ag-voz-frame{max-width:640px}
.ag-cfg-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:860px){.ag-cfg-grid{grid-template-columns:1fr}}
.ag-cfg-col{display:flex;flex-direction:column;gap:14px}
.ag-f{display:flex;flex-direction:column;gap:6px}
.ag-f label{font-size:12px;color:var(--fg2);font-weight:500}
.ag-inp-f,.ag-ta{background:var(--s2);border:1px solid var(--bdm);border-radius:10px;padding:10px 13px;color:var(--fg);font-size:13px;font-family:Outfit,sans-serif;outline:none;width:100%}
.ag-ta{resize:none;height:76px;display:block}
.ag-inp-f:focus,.ag-ta:focus{border-color:var(--cy)}
.ag-canales{display:flex;gap:8px;flex-wrap:wrap}
.ag-voz-tipos{display:flex;flex-direction:column;gap:8px}
.ag-canal{background:var(--s2);border:1px solid var(--bdm);border-radius:10px;padding:9px 13px;font-size:12.5px;color:var(--fg2);cursor:pointer}
.ag-canal.on{border-color:var(--cy);color:var(--cy);background:rgba(0,194,209,.08)}
.ag-voz-tipo{text-align:left;background:var(--s2);border:1px solid var(--bdm);border-radius:12px;padding:12px 14px;cursor:pointer;display:grid;grid-template-columns:auto 1fr;gap:2px 11px;align-items:center}
.ag-voz-tipo.on{border-color:var(--cy);background:rgba(0,194,209,.07)}
.ag-voz-tipo-ico{grid-row:1/3;width:34px;height:34px;border-radius:9px;background:var(--s3);display:flex;align-items:center;justify-content:center;color:var(--cy);font-family:'IBM Plex Mono',monospace}
.ag-voz-tipo b{font-size:13px}.ag-voz-tipo small{font-size:11px;color:var(--fg3);grid-column:2}
.ag-prev{background:var(--s1);border:1px solid var(--bdc);border-radius:14px;padding:15px}
.ag-prev-t{font-size:10px;font-weight:700;color:var(--cy);text-transform:uppercase;letter-spacing:.06em;margin-bottom:9px}
.ag-prev-bub{background:var(--s2);border:1px solid var(--bdm);border-radius:3px 14px 14px 14px;padding:11px 14px;font-size:13px;line-height:1.5}
.ag-voz-card{display:flex;gap:12px;align-items:center;background:var(--s2);border:1px solid var(--bdm);border-radius:12px;padding:12px}
.ag-voz-card-ico{width:42px;height:42px;border-radius:11px;background:linear-gradient(135deg,var(--cy),#007a85);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--bg)}
.ag-voz-card b{font-size:14px}.ag-voz-card small{font-size:11px;color:var(--fg3)}
.ag-voz-role{font-size:12px;color:var(--fg2);margin:12px 0;line-height:1.5}
.ag-kb{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:15px;margin-top:14px}
.ag-kb-hd{font-size:12px;font-weight:700;margin-bottom:11px}
.ag-kb-add{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
.ag-kb-list{display:flex;flex-direction:column;gap:8px;max-height:220px;overflow-y:auto}
.ag-kb-item{display:flex;justify-content:space-between;gap:10px;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:10px 13px}
.ag-kb-item b{font-size:12.5px;color:var(--cy)}.ag-kb-item p{font-size:11.5px;color:var(--fg2);margin-top:3px}
.ag-kb-item span{color:var(--fg3);cursor:pointer;flex-shrink:0}
.ag-gate{background:var(--s1);border:1px solid var(--bd);border-radius:16px;padding:26px;text-align:center}
.ag-gate-ico{font-size:34px;color:var(--cy);margin-bottom:8px}
.ag-gate-t{font-size:17px;font-weight:800}
.ag-gate-s{font-size:13px;color:var(--fg2);margin:6px auto 16px;max-width:480px}
.ag-gate-try{font-size:11.5px;color:var(--fg3);margin-top:18px}
.ag-mon-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px}
.ag-mon-kpi{background:var(--s1);border:1px solid var(--bd);border-radius:13px;padding:15px 17px}
.ag-mon-v{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:700}
.ag-mon-l{font-size:11.5px;color:var(--fg3);margin-top:3px}
.ag-mon-note{font-size:11px;color:var(--wa);margin-bottom:16px}
.ag-mon-hd{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg3);margin-bottom:10px}
.ag-convos{display:flex;flex-direction:column;gap:8px}
.ag-convo{display:flex;align-items:center;gap:12px;background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:11px 14px}
.ag-convo-av{width:34px;height:34px;border-radius:50%;background:var(--s2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}
.ag-convo-tx{flex:1;min-width:0}.ag-convo-tx b{font-size:12.5px}.ag-convo-tx i{display:block;font-size:11px;color:var(--fg3)}
.ag-empty{color:var(--fg3);font-family:'IBM Plex Mono',monospace;font-size:12px;text-align:center;padding:30px}

/* hero */
.ag-hero{display:flex;align-items:center;gap:20px;background:linear-gradient(120deg,var(--c,#00c2d1)1c,var(--s1) 55%);border:1px solid var(--bd);border-left:3px solid var(--c,#00c2d1);border-radius:18px;padding:22px 26px;margin-bottom:20px;overflow:hidden;position:relative}
.ag-hero-tx{flex:1}
.ag-hero-t{font-family:'Bebas Neue',sans-serif;font-size:34px;letter-spacing:.02em;line-height:1}
.ag-hero-t b{color:var(--c,#00c2d1)}
.ag-hero-s{font-size:13.5px;color:var(--fg2);margin-top:8px;max-width:560px;line-height:1.5}
.ag-hero-av{width:66px;height:66px;border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:800;color:var(--bg);flex-shrink:0;box-shadow:0 8px 26px var(--c,#00c2d1)55}
/* galería */
.ag-gal-hd{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;flex-wrap:wrap}
.ag-gal-sub{font-size:13px;color:var(--fg2);max-width:560px}
.ag-filtros{display:flex;gap:6px}
.ag-filtro{background:var(--s1);border:1px solid var(--bdm);border-radius:9px;padding:8px 14px;font-size:12.5px;color:var(--fg3);cursor:pointer;font-family:Outfit,sans-serif}
.ag-filtro.on{border-color:var(--cy);color:var(--cy);background:var(--cyt)}
.arq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.arq-card{position:relative;background:linear-gradient(165deg,color-mix(in srgb,var(--c) 6%,transparent),var(--s1) 45%);border:1px solid var(--bd);border-radius:18px;padding:20px;overflow:hidden;transition:transform .18s,border-color .18s}
.arq-card:hover{transform:translateY(-4px);border-color:var(--c)}
.arq-glow{position:absolute;top:-40px;right:-40px;width:120px;height:120px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 20%,transparent),transparent 70%);pointer-events:none}
.arq-top{display:flex;align-items:center;gap:13px;margin-bottom:13px;position:relative}
.arq-av{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;color:var(--bg);flex-shrink:0;box-shadow:0 6px 18px color-mix(in srgb,var(--c) 27%,transparent)}
.arq-nm{font-size:18px;font-weight:800}
.arq-tag{font-size:12px;color:var(--c);font-weight:600}
.arq-mine{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;color:var(--c);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);border-radius:20px;padding:3px 8px;align-self:flex-start}
.arq-chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:11px}
.arq-chip{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:600;padding:3px 9px;border-radius:20px;background:var(--s3);color:var(--fg2);border:1px solid var(--bd)}
.arq-chip.voz{color:var(--pu);border-color:rgba(167,139,250,.35)}
.arq-chip.texto{color:var(--cy);border-color:var(--bdc)}
.arq-desc{font-size:12.5px;color:var(--fg2);line-height:1.5;margin-bottom:13px;min-height:38px}
.arq-demo{background:var(--bg);border:1px solid var(--bd);border-radius:12px;padding:11px;display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.arq-demo-b{font-size:11.5px;line-height:1.4;padding:7px 11px;border-radius:11px;max-width:88%}
.arq-demo-b.u{align-self:flex-end;background:var(--s3);color:var(--fg2);border-radius:11px 11px 3px 11px}
.arq-demo-b.a{align-self:flex-start;background:var(--s2);border:1px solid;border-radius:3px 11px 11px 11px}
.arq-acts{display:flex;gap:8px}
.arq-btn{flex:1;border:none;border-radius:10px;padding:10px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:Outfit,sans-serif}
.arq-btn.probar{color:var(--bg)}
.arq-btn.probar:hover{filter:brightness(1.08)}
.arq-btn.usar{background:transparent;border:1px solid var(--bdm);color:var(--fg2)}
.arq-btn.usar:hover{border-color:var(--c);color:var(--c)}
/* modal probar */
.arq-modal{position:fixed;inset:0;background:rgba(4,6,10,.66);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:center;justify-content:center;padding:20px}
.arq-modal-box{width:min(880px,96vw);max-height:92vh;overflow-y:auto;background:linear-gradient(180deg,var(--s1),var(--s2));border:1px solid var(--bdc);border-radius:18px;box-shadow:0 40px 90px rgba(0,0,0,.6);padding:22px;animation:cmdIn .2s ease}
.arq-modal-hd{font-size:14px;margin-bottom:14px;display:flex;align-items:center;gap:8px}
.arq-modal-x{margin-left:auto;font-size:24px;color:var(--fg3);cursor:pointer;line-height:1}
.arq-modal-x:hover{color:var(--fg)}
/* config extras */
.ag-cfg-note{font-size:12.5px;color:var(--fg2);background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:11px 14px}
.ag-prev-hd{display:flex;align-items:center;gap:12px;padding:13px;border-radius:12px;margin-bottom:12px}
.ag-prev-hd b{font-size:14px}.ag-prev-hd small{font-size:11px;color:var(--fg3)}

/* equipo (roster) */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.team-card{position:relative;background:linear-gradient(165deg,color-mix(in srgb,var(--c) 6%,transparent),var(--s1) 45%);border:1px solid var(--bd);border-radius:16px;padding:18px;overflow:hidden}
.team-top{display:flex;align-items:center;gap:12px;margin-bottom:13px;position:relative}
.team-status{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;padding:3px 9px;border-radius:20px;color:var(--fg3);border:1px solid var(--bd)}
.team-status.on{color:var(--ok);border-color:rgba(77,213,153,.4);background:rgba(77,213,153,.08)}
.team-skills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;min-height:24px;position:relative}
.team-skill{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg2);background:var(--s3);border:1px solid var(--bd);border-radius:8px;padding:3px 8px}
.team-acts{display:flex;gap:8px}
.team-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed var(--bdm);border-radius:16px;padding:20px;cursor:pointer;color:var(--fg3);transition:.15s;min-height:150px}
.team-add:hover{border-color:var(--cy);color:var(--cy)}
.team-add span{font-size:28px}.team-add b{font-size:13.5px}.team-add small{font-size:11px}

/* gestionar agente */
.am-hd{display:flex;align-items:center;gap:13px;margin-bottom:18px;flex-wrap:wrap}
.am-back{background:var(--s1);border:1px solid var(--bdm);border-radius:9px;padding:8px 13px;color:var(--fg2);font-size:12.5px;cursor:pointer;font-family:Outfit,sans-serif}
.am-back:hover{border-color:var(--bdc);color:var(--cy)}
.am-av{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:var(--bg)}
.am-nm{font-size:19px;font-weight:800}.am-sub{font-size:12px;color:var(--fg3)}
.am-power{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;padding:8px 14px;border-radius:10px;border:1px solid var(--bdm);background:var(--s1);color:var(--fg3);cursor:pointer}
.am-power.on{color:var(--ok);border-color:rgba(77,213,153,.45);background:rgba(77,213,153,.08)}

/* habilidades */
.ag-skills-hd{font-size:13px;color:var(--fg2);margin-bottom:14px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--cy);border-radius:10px;padding:11px 15px}
.ag-skills{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px;margin-bottom:22px}
.ag-skill{display:flex;align-items:center;gap:12px;text-align:left;background:var(--s1);border:1.5px solid var(--bd);border-radius:13px;padding:13px 15px;cursor:pointer;transition:.15s}
.ag-skill.on{border-color:var(--c,var(--cy));background:linear-gradient(120deg,var(--c,var(--cy))12,var(--s1) 60%)}
.ag-skill-ico{width:38px;height:38px;border-radius:10px;background:var(--s2);display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--c,var(--cy));font-family:'IBM Plex Mono',monospace;flex-shrink:0}
.ag-skill-tx{flex:1}.ag-skill-tx b{font-size:13.5px}.ag-skill-tx small{display:block;font-size:11px;color:var(--fg3);margin-top:2px}
.ag-skill-sw{width:24px;height:24px;border-radius:8px;border:1.5px solid var(--bdm);display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--c,var(--cy));font-weight:800}
.ag-skill.on .ag-skill-sw{background:var(--c,var(--cy));color:var(--bg);border-color:transparent}
.ag-handoff{background:var(--s1);border:1px solid var(--bdc);border-radius:14px;padding:17px}
.ag-handoff-t{font-size:13px;font-weight:700;color:var(--cy);margin-bottom:12px}
.ag-handoff-opts{display:flex;gap:8px;flex-wrap:wrap}
.ag-ho{background:var(--s2);border:1px solid var(--bdm);border-radius:10px;padding:10px 15px;font-size:12.5px;color:var(--fg2);cursor:pointer;font-family:Outfit,sans-serif}
.ag-ho.on{border-color:var(--cy);color:var(--cy);background:var(--cyt)}
.ag-ho:disabled{opacity:.4;cursor:not-allowed}
.ag-handoff-flow{font-size:12px;color:var(--fg2);margin-top:11px;line-height:1.5;background:var(--s2);border-radius:9px;padding:10px 13px}
.ag-handoff-flow b{color:var(--fg)}
/* canales grandes */
.ag-canales-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.ag-canal-big{display:flex;flex-direction:column;align-items:center;gap:5px;background:var(--s1);border:1.5px solid var(--bd);border-radius:14px;padding:18px;cursor:pointer;transition:.15s}
.ag-canal-big.on{border-color:var(--c,var(--cy));background:linear-gradient(160deg,var(--c,var(--cy))12,var(--s1) 60%)}
.ag-canal-ico{font-size:24px;color:var(--c,var(--cy));font-family:'IBM Plex Mono',monospace}
.ag-canal-big b{font-size:13px}.ag-canal-big small{font-size:10.5px;color:var(--fg3);text-align:center;line-height:1.3}
.ag-canal-st{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;color:var(--fg3);margin-top:4px}
.ag-canal-st.on{color:var(--c,var(--ok))}

/* ayuda + opcionales */
.ag-help{font-size:11px;color:var(--fg3);margin-top:5px;line-height:1.4}
.ag-opt{font-family:'IBM Plex Mono',monospace;font-size:9px;color:var(--fg3);border:1px solid var(--bd);border-radius:6px;padding:1px 6px;margin-left:6px}
/* tono botones */
.ag-tonos{display:flex;flex-wrap:wrap;gap:7px}
.ag-tono{background:var(--s2);border:1px solid var(--bdm);border-radius:9px;padding:8px 12px;font-size:12px;color:var(--fg2);cursor:pointer;font-family:Outfit,sans-serif}
.ag-tono.on{border-color:var(--c,var(--cy));color:var(--c,var(--cy));background:color-mix(in srgb,var(--c,var(--cy)) 10%,transparent)}
/* carné del agente */
.ag-carne{background:linear-gradient(170deg,color-mix(in srgb,var(--c) 9%,transparent),var(--s1) 50%);border:1px solid color-mix(in srgb,var(--c) 27%,transparent);border-radius:18px;padding:22px;text-align:center;position:sticky;top:14px}
.ag-carne-hd{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.15em;color:var(--fg3);margin-bottom:14px}
.ag-carne-av{width:72px;height:72px;border-radius:22px;margin:0 auto;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:800;color:var(--bg);box-shadow:0 10px 28px color-mix(in srgb,var(--c) 33%,transparent)}
.ag-carne-nm{font-size:22px;font-weight:800;margin-top:12px}
.ag-carne-rol{font-size:12px;color:var(--c);font-weight:600;margin-bottom:14px}
.ag-carne-row{display:flex;justify-content:space-between;font-size:12px;padding:7px 0;border-top:1px solid var(--bd);text-align:left}
.ag-carne-row b{font-family:Outfit,sans-serif}
.ag-carne-bub{font-size:12px;color:var(--fg2);font-style:italic;margin-top:12px;background:var(--s2);border-radius:11px;padding:10px 13px;line-height:1.5}
/* packs de habilidades */
.ag-packs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}
.ag-pack{display:flex;align-items:center;gap:7px;background:var(--s1);border:1px solid var(--bdm);border-radius:11px;padding:9px 14px;font-size:12.5px;font-weight:600;color:var(--fg);cursor:pointer;font-family:Outfit,sans-serif}
.ag-pack:hover{border-color:var(--cy)}
.ag-pack span{font-family:'IBM Plex Mono',monospace;color:var(--cy)}
.ag-pack small{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3);background:var(--s3);border-radius:6px;padding:1px 6px}
.ag-skcat{margin-bottom:16px}
.ag-skcat-t{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px}
/* conocimiento por categorías */
.kb-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.kb-cat{display:flex;align-items:center;gap:6px;background:var(--s1);border:1px solid var(--bdm);border-radius:10px;padding:8px 13px;font-size:12.5px;color:var(--fg2);cursor:pointer;font-family:Outfit,sans-serif}
.kb-cat.on{border-color:var(--c);color:var(--c);background:color-mix(in srgb,var(--c) 10%,transparent)}
.kb-cat small{font-family:'IBM Plex Mono',monospace;font-size:10px;background:var(--s3);border-radius:6px;padding:1px 6px;color:var(--fg3)}
.kb-add{background:var(--s1);border:1px solid color-mix(in srgb,var(--c) 27%,transparent);border-radius:14px;padding:16px}
.kb-add-t{font-size:12px;font-weight:700;color:var(--c);margin-bottom:10px}
.kb-add .ag-inp-f{margin-bottom:9px}
.kb-sug{margin-top:14px;background:var(--s1);border:1px dashed var(--bdm);border-radius:14px;padding:15px}
.kb-sug-t{font-size:12px;font-weight:700;color:var(--wa);margin-bottom:11px}
.kb-sug-item{display:flex;justify-content:space-between;gap:10px;align-items:center;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:10px 13px;margin-bottom:8px;cursor:pointer;transition:.15s}
.kb-sug-item:hover{border-color:var(--wa)}
.kb-sug-item b{font-size:12.5px}.kb-sug-item p{font-size:11px;color:var(--fg3);margin-top:2px}
.kb-sug-item span{font-size:18px;color:var(--wa);flex-shrink:0}
.kb-listbox{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:15px;min-height:200px}
.kb-listbox-t{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg3);margin-bottom:12px}
/* probador premium (marco teléfono) */
.ag-phone{position:relative;background:var(--s1);border:1px solid var(--bd);border-radius:22px;overflow:hidden;display:flex;flex-direction:column;height:470px;box-shadow:0 20px 50px rgba(0,0,0,.35),inset 0 0 0 1px var(--acc,transparent)11}
.ag-phone-notch{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:80px;height:5px;border-radius:5px;background:var(--s3);z-index:3}
.ag-phone .ag-chat-hd{padding-top:18px}
/* monitor brutal */
.mon-kpis{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:12px;margin-bottom:14px}
@media(max-width:820px){.mon-kpis{grid-template-columns:1fr 1fr}}
.mon-kpi{background:var(--s1);border:1px solid var(--bd);border-radius:15px;padding:16px 17px}
.mon-kpi.big{background:linear-gradient(160deg,color-mix(in srgb,var(--c) 8%,transparent),var(--s1) 55%);border-color:color-mix(in srgb,var(--c) 20%,transparent)}
.mon-kpi-l{font-size:11.5px;color:var(--fg3)}
.mon-kpi-v{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:700;margin-top:3px;line-height:1}
.mon-kpi-s{font-size:11px;color:var(--fg3);margin-top:3px}
.mon-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
@media(max-width:760px){.mon-grid{grid-template-columns:1fr}}
.mon-box{background:var(--s1);border:1px solid var(--bd);border-radius:15px;padding:17px}
.mon-box-t{font-family:'IBM Plex Mono',monospace;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg3);margin-bottom:14px}
.mon-sk{display:flex;align-items:center;gap:10px;margin-bottom:11px;font-size:12px}
.mon-sk-l{width:150px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mon-sk-bar{flex:1;height:8px;border-radius:5px;background:var(--s3);overflow:hidden}
.mon-sk-bar i{display:block;height:100%;border-radius:5px}
.mon-sk b{font-family:'IBM Plex Mono',monospace;font-size:11px;width:34px;text-align:right}
.mon-donut{display:flex;align-items:center;gap:18px}
.mon-donut-c{width:110px;height:110px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}
.mon-donut-c::after{content:'';position:absolute;inset:16px;border-radius:50%;background:var(--s1)}
.mon-donut-c span{position:relative;z-index:2;font-family:'IBM Plex Mono',monospace;font-size:20px;font-weight:700;color:var(--ok)}
.mon-leg{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--fg2)}
.mon-leg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:7px}

/* ─── HABILIDADES (rehecho, contraste real) ─── */
.sk-head{display:flex;align-items:center;gap:18px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:15px 18px;margin-bottom:16px;flex-wrap:wrap}
.sk-head-n{font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:700;line-height:1}
.ag-packs{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px}
.ag-pack{display:flex;align-items:center;gap:8px;background:var(--s2);border:1px solid var(--bdm);border-radius:11px;padding:10px 15px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:Outfit,sans-serif}
.ag-pack:hover{border-color:var(--cy);background:var(--s3)}
.ag-pack-ico{font-family:'IBM Plex Mono',monospace;color:var(--cy);font-size:14px}
.ag-pack small{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg2);background:var(--s3);border-radius:6px;padding:2px 7px}
.ag-skcat{margin-bottom:18px}
.ag-skcat-t{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.ag-skills{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:10px}
.ag-skill{display:flex;align-items:center;gap:12px;text-align:left;border:1.5px solid var(--bd);border-radius:13px;padding:13px 15px;cursor:pointer;transition:.15s}
.ag-skill:hover{transform:translateY(-1px)}
.ag-skill-ico{width:40px;height:40px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:18px;font-family:'IBM Plex Mono',monospace;flex-shrink:0;font-weight:700}
.ag-skill-tx{flex:1;min-width:0}
.ag-skill-tx b{font-size:13.5px;display:block}
.ag-skill-tx small{font-size:11.5px;line-height:1.35;display:block;margin-top:2px}
.ag-skill-sw{width:26px;height:26px;border-radius:8px;border:1.5px solid;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;flex-shrink:0}
/* HANDOFF profundo */
.ho{background:var(--s1);border:1px solid var(--bdc);border-radius:16px;padding:20px;margin-top:6px}
.ho-t{font-size:15px;font-weight:800;margin-bottom:16px}
.ho-flow{display:flex;align-items:center;gap:12px;background:var(--s2);border:1px solid var(--bd);border-radius:14px;padding:16px;margin-bottom:20px;flex-wrap:wrap;justify-content:center}
.ho-node{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:96px}
.ho-node-av{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:19px;font-weight:800;color:#06080e}
.ho-node b{font-size:13px}.ho-node small{font-size:10.5px}
.ho-arrow{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--fg2);font-size:17px;font-weight:700;min-width:120px}
.ho-arrow span{font-family:'IBM Plex Mono',monospace;font-size:10px}
.ho-line{width:100%;height:2px;background:repeating-linear-gradient(90deg,var(--cy) 0 6px,transparent 6px 11px)}
.ho-sec-t{font-size:13px;font-weight:700;margin:0 0 10px}
.ho-trigs{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:9px;margin-bottom:20px}
.ho-trig{display:flex;align-items:center;gap:10px;background:var(--s2);border:1.5px solid var(--bd);border-radius:11px;padding:11px 14px;cursor:pointer;font-size:12.5px;text-align:left}
.ho-trig.on{border-color:var(--cy);background:rgba(0,194,209,.08)}
.ho-check{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--bdm);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#06080e;flex-shrink:0}
.ho-trig.on .ho-check{background:var(--cy);border-color:var(--cy)}
.ho-dest{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
@media(max-width:640px){.ho-dest{grid-template-columns:1fr}}
.ho-dbtn{text-align:left;background:var(--s2);border:1.5px solid var(--bd);border-radius:13px;padding:14px 16px;cursor:pointer}
.ho-dbtn.on{border-color:var(--cy);background:rgba(0,194,209,.07)}
.ho-dbtn b{font-size:13.5px;display:block;margin-bottom:3px}
.ho-dbtn small{font-size:11.5px;line-height:1.4;display:block}
.ho-target{margin-top:14px;background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:14px}
.ho-target label{font-size:12px;display:block;margin-bottom:6px}
.ho-example{font-size:12px;line-height:1.55;margin-top:11px;background:rgba(0,194,209,.06);border-radius:9px;padding:11px 13px}
/* CONOCIMIENTO profundo */
.kb-top{display:flex;gap:18px;align-items:stretch;margin-bottom:16px;flex-wrap:wrap}
.kb-top-l{flex:1;min-width:240px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.kb-meter{width:280px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.kb-meter-top{display:flex;align-items:center;justify-content:space-between}
.kb-meter-top b{font-size:14px;font-weight:800}
.kb-meter-bar{height:9px;border-radius:6px;background:var(--s3);overflow:hidden;margin-top:9px}
.kb-meter-bar i{display:block;height:100%;border-radius:6px;transition:width .5s cubic-bezier(.16,1,.3,1)}
.kb-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.kb-cat{display:flex;align-items:center;gap:7px;border:1px solid var(--bdm);border-radius:10px;padding:8px 13px;font-size:12.5px;cursor:pointer;font-family:Outfit,sans-serif}
.kb-cat small{font-family:'IBM Plex Mono',monospace;font-size:10px;border-radius:6px;padding:1px 6px}
.kb-add{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px}
.kb-add-t{font-size:13px;font-weight:700;margin-bottom:12px}
.kb-sug{margin-top:14px;background:var(--s1);border:1px dashed var(--bdm);border-radius:14px;padding:15px}
.kb-sug-t{font-size:12px;font-weight:700;margin-bottom:11px}
.kb-sug-item{display:flex;justify-content:space-between;gap:10px;align-items:center;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:10px 13px;margin-bottom:8px;cursor:pointer}
.kb-sug-item:hover{border-color:var(--wa)}
.kb-sug-item b{font-size:12.5px}.kb-sug-item p{font-size:11px;margin-top:2px;line-height:1.4}
.kb-sug-item span{font-size:20px;flex-shrink:0}
.kb-imp{margin-top:14px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:15px}
.kb-imp-t{font-size:12.5px;font-weight:700;margin-bottom:10px}
.kb-listbox{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px;min-height:220px}
.kb-listbox-t{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:13px}
.kb-listbox-empty{text-align:center;padding:40px 20px}
.ag-kb-item{display:flex;justify-content:space-between;gap:10px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:12px 14px;margin-bottom:9px}
.ag-kb-item b{font-size:13px}.ag-kb-item p{font-size:11.5px;margin-top:4px;line-height:1.45}
.ag-kb-item span{color:var(--fg3);cursor:pointer;flex-shrink:0;font-size:14px}
.ag-kb-item span:hover{color:var(--er)}
/* CANALES legibles */
.ch-count{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:9px 15px;font-family:'IBM Plex Mono',monospace;font-size:13px}
.ch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.ch-card{position:relative;text-align:left;border:1.5px solid var(--bd);border-radius:15px;padding:17px;cursor:pointer;transition:.15s}
.ch-card:hover{transform:translateY(-2px)}
.ch-ico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:21px;font-family:'IBM Plex Mono',monospace;margin-bottom:12px}
.ch-tx b{font-size:14.5px;display:block;margin-bottom:4px}
.ch-tx small{font-size:11.5px;line-height:1.4;display:block}
.ch-toggle{position:absolute;top:17px;right:17px;width:38px;height:22px;border-radius:20px;background:var(--s3);transition:.2s}
.ch-toggle span{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--fg2);transition:.2s}
.ch-toggle.on span{left:19px;background:#fff}
.ch-status{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;margin-top:12px}
.ch-note{display:flex;gap:9px;align-items:flex-start;background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:13px 16px;margin-top:16px;font-size:12.5px;line-height:1.5}

/* ─── SCREEN GUIDE (qué es · cómo funciona · caso real) ─── */
.sg{position:relative;background:linear-gradient(165deg,color-mix(in srgb,var(--sg) 9%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--sg) 30%,transparent);border-radius:16px;padding:20px 22px;margin-bottom:20px}
.sg-x{position:absolute;top:14px;right:14px;width:26px;height:26px;border-radius:8px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2);cursor:pointer;font-size:12px;line-height:1}
.sg-x:hover{color:var(--fg);border-color:var(--bdm)}
.sg-head{display:flex;gap:14px;align-items:flex-start;margin-bottom:18px;padding-right:30px}
.sg-ico{width:44px;height:44px;flex-shrink:0;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:21px;font-family:'IBM Plex Mono',monospace;color:var(--sg);background:color-mix(in srgb,var(--sg) 16%,transparent);border:1px solid color-mix(in srgb,var(--sg) 40%,transparent)}
.sg-what-lbl{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--sg);margin-bottom:5px}
.sg-what{font-size:14px;line-height:1.5;color:var(--fg);font-weight:500}
.sg-flow-lbl{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--fg2);margin-bottom:11px}
.sg-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:18px}
@media(max-width:900px){.sg-steps{grid-template-columns:1fr 1fr}}
.sg-step{position:relative;background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:13px 14px}
.sg-step-n{width:23px;height:23px;border-radius:7px;background:color-mix(in srgb,var(--sg) 18%,transparent);border:1px solid color-mix(in srgb,var(--sg) 40%,transparent);color:var(--sg);font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;margin-bottom:9px}
.sg-step-tx b{display:block;font-size:12.5px;font-weight:700;color:var(--fg);margin-bottom:3px}
.sg-step-tx span{display:block;font-size:11px;line-height:1.45;color:var(--fg2)}
.sg-step-arrow{position:absolute;right:-7px;top:50%;transform:translateY(-50%);z-index:2;color:var(--sg);font-size:13px;font-weight:700}
@media(max-width:900px){.sg-step-arrow{display:none}}
.sg-case{display:flex;flex-direction:column;gap:6px;background:color-mix(in srgb,var(--sg) 7%,var(--s2));border:1px solid color-mix(in srgb,var(--sg) 22%,transparent);border-radius:12px;padding:13px 16px}
.sg-case-tag{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.1em;color:var(--sg)}
.sg-case-tx{font-size:12.5px;line-height:1.55;color:var(--fg)}
.sg-reopen{display:inline-flex;align-items:center;gap:8px;background:var(--s1);border:1px solid color-mix(in srgb,var(--sg) 30%,var(--bd));border-radius:10px;padding:8px 14px;margin-bottom:18px;font-family:Outfit,sans-serif;font-size:12px;font-weight:600;color:var(--fg2);cursor:pointer;transition:.15s}
.sg-reopen:hover{color:var(--sg);border-color:var(--sg)}
.sg-reopen-q{width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--sg) 20%,transparent);color:var(--sg);font-weight:800;font-size:11px;display:flex;align-items:center;justify-content:center}

/* ═══ MI EMPRESA (La Columna) ═══ */
.emp-plan{align-self:center;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.06em;padding:5px 12px;border-radius:20px;color:var(--cy);background:var(--cyt);border:1px solid var(--bdc)}
.emp-plan.trial{color:var(--ok);background:rgba(77,213,153,.12);border-color:rgba(77,213,153,.32)}
.emp-plan.custom{color:var(--pu);background:rgba(167,139,250,.1);border-color:rgba(167,139,250,.28)}
.emp-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}
.emp-sum-card{display:flex;align-items:center;gap:14px;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.emp-sum-ico{width:42px;height:42px;flex-shrink:0;border-radius:12px;background:var(--s2);display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace}
.emp-sum-v{font-size:23px;font-weight:800;font-family:'IBM Plex Mono',monospace;line-height:1}
.emp-sum-l{font-size:11px;color:var(--fg2);margin-top:3px}
/* datos */
.emp-datos{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start}
@media(max-width:900px){.emp-datos{grid-template-columns:1fr}}
.emp-datos-form{background:var(--s1);border:1px solid var(--bd);border-radius:16px;padding:20px 22px}
.emp-form-top{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.emp-form-t{font-size:15px;font-weight:800}
.emp-form-s{font-size:12px;color:var(--fg2);line-height:1.5;margin-top:4px;max-width:440px}
.emp-comp-badge{position:relative;width:56px;height:56px;flex-shrink:0}
.emp-ring{width:56px;height:56px;transform:rotate(-90deg)}
.emp-ring-bg{fill:none;stroke:var(--s3);stroke-width:3}
.emp-ring-fg{fill:none;stroke:var(--pc);stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .5s}
.emp-comp-badge span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:700;color:var(--pc)}
.emp-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.emp-fields{grid-template-columns:1fr}}
.emp-field label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600;color:var(--fg);margin-bottom:6px}
.emp-req{font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.06em;color:var(--wa);background:rgba(240,179,74,.12);border-radius:5px;padding:2px 6px}
.emp-opt{font-family:'IBM Plex Mono',monospace;font-size:8.5px;color:var(--fg3);background:var(--s2);border-radius:5px;padding:2px 6px}
.emp-inp{width:100%;background:var(--s2);border:1px solid var(--bdm);border-radius:9px;padding:10px 12px;color:var(--fg);font-size:13px;font-family:Outfit,sans-serif;outline:none;transition:.15s}
.emp-inp:focus{border-color:var(--cy)}
.emp-inp.vacio{border-color:rgba(240,179,74,.4)}
.emp-inp.bad{border-color:var(--er)}
.emp-inp.good{border-color:color-mix(in srgb,var(--ok) 45%,transparent)}
.proy-trial{display:flex;gap:11px;align-items:flex-start;background:rgba(77,213,153,.07);border:1px solid rgba(77,213,153,.3);border-radius:12px;padding:13px 16px;margin-bottom:16px;font-size:12.5px;line-height:1.55;color:var(--fg2)}
.proy-trial b{color:var(--fg)}
.proy-trial-ico{color:var(--ok);font-family:'IBM Plex Mono',monospace;font-size:15px;flex-shrink:0}
.emp-usa{font-size:10.5px;color:var(--fg3);margin-top:5px;font-style:italic}
.emp-ok{margin-top:16px;background:rgba(77,213,153,.08);border:1px solid rgba(77,213,153,.3);border-radius:10px;padding:11px 14px;font-size:12.5px;color:var(--ok)}
.emp-todo{margin-top:16px;background:rgba(240,179,74,.07);border:1px solid rgba(240,179,74,.28);border-radius:10px;padding:11px 14px;font-size:12.5px;color:var(--wa)}
.emp-servicios-side{background:var(--s1);border:1px solid var(--bd);border-radius:16px;padding:18px}
.emp-side-t{font-size:12px;font-weight:700;color:var(--fg2);letter-spacing:.04em;margin-bottom:12px}
.emp-side-row{display:flex;gap:9px;font-size:12px;color:var(--fg);line-height:1.4;margin-bottom:10px}
.emp-side-row span{color:var(--cy);flex-shrink:0}
.emp-side-note{margin-top:6px;font-size:11px;line-height:1.5;color:var(--fg2);background:var(--s2);border-radius:10px;padding:11px 13px}
.emp-side-note b{color:var(--fg)}
/* servicios */
.emp-gate-warn{background:rgba(240,179,74,.07);border:1px solid rgba(240,179,74,.28);border-radius:11px;padding:12px 15px;font-size:12.5px;color:var(--fg2);margin-bottom:16px}
.emp-serv-sec-t{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--fg2);margin-bottom:11px}
.emp-serv-tag{font-family:'IBM Plex Mono',monospace;font-size:8px;font-weight:700;letter-spacing:.06em;color:var(--pu);background:rgba(167,139,250,.14);border-radius:5px;padding:2px 6px;margin-left:7px;vertical-align:middle}
.emp-serv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px}
.emp-serv-card{background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--c);border-radius:14px;padding:17px}
.emp-serv-top{display:flex;gap:12px;align-items:center;margin-bottom:14px}
.emp-serv-ico{width:42px;height:42px;border-radius:12px;background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c);display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace}
.emp-serv-id b{display:block;font-size:14px}
.emp-serv-est{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;margin-top:2px;display:block}
.emp-serv-steps{display:flex;gap:6px;margin-bottom:8px}
.emp-serv-dot{flex:1;height:5px;border-radius:3px;background:var(--s3);transition:.3s}
.emp-serv-flow{font-family:'IBM Plex Mono',monospace;font-size:9.5px;color:var(--fg3);letter-spacing:.02em;margin-bottom:14px}
.emp-serv-btn{width:100%;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent);color:var(--c);border-radius:10px;padding:10px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:.15s}
.emp-serv-btn:hover:not(:disabled){background:color-mix(in srgb,var(--c) 26%,transparent)}
.emp-serv-btn:disabled{opacity:.4;cursor:not-allowed}
.emp-empty{text-align:center;background:var(--s1);border:1px dashed var(--bdm);border-radius:16px;padding:44px 24px}
.emp-empty-ico{font-size:34px;color:var(--cy);opacity:.6;margin-bottom:12px;font-family:'IBM Plex Mono',monospace}
.emp-empty-t{font-size:16px;font-weight:800;margin-bottom:7px}
.emp-empty-s{font-size:12.5px;color:var(--fg2);line-height:1.5;max-width:420px;margin:0 auto 18px}
/* saldo */
.emp-saldo-hd{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;flex-wrap:wrap}
.emp-saldo-t{font-size:15px;font-weight:800}
.emp-saldo-s{font-size:12px;color:var(--fg2);line-height:1.5;margin-top:4px;max-width:520px}
.emp-saldo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:16px}
@media(max-width:760px){.emp-saldo-grid{grid-template-columns:1fr}}
.emp-saldo-card{background:var(--s1);border:1px solid var(--bd);border-radius:15px;padding:18px}
.emp-saldo-ico{width:40px;height:40px;border-radius:11px;background:color-mix(in srgb,var(--c) 14%,transparent);color:var(--c);display:flex;align-items:center;justify-content:center;font-size:18px;font-family:'IBM Plex Mono',monospace;margin-bottom:12px}
.emp-saldo-lbl{font-size:12.5px;font-weight:700;color:var(--fg2);margin-bottom:8px}
.emp-saldo-v{display:flex;align-items:baseline;gap:6px;margin-bottom:9px}
.emp-saldo-v b{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:800;color:var(--c)}
.emp-saldo-v span{font-size:11px;color:var(--fg3)}
.emp-saldo-bar{height:7px;border-radius:5px;background:var(--s3);overflow:hidden}
.emp-saldo-bar i{display:block;height:100%;border-radius:5px;transition:width .5s}
.emp-saldo-foot{font-size:10.5px;color:var(--fg3);margin-top:7px;font-family:'IBM Plex Mono',monospace}
.emp-saldo-no{font-size:12px;color:var(--fg3);margin-bottom:10px}
.emp-saldo-up{background:var(--s2);border:1px solid var(--bdm);color:var(--fg2);border-radius:8px;padding:7px 13px;font-size:11.5px;cursor:pointer}
.emp-saldo-up:hover{border-color:var(--cy);color:var(--cy)}
.emp-saldo-note{font-size:11.5px;color:var(--fg2);background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:12px 15px}
.emp-saldo-note b{color:var(--fg)}

/* ─── INFORME: titular ejecutivo del periodo ─── */
.informe-titular{display:flex;gap:13px;align-items:center;padding:15px 24px;border-bottom:1px solid var(--bd);background:color-mix(in srgb,var(--tc) 6%,transparent)}
.informe-titular-ic{width:34px;height:34px;flex-shrink:0;border-radius:10px;background:color-mix(in srgb,var(--tc) 16%,transparent);color:var(--tc);display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:800;font-family:'IBM Plex Mono',monospace}
.informe-titular-t{font-size:15px;font-weight:800;color:var(--fg);line-height:1.2}
.informe-titular-d{font-size:12px;color:var(--fg2);margin-top:3px;line-height:1.4}

/* ─── ECOSISTEMA: salud del sistema ─── */
.eco-health{display:flex;align-items:center;gap:13px;background:linear-gradient(160deg,color-mix(in srgb,var(--wa) 6%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--wa) 24%,transparent);border-radius:14px;padding:14px 18px;margin-bottom:16px}
.eco-health.live{background:linear-gradient(160deg,color-mix(in srgb,var(--ok) 6%,var(--s1)),var(--s1) 60%);border-color:color-mix(in srgb,var(--ok) 24%,transparent)}
.eco-health-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0;background:var(--wa);box-shadow:0 0 10px var(--wa);animation:demoPulse 1.6s infinite}
.eco-health.live .eco-health-dot{background:var(--ok);box-shadow:0 0 10px var(--ok)}
.eco-health-tx{flex:1}
.eco-health-tx b{display:block;font-size:13.5px}
.eco-health-tx span{display:block;font-size:11.5px;color:var(--fg2);margin-top:2px}
.eco-health-thru{text-align:right;flex-shrink:0}
.eco-health-thru-v{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:800;color:var(--cy);line-height:1}
.eco-health-thru-v small{font-size:12px;color:var(--fg3)}
.eco-health-thru-l{font-size:10px;color:var(--fg3);margin-top:3px}

/* ─── MONTA TU VIFER (progreso de implantación, Dashboard + Roadmap) ─── */
.mv{background:linear-gradient(160deg,color-mix(in srgb,var(--cy) 8%,var(--s1)),var(--s1) 60%);border:1px solid var(--bdc);border-radius:16px;padding:16px 18px;margin-bottom:18px}
.mv-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.mv-t{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800}
.mv-ico{color:var(--cy);font-family:'IBM Plex Mono',monospace}
.mv-pct{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg2)}
.mv-track{height:7px;border-radius:5px;background:var(--s3);overflow:hidden;margin-bottom:14px}
.mv-fill{height:100%;border-radius:5px;background:linear-gradient(90deg,var(--cy),var(--ok));transition:width .6s cubic-bezier(.16,1,.3,1)}
.mv-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
@media(max-width:760px){.mv-steps{grid-template-columns:1fr}}
.mv-step{display:flex;gap:10px;align-items:flex-start;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:11px 13px;cursor:pointer;transition:.15s}
.mv-step:not(.done):hover{border-color:var(--cy)}
.mv-step.done{cursor:default;border-color:color-mix(in srgb,var(--ok) 30%,transparent)}
.mv-check{width:22px;height:22px;flex-shrink:0;border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;font-family:'IBM Plex Mono',monospace;background:var(--s3);color:var(--fg2)}
.mv-step.done .mv-check{background:var(--ok);color:#04181c}
.mv-step-tx b{display:block;font-size:12px;font-weight:700}
.mv-step.done .mv-step-tx b{color:var(--fg2)}
.mv-step-tx span{display:block;font-size:10.5px;color:var(--fg3);line-height:1.35;margin-top:2px}

/* ─── STUDIO: catálogo por familias ─── */
.studio-fam{margin-bottom:22px}
.studio-fam-hd{display:flex;align-items:center;gap:12px;padding:11px 15px;background:linear-gradient(120deg,color-mix(in srgb,var(--c) 12%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);border-radius:13px;margin-bottom:12px}
.studio-fam-ico{width:40px;height:40px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.studio-fam-tx{flex:1;min-width:0}
.studio-fam-tx b{display:block;font-size:15px;font-weight:800}
.studio-fam-tx span{display:block;font-size:11.5px;color:var(--fg2);line-height:1.4;margin-top:2px}
.studio-fam-see{flex-shrink:0;background:transparent;border:1px solid color-mix(in srgb,var(--c) 34%,transparent);color:var(--c);border-radius:9px;padding:8px 13px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:.15s}
.studio-fam-see:hover{background:color-mix(in srgb,var(--c) 12%,transparent)}

/* ─── EL PLANO DE TU SOLUCIÓN (Studio paso 2) ─── */
.wiz-plano{max-width:1000px;margin:0 auto}
.wiz-plano-nav{display:flex;gap:10px;margin-top:14px}
.bp{--c:#00c2d1;border:1px solid color-mix(in srgb,var(--c) 26%,var(--bd));border-radius:18px;padding:22px 24px;background:radial-gradient(120% 80% at 50% -10%,color-mix(in srgb,var(--c) 10%,transparent),transparent 60%),var(--s1);position:relative;overflow:hidden}
.bp-hd{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}
.bp-hd-tx{flex:1;min-width:0}
.bp-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.12em;color:var(--c);margin-bottom:7px}
.bp-title{font-size:20px;font-weight:800;line-height:1.15;font-family:var(--font-display,'Outfit'),sans-serif}
.bp-sub{font-size:12.5px;color:var(--fg2);line-height:1.55;margin-top:7px;max-width:640px}
.bp-hd-badge{width:52px;height:52px;flex-shrink:0;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);box-shadow:0 0 26px color-mix(in srgb,var(--c) 30%,transparent)}
/* flujo */
.bp-flow{display:grid;grid-template-columns:1fr auto 1.35fr auto 1fr;align-items:center;gap:6px;padding:8px 0 4px}
.bp-col{min-width:0}
.bp-col-core{display:flex;flex-direction:column;align-items:stretch;gap:0}
.bp-node{display:flex;align-items:center;gap:11px;padding:13px 14px;border-radius:14px;background:var(--s2);border:1px solid var(--bd);opacity:0;transform:translateY(8px) scale(.97);transition:opacity .5s,transform .5s}
.bp-node.on{opacity:1;transform:none}
.bp-node.out.on{border-color:color-mix(in srgb,var(--c) 45%,transparent);box-shadow:0 0 22px color-mix(in srgb,var(--c) 18%,transparent)}
.bp-node-g{width:38px;height:38px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:18px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 32%,transparent)}
.bp-node-tx{min-width:0}
.bp-node-tx b{display:block;font-size:12.5px;font-weight:700;line-height:1.25}
.bp-node-tx span{display:block;font-size:10.5px;color:var(--fg3);font-family:'IBM Plex Mono',monospace;margin-top:2px}
.bp-rail{position:relative;width:46px;height:3px;border-radius:2px;background:var(--bd);overflow:hidden}
.bp-rail.on{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 20%,transparent),var(--c))}
.bp-rail .bp-pkt{position:absolute;top:50%;left:0;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--c);box-shadow:0 0 10px var(--c);opacity:0}
.bp-rail.on .bp-pkt{opacity:1;animation:bpPkt 1.5s linear infinite}
@keyframes bpPkt{0%{left:-8px}100%{left:48px}}
/* cerebro */
.bp-brain{border:1.5px solid color-mix(in srgb,var(--c) 40%,transparent);border-radius:16px;padding:15px 16px;text-align:center;background:radial-gradient(100% 100% at 50% 0,color-mix(in srgb,var(--c) 16%,transparent),var(--s2) 70%);opacity:0;transform:scale(.94);transition:opacity .5s,transform .5s}
.bp-brain.on{opacity:1;transform:none;box-shadow:0 0 32px color-mix(in srgb,var(--c) 24%,transparent)}
.bp-brain-g{font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--c);margin-bottom:4px}
.bp-brain-nm{font-size:14px;font-weight:800}
.bp-brain-tag{font-size:9.5px;font-family:'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--c);opacity:.8;margin-top:2px}
.bp-brain-chips{display:flex;flex-wrap:wrap;gap:5px;justify-content:center;margin-top:9px}
.bp-chip{font-size:10px;padding:3px 8px;border-radius:20px;background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);color:var(--fg);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bp-brain-hint{font-size:10px;color:var(--fg3);font-style:italic;margin-top:8px}
.bp-tools{opacity:0;transition:opacity .5s;margin-top:2px}
.bp-tools.on{opacity:1}
.bp-tools-stem{width:2px;height:16px;margin:0 auto;background:linear-gradient(var(--c),transparent)}
.bp-tools-row{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.bp-tool{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--fg2);padding:6px 10px;border-radius:9px;background:var(--s1);border:1px solid var(--bd)}
.bp-tool-g{font-family:'IBM Plex Mono',monospace;color:var(--c)}
/* retorno vivo */
.bp-roi{margin-top:20px;border-top:1px solid var(--bd);padding-top:18px;opacity:0;transform:translateY(8px);transition:opacity .55s,transform .55s}
.bp-roi.on{opacity:1;transform:none}
.bp-roi-hd{display:flex;align-items:baseline;gap:10px;margin-bottom:13px}
.bp-roi-t{font-size:15px;font-weight:800}
.bp-roi-note{font-size:11px;color:var(--fg3)}
.bp-roi-lever{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px;margin-bottom:15px}
.bp-roi-lever label{font-size:12px;color:var(--fg2)}
.bp-roi-lever input[type=range]{width:100%;height:5px;cursor:pointer}
.bp-roi-volval{font-family:'IBM Plex Mono',monospace;font-size:15px;font-weight:700;white-space:nowrap}
.bp-roi-volval span{font-size:10px;color:var(--fg3);font-weight:400}
.bp-roi-stats{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:10px}
.bp-roi-stat{background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:12px 13px}
.bp-roi-stat.big{background:radial-gradient(120% 120% at 0 0,color-mix(in srgb,var(--c) 12%,transparent),var(--s2) 70%);border-color:color-mix(in srgb,var(--c) 30%,transparent)}
.bp-roi-v{font-family:'IBM Plex Mono',monospace;font-size:19px;font-weight:800;line-height:1}
.bp-roi-stat.big .bp-roi-v{font-size:24px}
.bp-roi-l{font-size:10.5px;color:var(--fg3);margin-top:5px;line-height:1.3}
.bp-roi-foot{font-size:10.5px;color:var(--fg3);line-height:1.5;margin-top:12px}
@media(max-width:820px){
  .bp-flow{grid-template-columns:1fr;gap:10px}
  .bp-rail{width:3px;height:26px;margin:0 auto}
  .bp-rail.on{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 20%,transparent),var(--c))}
  .bp-rail .bp-pkt{left:50%!important;margin-left:-3.5px;top:0}
  .bp-rail.on .bp-pkt{animation:bpPktV 1.5s linear infinite}
  .bp-roi-stats{grid-template-columns:1fr 1fr}
  .bp-roi-lever{grid-template-columns:1fr}
}
@keyframes bpPktV{0%{top:-8px}100%{top:28px}}

/* ─── PLANES Y PACKS ─── */
.plan-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:20px}
@media(max-width:960px){.plan-cards{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.plan-cards{grid-template-columns:1fr}}
.plan-card{position:relative;background:var(--s1);border:1px solid var(--bd);border-radius:16px;padding:20px 18px;display:flex;flex-direction:column}
.plan-card.top{border-color:var(--bdc);box-shadow:0 0 30px color-mix(in srgb,var(--cy) 12%,transparent)}
.plan-card.actual{border-color:color-mix(in srgb,var(--ok) 40%,transparent)}
.plan-ribbon{position:absolute;top:-1px;right:14px;transform:translateY(-50%);font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.08em;color:#04181c;background:var(--cy);border-radius:20px;padding:3px 10px}
.plan-ribbon.actual{background:var(--ok)}
.plan-name{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--fg2)}
.plan-price{font-family:var(--font-display);font-size:34px;line-height:1;margin:6px 0 4px}
.plan-price small{font-size:13px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.plan-pitch{font-size:11.5px;color:var(--fg2);line-height:1.45;min-height:50px;margin-bottom:12px}
.plan-credits{display:flex;flex-direction:column;gap:6px;padding:12px 0;border-top:1px solid var(--bd);border-bottom:1px solid var(--bd);margin-bottom:12px}
.plan-credit{font-size:11.5px;color:var(--fg);display:flex;align-items:center;gap:7px}
.plan-credit b{font-family:'IBM Plex Mono',monospace}
.plan-credit-ic{font-family:'IBM Plex Mono',monospace}
.plan-servs{flex:1;margin-bottom:14px}
.plan-servs-t{font-size:10px;font-weight:700;color:var(--fg3);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.plan-serv{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--fg);padding:3px 0}
.plan-serv-ck{color:var(--ok);font-size:11px}
.plan-cta{width:100%;border-radius:10px;padding:11px;font-family:Outfit,sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;border:1px solid var(--bdm);background:var(--s2);color:var(--fg);transition:.15s}
.plan-cta:hover:not(:disabled){border-color:var(--cy);color:var(--cy)}
.plan-cta.top{background:var(--cy);border-color:var(--cy);color:#04181c}
.plan-cta.actual{opacity:.5;cursor:default;border-color:color-mix(in srgb,var(--ok) 40%,transparent);color:var(--ok);background:transparent}
.plan-matrix{border:1px solid var(--bd);border-radius:14px;overflow:hidden}
.plan-matrix-hd,.plan-matrix-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;align-items:center}
.plan-matrix-hd{background:var(--s2);padding:11px 16px;font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;letter-spacing:.05em;color:var(--fg2)}
.plan-matrix-hd span:not(:first-child),.plan-matrix-row span:not(.pm-f){text-align:center}
.plan-matrix-row{padding:10px 16px;border-top:1px solid var(--bd);font-size:12px}
.pm-f{color:var(--fg)}
.pm-y{color:var(--ok);font-weight:700}
.pm-n{color:var(--fg3)}

/* ─── SHOWROOM AGENTES (conoce y habla con el equipo en vivo) ─── */
.ag-show{display:grid;grid-template-columns:250px 1fr;gap:14px;align-items:start}
@media(max-width:860px){.ag-show{grid-template-columns:1fr}}
.ag-show-list{display:flex;flex-direction:column;gap:8px}
@media(max-width:860px){.ag-show-list{flex-direction:row;overflow-x:auto}}
.ag-show-item{display:flex;align-items:center;gap:11px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid transparent;border-radius:12px;padding:11px 13px;cursor:pointer;transition:.15s;flex-shrink:0}
.ag-show-item:hover{border-color:var(--bdm);transform:translateX(2px)}
.ag-show-item.act{border-color:var(--c);border-left-color:var(--c);background:color-mix(in srgb,var(--c) 8%,var(--s1))}
.ag-show-av{width:38px;height:38px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;color:#06121a}
.ag-show-it-tx{flex:1;min-width:0}
.ag-show-it-tx b{display:block;font-size:13px}
.ag-show-it-tx span{display:block;font-size:10.5px;color:var(--fg2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ag-show-tag{flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--c)}
.ag-show-stage{background:radial-gradient(120% 130% at 0% 0%,color-mix(in srgb,var(--c) 9%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);border-radius:16px;padding:18px}
.ag-show-hd{display:flex;align-items:center;gap:13px;margin-bottom:16px;flex-wrap:wrap}
.ag-show-hd-av{width:50px;height:50px;flex-shrink:0;border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:22px;color:#06121a}
.ag-show-hd-tx{flex:1;min-width:120px}
.ag-show-hd-tx b{display:block;font-size:17px;font-weight:800}
.ag-show-hd-tx span{display:block;font-size:11.5px;color:var(--fg2);margin-top:2px}

/* ─── CINE DE AUTOMATIZACIÓN (Studio preview de los servicios nuevos) ─── */
.cine-auto-live{background:radial-gradient(120% 130% at 0% 0%,color-mix(in srgb,var(--c) 10%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);border-radius:16px;padding:18px}
.cine-auto-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.cine-auto-badge{display:flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--c)}
.cine-auto-badge i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 7px var(--c);animation:demoPulse 1.4s infinite}
.cine-auto-nm{font-size:12px;font-weight:700;color:var(--fg2)}
.cine-auto-in{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:12px 14px;font-size:12.5px;color:var(--fg);line-height:1.45;margin-bottom:14px;opacity:0;transform:translateY(-6px);transition:.4s}
.cine-auto-in.in{opacity:1;transform:none}
.cine-auto-src{display:block;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.05em;color:var(--fg3);margin-bottom:5px;text-transform:uppercase}
.cine-auto-flow{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.cine-auto-node{flex:1;min-width:120px;background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:13px 12px;text-align:center;opacity:.35;transform:scale(.97);transition:.35s}
.cine-auto-node.on{opacity:1;transform:scale(1);border-color:color-mix(in srgb,var(--c) 45%,transparent);box-shadow:0 0 16px color-mix(in srgb,var(--c) 18%,transparent)}
.cine-auto-ico{font-size:22px;margin-bottom:6px}
.cine-auto-t{font-size:12px;font-weight:700;line-height:1.25}
.cine-auto-arrow{display:flex;align-items:center;color:var(--c);font-size:16px;font-weight:700;opacity:.2;transition:.35s}
.cine-auto-arrow.on{opacity:1}
@media(max-width:520px){.cine-auto-arrow{transform:rotate(90deg)}}
.cine-auto-out{background:color-mix(in srgb,var(--ok) 8%,var(--s2));border:1px solid color-mix(in srgb,var(--ok) 24%,transparent);border-radius:11px;padding:12px 14px;font-size:12.5px;font-weight:700;color:var(--ok);margin-bottom:10px;opacity:.4;transition:.4s}
.cine-auto-out.on{opacity:1}

/* ─── SHOWROOM AUTOMATIZACIONES (galería de recetas con flujo animado) ─── */
.auto-show{display:grid;grid-template-columns:260px 1fr;gap:14px;align-items:start}
@media(max-width:820px){.auto-show{grid-template-columns:1fr}}
.auto-list{display:flex;flex-direction:column;gap:7px;max-height:560px;overflow-y:auto}
.auto-item{display:flex;align-items:center;gap:11px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid transparent;border-radius:11px;padding:11px 13px;cursor:pointer;transition:.15s}
.auto-item:hover{border-color:var(--bdm)}
.auto-item.act{border-color:var(--c);border-left-color:var(--c);background:color-mix(in srgb,var(--c) 8%,var(--s1))}
.auto-item-ico{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent)}
.auto-item-tx{min-width:0}
.auto-item-tx b{display:block;font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auto-item-tx span{display:block;font-size:10.5px;color:var(--fg2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.auto-stage{background:radial-gradient(120% 130% at 0% 0%,color-mix(in srgb,var(--c) 10%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:16px;padding:22px}
.auto-stage-hd{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.auto-stage-ico{width:50px;height:50px;flex-shrink:0;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.auto-stage-hd b{display:block;font-size:17px;font-weight:800}
.auto-stage-hd span{display:block;font-size:12px;color:var(--fg2);margin-top:2px}
.auto-stage-imp{margin-left:auto;flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);border-radius:20px;padding:6px 12px}
.auto-flow{display:flex;align-items:stretch;gap:6px;flex-wrap:wrap;margin-bottom:20px}
.auto-node{flex:1;min-width:150px;background:var(--s2);border:1px solid var(--bd);border-radius:13px;padding:15px 14px;text-align:center;opacity:0;animation:autoIn .4s ease forwards}
@keyframes autoIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.auto-node-ico{font-size:24px;margin-bottom:8px}
.auto-node-t{font-size:13px;font-weight:800;margin-bottom:4px}
.auto-node-d{font-size:11px;color:var(--fg2);line-height:1.45}
.auto-arrow{display:flex;align-items:center;color:var(--c);font-size:18px;font-weight:700;opacity:0;animation:autoIn .4s ease forwards}
@media(max-width:560px){.auto-arrow{transform:rotate(90deg)}}
.auto-ft{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--bd);padding-top:16px}
.auto-price{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--fg3)}

/* ─── SHOWROOM DE FAMILIA (CREAR) ─── */
.sr-hero{display:flex;align-items:center;gap:18px;background:linear-gradient(130deg,color-mix(in srgb,var(--c) 18%,var(--s1)),var(--s1) 62%);border:1px solid color-mix(in srgb,var(--c) 34%,transparent);border-radius:18px;padding:22px 26px;margin-bottom:14px;position:relative;overflow:hidden}
.sr-hero::after{content:'';position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 22%,transparent),transparent 70%);pointer-events:none}
.sr-hero-ico{width:64px;height:64px;flex-shrink:0;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:30px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 16%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.sr-hero-tx{flex:1}
.sr-hero-tag{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--c);margin-bottom:5px}
/* Identidad champán de VIFER STUDIO (eyebrow premium sobre el título) */
.studio-eyebrow{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.16em;background:linear-gradient(90deg,#e8b866,#f0c987);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:7px}
.studio-champan .page-title{background:linear-gradient(90deg,#f0c987,#e8b866);-webkit-background-clip:text;background-clip:text;color:transparent}
.sr-hero-t{font-size:26px;font-weight:800;letter-spacing:-.01em;line-height:1.1}
.sr-hero-d{font-size:13px;color:var(--fg2);margin-top:6px;max-width:560px;line-height:1.5}
.sr-hero-count{text-align:center;flex-shrink:0}
.sr-hero-count b{display:block;font-family:'IBM Plex Mono',monospace;font-size:30px;font-weight:800;color:var(--c);line-height:1}
.sr-hero-count span{font-size:11px;color:var(--fg3)}
.sr-intro{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;color:var(--fg2);line-height:1.55;background:var(--s1);border:1px solid var(--bd);border-radius:12px;padding:13px 16px;margin-bottom:18px}
.sr-intro-ic{color:var(--cy);flex-shrink:0}
.sr-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:14px}
.sr-card.open{grid-column:1/-1}
.sr-card{background:var(--s1);border:1px solid var(--bd);border-radius:16px;overflow:hidden;transition:.18s}
.sr-card:hover{border-color:color-mix(in srgb,var(--c) 40%,transparent);transform:translateY(-2px)}
.sr-card-hd{display:flex;align-items:center;gap:13px;padding:16px 18px;cursor:pointer}
.sr-card-ico{width:46px;height:46px;flex-shrink:0;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:21px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent)}
.sr-card-b{flex:1;min-width:0}
.sr-card-b b{display:block;font-size:15px}
.sr-card-b span{display:block;font-size:11.5px;color:var(--fg2);line-height:1.4;margin-top:2px}
.sr-card-imp{flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);border-radius:20px;padding:4px 9px;max-width:130px;text-align:center;line-height:1.3}
.sr-demo{padding:0 18px 14px;animation:srReveal .3s ease}
@keyframes srReveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.sr-card-ft{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 18px;border-top:1px solid var(--bd);flex-wrap:wrap}
.sr-card-price{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg3)}
.sr-card-acts{display:flex;gap:8px}
/* ─── SHOWROOM AUTOMATIZACIONES "LA FÁBRICA" (auto2) ─── */
.auto2{display:grid;grid-template-columns:270px 1fr;gap:14px;align-items:start}
@media(max-width:860px){.auto2{grid-template-columns:1fr}}
.auto2-list{display:flex;flex-direction:column;gap:7px}
@media(max-width:860px){.auto2-list{flex-direction:row;overflow-x:auto;padding-bottom:6px}}
.auto2-item{display:flex;align-items:center;gap:11px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid transparent;border-radius:12px;padding:11px 12px;cursor:pointer;transition:.15s;flex-shrink:0;min-width:230px}
.auto2-item:hover{border-color:var(--bdm);transform:translateX(2px)}
.auto2-item.act{border-color:color-mix(in srgb,var(--c) 55%,transparent);border-left-color:var(--c);background:color-mix(in srgb,var(--c) 9%,var(--s1))}
.auto2-item-ic{width:38px;height:38px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:18px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border:1px solid color-mix(in srgb,var(--c) 34%,transparent)}
.auto2-item-tx{flex:1;min-width:0}
.auto2-item-tx b{display:block;font-size:13px;font-weight:700}
.auto2-item-tx span{display:block;font-size:10.5px;color:var(--fg2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.auto2-item-run{flex-shrink:0;width:10px;display:flex;justify-content:center}
.auto2-item-run i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);animation:pulse 1.5s infinite}
.auto2-item:not(.act) .auto2-item-run i{background:var(--fg3);box-shadow:none;animation:none}
.auto2-stage{background:radial-gradient(130% 120% at 0% 0%,color-mix(in srgb,var(--c) 11%,var(--s1)),var(--s1) 58%);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:18px;padding:20px 22px}
.auto2-hd{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.auto2-hd-ic{width:56px;height:56px;flex-shrink:0;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:27px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border:1px solid color-mix(in srgb,var(--c) 40%,transparent);box-shadow:0 0 26px color-mix(in srgb,var(--c) 26%,transparent)}
.auto2-hd-tx{flex:1;min-width:0}
.auto2-hd-badge{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--c)}
.auto2-hd-dot{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);animation:pulse 1.5s infinite}
.auto2-hd-nm{font-family:'Bebas Neue',sans-serif;font-size:27px;line-height:1;margin-top:3px}
.auto2-hd-tag{font-size:11.5px;color:var(--fg2);margin-top:3px;line-height:1.35}
.auto2-hd-imp{flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 32%,transparent);border-radius:20px;padding:6px 12px;text-align:center;max-width:150px}
.auto2-scene{position:relative;background:var(--bg1,#0b0f1a);border:1px solid color-mix(in srgb,var(--c) 22%,var(--bd));border-radius:14px;padding:20px 16px 16px;margin-bottom:16px;overflow:hidden}
.auto2-run-lbl{position:absolute;top:9px;right:11px;z-index:2;display:flex;align-items:center;gap:5px;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--c);opacity:.85}
.auto2-run-lbl i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 7px var(--c);animation:pulse 1.4s infinite}
.auto2-flow{display:flex;align-items:center;flex-wrap:wrap;gap:8px;justify-content:center;padding:8px 0}
.auto2-node{background:var(--s2);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:11px;padding:11px 13px;text-align:center;min-width:96px}
.auto2-node-ic{font-family:'IBM Plex Mono',monospace;font-size:17px;color:var(--c)}
.auto2-node-t{font-size:11px;font-weight:700;margin-top:5px}
.auto2-node-arr{color:var(--c);font-size:16px}
.auto2-ba{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:10px;margin-bottom:16px}
.auto2-ba-side{border-radius:12px;padding:12px 13px;border:1px solid var(--bd)}
.auto2-ba-side.antes{background:color-mix(in srgb,var(--r,#f85149) 7%,var(--s1));border-color:color-mix(in srgb,var(--r,#f85149) 22%,transparent)}
.auto2-ba-side.despues{background:color-mix(in srgb,var(--ok) 8%,var(--s1));border-color:color-mix(in srgb,var(--ok) 26%,transparent)}
.auto2-ba-t{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.1em;margin-bottom:5px}
.auto2-ba-side.antes .auto2-ba-t{color:var(--r,#f85149)}
.auto2-ba-side.despues .auto2-ba-t{color:var(--ok)}
.auto2-ba-tx{font-size:12px;line-height:1.4;color:var(--fg)}
.auto2-ba-arrow{align-self:center;color:var(--c);font-size:20px;font-weight:800}
.auto2-how{margin-bottom:16px}
.auto2-how-t,.auto2-how .auto2-how-t{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--fg3);margin-bottom:9px}
.auto2-how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
@media(max-width:640px){.auto2-how-steps{grid-template-columns:1fr}}
.auto2-how-step{display:flex;align-items:flex-start;gap:8px;background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:10px 11px}
.auto2-how-n{width:18px;height:18px;flex-shrink:0;border-radius:6px;color:#06121a;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}
.auto2-how-ic{font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--c);flex-shrink:0}
.auto2-how-tx b{display:block;font-size:11.5px;font-weight:700;line-height:1.2}
.auto2-how-tx span{display:block;font-size:10px;color:var(--fg3);line-height:1.3;margin-top:2px}
.auto2-ft{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;border-top:1px solid var(--bd);padding-top:15px}
.auto2-facts{display:flex;gap:16px;flex-wrap:wrap}
.auto2-fact{font-size:11px;color:var(--fg2)}
.auto2-fact b{font-family:'IBM Plex Mono',monospace;font-size:14px;margin-right:3px}
.auto2-buy{display:flex;align-items:center;gap:12px}
.auto2-price{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:700;color:var(--fg)}

/* ─── CINES BESPOKE DE AUTOMATIZACIÓN (ac-*) ─── */
.ac{--c:#a78bfa;display:flex;flex-direction:column;gap:11px;min-height:236px;justify-content:center}
.ac-hd{display:flex}
.ac-live{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.09em;color:var(--c)}
.ac-live i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);animation:pulse 1.4s infinite}
/* reveal compartido */
.ac-call,.ac-wa,.ac-tick,.ac-stars,.ac-goog,.ac-cardp,.ac-req,.ac-doc,.ac-cal,.ac-lock,.ac-wave,.ac-art,.ac-scan,.ac-alert,.ac-lead,.ac-split,.ac-ok{opacity:0;transform:translateY(8px);transition:opacity .42s cubic-bezier(.16,1,.3,1),transform .42s cubic-bezier(.16,1,.3,1)}
.ac .in{opacity:1;transform:none}
/* piezas comunes */
.ac-arw{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--c);font-size:15px;opacity:0;transition:.35s}
.ac-arw.on{opacity:1}
.ac-arw-l{font-size:10.5px;color:var(--fg3)}
.ac-timer{font-family:'IBM Plex Mono',monospace;font-weight:800;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);border-radius:7px;padding:2px 8px}
.ac-typing{display:inline-flex;gap:3px;margin-left:6px}
.ac-typing i{width:5px;height:5px;border-radius:50%;background:var(--c);animation:pulse 1s infinite}
.ac-typing i:nth-child(2){animation-delay:.2s}.ac-typing i:nth-child(3){animation-delay:.4s}
.ac-step{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--fg);background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px;opacity:0;transform:translateY(8px);transition:.4s}
.ac-step.on{opacity:1;transform:none}
.ac-step-ic{font-family:'IBM Plex Mono',monospace;color:var(--c);flex-shrink:0}
.ac-ok{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.4;color:var(--fg);background:color-mix(in srgb,var(--ok) 9%,var(--s1));border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);border-radius:12px;padding:11px 13px}
.ac-ok span{width:20px;height:20px;flex-shrink:0;border-radius:50%;background:var(--ok);color:#04210f;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:12px}
/* whatsapp */
.ac-wa{background:var(--s2);border:1px solid color-mix(in srgb,var(--c) 26%,transparent);border-radius:12px;padding:11px 12px}
.ac-wa-hd{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--fg2);font-weight:600}
.ac-wa-ic{color:#25d366}
.ac-wa-bub{margin-top:8px;background:color-mix(in srgb,#25d366 12%,var(--s3));border:1px solid color-mix(in srgb,#25d366 24%,transparent);border-radius:12px 12px 12px 4px;padding:9px 11px;font-size:12px;line-height:1.45;position:relative}
.ac-wa-t{display:block;text-align:right;font-size:9px;color:var(--fg3);margin-top:3px;font-family:'IBM Plex Mono',monospace}
/* 1 rescate */
.ac-call{display:flex;align-items:center;gap:11px;background:color-mix(in srgb,var(--r,#f85149) 8%,var(--s1));border:1px solid color-mix(in srgb,var(--r,#f85149) 28%,transparent);border-radius:12px;padding:11px 13px}
.ac-call-ic{width:36px;height:36px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:17px;color:var(--r,#f85149);background:color-mix(in srgb,var(--r,#f85149) 15%,transparent)}
.ac-call-tx{flex:1;min-width:0}.ac-call-tx b{display:block;font-size:12.5px}.ac-call-tx span{display:block;font-size:10.5px;color:var(--fg3)}
.ac-call-x{color:var(--r,#f85149);font-size:15px}
/* 2 reseñas */
.ac-tick{display:flex;align-items:center;gap:9px;font-size:12px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px}
.ac-tick span{width:18px;height:18px;border-radius:50%;background:var(--ok);color:#04210f;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:11px}
.ac-stars{display:flex;gap:6px;justify-content:center;font-size:26px}
.ac-star{color:var(--fg3);transition:.3s;transform:scale(.85)}
.ac-star.on{color:#f5c518;transform:scale(1);text-shadow:0 0 12px rgba(245,197,24,.5)}
.ac-goog{background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:11px 13px}
.ac-goog-hd{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}
.ac-goog-hd b{color:#4285f4;font-family:'IBM Plex Mono',monospace}
.ac-goog-stars{font-size:14px;color:#f5c518;margin-top:6px}.ac-goog-stars span{color:var(--fg2);font-size:11.5px;font-style:italic}
.ac-goog-seo{font-size:11px;color:var(--fg3);margin-top:5px}
/* 3 dunning */
.ac-cardp{border-radius:13px;padding:13px 14px;background:linear-gradient(135deg,var(--s3),var(--s2));border:1px solid var(--bd)}
.ac-cardp.bad{border-color:color-mix(in srgb,var(--r,#f85149) 34%,transparent)}
.ac-cardp-row{display:flex;justify-content:space-between;align-items:center}
.ac-cardp-brand{font-family:'IBM Plex Mono',monospace;font-weight:800;letter-spacing:.1em}
.ac-cardp-st{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;color:var(--r,#f85149);border:1px solid color-mix(in srgb,var(--r,#f85149) 40%,transparent);border-radius:6px;padding:2px 7px}
.ac-cardp-no{font-family:'IBM Plex Mono',monospace;font-size:15px;letter-spacing:.12em;margin:12px 0 6px;color:var(--fg2)}
.ac-cardp-ft{font-size:10.5px;color:var(--fg3)}
/* 4 cotizador */
.ac-req{display:flex;align-items:center;gap:9px;font-size:12px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px}
.ac-req-ic{color:var(--c);font-family:'IBM Plex Mono',monospace}
.ac-doc{background:#fff;color:#1a2233;border-radius:10px;padding:13px 15px;box-shadow:0 10px 30px -12px rgba(0,0,0,.6)}
.ac-doc-hd{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.1em;color:#6a7690;border-bottom:1px solid #e6e9f0;padding-bottom:7px;margin-bottom:8px}
.ac-doc-row{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;color:#2a3346;opacity:0;transform:translateX(-6px);transition:.35s}
.ac-doc-row.on{opacity:1;transform:none}
.ac-doc-row b{font-family:'IBM Plex Mono',monospace}
.ac-doc-total{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid #1a2233;margin-top:8px;padding-top:8px;font-size:12px;font-weight:800;opacity:0;transition:.4s}
.ac-doc-total.on{opacity:1}
.ac-doc-total b{font-family:'IBM Plex Mono',monospace;font-size:18px}
/* 5 reservas */
.ac-cal{display:flex;gap:9px;justify-content:center}
.ac-cal-d{flex:1;max-width:96px;text-align:center;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:11px 6px;transition:.3s}
.ac-cal-d span{display:block;font-size:10px;color:var(--fg3);text-transform:uppercase;letter-spacing:.06em}
.ac-cal-d b{display:block;font-family:'IBM Plex Mono',monospace;font-size:15px;margin-top:4px}
.ac-cal-d.pick{border-color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);position:relative;box-shadow:0 0 20px color-mix(in srgb,var(--c) 22%,transparent)}
.ac-cal-ck{position:absolute;top:-7px;right:-7px;width:20px;height:20px;border-radius:50%;background:var(--c);color:#06121a;font-style:normal;font-weight:800;font-size:12px;display:flex;align-items:center;justify-content:center}
.ac-lock{display:flex;align-items:center;gap:11px;background:color-mix(in srgb,var(--c) 9%,var(--s1));border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:12px;padding:12px 13px}
.ac-lock span{font-size:20px;color:var(--c);flex-shrink:0}
.ac-lock b{display:block;font-size:12.5px}.ac-lock div span{font-size:11px;color:var(--fg3);font-weight:400}
/* 6 contenido */
.ac-wave{display:flex;align-items:center;gap:3px;background:var(--s2);border:1px solid color-mix(in srgb,var(--c) 24%,transparent);border-radius:12px;padding:12px 13px;height:52px}
.ac-wave-ic{color:var(--c);font-size:16px;margin-right:6px}
.ac-wave i{display:inline-block;width:3px;border-radius:2px;background:var(--c);transition:height .3s;animation:acWave 1s ease-in-out infinite alternate}
@keyframes acWave{to{transform:scaleY(1.5)}}
.ac-wave-t{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3)}
.ac-art{background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:12px 14px}
.ac-art-h{font-family:var(--font-display,'Outfit'),sans-serif;font-size:15px;font-weight:800;margin-bottom:8px}
.ac-art-l{font-size:11.5px;color:var(--fg2);line-height:1.5;padding:3px 0;opacity:0;transform:translateY(4px);transition:.35s}
.ac-art-l.on{opacity:1;transform:none}
/* 7 monitor */
.ac-scan{position:relative;background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:9px;overflow:hidden;display:flex;flex-direction:column;gap:7px}
.ac-scan-line{position:absolute;left:0;right:0;top:0;height:36px;background:linear-gradient(180deg,color-mix(in srgb,var(--c) 22%,transparent),transparent);animation:acScan 1.6s linear infinite}
@keyframes acScan{0%{transform:translateY(-10px)}100%{transform:translateY(150px)}}
.ac-scan-row{display:flex;align-items:center;gap:10px;padding:7px 9px;border-radius:9px;background:var(--s1);border:1px solid transparent;transition:.4s}
.ac-scan-row.flag{border-color:color-mix(in srgb,var(--r,#f85149) 40%,transparent);background:color-mix(in srgb,var(--r,#f85149) 9%,var(--s1));box-shadow:0 0 18px color-mix(in srgb,var(--r,#f85149) 18%,transparent)}
.ac-scan-av{width:28px;height:28px;flex-shrink:0;border-radius:50%;background:var(--s3);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:var(--c)}
.ac-scan-tx{flex:1;min-width:0}.ac-scan-tx b{display:block;font-size:12px}.ac-scan-tx span{display:block;font-size:10px;color:var(--fg3)}
.ac-scan-badge{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;color:var(--r,#f85149);border:1px solid color-mix(in srgb,var(--r,#f85149) 40%,transparent);border-radius:6px;padding:2px 7px}
.ac-alert{display:flex;align-items:center;gap:11px;background:color-mix(in srgb,var(--r,#f85149) 8%,var(--s1));border:1px solid color-mix(in srgb,var(--r,#f85149) 30%,transparent);border-radius:12px;padding:11px 13px}
.ac-alert span{width:22px;height:22px;flex-shrink:0;border-radius:50%;background:var(--r,#f85149);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.ac-alert b{display:block;font-size:12.5px}.ac-alert div span{width:auto;height:auto;border-radius:0;background:none;color:var(--fg3);font-size:11px;font-weight:400;display:block}
/* 8 speedlead */
.ac-lead{display:flex;align-items:center;gap:11px;background:var(--s2);border:1px solid color-mix(in srgb,var(--c) 26%,transparent);border-radius:12px;padding:11px 13px}
.ac-lead-ic{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);font-family:'IBM Plex Mono',monospace}
.ac-lead-tx{flex:1;min-width:0}.ac-lead-tx b{display:block;font-size:12.5px}.ac-lead-tx span{display:block;font-size:10.5px;color:var(--fg3)}
.ac-stop{font-family:'IBM Plex Mono',monospace;font-weight:800;font-size:15px;color:var(--fg3);background:var(--s3);border-radius:8px;padding:4px 9px;transition:.3s}
.ac-stop.run{color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--c) 26%,transparent)}
.ac-split{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.ac-split-b{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 11px;font-size:11.5px;font-weight:600;display:flex;flex-direction:column;gap:3px}
.ac-split-ic{color:var(--c);font-family:'IBM Plex Mono',monospace;font-size:15px}
.ac-split-b i{font-style:normal;font-size:10px;color:var(--fg3);font-weight:400}
.sr-btn{border-radius:9px;padding:8px 14px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;cursor:pointer;border:1px solid;transition:.15s}
.sr-btn.ghost{background:transparent;border-color:var(--bdm);color:var(--fg)}
.sr-btn.ghost:hover{border-color:var(--cy);color:var(--cy)}
.sr-btn.solid{background:var(--c);border-color:var(--c);color:#06121a}
.sr-btn.solid:hover{filter:brightness(1.1)}

/* ─── FAMILIA (hub de MIS SERVICIOS) ─── */
.fam-hero-side{display:flex;align-items:center;gap:16px;flex-shrink:0}
.fam-hero-stat{text-align:center}
.fam-hero-stat b{display:block;font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:800;line-height:1}
.fam-hero-stat span{font-size:11px;color:var(--fg3)}
.fam-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:13px}
.fam-card{display:flex;align-items:center;gap:13px;background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--c);border-radius:14px;padding:15px 17px;cursor:pointer;transition:.15s}
.fam-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--c) 45%,transparent)}
.fam-card.active{cursor:default}
.fam-card.active:hover{transform:none}
.fam-card-ico{width:44px;height:44px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent)}
.fam-card-b{flex:1;min-width:0}
.fam-card-b b{display:block;font-size:14px}
.fam-card-imp{display:block;font-size:11.5px;color:var(--ok);margin-top:2px;font-weight:600}
.fam-card-tag{display:block;font-size:11px;color:var(--fg2);line-height:1.4;margin-top:2px}
.fam-card-price{display:block;font-size:10.5px;color:var(--fg3);font-family:'IBM Plex Mono',monospace;margin-top:5px}
.fam-card-btn{flex-shrink:0;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent);color:var(--c);border-radius:9px;padding:8px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;cursor:pointer}
.fam-card-btn:hover{background:color-mix(in srgb,var(--c) 26%,transparent)}
.fam-card-go{flex-shrink:0;color:var(--c);font-weight:700;font-size:12px}
.fam-intro{text-align:center;background:radial-gradient(120% 100% at 50% 0%,color-mix(in srgb,var(--c) 8%,var(--s1)),var(--s1) 65%);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);border-radius:16px;padding:30px 24px;margin-bottom:18px}
.fam-intro-ico{font-size:32px;font-family:'IBM Plex Mono',monospace;color:var(--c);margin-bottom:10px}
.fam-intro-t{font-size:17px;font-weight:800;margin-bottom:6px}
.fam-intro-d{font-size:12.5px;color:var(--fg2);line-height:1.5;max-width:460px;margin:0 auto}

/* ─── MI EMPRESA: canales ─── */
.emp-can-intro{font-size:13px;color:var(--fg2);line-height:1.55;margin-bottom:16px;max-width:640px}
.emp-can-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:13px;margin-bottom:16px}
.emp-can-card{background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--c);border-radius:14px;padding:16px 17px}
.emp-can-top{display:flex;gap:12px;align-items:center;margin-bottom:11px}
.emp-can-ico{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace}
.emp-can-id b{display:block;font-size:14px}
.emp-can-id span{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;margin-top:2px;display:block}
.emp-can-need{font-size:11.5px;color:var(--fg2);line-height:1.5;margin-bottom:13px;min-height:34px}
.emp-can-btn{width:100%;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent);color:var(--c);border-radius:10px;padding:10px;font-family:Outfit,sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s}
.emp-can-btn:hover:not(:disabled){background:color-mix(in srgb,var(--c) 26%,transparent)}
.emp-can-btn:disabled{opacity:.6;cursor:default}
.emp-can-note{font-size:11.5px;color:var(--fg2);line-height:1.5;background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:12px 15px}

/* ─── Sidebar: upsell de plan (sustituye al switcher de demo) ─── */
.side-upsell{background:linear-gradient(150deg,color-mix(in srgb,var(--cy) 14%,var(--s2)),var(--s2) 70%);border:1px solid var(--bdc);border-radius:12px;padding:12px 14px;margin-bottom:10px;cursor:pointer;transition:.15s}
.side-upsell:hover{border-color:var(--cy);transform:translateY(-1px)}
.side-upsell-t{font-size:12.5px;font-weight:800;color:var(--fg)}
.side-upsell-d{font-size:10.5px;color:var(--fg2);margin-top:2px;line-height:1.35}
.side-upsell-go{display:inline-block;margin-top:7px;font-size:10.5px;font-weight:700;color:var(--cy)}

/* ─── CENTRO DE AYUDA ─── */
.help-search{width:100%;background:var(--s1);border:1px solid var(--bdm);border-radius:12px;padding:13px 16px;color:var(--fg);font-size:13.5px;font-family:Outfit,sans-serif;outline:none;margin-bottom:16px}
.help-search:focus{border-color:var(--cy)}
.help-list{display:flex;flex-direction:column;gap:10px}
.help-card{background:var(--s1);border:1px solid var(--bd);border-radius:14px;overflow:hidden;transition:.15s}
.help-card.open{border-color:color-mix(in srgb,var(--hc) 40%,transparent)}
.help-card-hd{display:flex;align-items:center;gap:13px;padding:15px 17px;cursor:pointer}
.help-card-ico{width:40px;height:40px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;font-family:'IBM Plex Mono',monospace;color:var(--hc);background:color-mix(in srgb,var(--hc) 14%,transparent);border:1px solid color-mix(in srgb,var(--hc) 34%,transparent)}
.help-card-tx{flex:1;min-width:0}
.help-card-tx b{display:block;font-size:14px}
.help-card-tx span{display:block;font-size:11.5px;color:var(--fg2);line-height:1.45;margin-top:2px}
.help-card-arrow{color:var(--hc);font-family:'IBM Plex Mono',monospace;flex-shrink:0}
.help-card-body{padding:0 17px 17px 70px}
.help-steps{display:flex;flex-direction:column;gap:9px;margin-bottom:4px}
.help-step{display:flex;gap:11px;align-items:flex-start;font-size:12.5px;color:var(--fg);line-height:1.5}
.help-step-n{width:21px;height:21px;flex-shrink:0;border-radius:7px;background:color-mix(in srgb,var(--hc) 16%,transparent);color:var(--hc);font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center}

/* ─── Solicitudes: cancelar ─── */
.req-cancel{background:transparent;border:1px solid color-mix(in srgb,var(--er) 34%,transparent);color:var(--er);border-radius:8px;font-size:10.5px;font-weight:600;padding:5px 10px;cursor:pointer;transition:.15s;font-family:Outfit,sans-serif}
.req-cancel:hover{background:color-mix(in srgb,var(--er) 12%,transparent)}

/* ─── SALUD DE CUENTA (semáforo global en Facturación) ─── */
.acc-health{background:linear-gradient(160deg,color-mix(in srgb,var(--ok) 6%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--ok) 24%,transparent);border-radius:16px;padding:16px 18px;margin-bottom:16px}
.acc-health:not(.ok){background:linear-gradient(160deg,color-mix(in srgb,var(--wa) 6%,var(--s1)),var(--s1) 60%);border-color:color-mix(in srgb,var(--wa) 26%,transparent)}
.acc-health-hd{display:flex;align-items:center;gap:11px;margin-bottom:14px}
.acc-health-ico{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:800;color:var(--ok);background:color-mix(in srgb,var(--ok) 15%,transparent)}
.acc-health:not(.ok) .acc-health-ico{color:var(--wa);background:color-mix(in srgb,var(--wa) 15%,transparent)}
.acc-health-hd b{display:block;font-size:14px;font-weight:800}
.acc-health-hd span{display:block;font-size:11.5px;color:var(--fg2)}
.acc-health-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:9px}
.acc-h-item{display:flex;gap:9px;align-items:flex-start;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:11px 13px}
.acc-h-item.link{cursor:pointer}
.acc-h-item.warn{border-color:color-mix(in srgb,var(--wa) 35%,transparent)}
.acc-h-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-top:4px;background:var(--ok);box-shadow:0 0 7px var(--ok)}
.acc-h-item.warn .acc-h-dot{background:var(--wa);box-shadow:0 0 7px var(--wa)}
.acc-h-lbl{font-size:10px;font-weight:700;color:var(--fg3);text-transform:uppercase;letter-spacing:.04em}
.acc-h-v{font-size:13.5px;font-weight:800;margin:2px 0}
.acc-h-d{font-size:10.5px;color:var(--fg2);line-height:1.35}

/* ─── CENTRO DE MANDO (lo primero: qué requiere tu atención hoy) ─── */
.cmd-center{background:linear-gradient(165deg,color-mix(in srgb,var(--er) 7%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--er) 26%,transparent);border-radius:16px;padding:16px 18px;margin-bottom:18px}
.cmd-center.clear{background:linear-gradient(165deg,color-mix(in srgb,var(--ok) 6%,var(--s1)),var(--s1) 60%);border-color:color-mix(in srgb,var(--ok) 24%,transparent)}
.cmd-center-hd{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.cmd-center-t{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800}
.cmd-center-ico{font-family:'IBM Plex Mono',monospace;color:var(--er)}
.cmd-center.clear .cmd-center-ico{color:var(--ok)}
.cmd-center-sub{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg2)}
.cmd-center-list{display:flex;flex-direction:column;gap:9px}
.cmd-center-ok{display:flex;gap:12px;align-items:center}
.cmd-center-ok-ic{width:38px;height:38px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:800;color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent);border:1px solid color-mix(in srgb,var(--ok) 34%,transparent)}
.cmd-center-ok b{display:block;font-size:13.5px}
.cmd-center-ok span{display:block;font-size:11.5px;color:var(--fg2);line-height:1.45;margin-top:2px}

/* ─── DOCUMENTOS: zona de subida ─── */
.doc-drop{border:1.5px dashed var(--bdm);border-radius:12px;padding:18px 14px;text-align:center;margin-bottom:11px;cursor:copy;transition:.15s;background:var(--s2)}
.doc-drop.over{border-color:var(--cy);background:color-mix(in srgb,var(--cy) 8%,var(--s2))}
.doc-drop-ico{font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--cy);margin-bottom:6px}
.doc-drop-t{font-size:13px;font-weight:700}
.doc-drop-d{font-size:10.5px;color:var(--fg3);margin-top:3px;line-height:1.4}

/* ─── CITAS: formulario de cita manual ─── */
.nc-form{display:flex;flex-direction:column}
.nc-intro{font-size:12px;color:var(--fg2);line-height:1.5;background:color-mix(in srgb,var(--cy) 6%,var(--s2));border:1px solid var(--bd);border-radius:11px;padding:12px 14px;margin-bottom:16px}
.nc-intro b{color:var(--fg)}
.nc-l{font-size:11.5px;font-weight:700;color:var(--fg2);margin:12px 0 5px;display:flex;align-items:center;gap:7px}
.nc-req{font-family:'IBM Plex Mono',monospace;font-size:8px;font-weight:700;color:var(--wa);background:rgba(240,179,74,.12);border-radius:5px;padding:2px 6px}
.nc-i{width:100%;background:var(--s2);border:1px solid var(--bdm);border-radius:9px;padding:10px 12px;color:var(--fg);font-size:13px;font-family:Outfit,sans-serif;outline:none}
.nc-i:focus{border-color:var(--cy)}
.nc-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}

/* ─── DASHBOARD: tu siguiente palanca (escenario accionable) ─── */
.next-lever{display:flex;align-items:center;gap:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--lc) 12%,var(--s1)),var(--s1) 62%);border:1px solid color-mix(in srgb,var(--lc) 34%,transparent);border-radius:16px;padding:16px 20px;margin-bottom:18px;flex-wrap:wrap}
.next-lever-ico{width:50px;height:50px;flex-shrink:0;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--lc);background:color-mix(in srgb,var(--lc) 16%,transparent);border:1px solid color-mix(in srgb,var(--lc) 38%,transparent)}
.next-lever-tx{flex:1;min-width:220px}
.next-lever-tag{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--lc);margin-bottom:4px}
.next-lever-t{font-size:15.5px;font-weight:800;line-height:1.25}
.next-lever-d{font-size:11.5px;color:var(--fg2);margin-top:3px;line-height:1.45}
.next-lever-cta{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}

/* ─── BENCHMARK SECTORIAL (cómo estás vs tu mercado) ─── */
.bench-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:13px}
.bench-card{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.bench-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.bench-lbl{font-size:13.5px;font-weight:800}
.bench-sub{font-size:11px;color:var(--fg2);margin-top:2px}
.bench-verdict{flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.04em;border:1px solid;border-radius:20px;padding:4px 10px;white-space:nowrap}
.bench-bar{position:relative;height:12px;border-radius:7px;background:var(--s3);overflow:visible;margin-bottom:16px}
.bench-fill{height:100%;border-radius:7px;transition:width .6s cubic-bezier(.16,1,.3,1)}
.bench-mark{position:absolute;top:-3px;bottom:-3px;width:2px;background:var(--fg2);border-radius:2px}
.bench-mark.top{background:var(--ok)}
.bench-mark::after{content:'';position:absolute;top:-4px;left:-2px;width:6px;height:6px;border-radius:50%;background:inherit}
.bench-legend{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:9px}
.bench-legend span{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--fg2)}
.bench-legend b{color:var(--fg);font-family:'IBM Plex Mono',monospace}
.bench-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}
.bench-legend i.bl-line{width:2px;height:11px;border-radius:2px;background:var(--fg2)}
.bench-legend i.bl-line.top{background:var(--ok)}
.bench-verdict-d{font-size:11.5px;color:var(--fg2);line-height:1.5;border-top:1px solid var(--bd);padding-top:10px}

/* ─── EMPTY STATE elevado (nada de texto gris plano) ─── */
.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:44px 24px;background:radial-gradient(120% 100% at 50% 0%,color-mix(in srgb,var(--cy) 5%,var(--s1)),var(--s1) 70%);border:1px solid var(--bd);border-radius:16px}
.empty-state-ico{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:24px;font-family:'IBM Plex Mono',monospace;color:var(--cy);background:color-mix(in srgb,var(--cy) 10%,transparent);border:1px solid var(--bdc);margin-bottom:14px;animation:emptyPulse 2.4s ease-in-out infinite}
@keyframes emptyPulse{0%,100%{transform:translateY(0);opacity:.9}50%{transform:translateY(-3px);opacity:1}}
.empty-state-t{font-size:15px;font-weight:800;color:var(--fg);margin-bottom:6px}
.empty-state-msg{font-size:12.5px;color:var(--fg2);line-height:1.55;max-width:420px}

/* ─── WORKFLOWS: foto global de la automatización ─── */
.wf-hero{background:linear-gradient(160deg,color-mix(in srgb,var(--cy) 7%,var(--s1)),var(--s1) 60%);border:1px solid var(--bdc);border-radius:16px;padding:18px 22px;margin-bottom:18px}
.wf-hero-stats{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wf-hero-stat{flex:1;min-width:130px}
.wf-hero-v{font-family:'IBM Plex Mono',monospace;font-size:28px;font-weight:800;line-height:1}
.wf-hero-v small{font-size:15px;color:var(--fg3)}
.wf-hero-l{font-size:11.5px;color:var(--fg2);margin-top:5px}
.wf-hero-sep{width:1px;align-self:stretch;background:var(--bd);margin:4px 6px}
.wf-hero-star{display:flex;flex-direction:column;gap:4px;margin-top:16px;padding:13px 16px;background:color-mix(in srgb,var(--sc) 9%,var(--s2));border:1px solid color-mix(in srgb,var(--sc) 30%,transparent);border-left:3px solid var(--sc);border-radius:11px}
.wf-hero-star-tag{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.1em;color:var(--sc)}
.wf-hero-star-tx{font-size:12.5px;color:var(--fg);line-height:1.5}

/* ─── ACTIVIDAD: insights automáticos (copiloto, no panel) ─── */
.act-insights{background:linear-gradient(160deg,color-mix(in srgb,var(--pu) 8%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--pu) 26%,transparent);border-radius:15px;padding:16px 18px;margin-bottom:14px}
.act-insights-hd{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:800;margin-bottom:13px}
.act-insights-ico{color:var(--pu);font-family:'IBM Plex Mono',monospace}
.act-insights-sub{font-weight:400;font-size:11px;color:var(--fg3)}
.act-insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.act-insight{display:flex;gap:11px;align-items:flex-start;background:var(--s2);border:1px solid var(--bd);border-left:3px solid var(--ic);border-radius:11px;padding:12px 14px}
.act-insight-ico{width:28px;height:28px;flex-shrink:0;border-radius:8px;background:color-mix(in srgb,var(--ic) 16%,transparent);color:var(--ic);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;font-family:'IBM Plex Mono',monospace}
.act-insight-t{font-size:12.5px;font-weight:700;color:var(--fg);line-height:1.3}
.act-insight-d{font-size:11px;color:var(--fg2);line-height:1.45;margin-top:3px}

/* ─── FICHA DE LEAD (Pipeline profundo) ─── */
.lead-detail{padding:0 16px 16px;border-bottom:1px solid var(--bd);background:var(--s2)}
.ld-grid{display:grid;grid-template-columns:1fr 260px;gap:16px;padding-top:16px}
@media(max-width:820px){.ld-grid{grid-template-columns:1fr}}
.ld-score-hd{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.ld-score-num{font-family:'IBM Plex Mono',monospace;font-size:38px;font-weight:800;line-height:1}
.ld-score-num small{font-size:14px;color:var(--fg3)}
.ld-score-tx b{display:block;font-size:13px}
.ld-score-tx span{display:block;font-size:11.5px;color:var(--fg2);margin-top:2px}
.ld-conds{display:flex;flex-direction:column;gap:11px;margin-bottom:14px}
.ld-cond-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}
.ld-cond-k{font-size:12.5px;font-weight:600;color:var(--fg)}
.ld-cond-top b{font-family:'IBM Plex Mono',monospace;font-size:14px}
.ld-cond-bar{height:6px;border-radius:4px;background:var(--s3);overflow:hidden}
.ld-cond-bar i{display:block;height:100%;border-radius:4px;transition:width .5s}
.ld-cond-d{font-size:11px;color:var(--fg2);margin-top:4px}
.ld-msg{font-size:12.5px;color:var(--fg2);font-style:italic;background:var(--s1);border-left:3px solid var(--bdm);border-radius:8px;padding:10px 13px;margin-top:6px}
.ld-msg-lbl{display:block;font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.08em;color:var(--fg3);margin-bottom:5px}
.ld-notes{width:100%;background:var(--s3);border:1px solid var(--bdm);border-radius:8px;padding:10px 12px;color:var(--fg);font-size:12.5px;font-family:Outfit,sans-serif;outline:none;resize:none;height:60px;display:block}
.ld-notes:focus{border-color:var(--cy)}
.ld-side{display:flex;flex-direction:column;gap:12px}
.ld-next{background:var(--s1);border:1px solid var(--bd);border-left:3px solid var(--nc);border-radius:11px;padding:13px 15px}
.ld-next-lbl{font-family:'IBM Plex Mono',monospace;font-size:9px;letter-spacing:.1em;color:var(--fg3);margin-bottom:5px}
.ld-next-t{font-size:15px;font-weight:800;margin-bottom:4px}
.ld-next-d{font-size:11.5px;color:var(--fg2);line-height:1.45}
.ld-contact{display:flex;flex-direction:column;gap:7px}
.ld-cbtn{border:1px solid var(--bdm);background:var(--s1);color:var(--fg);border-radius:9px;padding:10px;font-size:12.5px;font-weight:600;cursor:pointer;text-align:center;transition:.15s}
.ld-cbtn.wa:hover{border-color:#25d366;color:#25d366}
.ld-cbtn.call:hover{border-color:var(--cy);color:var(--cy)}
.ld-cbtn.mail:hover{border-color:var(--pu);color:var(--pu)}
.ld-timeline{background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:14px 15px}
.ld-tl-step{display:flex;gap:11px;position:relative;padding-bottom:12px}
.ld-tl-step:not(:last-child)::before{content:'';position:absolute;left:5px;top:14px;bottom:0;width:1.5px;background:var(--bd)}
.ld-tl-step.done:not(:last-child)::before{background:var(--ok)}
.ld-tl-step:last-child{padding-bottom:0}
.ld-tl-dot{width:11px;height:11px;border-radius:50%;flex-shrink:0;margin-top:2px;background:var(--s3);border:2px solid var(--bdm);z-index:1}
.ld-tl-step.done .ld-tl-dot{background:var(--ok);border-color:var(--ok)}
.ld-tl-tx b{display:block;font-size:12px;color:var(--fg)}
.ld-tl-step:not(.done) .ld-tl-tx b{color:var(--fg3)}
.ld-tl-tx span{display:block;font-size:10px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.ld-actions{display:flex;flex-direction:column;gap:7px}
.ld-actions .btn{width:100%;font-size:12.5px;padding:10px}
.ld-won{text-align:center;font-size:12.5px;font-weight:700;color:var(--ok);background:rgba(77,213,153,.08);border:1px solid rgba(77,213,153,.3);border-radius:9px;padding:11px}

/* ─── nota de La Columna (fuente de verdad) en pantallas de operación ─── */
.col-note{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:color-mix(in srgb,var(--cy) 5%,var(--s1));border:1px solid var(--bd);border-radius:11px;padding:10px 14px;margin-bottom:16px;font-size:12px;color:var(--fg2)}
.col-note b{color:var(--fg);font-family:'IBM Plex Mono',monospace}
.col-note-ico{color:var(--cy);font-size:13px}
.col-note-saldo{margin-left:auto;font-family:'IBM Plex Mono',monospace;font-size:11px;background:var(--s2);border:1px solid var(--bd);border-radius:7px;padding:4px 10px}
.col-note-saldo b{color:var(--pu)}

/* ─── AGENTE ← LA COLUMNA (empresa · saldo · activación) ─── */
.ag-emp-banner{display:flex;align-items:center;gap:12px;background:color-mix(in srgb,var(--cy) 7%,var(--s1));border:1px solid var(--bdc);border-radius:12px;padding:12px 14px;margin-bottom:12px}
.ag-emp-banner.warn{background:rgba(240,179,74,.07);border-color:rgba(240,179,74,.3)}
.ag-emp-ico{width:32px;height:32px;flex-shrink:0;border-radius:9px;background:var(--s2);display:flex;align-items:center;justify-content:center;font-size:15px;font-family:'IBM Plex Mono',monospace;color:var(--cy)}
.ag-emp-banner.warn .ag-emp-ico{color:var(--wa)}
.ag-emp-tx{flex:1;min-width:0}
.ag-emp-tx b{display:block;font-size:12.5px;color:var(--fg)}
.ag-emp-tx span{display:block;font-size:11px;color:var(--fg2);line-height:1.4;margin-top:2px}
.ag-emp-btn{flex-shrink:0;background:var(--s2);border:1px solid var(--bdm);color:var(--fg2);border-radius:9px;padding:8px 12px;font-size:11.5px;font-weight:600;cursor:pointer}
.ag-emp-btn:hover{border-color:var(--cy);color:var(--cy)}
.ag-saldo-chip{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--fg2);background:var(--s1);border:1px solid var(--bd);border-radius:9px;padding:8px 12px;margin-bottom:16px}
.ag-saldo-chip b{color:var(--pu);font-family:'IBM Plex Mono',monospace;font-size:13px}
.ag-saldo-dot{width:7px;height:7px;border-radius:50%;background:var(--pu);box-shadow:0 0 8px var(--pu)}
.ag-saldo-free{color:var(--fg3);font-size:10.5px}
.ag-canal-state{display:flex;align-items:center;gap:10px;background:var(--s1);border:1px solid var(--bd);border-radius:11px;padding:11px 14px;margin-bottom:14px;font-size:12.5px;line-height:1.45}
.ag-canal-state-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--wa);box-shadow:0 0 8px var(--wa)}
.ag-canal-state.on .ag-canal-state-dot{background:var(--ok);box-shadow:0 0 8px var(--ok)}

/* ─── IDENTIDAD: género + voz personalizable ─── */
.ag-gen{display:flex;gap:9px}
.ag-gen-b{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;background:var(--s2);border:1.5px solid var(--bd);border-radius:11px;padding:12px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;color:var(--fg2);cursor:pointer;transition:.15s}
.ag-gen-b:hover{border-color:var(--bdm);color:var(--fg)}
.ag-gen-b.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);color:var(--fg)}
.ag-gen-ico{font-size:17px;color:var(--c)}
.ag-voz-lib{display:flex;flex-direction:column;gap:8px}
.ag-voz-op{text-align:left;background:var(--s2);border:1.5px solid var(--bd);border-radius:12px;padding:11px 14px;cursor:pointer;transition:.15s}
.ag-voz-op:hover{border-color:var(--bdm)}
.ag-voz-op.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 8%,transparent)}
.ag-voz-op-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}
.ag-voz-op-top b{font-size:13px;color:var(--fg)}
.ag-voz-play{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);border-radius:20px;padding:3px 10px}
.ag-voz-play:hover{background:color-mix(in srgb,var(--c) 26%,transparent)}
.ag-voz-desc{font-size:11px;color:var(--fg2);line-height:1.4}
.ag-vel{display:flex;gap:8px}
.ag-vel-b{flex:1;background:var(--s2);border:1.5px solid var(--bd);border-radius:10px;padding:9px;font-size:12px;font-weight:600;color:var(--fg2);cursor:pointer;transition:.15s}
.ag-vel-b:hover{border-color:var(--bdm);color:var(--fg)}
.ag-vel-b.on{border-color:var(--c);background:color-mix(in srgb,var(--c) 10%,transparent);color:var(--fg)}
.ag-voz-test{width:100%;background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 35%,transparent);color:var(--c);border-radius:11px;padding:12px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:.15s;margin-bottom:4px}
.ag-voz-test:hover{background:color-mix(in srgb,var(--c) 22%,transparent)}
.ag-voz-quick{display:flex;align-items:center;gap:14px;background:color-mix(in srgb,var(--c) 8%,var(--s1));border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:13px;padding:14px 16px;margin-bottom:14px;flex-wrap:wrap}
.ag-voz-quick-tx{flex:1;min-width:180px}
.ag-voz-quick-tx b{display:block;font-size:13px;color:var(--fg)}
.ag-voz-quick-tx span{display:block;font-size:11.5px;color:var(--fg2);line-height:1.4;margin-top:2px}
.ag-voz-quick-btn{flex-shrink:0;background:var(--c);color:#06181b;border:none;border-radius:10px;padding:11px 18px;font-family:Outfit,sans-serif;font-size:13px;font-weight:700;cursor:pointer}
.ag-voz-quick-btn:hover{filter:brightness(1.1)}

/* ─── SELLO DEMO GLOBAL (fixed, fuera del grid) ─── */
.demo-ribbon{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:70;display:flex;align-items:center;gap:11px;max-width:min(680px,92vw);background:linear-gradient(180deg,#2a2410,#1c1808);border:1px solid var(--wa);border-radius:12px;padding:10px 16px;box-shadow:0 10px 34px rgba(0,0,0,.55)}
.demo-ribbon-dot{width:8px;height:8px;border-radius:50%;background:var(--wa);box-shadow:0 0 10px var(--wa);flex-shrink:0;animation:demoPulse 1.6s infinite}
@keyframes demoPulse{0%,100%{opacity:1}50%{opacity:.35}}
.demo-ribbon-tx{font-size:12px;line-height:1.4;color:#f4e6c8}
.demo-ribbon-tx b{color:var(--wa);font-family:'IBM Plex Mono',monospace;letter-spacing:.05em}
.demo-ribbon-x{cursor:pointer;color:#c9b98f;font-size:13px;flex-shrink:0;padding:2px 4px}
.demo-ribbon-x:hover{color:var(--wa)}

/* ─── PRIMER DÍA (cuenta nueva, honesta) ─── */
.pd-hero{background:radial-gradient(120% 140% at 0% 0%,rgba(0,194,209,.10),var(--s1) 55%);border:1px solid var(--bdc);border-radius:20px;padding:34px 34px 30px;margin-bottom:22px}
.pd-badge{display:inline-flex;align-items:center;gap:8px;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--ok);background:rgba(77,213,153,.10);border:1px solid rgba(77,213,153,.35);border-radius:20px;padding:5px 13px;margin-bottom:16px}
.pd-badge-dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);animation:demoPulse 1.6s infinite}
.pd-title{font-size:30px;font-weight:800;letter-spacing:-.01em;line-height:1.1;margin-bottom:12px}
.pd-sub{font-size:14.5px;line-height:1.6;color:var(--fg2);max-width:680px}
.pd-cta{display:flex;flex-wrap:wrap;gap:11px;margin-top:22px}
.pd-btn{font-family:Outfit,sans-serif;font-size:13.5px;font-weight:700;border-radius:11px;padding:13px 22px;cursor:pointer;border:1px solid transparent;transition:.15s}
.pd-btn.primary{background:var(--cy);color:#05181b}
.pd-btn.primary:hover{background:var(--cyb);transform:translateY(-1px)}
.pd-btn.ghost{background:transparent;border-color:var(--bdm);color:var(--fg)}
.pd-btn.ghost:hover{border-color:var(--cy);color:var(--cy)}
.pd-btn.wide{width:100%;margin-top:18px;text-align:center;padding:15px}
.pd-note{margin-top:20px;font-size:12px;line-height:1.5;color:var(--fg2);background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:12px 15px}
.pd-note b{color:var(--fg)}
.pd-caps{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:13px}
.pd-cap{background:var(--s1);border:1px solid var(--bd);border-radius:15px;padding:18px;transition:.15s}
.pd-cap:hover{border-color:var(--cc);transform:translateY(-2px)}
.pd-cap-ico{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:21px;font-family:'IBM Plex Mono',monospace;margin-bottom:13px}
.pd-cap-t{font-size:14.5px;font-weight:800;margin-bottom:6px}
.pd-cap-d{font-size:12px;line-height:1.5;color:var(--fg2)}
.pd-steps{background:var(--s1);border:1px solid var(--bd);border-radius:18px;padding:26px;margin-top:22px}
.pd-steps-t{font-size:16px;font-weight:800;margin-bottom:20px}
.pd-steps-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.pd-step{display:flex;gap:14px;align-items:flex-start}
.pd-step-n{width:34px;height:34px;flex-shrink:0;border-radius:50%;background:var(--cyt);border:1px solid var(--bdc);color:var(--cy);font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}
.pd-step b{font-size:13.5px;display:block;margin-bottom:4px}
.pd-step p{font-size:12px;line-height:1.5;color:var(--fg2)}

/* ─── LOGIN — selector de cuenta demo ─── */
.login-demo-pick{margin-top:20px;padding-top:16px;border-top:1px solid var(--bd)}
.login-demo-lbl{display:block;font-family:'IBM Plex Mono',monospace;font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg3);margin-bottom:10px}
.login-demo-row{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}
.login-demo-b{display:grid;gap:2px;text-align:left;background:var(--s2);border:1px solid var(--bdm);border-radius:9px;padding:9px 11px;cursor:pointer;transition:border-color .15s,background .15s,color .15s;font-family:'Outfit',sans-serif}
.login-demo-b b{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:600;letter-spacing:.1em;color:var(--fg2)}
.login-demo-b small{font-size:10.5px;color:var(--fg3)}
.login-demo-b:hover{border-color:var(--cy);background:var(--s3)}
.login-demo-b:hover b{color:var(--cy)}
.login-demo-b.is-on{border-color:var(--cy);background:var(--cyt)}
.login-demo-b.is-on b{color:var(--cy)}

@media (max-width:900px){
  .login-page{grid-template-columns:1fr;gap:28px;padding:32px 20px 48px;align-content:start}
  .login-side-in{margin:0;max-width:none}
  .login-h1{font-size:clamp(38px,11vw,52px);margin:16px 0 10px}
  .login-lead{margin-bottom:18px}
  .login-proof{margin-bottom:20px}
  .login-log{max-width:none}
  .login-log-row:nth-child(n+5){display:none}
  .login-card{max-width:none}
}

/* ═══════════ CENTRO DE COMANDO POR SERVICIO (cc-*) ═══════════ */
.cc{--c:#00c2d1;display:flex;flex-direction:column;gap:14px}
.cc-status{display:flex;align-items:center;gap:16px;flex-wrap:wrap;background:linear-gradient(120deg,color-mix(in srgb,var(--c) 10%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 24%,var(--bd));border-radius:13px;padding:11px 16px}
.cc-live{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--ok)}
.cc-live i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);animation:pulse 1.5s infinite}
.cc-status-i{font-size:11.5px;color:var(--fg3)}
.cc-status-i b{color:var(--fg);font-family:'IBM Plex Mono',monospace}
.cc-status-btn{margin-left:auto;background:color-mix(in srgb,var(--c) 14%,transparent);border:1px solid color-mix(in srgb,var(--c) 36%,transparent);color:var(--c);border-radius:9px;padding:7px 13px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:.15s}
.cc-status-btn:hover{background:color-mix(in srgb,var(--c) 22%,transparent)}
.cc-val{font-size:13px;color:var(--fg2);line-height:1.5;max-width:680px}
.cc-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:900px){.cc-kpis{grid-template-columns:1fr 1fr}}
.cc-kpi{--kc:var(--c);background:var(--s1);border:1px solid var(--bd);border-top:2px solid var(--kc);border-radius:13px;padding:14px 15px}
.cc-kpi-k{font-size:11px;color:var(--fg2);font-weight:600}
.cc-kpi-v{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:800;line-height:1;margin:7px 0}
.cc-kpi-row{display:flex;align-items:center;justify-content:space-between;gap:8px}
.cc-kpi-d{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700}
.cc-kpi-d.up{color:var(--ok)}.cc-kpi-d.dn{color:var(--r,#f85149)}
.cc-kpi-sub{font-size:10px;color:var(--fg3)}
.cc-kpi-spark{width:66px;height:20px;flex-shrink:0}
.cc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cc-grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}
@media(max-width:900px){.cc-grid2,.cc-grid3{grid-template-columns:1fr}}
.cc-card{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:15px 16px}
.cc-card-hd{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:12px}
.cc-card-t{font-size:13px;font-weight:800}
.cc-card-x{font-size:10.5px;color:var(--fg3)}
.cc-artifact{padding:15px 16px}
.cc-browser{border:1px solid var(--bd);border-radius:11px;overflow:hidden;background:var(--bg1,#0b0f1a)}
.cc-browser-bar{display:flex;align-items:center;gap:6px;padding:8px 11px;background:var(--s2);border-bottom:1px solid var(--bd)}
.cc-browser-bar>i{width:9px;height:9px;border-radius:50%;background:var(--s3)}
.cc-browser-bar>i:first-child{background:#f85149}.cc-browser-bar>i:nth-child(2){background:#f0b34a}.cc-browser-bar>i:nth-child(3){background:#3fb950}
.cc-browser-url{flex:1;font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--fg2);background:var(--s1);border-radius:6px;padding:4px 9px;margin-left:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-browser-live{display:inline-flex;align-items:center;gap:5px;font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;color:var(--ok)}
.cc-browser-live span{width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 7px var(--ok);animation:pulse 1.5s infinite}
.cc-browser-view{height:230px;position:relative}
.cc-frame{width:100%;height:100%;border:0;display:block}
.cc-frame-ph{height:100%;display:flex;align-items:center;justify-content:center;color:var(--fg3);font-size:12px}
.cc-perf{display:flex;gap:18px;align-items:center}
.cc-ring{text-align:center;flex-shrink:0}
.cc-ring-c{width:96px;height:96px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.cc-ring-in{width:74px;height:74px;border-radius:50%;background:var(--s1);display:flex;flex-direction:column;align-items:center;justify-content:center}
.cc-ring-in b{font-family:'IBM Plex Mono',monospace;font-size:26px;font-weight:800;line-height:1}
.cc-ring-in span{font-size:9px;color:var(--fg3)}
.cc-ring-sub{font-size:10px;color:var(--fg3);margin-top:6px}
.cc-cwv{flex:1;min-width:0}
.cc-cwv-row{display:flex;align-items:center;gap:9px;padding:4px 0}
.cc-cwv-k{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg2);width:34px}
.cc-cwv-row b{font-family:'IBM Plex Mono',monospace;font-size:13px}
.cc-cwv-tag{font-size:9.5px;border:1px solid;border-radius:6px;padding:1px 7px;margin-left:auto}
.cc-cwv-note{font-size:10.5px;color:var(--fg3);line-height:1.4;margin-top:8px}
.cc-mini{font-size:11px;color:var(--fg2);margin-top:8px}
.cc-don{display:flex;align-items:center;gap:16px}
.cc-don-c{width:92px;height:92px;border-radius:50%;flex-shrink:0;-webkit-mask:radial-gradient(circle 27px at center,transparent 98%,#000 100%);mask:radial-gradient(circle 27px at center,transparent 98%,#000 100%)}
.cc-don-leg{flex:1;min-width:0}
.cc-don-row{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--fg2);padding:3px 0}
.cc-don-row i{width:9px;height:9px;border-radius:2px;flex-shrink:0}
.cc-don-row b{margin-left:auto;font-family:'IBM Plex Mono',monospace;color:var(--fg)}
.cc-bars{display:flex;flex-direction:column;gap:8px}
.cc-bar{display:flex;align-items:center;gap:9px}
.cc-bar-k{font-size:11px;color:var(--fg2);width:74px;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-bar-t{flex:1;height:8px;background:var(--s3);border-radius:5px;overflow:hidden}
.cc-bar-t i{display:block;height:100%;border-radius:5px}
.cc-bar b{font-family:'IBM Plex Mono',monospace;font-size:11px;width:40px;text-align:right;flex-shrink:0}
.cc-funnel{display:flex;flex-direction:column;gap:9px}
.cc-fn-row{display:flex;align-items:center;gap:10px}
.cc-fn-k{font-size:11px;color:var(--fg2);width:82px;flex-shrink:0}
.cc-fn-bar{height:26px;border-radius:7px;display:flex;align-items:center;padding:0 10px;color:#06121a;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:800;min-width:44px;transition:width .5s}
.cc-fn-pct{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--fg3)}
.cc-ctrls{display:flex;flex-direction:column;gap:9px}
.cc-ctrl{display:flex;align-items:center;gap:12px}
.cc-ctrl-tx{flex:1;min-width:0}
.cc-ctrl-tx b{display:block;font-size:12px}
.cc-ctrl-tx span{display:block;font-size:10.5px;color:var(--fg3);line-height:1.3}
.cc-sw{width:40px;height:23px;border-radius:20px;background:var(--s3);border:1px solid var(--bdm);position:relative;cursor:pointer;transition:.2s;flex-shrink:0}
.cc-sw span{position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:var(--fg3);transition:.2s}
.cc-sw.on{background:color-mix(in srgb,var(--c) 30%,transparent);border-color:var(--c)}
.cc-sw.on span{left:19px;background:var(--c)}
.cc-ctrl-btn{width:100%;margin-top:12px;background:transparent;border:1px solid var(--bdm);color:var(--fg2);border-radius:10px;padding:9px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:.15s}
.cc-ctrl-btn:hover{border-color:var(--c);color:var(--c)}
.cc-act{display:flex;flex-direction:column;gap:4px}
.cc-act-row{display:flex;align-items:center;gap:11px;padding:9px 6px;border-bottom:1px solid var(--bd)}
.cc-act-row:last-child{border-bottom:0}
.cc-act-ic{width:30px;height:30px;flex-shrink:0;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:14px;background:var(--s3)}
.cc-act-ic.ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent)}
.cc-act-ic.cy{color:var(--cy);background:color-mix(in srgb,var(--cy) 12%,transparent)}
.cc-act-ic.muted{color:var(--fg3)}
.cc-act-tx b{display:block;font-size:12.5px}
.cc-act-tx span{display:block;font-size:10.5px;color:var(--fg3)}
.cc-todo{display:flex;flex-direction:column;gap:8px}
.cc-todo-i{display:flex;align-items:center;gap:11px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px;cursor:pointer;transition:.15s;font-size:12px;color:var(--fg3)}
.cc-todo-i:hover{border-color:var(--c);transform:translateX(2px)}
.cc-todo-i>span{width:28px;height:28px;flex-shrink:0;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--c);background:color-mix(in srgb,var(--c) 13%,transparent);font-family:'IBM Plex Mono',monospace}
.cc-todo-i b{display:block;font-size:12px;color:var(--fg)}
.cc-todo-i div span{font-size:10.5px;color:var(--fg3)}
.cc-todo-i div{flex:1}
.cc-soon{font-size:10.5px;color:var(--fg3);font-style:italic;margin-top:10px}
.cc-inactive{--c:#00c2d1;max-width:560px;margin:30px auto;text-align:center;background:radial-gradient(120% 100% at 50% 0,color-mix(in srgb,var(--c) 10%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 26%,var(--bd));border-radius:18px;padding:34px 30px}
.cc-inactive-ic{width:60px;height:60px;margin:0 auto 14px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:28px;font-family:'IBM Plex Mono',monospace;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent)}
.cc-inactive-t{font-size:17px;font-weight:800}
.cc-inactive-d{font-size:12.5px;color:var(--fg2);line-height:1.55;margin:9px auto 12px;max-width:420px}
.cc-inactive-price{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--fg3);margin-bottom:18px}
.cc-inactive-acts{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}

/* ─── Centro de Comando · APP (extras) ─── */
.cc-plat{font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;color:var(--fg2);background:var(--s3);border:1px solid var(--bdm);border-radius:6px;padding:2px 7px}
.cc-phone-wrap{display:flex;gap:16px;align-items:center}
.cc-phone{position:relative;width:150px;flex-shrink:0;height:300px;border:8px solid #0c0f16;border-radius:28px;overflow:hidden;background:#0b0f1a;box-shadow:0 16px 40px -14px rgba(0,0,0,.7)}
.cc-phone-notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:56px;height:16px;background:#0c0f16;border-radius:0 0 11px 11px;z-index:2}
.cc-phone-frame{width:100%;height:100%;border:0;display:block}
.cc-phone-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:9px}
.cc-phone-badge{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:11px 13px}
.cc-phone-badge b{font-family:'IBM Plex Mono',monospace;font-size:20px;font-weight:800;color:var(--c)}
.cc-phone-badge span{display:block;font-size:10.5px;color:var(--fg3);margin-top:2px}
.cc-phone-note{font-size:11px;color:var(--fg3);line-height:1.4}
.cc-store{display:flex;flex-direction:column;gap:9px}
.cc-store-row{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px}
.cc-store-st{color:#f5c518;font-size:13px;letter-spacing:1px}
.cc-store-st span{color:var(--s3)}
.cc-store-tx{font-size:12px;color:var(--fg);line-height:1.4;margin:4px 0 3px;font-style:italic}
.cc-store-by{font-size:10.5px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}

/* ─── Centro de Comando · PANEL (extras) ─── */
.cc-src{display:flex;flex-direction:column;gap:7px}
.cc-src-row{display:flex;align-items:center;gap:11px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:9px 12px}
.cc-src-lg{width:30px;height:30px;flex-shrink:0;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:800;font-family:'IBM Plex Mono',monospace}
.cc-src-tx{flex:1;min-width:0}
.cc-src-tx b{display:block;font-size:12.5px}
.cc-src-tx span{display:block;font-size:10.5px;color:var(--fg3)}
.cc-src-st{display:flex;align-items:center;gap:6px;font-size:10.5px;color:var(--fg3);font-family:'IBM Plex Mono',monospace;flex-shrink:0}
.cc-src-dot{width:7px;height:7px;border-radius:50%;background:var(--fg3)}
.cc-src-dot.ok{background:var(--ok);box-shadow:0 0 7px var(--ok)}
.cc-src-dot.sync{background:var(--am,#f0b34a);box-shadow:0 0 7px var(--am,#f0b34a);animation:pulse 1.2s infinite}
.cc-src-add{margin-top:3px;background:transparent;border:1px dashed var(--bdm);color:var(--fg2);border-radius:10px;padding:9px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:.15s}
.cc-src-add:hover{border-color:var(--c);color:var(--c)}
.cc-watch{display:flex;flex-direction:column;gap:6px}
.cc-watch-row{display:flex;align-items:center;gap:12px;padding:7px 4px;border-bottom:1px solid var(--bd)}
.cc-watch-row:last-child{border-bottom:0}
.cc-watch-tx{width:130px;flex-shrink:0}
.cc-watch-tx b{display:block;font-size:12px}
.cc-watch-tx span{display:block;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--fg);margin-top:1px}
.cc-watch-spark{flex:1;height:24px;min-width:0}
.cc-watch-d{font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:700;flex-shrink:0;width:46px;text-align:right}
.cc-watch-d.up{color:var(--ok)}
.cc-watch-d.dn{color:var(--r,#f85149)}
.cc-rules{display:flex;flex-direction:column;gap:8px}
.cc-rule{display:flex;align-items:center;gap:11px;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:10px 12px;transition:.15s}
.cc-rule.on{border-color:color-mix(in srgb,var(--c) 34%,transparent);background:color-mix(in srgb,var(--c) 7%,var(--s2))}
.cc-rule-tx{flex:1;min-width:0}
.cc-rule-tx b{display:block;font-size:12px;line-height:1.3}
.cc-rule-tx span{display:block;font-size:10.5px;color:var(--fg3);margin-top:2px}
.cc-rule-cfg{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--bd)}
.cc-rule-cfg>span{font-size:11.5px;color:var(--fg2)}
.cc-chip{font-size:11px;padding:6px 12px;border-radius:8px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2);cursor:pointer;transition:.15s;font-weight:600}
.cc-chip:hover{border-color:var(--bdm)}
.cc-chip.on{background:color-mix(in srgb,var(--c) 16%,transparent);border-color:var(--c);color:var(--fg)}

/* ─── Centro de Comando · COMANDAS (extras) ─── */
.cc-kds{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
@media(max-width:760px){.cc-kds{grid-template-columns:1fr}}
.cc-kds-col{background:var(--bg1,#0b0f1a);border:1px solid var(--bd);border-radius:12px;padding:10px;min-height:150px}
.cc-kds-hd{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:9px}
.cc-kds-hd span{font-family:'IBM Plex Mono',monospace;font-size:10px;background:var(--s3);color:var(--fg2);border-radius:20px;padding:1px 8px}
.cc-tk{--c:#ff8a3c;background:var(--s2);border:1px solid var(--bd);border-left:3px solid var(--c);border-radius:10px;padding:9px 11px;margin-bottom:8px}
.cc-tk.done{opacity:.72;border-left-color:var(--ok)}
.cc-tk-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.cc-tk-hd b{font-size:12.5px}
.cc-tk-t{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--c)}
.cc-tk-it{font-size:11px;color:var(--fg2);padding:1px 0}
.cc-tk-it.alergia{color:#f85149;font-weight:700}
.cc-tk-prog{height:4px;background:var(--s3);border-radius:3px;margin-top:7px;overflow:hidden}
.cc-tk-prog i{display:block;height:100%;border-radius:3px;animation:ccKitchen 2.4s ease-in-out infinite alternate}
@keyframes ccKitchen{from{opacity:.5}to{opacity:1}}
.cc-tk-ok{font-size:10px;color:var(--ok);font-family:'IBM Plex Mono',monospace;margin-top:6px}
.cc-hbars{display:flex;align-items:flex-end;gap:4px;height:80px;padding-top:6px}
.cc-hbar{flex:1;border-radius:3px 3px 0 0;min-height:4px;transition:height .4s}
.cc-floor{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
@media(max-width:520px){.cc-floor{grid-template-columns:repeat(4,1fr)}}
.cc-mesa{--mc:var(--fg3);aspect-ratio:1;border-radius:10px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--mc) 15%,var(--s1));border:1px solid color-mix(in srgb,var(--mc) 45%,transparent);position:relative}
.cc-mesa-n{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:700;color:var(--mc)}
.cc-floor-leg{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px}
.cc-floor-lg{display:inline-flex;align-items:center;gap:6px;font-size:10.5px;color:var(--fg2)}
.cc-floor-lg i{width:9px;height:9px;border-radius:3px}

/* ─── Centro de Comando · RECORDATORIOS (extras) ─── */
.cc-week{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
@media(max-width:760px){.cc-week{grid-template-columns:repeat(3,1fr)}}
.cc-week-col{background:var(--bg1,#0b0f1a);border:1px solid var(--bd);border-radius:11px;padding:8px;min-height:110px}
.cc-week-hd{font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--fg3);text-align:center;margin-bottom:7px}
.cc-appt{--ac:#3fb950;background:color-mix(in srgb,var(--ac) 12%,var(--s2));border:1px solid color-mix(in srgb,var(--ac) 32%,transparent);border-left:3px solid var(--ac);border-radius:8px;padding:6px 8px;margin-bottom:6px}
.cc-appt-h{display:block;font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;color:var(--ac)}
.cc-appt-n{display:block;font-size:10.5px;color:var(--fg2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-tl{display:flex;flex-direction:column;gap:0;position:relative}
.cc-tl-row{display:flex;align-items:flex-start;gap:11px;padding:8px 0;position:relative}
.cc-tl-row:not(:last-child)::before{content:'';position:absolute;left:14px;top:32px;bottom:-8px;width:2px;background:var(--bd)}
.cc-tl-ic{width:30px;height:30px;flex-shrink:0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:14px;z-index:1}
.cc-tl-ic.ok{color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent);border:1px solid color-mix(in srgb,var(--ok) 34%,transparent)}
.cc-tl-ic.c{color:#25d366;background:color-mix(in srgb,#25d366 14%,transparent);border:1px solid color-mix(in srgb,#25d366 34%,transparent)}
.cc-tl-tx{padding-top:3px}
.cc-tl-tx b{display:block;font-size:12.5px}
.cc-tl-tx span{display:block;font-size:11px;color:var(--fg3);line-height:1.4;margin-top:2px}
.cc-tpl{width:100%;min-height:82px;resize:vertical;background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:11px 13px;color:var(--fg);font-family:inherit;font-size:12.5px;line-height:1.5}
.cc-tpl:focus{outline:none;border-color:var(--c)}
.cc-tpl-vars{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}
.cc-tpl-var{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--c);background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);border-radius:7px;padding:4px 9px;cursor:pointer;transition:.15s}
.cc-tpl-var:hover{background:color-mix(in srgb,var(--c) 22%,transparent)}

/* ─── Centro de Comando · WORKFLOW (extras) ─── */
.cc-live.off{color:var(--fg3)}
.cc-live.off i{background:var(--fg3);box-shadow:none;animation:none}
.cc-wf{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}
.cc-wf-node{flex:1;min-width:140px;background:var(--s2);border:1px solid color-mix(in srgb,var(--c) 30%,transparent);border-radius:12px;padding:13px 14px}
.cc-wf-ic{font-family:'IBM Plex Mono',monospace;font-size:18px;color:var(--c)}
.cc-wf-tp{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--fg3);margin-top:6px}
.cc-wf-lb{font-size:12.5px;font-weight:700;margin-top:3px;line-height:1.3}
.cc-wf-rail{position:relative;align-self:center;width:34px;height:3px;border-radius:2px;background:var(--bd);overflow:hidden;flex-shrink:0}
.cc-wf-rail.on{background:linear-gradient(90deg,color-mix(in srgb,var(--c) 20%,transparent),var(--c))}
.cc-wf-pkt{position:absolute;top:50%;left:0;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);opacity:0}
.cc-wf-rail.on .cc-wf-pkt{opacity:1;animation:ccWfPkt 1.5s linear infinite}
@keyframes ccWfPkt{0%{left:-8px}100%{left:36px}}
@media(max-width:640px){.cc-wf{flex-direction:column}.cc-wf-rail{width:3px;height:22px;margin:0 auto}.cc-wf-rail.on .cc-wf-pkt{left:50%!important;margin-left:-3.5px;animation:ccWfPktV 1.5s linear infinite}}
@keyframes ccWfPktV{0%{top:-8px}100%{top:24px}}
.cc-log{display:flex;flex-direction:column;gap:2px}
.cc-log-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-bottom:1px solid var(--bd);font-size:11.5px}
.cc-log-row:last-child{border-bottom:0}
.cc-log-t{font-family:'IBM Plex Mono',monospace;color:var(--fg3);width:42px;flex-shrink:0}
.cc-log-d{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-log-st{font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;flex-shrink:0}
.cc-log-st.ok{color:var(--ok)}
.cc-log-st.err{color:var(--am,#f0b34a)}

/* cine como artifact del cockpit */
.cc-autoscene{background:var(--bg1,#0b0f1a);border:1px solid color-mix(in srgb,var(--c) 20%,var(--bd));border-radius:12px;padding:14px 12px;min-height:210px;display:flex;flex-direction:column;justify-content:center}

/* ─── Galería·fichar PREMIUM (arqp-*) ─── */
.arqp{--c:#00c2d1;position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,color-mix(in srgb,var(--c) 8%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 24%,var(--bd));border-radius:18px;padding:16px;overflow:hidden;transition:.2s}
.arqp:hover{border-color:color-mix(in srgb,var(--c) 46%,transparent);transform:translateY(-3px);box-shadow:0 16px 40px -18px color-mix(in srgb,var(--c) 60%,transparent)}
.arqp-glow{position:absolute;top:-60px;right:-60px;width:170px;height:170px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 24%,transparent),transparent 70%);pointer-events:none}
.arqp-top{display:flex;gap:12px;align-items:flex-start;position:relative;z-index:1}
.arqp-portrait{position:relative;flex-shrink:0}
.arqp-portrait .flt-face{border-radius:14px;border:1px solid color-mix(in srgb,var(--c) 34%,transparent)}
.arqp-online{position:absolute;bottom:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:var(--s1);display:flex;align-items:center;justify-content:center}
.arqp-online i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 7px var(--ok);animation:pulse 1.6s infinite}
.arqp-id{flex:1;min-width:0;padding-top:2px}
.arqp-nm{font-family:'Bebas Neue',sans-serif;font-size:26px;line-height:1}
.arqp-tag{font-size:11px;color:var(--fg2);margin-top:2px}
.arqp-badges{display:flex;gap:5px;margin-top:6px}
.arqp-badge{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:20px;background:var(--s3);border:1px solid var(--bdm);color:var(--fg2)}
.arqp-badge.voz{background:color-mix(in srgb,var(--c) 16%,transparent);border-color:color-mix(in srgb,var(--c) 34%,transparent);color:var(--c)}
.arqp-mine{position:absolute;top:0;right:0;font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.06em;color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);border-radius:0 18px 0 10px;padding:5px 10px}
.arqp-role{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--fg2);margin:13px 0 0;font-weight:600}
.arqp-role-dot{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 7px var(--c)}
.arqp-desc{font-size:12px;color:var(--fg2);line-height:1.5;margin-top:9px}
.arqp-demo{margin-top:12px;background:var(--s2);border:1px solid var(--bd);border-radius:12px;padding:10px 11px}
.arqp-demo-hd{font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--fg3);text-transform:uppercase;margin-bottom:7px}
.arqp-bub{font-size:11.5px;line-height:1.4;padding:6px 10px;border-radius:11px;margin-bottom:5px;max-width:88%}
.arqp-bub.u{background:var(--s3);color:var(--fg2);margin-left:auto;border-bottom-right-radius:3px}
.arqp-bub.a{background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 26%,transparent);color:var(--fg);border-bottom-left-radius:3px}
.arqp-foot{margin-top:13px}
.arqp-price{font-size:11px;color:var(--fg3);margin-bottom:9px}
.arqp-price b{font-family:'IBM Plex Mono',monospace;font-size:14px;color:var(--fg)}
.arqp-acts{display:flex;gap:8px}
.arqp-btn{flex:1;padding:10px;border-radius:10px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:.15s;border:1px solid}
.arqp-btn.probar{background:transparent;border-color:color-mix(in srgb,var(--c) 40%,transparent);color:var(--c)}
.arqp-btn.probar:hover{background:color-mix(in srgb,var(--c) 12%,transparent)}
.arqp-btn.usar{background:var(--c);border-color:var(--c);color:#06121a}
.arqp-btn.usar:hover{filter:brightness(1.08)}
.arqp-btn.usar:disabled{background:var(--s3);border-color:var(--bd);color:var(--fg3);cursor:default;filter:none}

/* ─── Consola del Agente · hero + pestañas premium (amx-*) ─── */
.am-back{background:transparent;border:1px solid var(--bdm);color:var(--fg2);border-radius:9px;padding:7px 13px;font-family:Outfit,sans-serif;font-size:12px;font-weight:600;cursor:pointer;transition:.15s;margin-bottom:14px}
.am-back:hover{border-color:var(--cy);color:var(--cy)}
.amx-hero{--c:#00c2d1;position:relative;display:flex;align-items:center;gap:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--c) 14%,var(--s1)),var(--s1) 62%);border:1px solid color-mix(in srgb,var(--c) 28%,var(--bd));border-radius:18px;padding:18px 22px;overflow:hidden;margin-bottom:14px}
.amx-glow{position:absolute;top:-70px;right:-40px;width:200px;height:200px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 22%,transparent),transparent 70%);pointer-events:none}
.amx-portrait{position:relative;flex-shrink:0;z-index:1}
.amx-portrait .flt-face{border-radius:16px;border:1px solid color-mix(in srgb,var(--c) 40%,transparent)}
.amx-online{position:absolute;bottom:-3px;right:-3px;width:18px;height:18px;border-radius:50%;background:var(--s1);display:flex;align-items:center;justify-content:center}
.amx-online i{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px var(--ok);animation:pulse 1.6s infinite}
.amx-online.off i{background:var(--fg3);box-shadow:none;animation:none}
.amx-id{flex:1;min-width:0;z-index:1}
.amx-nm{font-family:'Bebas Neue',sans-serif;font-size:34px;line-height:1}
.amx-sub{font-size:12px;color:var(--fg2);margin-top:3px}
.amx-badges{display:flex;gap:6px;margin-top:9px}
.amx-badge{font-size:10px;font-weight:700;padding:3px 9px;border-radius:20px;background:color-mix(in srgb,var(--c) 12%,transparent);border:1px solid color-mix(in srgb,var(--c) 28%,transparent);color:var(--c)}
.amx-side{display:flex;flex-direction:column;align-items:flex-end;gap:9px;flex-shrink:0;z-index:1}
.amx-power{background:var(--s2);border:1px solid var(--bdm);color:var(--fg2);border-radius:10px;padding:9px 16px;font-family:Outfit,sans-serif;font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s}
.amx-power.on{background:color-mix(in srgb,var(--ok) 14%,transparent);border-color:color-mix(in srgb,var(--ok) 36%,transparent);color:var(--ok)}
.amx-saldo{text-align:right}
.amx-saldo b{font-family:'IBM Plex Mono',monospace;font-size:16px;font-weight:800;color:var(--c)}
.amx-saldo span{display:block;font-size:10px;color:var(--fg3)}
@media(max-width:640px){.amx-hero{flex-wrap:wrap}.amx-side{align-items:flex-start}}
.amx-tabs{display:flex;gap:5px;background:var(--s1);border:1px solid var(--bd);border-radius:13px;padding:5px;margin-bottom:16px;overflow-x:auto}
.amx-tab{--c:#00c2d1;flex:1;min-width:max-content;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 14px;border:none;background:transparent;color:var(--fg2);font-family:Outfit,sans-serif;font-size:12.5px;font-weight:700;border-radius:9px;cursor:pointer;transition:.15s;white-space:nowrap}
.amx-tab:hover{color:var(--fg);background:var(--s2)}
.amx-tab.on{background:color-mix(in srgb,var(--c) 18%,transparent);color:var(--c)}
.amx-tab-ic{font-family:'IBM Plex Mono',monospace;font-size:13px}

/* ─── Mi equipo · tarjetas premium (teamp-*) ─── */
.teamp-status{position:absolute;top:16px;right:16px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;padding:4px 9px;border-radius:20px;background:var(--s3);border:1px solid var(--bdm);color:var(--fg3);z-index:2}
.teamp-status.on{background:color-mix(in srgb,var(--ok) 12%,transparent);border-color:color-mix(in srgb,var(--ok) 30%,transparent);color:var(--ok)}
.teamp-skills{display:flex;flex-wrap:wrap;gap:5px;margin-top:11px}
.teamp-skill{font-size:10px;padding:4px 9px;border-radius:20px;background:var(--s2);border:1px solid var(--bd);color:var(--fg2)}
.teamp-skill.more{color:var(--c);border-color:color-mix(in srgb,var(--c) 30%,transparent)}
.teamp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:13px}
.teamp-stat{background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 6px;text-align:center}
.teamp-stat b{display:block;font-family:'IBM Plex Mono',monospace;font-size:15px;font-weight:800;line-height:1}
.teamp-stat span{display:block;font-size:9px;color:var(--fg3);margin-top:3px}
.teamp-acts{display:flex;gap:8px;margin-top:13px}
.teamp-acts .arqp-btn.usar{flex:1}
.teamp-baja{background:transparent;border:1px solid var(--bdm);color:var(--fg3);border-radius:10px;padding:10px 14px;font-family:Outfit,sans-serif;font-size:12px;font-weight:700;cursor:pointer;transition:.15s}
.teamp-baja:hover{border-color:var(--r,#f85149);color:var(--r,#f85149)}
.teamp-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center;min-height:180px;background:var(--s1);border:1.5px dashed var(--bdm);border-radius:18px;cursor:pointer;transition:.15s;color:var(--fg2)}
.teamp-add:hover{border-color:var(--cy);background:color-mix(in srgb,var(--cy) 6%,var(--s1))}
.teamp-add-ic{width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--cy);background:color-mix(in srgb,var(--cy) 12%,transparent);border:1px solid color-mix(in srgb,var(--cy) 28%,transparent)}
.teamp-add b{font-size:13px;color:var(--fg);margin-top:4px}
.teamp-add small{font-size:10.5px;color:var(--fg3)}

/* ─── Configurar automatización (acfg-*) ─── */
.acfg-intro{font-size:12.5px;color:var(--fg2);line-height:1.5;background:color-mix(in srgb,var(--c) 8%,var(--s1));border:1px solid color-mix(in srgb,var(--c) 22%,var(--bd));border-radius:12px;padding:11px 14px;margin-bottom:12px}
.acfg-intro b{color:var(--fg)}
.acfg-f{margin-bottom:14px}
.acfg-f label{display:block;font-size:12px;font-weight:600;color:var(--fg);margin-bottom:6px}
.acfg-f label b{font-family:'IBM Plex Mono',monospace;float:right}
.acfg-h{font-size:10.5px;color:var(--fg3);line-height:1.4;margin:-2px 0 7px}
.acfg-chips{display:flex;gap:6px;flex-wrap:wrap}
.acfg-inp{width:100%;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 12px;color:var(--fg);font-family:inherit;font-size:12.5px}
.acfg-inp:focus{outline:none;border-color:var(--c)}

/* ─── Canales del agente · premium (ch2-*) ─── */
.ch2-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:18px}
.ch2-card{--cc:#00c2d1;background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:14px;cursor:pointer;transition:.18s}
.ch2-card:hover{border-color:color-mix(in srgb,var(--cc) 40%,transparent);transform:translateY(-2px)}
.ch2-card.conectado{border-color:color-mix(in srgb,var(--cc) 40%,transparent);background:color-mix(in srgb,var(--cc) 8%,var(--s1))}
.ch2-card.pendiente{border-color:color-mix(in srgb,var(--am,#f0b34a) 34%,transparent)}
.ch2-top{display:flex;align-items:center;gap:11px}
.ch2-ico{width:40px;height:40px;flex-shrink:0;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:18px;font-family:'IBM Plex Mono',monospace;color:var(--cc);background:color-mix(in srgb,var(--cc) 15%,transparent);border:1px solid color-mix(in srgb,var(--cc) 32%,transparent)}
.ch2-card.conectado .ch2-ico{background:var(--cc);color:#06121a;border-color:var(--cc)}
.ch2-tx{flex:1;min-width:0}
.ch2-tx b{display:block;font-size:13px}
.ch2-tx small{display:block;font-size:10.5px;color:var(--fg2);line-height:1.3}
.ch2-toggle{width:40px;height:23px;border-radius:20px;background:var(--s3);border:1px solid var(--bdm);position:relative;transition:.2s;flex-shrink:0}
.ch2-toggle span{position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:50%;background:var(--fg3);transition:.2s}
.ch2-toggle.on{background:color-mix(in srgb,var(--cc) 30%,transparent);border-color:var(--cc)}
.ch2-toggle.on span{left:19px;background:var(--cc)}
.ch2-state{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600;margin-top:12px;font-family:'IBM Plex Mono',monospace}
.ch2-dot{width:7px;height:7px;border-radius:50%;background:var(--fg3)}
.ch2-state.conectado{color:var(--ok)}
.ch2-state.conectado .ch2-dot{background:var(--ok);box-shadow:0 0 7px var(--ok);animation:pulse 1.6s infinite}
.ch2-state.pendiente{color:var(--am,#f0b34a)}
.ch2-state.pendiente .ch2-dot{background:var(--am,#f0b34a);box-shadow:0 0 7px var(--am,#f0b34a);animation:pulse 1.1s infinite}
.ch2-state.off{color:var(--fg3)}
.ch2-live{font-size:10.5px;color:var(--fg2);margin-top:8px;padding-top:8px;border-top:1px solid var(--bd)}
.ch2-how{background:linear-gradient(120deg,color-mix(in srgb,var(--cy) 8%,var(--s1)),var(--s1) 60%);border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.ch2-how-t{font-size:13px;font-weight:800;margin-bottom:14px}
.ch2-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
@media(max-width:680px){.ch2-steps{grid-template-columns:1fr}}
.ch2-step{display:flex;align-items:flex-start;gap:10px;position:relative}
.ch2-step-n{width:22px;height:22px;flex-shrink:0;border-radius:7px;background:var(--cy);color:#06121a;font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center}
.ch2-step-ic{font-family:'IBM Plex Mono',monospace;color:var(--cy);font-size:16px;flex-shrink:0;margin-top:1px}
.ch2-step-tx b{display:block;font-size:12.5px;font-weight:700}
.ch2-step-tx span{display:block;font-size:11px;color:var(--fg3);line-height:1.4;margin-top:2px}

/* ─── Solicitudes · tracker premium (reqx-*) ─── */
.reqx{background:var(--s1);border:1px solid var(--bd);border-radius:14px;padding:14px 16px;transition:.15s}
.reqx:hover{border-color:var(--bdm)}
.reqx.done{border-color:color-mix(in srgb,var(--ok) 30%,transparent);background:color-mix(in srgb,var(--ok) 5%,var(--s1))}
.reqx.closed{opacity:.62}
.reqx-hd{display:flex;align-items:center;gap:12px}
.reqx-ico{width:36px;height:36px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:15px;background:var(--s2);color:var(--cy);border:1px solid var(--bd)}
.reqx.done .reqx-ico{background:color-mix(in srgb,var(--ok) 15%,transparent);color:var(--ok);border-color:color-mix(in srgb,var(--ok) 34%,transparent)}
.reqx-tx{flex:1;min-width:0}
.reqx-tx b{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reqx-tx span{display:block;font-size:10.5px;color:var(--fg3);font-family:'IBM Plex Mono',monospace;margin-top:1px}
.reqx-chip{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;padding:4px 10px;border-radius:20px;flex-shrink:0}
.reqx-chip.live{background:color-mix(in srgb,var(--cy) 12%,transparent);border:1px solid color-mix(in srgb,var(--cy) 30%,transparent);color:var(--cy)}
.reqx-chip.done{background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);color:var(--ok)}
.reqx-chip.closed{background:var(--s3);border:1px solid var(--bdm);color:var(--fg3)}
.reqx-cancel{width:26px;height:26px;flex-shrink:0;border-radius:8px;background:transparent;border:1px solid var(--bdm);color:var(--fg3);font-size:12px;cursor:pointer;transition:.15s}
.reqx-cancel:hover{border-color:var(--r,#f85149);color:var(--r,#f85149)}
.reqx-track{position:relative;display:flex;justify-content:space-between;margin-top:15px;padding:0 4px}
.reqx-rail{position:absolute;left:24px;right:24px;top:9px;height:3px;background:var(--bd);border-radius:2px;overflow:hidden}
.reqx-rail-fill{height:100%;background:linear-gradient(90deg,var(--ok),var(--cy));border-radius:2px;transition:width .6s cubic-bezier(.16,1,.3,1)}
.reqx-node{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;flex:1;z-index:1;min-width:0}
.reqx-dot{width:21px;height:21px;border-radius:50%;background:var(--s3);border:2px solid var(--bd);display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:var(--fg3);transition:.2s}
.reqx-node.done .reqx-dot{background:var(--ok);border-color:var(--ok);color:#04210f}
.reqx-node.cur .reqx-dot{background:var(--cy);border-color:var(--cy);color:#06121a;box-shadow:0 0 0 4px color-mix(in srgb,var(--cy) 22%,transparent);animation:pulse 1.6s infinite}
.reqx-lbl{font-size:9.5px;color:var(--fg3);text-align:center;line-height:1.2;max-width:72px}
.reqx-node.done .reqx-lbl,.reqx-node.cur .reqx-lbl{color:var(--fg2)}
.reqx-next{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--fg2);margin-top:13px;padding-top:11px;border-top:1px solid var(--bd)}
.reqx-next b{color:var(--cy)}
.reqx-next.done b,.reqx-next.done{color:var(--ok)}
.reqx-next-ic{font-family:'IBM Plex Mono',monospace;color:var(--cy)}
.reqx-next.done .reqx-next-ic{color:var(--ok)}

/* ─── Editor de workflow estilo n8n (wfe-*) ─── */
.wfe{--c:#a78bfa;display:flex;flex-direction:column;gap:0;border:1px solid color-mix(in srgb,var(--c) 24%,var(--bd));border-radius:14px;overflow:hidden;background:var(--bg1,#0b0f1a)}
.wfe-bar{display:flex;align-items:center;gap:14px;padding:10px 14px;background:var(--s2);border-bottom:1px solid var(--bd)}
.wfe-live{display:inline-flex;align-items:center;gap:6px;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:var(--c)}
.wfe-live i{width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c);animation:pulse 1.5s infinite}
.wfe-bar-i{font-size:11px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.wfe-run{margin-left:auto;background:color-mix(in srgb,var(--c) 16%,transparent);border:1px solid color-mix(in srgb,var(--c) 38%,transparent);color:var(--c);border-radius:9px;padding:7px 13px;font-family:Outfit,sans-serif;font-size:11.5px;font-weight:700;cursor:pointer;transition:.15s}
.wfe-run:hover{background:color-mix(in srgb,var(--c) 26%,transparent)}
.wfe-canvas{overflow:auto;max-height:360px;background:radial-gradient(120% 120% at 50% 0,color-mix(in srgb,var(--c) 6%,transparent),transparent 60%)}
.wfe-scroll{position:relative}
.wfe-svg{position:absolute;top:0;left:0;pointer-events:none}
.wfe-cable{stroke:color-mix(in srgb,var(--c) 42%,transparent)}
.wfe-pkt{fill:var(--c);filter:drop-shadow(0 0 4px var(--c))}
.wfe-node{position:absolute;background:var(--s2);border:1px solid var(--bd);border-left:3px solid var(--nc);border-radius:12px;padding:11px 13px;cursor:pointer;transition:.15s;z-index:1;box-shadow:0 6px 18px -10px rgba(0,0,0,.6)}
.wfe-node:hover{border-color:color-mix(in srgb,var(--nc) 50%,transparent);transform:translateY(-1px)}
.wfe-node.sel{border-color:var(--nc);box-shadow:0 0 0 2px color-mix(in srgb,var(--nc) 30%,transparent),0 8px 22px -10px color-mix(in srgb,var(--nc) 70%,transparent)}
.wfe-node-hd{display:flex;align-items:center;gap:7px;margin-bottom:6px}
.wfe-node-ico{width:24px;height:24px;flex-shrink:0;border-radius:7px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--nc);background:color-mix(in srgb,var(--nc) 16%,transparent)}
.wfe-node-tp{font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.09em;color:var(--nc)}
.wfe-node-t{font-size:12.5px;font-weight:700;line-height:1.2}
.wfe-node-sub{font-size:10px;color:var(--fg3);margin-top:2px;font-family:'IBM Plex Mono',monospace}
.wfe-detail{--nc:#a78bfa;background:var(--s1);border-top:1px solid var(--bd);padding:14px 16px}
.wfe-detail-hd{display:flex;align-items:center;gap:10px;margin-bottom:9px}
.wfe-detail-ico{width:34px;height:34px;flex-shrink:0;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:16px;color:var(--nc);background:color-mix(in srgb,var(--nc) 15%,transparent);border:1px solid color-mix(in srgb,var(--nc) 32%,transparent)}
.wfe-detail-hd b{display:block;font-size:14px}
.wfe-detail-hd span{display:block;font-size:9.5px;font-family:'IBM Plex Mono',monospace;letter-spacing:.08em;color:var(--nc)}
.wfe-detail-what{font-size:12.5px;color:var(--fg2);line-height:1.5}
.wfe-detail-cfg{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.wfe-chip{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--fg2);background:var(--s2);border:1px solid var(--bd);border-radius:7px;padding:4px 9px}
.wfe-detail-note{font-size:10.5px;color:var(--fg3);line-height:1.4;margin-top:11px;padding-top:10px;border-top:1px solid var(--bd)}

/* ─── Conocimiento · lo que ya sabe de la empresa (kb-auto) ─── */
.kb-auto{background:linear-gradient(120deg,color-mix(in srgb,var(--cy) 8%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--cy) 22%,var(--bd));border-radius:14px;padding:14px 16px;margin-bottom:14px}
.kb-auto-hd{display:flex;align-items:center;gap:11px;margin-bottom:12px}
.kb-auto-ic{width:30px;height:30px;flex-shrink:0;border-radius:9px;display:flex;align-items:center;justify-content:center;color:var(--cy);background:color-mix(in srgb,var(--cy) 14%,transparent);border:1px solid color-mix(in srgb,var(--cy) 30%,transparent);font-family:'IBM Plex Mono',monospace}
.kb-auto-htx{flex:1;min-width:0}
.kb-auto-htx b{display:block;font-size:13px}
.kb-auto-htx span{display:block;font-size:11px;color:var(--fg3);line-height:1.4;margin-top:2px}
.kb-auto-edit{flex-shrink:0;background:transparent;border:1px solid color-mix(in srgb,var(--cy) 34%,transparent);color:var(--cy);border-radius:9px;padding:7px 12px;font-family:Outfit,sans-serif;font-size:11px;font-weight:700;cursor:pointer;transition:.15s}
.kb-auto-edit:hover{background:color-mix(in srgb,var(--cy) 12%,transparent)}
.kb-auto-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
@media(max-width:720px){.kb-auto-grid{grid-template-columns:1fr 1fr}}
.kb-auto-item{display:flex;align-items:center;gap:9px;background:var(--s2);border:1px solid var(--bd);border-radius:10px;padding:9px 11px}
.kb-auto-item.empty{opacity:.7}
.kb-auto-dot{width:7px;height:7px;flex-shrink:0;border-radius:50%;background:var(--ok);box-shadow:0 0 6px var(--ok)}
.kb-auto-item.empty .kb-auto-dot{background:var(--wa);box-shadow:none}
.kb-auto-tx{min-width:0}
.kb-auto-tx b{display:block;font-size:9.5px;font-family:'IBM Plex Mono',monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--fg3)}
.kb-auto-tx span{display:block;font-size:12px;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.kb-auto-item.empty .kb-auto-tx span{color:var(--wa);font-style:italic}

/* burbuja del probador que vino de la KB del cliente */
.ag-bub.kb{border-left:2px solid color-mix(in srgb,var(--acc,#00c2d1) 60%,transparent)}
.ag-bub-kb{display:block;font-family:'IBM Plex Mono',monospace;font-size:8.5px;font-weight:700;letter-spacing:.05em;opacity:.85;margin-top:5px}

/* ─── Web cockpit · extras profundos (livebar/period/engagement) ─── */
.cc-livebar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:linear-gradient(120deg,color-mix(in srgb,var(--c) 12%,var(--s1)),var(--s1) 60%);border:1px solid color-mix(in srgb,var(--c) 26%,var(--bd));border-radius:12px;padding:11px 15px;margin-bottom:12px;font-size:13px}
.cc-livebar-dot{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 9px var(--ok);animation:pulse 1.4s infinite;flex-shrink:0}
.cc-livebar-pages{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}
.cc-livebar-pg{font-family:'IBM Plex Mono',monospace;font-size:10.5px;color:var(--fg2);background:var(--s2);border:1px solid var(--bd);border-radius:20px;padding:3px 9px}
.cc-livebar-pg i{color:var(--c);font-style:normal;font-weight:700}
.cc-period{display:inline-flex;gap:3px;background:var(--s2);border:1px solid var(--bd);border-radius:8px;padding:2px}
.cc-period-b{border:none;background:transparent;color:var(--fg3);font-family:'IBM Plex Mono',monospace;font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:6px;cursor:pointer;transition:.15s}
.cc-period-b:hover{color:var(--fg)}
.cc-period-b.on{background:color-mix(in srgb,var(--c) 20%,transparent);color:var(--c)}
.cc-eng{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.cc-eng-i{background:var(--s2);border:1px solid var(--bd);border-radius:11px;padding:12px 8px;text-align:center}
.cc-eng-i b{display:block;font-family:'IBM Plex Mono',monospace;font-size:19px;font-weight:800;line-height:1}
.cc-eng-i span{display:block;font-size:9.5px;color:var(--fg3);margin-top:4px}

/* ─── Panel cockpit · insight + objetivos ─── */
.cc-insight{display:flex;align-items:flex-start;gap:11px;background:linear-gradient(120deg,color-mix(in srgb,var(--c) 13%,var(--s1)),var(--s1) 62%);border:1px solid color-mix(in srgb,var(--c) 28%,var(--bd));border-radius:13px;padding:13px 16px;margin-bottom:12px}
.cc-insight-ic{width:32px;height:32px;flex-shrink:0;border-radius:9px;display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:15px;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent);border:1px solid color-mix(in srgb,var(--c) 34%,transparent)}
.cc-insight-tx b{display:block;font-size:9.5px;font-family:'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:var(--c);margin-bottom:3px}
.cc-insight-tx span{display:block;font-size:12.5px;color:var(--fg);line-height:1.5}
.cc-goals{display:flex;flex-direction:column;gap:13px}
.cc-goal-hd{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.cc-goal-k{font-size:12px;font-weight:600}
.cc-goal-v{font-size:11px;color:var(--fg3);font-family:'IBM Plex Mono',monospace}
.cc-goal-v b{font-size:13px}
.cc-goal-bar{position:relative;height:20px;background:var(--s2);border-radius:6px;overflow:hidden;border:1px solid var(--bd)}
.cc-goal-bar i{display:block;height:100%;border-radius:6px;transition:width .6s cubic-bezier(.16,1,.3,1)}
.cc-goal-pct{position:absolute;top:50%;right:8px;transform:translateY(-50%);font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;color:var(--fg)}

/* ─── Ecosistema · resumen ejecutivo (eco-exec) ─── */
.eco-exec{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:linear-gradient(120deg,rgba(34,211,90,.09),var(--s1) 60%);border:1px solid rgba(34,211,90,.26);border-radius:16px;padding:16px 22px;margin-bottom:16px}
.eco-exec-tx{flex:1;min-width:220px}
.eco-exec-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--ok);margin-bottom:5px}
.eco-exec-sub{font-size:12px;color:var(--fg2);line-height:1.5;max-width:520px}
.eco-exec-stats{display:flex;gap:22px;flex-wrap:wrap}
.eco-exec-stat{text-align:right}
.eco-exec-v{font-family:'IBM Plex Mono',monospace;font-size:22px;font-weight:800;line-height:1}
.eco-exec-stat.big .eco-exec-v{font-size:28px}
.eco-exec-l{font-size:10px;color:var(--fg3);margin-top:4px}
@media(max-width:640px){.eco-exec-stat{text-align:left}}

/* ═══════════ COCKPIT AUTOMATIZACIONES — embudo · benchmark · economía ═══════════ */

/* Embudo: cada paso con su conversión respecto al anterior */
.cc-fun{display:flex;flex-direction:column;gap:9px;padding:4px 0}
.cc-fun-row{display:grid;grid-template-columns:190px 1fr 92px;align-items:center;gap:12px}
.cc-fun-lb{display:flex;flex-direction:column;gap:1px;min-width:0}
.cc-fun-lb b{font-size:12px;font-weight:600;color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cc-fun-lb span{font-family:'IBM Plex Mono',monospace;font-size:11px;color:var(--fg3)}
.cc-fun-tr{height:22px;border-radius:6px;background:var(--s2);overflow:hidden}
.cc-fun-tr i{display:block;height:100%;border-radius:6px;transition:width .5s cubic-bezier(.16,1,.3,1)}
.cc-fun-cv{font-family:'IBM Plex Mono',monospace;font-size:11px;font-weight:700;color:var(--fg2);text-align:right}
.cc-fun-cv.ok{color:var(--ok)}
.cc-fun-cv.warn{color:var(--wa)}
.cc-fun-cv.start{color:var(--fg3);font-weight:400}

/* Benchmark: tú vs media vs top del sector */
.cc-bm{display:flex;flex-direction:column;gap:9px}
.cc-bm-row{display:grid;grid-template-columns:118px 1fr 58px;align-items:center;gap:10px}
.cc-bm-k{font-size:11.5px;color:var(--fg2)}
.cc-bm-t{height:14px;border-radius:5px;background:var(--s2);overflow:hidden}
.cc-bm-t i{display:block;height:100%;border-radius:5px;transition:width .5s cubic-bezier(.16,1,.3,1)}
.cc-bm-row b{font-family:'IBM Plex Mono',monospace;font-size:12px;text-align:right}

/* Economía: la cuenta sin trampa */
.cc-calc{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}
.cc-calc-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;font-size:12px}
.cc-calc-row span{color:var(--fg3);flex:1}
.cc-calc-row b{font-family:'IBM Plex Mono',monospace;font-size:12px;text-align:right;max-width:58%}
.cc-calc-sep{height:1px;background:var(--bd);margin:3px 0}
.cc-calc-row.tot span{color:var(--fg);font-weight:600}
.cc-calc-row.tot b{font-size:15px;font-weight:700}

/* ═══════════ RESCATE — cronómetro de la ventana de oro ═══════════ */
.cc-chrono{display:flex;align-items:flex-start;gap:0;padding:14px 4px 6px;overflow-x:auto}
.cc-chrono-node{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:118px;flex:0 0 auto;text-align:center}
.cc-chrono-t{font-family:'IBM Plex Mono',monospace;font-size:12px;font-weight:700;color:var(--nc)}
.cc-chrono-dot{width:15px;height:15px;border-radius:50%;background:var(--nc);box-shadow:0 0 0 4px color-mix(in srgb,var(--nc) 20%,transparent);flex:0 0 auto}
.cc-chrono-tx{display:flex;flex-direction:column;gap:2px}
.cc-chrono-tx b{font-size:12px;font-weight:600;color:var(--fg)}
.cc-chrono-tx span{font-size:10.5px;color:var(--fg3);line-height:1.35}
.cc-chrono-rail{position:relative;flex:1 1 auto;min-width:34px;height:2px;background:var(--bd);margin-top:26px;border-radius:2px;overflow:hidden}
.cc-chrono-pkt{position:absolute;top:-2px;left:0;width:6px;height:6px;border-radius:50%;background:var(--c);animation:ccChrono 2.6s linear infinite}
@keyframes ccChrono{0%{left:-8%;opacity:0}12%{opacity:1}88%{opacity:1}100%{left:104%;opacity:0}}
@media (prefers-reduced-motion:reduce){.cc-chrono-pkt{animation:none;left:50%}}

/* ═══════════ RESCATE — mapa de calor de llamadas perdidas ═══════════ */
.cc-heat{display:grid;grid-template-columns:52px repeat(6,1fr);gap:4px;margin:6px 0 10px}
.cc-heat-corner{}
.cc-heat-dh{font-size:10.5px;font-weight:600;color:var(--fg3);text-align:center;padding-bottom:2px}
.cc-heat-fh{font-family:'IBM Plex Mono',monospace;font-size:10px;color:var(--fg3);display:flex;align-items:center;justify-content:flex-end;padding-right:6px}
.cc-heat-c{aspect-ratio:1.9/1;border-radius:6px;background:var(--c);display:flex;align-items:center;justify-content:center;font-family:'IBM Plex Mono',monospace;font-size:11.5px;font-weight:700;color:#07090f;transition:transform .15s ease}
.cc-heat-c:hover{transform:scale(1.09)}
.cc-heat-c.peak{outline:2px solid var(--wa);outline-offset:1px}

/* ═══════════ FICHA DE SERVICIO PREMIUM (Mis Servicios · todas las familias) ═══════════ */
.fam-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:15px}

.fsx{position:relative;display:flex;flex-direction:column;gap:0;
  background:linear-gradient(165deg,color-mix(in srgb,var(--c) 9%,var(--s1)) 0%,var(--s1) 46%,var(--s1) 100%);
  border:1px solid color-mix(in srgb,var(--c) 20%,var(--bd));border-radius:18px;padding:17px 18px 16px;
  cursor:pointer;overflow:hidden;isolation:isolate;
  box-shadow:0 1px 0 color-mix(in srgb,#fff 5%,transparent) inset,0 8px 22px -14px rgba(0,0,0,.85);
  transition:transform .28s cubic-bezier(.16,1,.3,1),border-color .28s ease,box-shadow .28s ease}

/* halo de color detrás del medallón */
.fsx-glow{position:absolute;top:-58px;left:-38px;width:186px;height:186px;border-radius:50%;z-index:-1;
  background:radial-gradient(circle,color-mix(in srgb,var(--c) 32%,transparent) 0%,transparent 68%);
  opacity:.55;transition:opacity .3s ease,transform .45s cubic-bezier(.16,1,.3,1)}

/* barrido de luz al pasar */
.fsx::after{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:18px;
  background:linear-gradient(105deg,transparent 38%,color-mix(in srgb,#fff 11%,transparent) 50%,transparent 62%);
  transform:translateX(-115%);transition:transform .62s cubic-bezier(.16,1,.3,1)}
.fsx:hover::after{transform:translateX(115%)}
.fsx:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--c) 58%,transparent);
  box-shadow:0 1px 0 color-mix(in srgb,#fff 8%,transparent) inset,0 20px 40px -20px color-mix(in srgb,var(--c) 55%,transparent),0 8px 22px -14px rgba(0,0,0,.9)}
.fsx:hover .fsx-glow{opacity:.9;transform:scale(1.14)}

.fsx-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:13px}

/* medallón del icono */
.fsx-ico{width:52px;height:52px;flex-shrink:0;border-radius:15px;display:flex;align-items:center;justify-content:center;
  font-size:23px;font-family:'IBM Plex Mono',monospace;color:var(--c);
  background:linear-gradient(155deg,color-mix(in srgb,var(--c) 26%,transparent),color-mix(in srgb,var(--c) 8%,transparent));
  border:1px solid color-mix(in srgb,var(--c) 40%,transparent);
  box-shadow:0 0 0 1px rgba(0,0,0,.35),0 6px 16px -8px color-mix(in srgb,var(--c) 75%,transparent),0 1px 0 color-mix(in srgb,#fff 14%,transparent) inset;
  transition:transform .3s cubic-bezier(.16,1,.3,1)}
.fsx:hover .fsx-ico{transform:scale(1.07) rotate(-3deg)}

/* píldora EN MARCHA con pulso */
.fsx-live{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;
  font-family:'IBM Plex Mono',monospace;font-size:9px;font-weight:700;letter-spacing:.09em;color:var(--ok);
  background:color-mix(in srgb,var(--ok) 12%,transparent);border:1px solid color-mix(in srgb,var(--ok) 34%,transparent);
  border-radius:999px;padding:5px 9px}
.fsx-live i{width:6px;height:6px;border-radius:50%;background:var(--ok);animation:fsxPulse 2s ease-in-out infinite}
@keyframes fsxPulse{0%,100%{opacity:1;box-shadow:0 0 0 0 color-mix(in srgb,var(--ok) 55%,transparent)}50%{opacity:.65;box-shadow:0 0 0 5px transparent}}

.fsx-eta{flex-shrink:0;font-family:'IBM Plex Mono',monospace;font-size:9.5px;font-weight:600;color:var(--fg3);
  background:var(--s2);border:1px solid var(--bd);border-radius:999px;padding:5px 10px}

.fsx-nm{font-size:15.5px;font-weight:800;line-height:1.2;letter-spacing:-.01em;margin-bottom:9px}

/* impacto destacado */
.fsx-imp{display:flex;flex-direction:column;gap:1px;padding:9px 11px;margin-bottom:10px;border-radius:11px;
  background:color-mix(in srgb,var(--c) 8%,var(--s2));border:1px solid color-mix(in srgb,var(--c) 18%,transparent)}
.fsx-imp-v{font-family:var(--font-display),'IBM Plex Mono',monospace;font-size:19px;line-height:1.05;color:var(--c)}
.fsx-imp-l{font-family:'IBM Plex Mono',monospace;font-size:8.5px;letter-spacing:.07em;text-transform:uppercase;color:var(--fg3)}

.fsx-tag{font-size:11.5px;color:var(--fg2);line-height:1.5;margin-bottom:14px;flex:1}

/* CTA activa */
.fsx-btn{display:flex;align-items:center;justify-content:center;gap:7px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--c) 24%,transparent),color-mix(in srgb,var(--c) 13%,transparent));
  border:1px solid color-mix(in srgb,var(--c) 45%,transparent);color:var(--c);
  border-radius:11px;padding:10px;font-size:12.5px;font-weight:700;transition:.2s}
.fsx:hover .fsx-btn{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 40%,transparent),color-mix(in srgb,var(--c) 22%,transparent));
  border-color:color-mix(in srgb,var(--c) 70%,transparent)}

/* pie disponible */
.fsx-ft{display:flex;align-items:center;justify-content:space-between;gap:10px;
  border-top:1px solid var(--bd);padding-top:12px}
.fsx-price{font-family:'IBM Plex Mono',monospace;font-size:12.5px;font-weight:700;color:var(--fg)}
.fsx-go{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:var(--c)}
.fsx-arw{display:inline-block;font-family:'IBM Plex Mono',monospace;transition:transform .28s cubic-bezier(.16,1,.3,1)}
.fsx:hover .fsx-arw{transform:translateX(4px)}

@media (prefers-reduced-motion:reduce){
  .fsx,.fsx::after,.fsx-glow,.fsx-ico,.fsx-arw{transition:none}
  .fsx:hover{transform:none}
  .fsx:hover .fsx-ico{transform:none}
  .fsx-live i{animation:none}
}

/* ═══════════════════════════════════════════════════════════════════
   MOVIL (2026-09-23). El portal nacio solo para escritorio: la barra
   lateral no se apartaba y el contenido quedaba en una columna de 100 px.
   Aqui el menu pasa a ser un cajon y las rejillas se apilan.
   ═══════════════════════════════════════════════════════════════════ */
.tbar-burger{display:none}
.tbar-id-n{font-size:13px;font-weight:700;white-space:nowrap}
.tbar-id-s{font-size:10px;color:var(--fg3);white-space:nowrap}

@media(max-width:900px){
  /* minmax(0,1fr) y no 1fr: con 1fr la columna crece hasta el contenido mas
     ancho (el ticker no se parte) y la pantalla se iba a 504 px. */
  .shell{grid-template-columns:minmax(0,1fr)}
  .tbar,.ticker,.main{min-width:0}
  .tbar-brand{width:auto;padding:0 12px;gap:8px;border-right:0}
  .tbar-burger{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex-shrink:0;
    background:var(--s2);border:1px solid var(--bdm);border-radius:9px;color:var(--fg);font-size:17px;line-height:1;cursor:pointer}
  .tbar-burger:hover{border-color:var(--cy);color:var(--cy)}
  /* En 390 px no caben todos los controles: el sello de demo ya sale en la
     cinta y en el aviso de abajo, asi que en la barra sobra. */
  .tbar-right{gap:6px}
  .tbar-right .mode-badge{display:none}
  .tbar{padding-right:10px}
  .tbar-id{display:none}

  /* El menu, fuera de pantalla hasta que se pide */
  .side{position:fixed;left:0;top:var(--th);bottom:0;width:min(84vw,300px);z-index:120;
    transform:translateX(-101%);transition:transform .26s cubic-bezier(.16,1,.3,1);box-shadow:0 0 60px rgba(0,0,0,.6)}
  body.side-on .side{transform:none}
  body.side-on::after{content:'';position:fixed;inset:var(--th) 0 0 0;background:rgba(0,0,0,.55);z-index:110}

  .main{padding:16px 14px 90px}
  .page-hd{flex-direction:column;align-items:stretch;gap:10px}
  .page-title{font-size:18px}

  /* Rejillas de columnas fijas: se apilan o se parten en dos */
  .kpi-grid,.studio-grid,.sit-grid,.scenario-grid,.eco-folder-grid,.eco-items-grid,
  .int-grid,.wf-grid,.flt-grid,.fact-products,.pd-steps-grid{grid-template-columns:1fr}
  .informe-kpis,.brief-types,.eco-item-metrics,.flt-facts{grid-template-columns:repeat(2,1fr)}
  .eco-status-bar,.onboard-steps{grid-template-columns:repeat(3,1fr)}

  /* Tarjetas de aviso: el boton baja en lugar de estrujar el texto */
  .alert-card{flex-wrap:wrap}
  .alert-act{width:100%;margin-top:8px}

  /* Tablas anchas: se deslizan con el dedo en vez de desbordar la pagina */
  .tbl-wrap,.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
}

@media(max-width:900px) and (prefers-reduced-motion:reduce){
  .side{transition:none}
}

/* El aviso de demo estaba fijo en el centro-abajo y tapaba justo los botones
   de "Monta tu VIFER" (evaluador, 2026-09-23). Se va a la izquierda, lejos
   del chat, y en movil se pega abajo del todo sin tapar el contenido. */
.demo-ribbon{left:20px;transform:none;max-width:min(560px,66vw)}
@media(max-width:900px){
  .demo-ribbon{left:10px;right:76px;bottom:10px;max-width:none;padding:9px 12px}
  .demo-ribbon-tx{font-size:11.5px}
  /* Dedo, no raton: los controles de la barra suben de 30 a 40 px */
  .tbar-icon,.tbar-avatar,.tbar-burger{width:40px;height:40px}
  .tbar-saldo{padding:8px 12px 8px 10px}
}

/* Pase 27 (Sergio): logo oficial de Vifer (assets/), el mismo que la web. En movil, solo el simbolo. */
.tbar-logo-img{display:block;height:24px;width:auto}
.tbar-logo-sym{display:none;height:26px;width:auto}
.tbar-id{padding-left:12px;border-left:1px solid var(--bd)}
.tbar-id-s{font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.login-logo-img{display:block;height:31px;width:auto}
@media (max-width:760px){.tbar-logo-img{display:none}.tbar-logo-sym{display:block}}
