/* ============================================================
   WTF PUBLICIDAD — Panel Interno
   asistente.css — Wtfok, el asistente: chat de pantalla completa
   (bloques/asistente-wtf.html), chat lateral (assets/js/asistente-lateral.js)
   y tarjeta del Inicio (index.php). El chat usa el mismo motor
   (assets/js/asistente-chat.js) y estas clases: asw- para el chat, asl- para
   lo propio del lateral y wtfok- para el ícono, el nombre y la tarjeta.
   ============================================================ */

/* ─── Ícono de Wtfok (IA) — UN solo lugar ───
   Todo el panel lo pone con <i class="wtfok-ico" aria-hidden="true"></i>
   (index.php y la constante WTFChat.ICONO de asistente-chat.js). Hoy es
   ti-sparkles de Tabler (\f6d7); para cambiarlo por un SVG propio en
   assets/img/, cambia solo esta regla (p. ej. un mask-image en ::before).
   Verde para que destaque entre los grises: en claro --gd (#5a9020, pasa
   3:1 como gráfico sobre blanco; --g no llega), en oscuro --g. */
:root,[data-theme="light"]{--wtfok-ico:var(--gd);}
[data-theme="dark"]{--wtfok-ico:var(--g);}
.wtfok-ico{font-family:"tabler-icons" !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--wtfok-ico);}
.wtfok-ico::before{content:"\f6d7";}
/* Gana a los colores grises o verdes del menú (activo incluido) y de la barra superior */
.nav-item .nav-icon.wtfok-ico,.nav-item.active .nav-icon.wtfok-ico,.tb-btn .wtfok-ico{color:var(--wtfok-ico);}

/* ─── Chat (común) ─── */
.asw{display:flex;height:calc(100vh - var(--topbar-h) - 3rem);min-height:460px;background:var(--c1);border:1px solid var(--br);border-radius:var(--r2);overflow:hidden;box-shadow:var(--shadow-card);position:relative;}
.asw *,.asw-lat *,.asl *{box-sizing:border-box;}
.asw [hidden],.asw-lat [hidden],.asl[hidden],.asw-velo [hidden]{display:none !important;}
.asw button,.asw-lat button,.asw-lat select{font-family:var(--font);}
.asw-lado{width:280px;flex-shrink:0;border-right:1px solid var(--br);display:flex;flex-direction:column;background:var(--c2);min-height:0;}
.asw-lado-hdr{padding:.8rem .8rem .6rem;display:flex;flex-direction:column;gap:.6rem;}
.asw-marca{display:flex;align-items:center;gap:.55rem;}
.asw-marca-ico{width:32px;height:32px;border-radius:var(--r);background:var(--green-bg);border:1px solid var(--green-br);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;}
.asw-marca b{display:block;font-size:13px;color:var(--t);}
.asw-marca small{display:block;font-size:10.5px;color:var(--ts);}
.asw-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:7px 12px;border-radius:var(--r);border:1px solid var(--br);background:var(--c1);color:var(--t);font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap;}
.asw-btn:hover{border-color:var(--brh);}
.asw-btn:disabled{opacity:.5;cursor:not-allowed;}
.asw-btn i{font-size:14px;}
.asw-btn-prim{background:var(--g);border-color:var(--g);color:#000;}
.asw-btn-prim:hover{background:var(--gd);border-color:var(--gd);}
.asw-btn:focus-visible,.asw-icono:focus-visible,.asw-item:focus-visible,.asw-accion:focus-visible,.asw-plant:focus-visible,.asw-bien-card:focus-visible,.asw-cuenta:focus-visible,.asl-mini:focus-visible,.asl-link:focus-visible{outline:2px solid var(--g);outline-offset:1px;}
.asw-filtros{padding:0 .8rem .55rem;display:flex;flex-direction:column;gap:.4rem;}
.asw-buscar{position:relative;}
.asw-buscar i{position:absolute;left:.55rem;top:50%;transform:translateY(-50%);font-size:13px;color:var(--tm);}
.asw-buscar input,.asw-sel{width:100%;padding:6px 9px;border:1px solid var(--brh);border-radius:var(--r);background:var(--c1);color:var(--t);font-size:11.5px;font-family:var(--font);outline:none;}
.asw-buscar input{padding-left:1.8rem;}
.asw-buscar input:focus,.asw-sel:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(117,184,42,.12);}
.asw-lista{flex:1;overflow-y:auto;padding:.1rem .45rem .4rem;min-height:0;}
.asw-grupo{font-size:9.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--tm);padding:.55rem .4rem .25rem;}
.asw-item{display:block;width:100%;text-align:left;border:none;background:transparent;border-radius:var(--r);padding:.45rem .55rem;cursor:pointer;margin-bottom:.1rem;color:var(--t);}
.asw-item:hover{background:var(--c1);}
.asw-item.on{background:var(--nav-active-bg);box-shadow:inset 2px 0 0 var(--g);}
.asw-item-tit{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.asw-item-meta{display:flex;align-items:center;gap:.35rem;margin-top:.15rem;font-size:10.5px;color:var(--ts);min-width:0;}
.asw-item-cli{display:inline-flex;align-items:center;gap:.2rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 6px;border-radius:10px;background:var(--c1);border:1px solid var(--br);font-weight:600;}
.asw-item.on .asw-item-cli{background:var(--c2);}
.asw-vacio-lista{font-size:11.5px;color:var(--ts);padding:.8rem .6rem;line-height:1.55;}
.asw-archivadas{border:none;background:transparent;color:var(--ts);font-size:11px;font-weight:600;padding:.45rem .8rem;text-align:left;cursor:pointer;border-top:1px solid var(--br);}
.asw-archivadas:hover{color:var(--t);}
.asw-medidor{padding:.65rem .8rem .75rem;border-top:1px solid var(--br);background:var(--c1);}
.asw-med-tit{display:flex;justify-content:space-between;font-size:10.5px;font-weight:700;color:var(--t);margin-bottom:.35rem;}
.asw-med-tit span{font-weight:600;color:var(--ts);}
.asw-med-barra{height:6px;border-radius:6px;background:var(--c2);border:1px solid var(--br);overflow:hidden;}
.asw-med-barra span{display:block;height:100%;width:0;background:var(--g);border-radius:6px;}
/* Medidor del mes: verde < 70 %, naranja 70–89 %, rojo desde el 90 % (lib_asistente.php) */
.asw-med-barra.naranja span{background:#EF9F27;}
.asw-med-barra.rojo span{background:#E24B4A;}
.asw-med-montos{display:block;color:var(--t);font-weight:600;}
.asw-med-txt{font-size:10.5px;color:var(--ts);margin-top:.3rem;line-height:1.45;}

.asw-chat{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;}
.asw-chat-hdr{display:flex;align-items:center;gap:.6rem;padding:.6rem .9rem;border-bottom:1px solid var(--br);min-height:54px;}
.asw-titulo-wrap{flex:1;min-width:0;}
.asw-titulo{font-size:13.5px;font-weight:700;color:var(--t);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.asw-sub{font-size:10.5px;color:var(--ts);margin-top:.1rem;display:flex;gap:.4rem;flex-wrap:wrap;align-items:center;}
.asw-sub > span + span::before{content:"·";margin-right:.4rem;color:var(--ts);font-weight:400;}
.asw-sim{display:inline-flex;align-items:center;gap:.25rem;padding:0 7px;border-radius:10px;background:var(--yellow-bg);border:1px solid var(--yellow-br);color:#BA7517;font-weight:700;}
[data-theme="dark"] .asw-sim{color:#EF9F27;}
.asw-hdr-der{display:flex;align-items:center;gap:.4rem;flex-shrink:0;}
.asw-chip-cli{display:inline-flex;align-items:center;gap:.3rem;max-width:230px;padding:4px 4px 4px 9px;border-radius:20px;background:var(--green-bg);border:1px solid var(--green-br);color:#3B6D11;font-size:11px;font-weight:700;}
[data-theme="dark"] .asw-chip-cli{color:var(--g);}
.asw-chip-cli > span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.asw-chip-cli button{border:none;background:transparent;color:inherit;cursor:pointer;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;}
.asw-chip-cli button:hover{background:rgba(0,0,0,.08);}
.asw-icono{width:32px;height:32px;border-radius:var(--r);border:1px solid var(--br);background:var(--c1);color:var(--ts);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:16px;}
.asw-icono:hover{color:var(--t);border-color:var(--brh);}
.asw-solo-movil{display:none;}
.asw-menu-wrap{position:relative;}
.asw-menu{position:absolute;right:0;top:calc(100% + 4px);background:var(--c1);border:1px solid var(--br);border-radius:var(--r);box-shadow:0 10px 30px rgba(0,0,0,.18);min-width:190px;padding:.3rem;z-index:20;}
.asw-menu button{display:flex;align-items:center;gap:.45rem;width:100%;text-align:left;border:none;background:transparent;padding:.45rem .6rem;border-radius:6px;font-size:12px;color:var(--t);cursor:pointer;}
.asw-menu button:hover{background:var(--c2);}
.asw-menu button.rojo{color:#E24B4A;}

.asw-msgs{flex:1;overflow-y:auto;padding:1.1rem 1.25rem .6rem;display:flex;flex-direction:column;gap:.85rem;min-height:0;}
.asw-msg{display:flex;gap:.6rem;max-width:820px;width:100%;}
.asw-msg.yo{align-self:flex-end;justify-content:flex-end;}
.asw-av{position:relative;width:28px;height:28px;border-radius:50%;background:var(--green-bg);border:1px solid var(--green-br);font-size:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.1rem;}
.asw-msg.err .asw-av{background:var(--red-bg);border-color:var(--red-br);color:#C43C3B;font-size:12px;font-weight:800;}
[data-theme="dark"] .asw-msg.err .asw-av{color:#f87171;}
.asw-cuerpo{min-width:0;max-width:100%;}
.asw-msg.yo .asw-cuerpo{max-width:85%;}
.asw-burbuja{padding:.6rem .85rem;border-radius:var(--r2);font-size:12.5px;line-height:1.65;color:var(--t);overflow-wrap:anywhere;}
.asw-msg.yo .asw-burbuja{background:var(--green-bg);border:1px solid var(--green-br);border-top-right-radius:4px;white-space:pre-wrap;}
.asw-msg.ia .asw-burbuja{background:var(--c1);border:1px solid var(--br);border-top-left-radius:4px;box-shadow:var(--shadow-card);}
.asw-msg.err .asw-burbuja{background:var(--red-bg);border:1px solid var(--red-br);}
.asw-err-tit{display:flex;align-items:center;gap:.35rem;font-weight:700;color:#C43C3B;margin-bottom:.2rem;}
[data-theme="dark"] .asw-err-tit{color:#f87171;}
.asw-etq{font-size:10px;color:var(--ts);margin-bottom:.2rem;text-align:right;}
.asw-etq i{font-size:11px;vertical-align:-1px;}
.asw-meta{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;margin-top:.3rem;font-size:10.5px;color:var(--ts);}
.asw-accion{display:inline-flex;align-items:center;gap:.25rem;border:1px solid transparent;background:transparent;color:var(--ts);font-size:10.5px;font-weight:600;padding:2px 7px;border-radius:6px;cursor:pointer;}
.asw-accion:hover{background:var(--c2);border-color:var(--br);color:var(--t);}
.asw-accion i{font-size:12px;}
.asw-nota{display:inline-flex;align-items:center;gap:.25rem;padding:1px 7px;border-radius:10px;background:var(--c2);border:1px solid var(--br);}
.asw-nota.warn{background:var(--yellow-bg);border-color:var(--yellow-br);color:#BA7517;}
[data-theme="dark"] .asw-nota.warn{color:#EF9F27;}
.asw-aviso-conv{align-self:center;font-size:10.5px;color:var(--ts);display:flex;align-items:center;gap:.35rem;padding:2px 10px;border-radius:12px;background:var(--c2);border:1px solid var(--br);}
.asw-aviso-conv i{font-size:12px;}
.asw-escribiendo{display:inline-flex;gap:4px;padding:.3rem 0;}
.asw-escribiendo span{width:6px;height:6px;border-radius:50%;background:var(--tm);animation:asw-punto 1.2s infinite;}
.asw-escribiendo span:nth-child(2){animation-delay:.2s;}
.asw-escribiendo span:nth-child(3){animation-delay:.4s;}
@keyframes asw-punto{0%,60%,100%{transform:translateY(0);opacity:.6}30%{transform:translateY(-4px);opacity:1}}
.asw-estado-linea{font-size:11px;color:var(--ts);display:flex;align-items:center;gap:.35rem;margin-bottom:.2rem;}
.asw-estado-linea i{font-size:13px;color:var(--g);}

/* Markdown seguro (se escapa todo antes de convertir) */
.asw-md > :first-child{margin-top:0;}
.asw-md > :last-child{margin-bottom:0;}
.asw-md p{margin:.45rem 0;color:var(--t);line-height:1.65;}
.asw-md li > p{margin:.15rem 0;}
.asw-md h3,.asw-md h4,.asw-md h5,.asw-md h6{margin:.8rem 0 .35rem;font-size:13px;font-weight:700;color:var(--t);}
.asw-md h3{font-size:14px;}
.asw-md ul,.asw-md ol{margin:.35rem 0 .45rem;padding-left:1.35rem;}
.asw-md li{margin:.18rem 0;}
.asw-md a{color:#2F7CC8;text-decoration:underline;}
[data-theme="dark"] .asw-md a{color:#85B7EB;}
.asw-md code{font-family:var(--font-mono);font-size:11.5px;background:var(--c2);border:1px solid var(--br);border-radius:4px;padding:0 4px;}
.asw-md pre{background:var(--c2);border:1px solid var(--br);border-radius:var(--r);padding:.6rem .75rem;overflow-x:auto;margin:.5rem 0;}
.asw-md pre code{border:none;background:transparent;padding:0;white-space:pre;}
.asw-md blockquote{margin:.5rem 0;padding:.35rem .7rem;border-left:3px solid var(--g);background:var(--c2);border-radius:0 var(--r) var(--r) 0;color:var(--t);}
.asw-md hr{border:none;border-top:1px solid var(--br);margin:.7rem 0;}
.asw-tabla{overflow-x:auto;margin:.5rem 0;}
.asw-md table{border-collapse:collapse;font-size:12px;min-width:60%;}
.asw-md th,.asw-md td{border:1px solid var(--br);padding:.3rem .55rem;text-align:left;vertical-align:top;}
.asw-md th{background:var(--c2);font-weight:700;}

/* Bienvenida */
.asw-bienvenida{margin:auto;max-width:640px;width:100%;text-align:center;padding:1rem 0;}
.asw-bien-ico{width:52px;height:52px;border-radius:14px;background:var(--green-bg);border:1px solid var(--green-br);display:flex;align-items:center;justify-content:center;font-size:27px;margin:0 auto .7rem;}
.asw-bien-tit{font-size:18px;font-weight:700;color:var(--t);}
.asw-bien-sub{font-size:12.5px;color:var(--ts);line-height:1.65;margin:.35rem auto 1rem;max-width:520px;}
.asw-bien-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;text-align:left;}
.asw-bien-card{display:flex;flex-direction:column;gap:.2rem;border:1px solid var(--br);border-radius:var(--r2);padding:.65rem .8rem;background:var(--c1);cursor:pointer;color:var(--t);}
.asw-bien-card:hover{border-color:var(--g);}
.asw-bien-card b{font-size:12.5px;display:flex;align-items:center;gap:.35rem;}
.asw-bien-card small{font-size:11px;color:var(--ts);line-height:1.45;}
.asw-bien-card i{color:var(--g);font-size:14px;}
.asw-bien-nota{font-size:11px;color:var(--ts);margin-top:.9rem;line-height:1.55;}

/* Pie: plantillas, caja y aviso */
.asw-pie{border-top:1px solid var(--br);padding:.6rem .9rem .7rem;background:var(--c1);}
.asw-bloqueo{display:flex;align-items:flex-start;gap:.6rem;padding:.65rem .8rem;border-radius:var(--r);border:1px solid var(--yellow-br);background:var(--yellow-bg);font-size:12px;color:var(--t);line-height:1.55;margin-bottom:.55rem;}
.asw-bloqueo > i{font-size:17px;color:#BA7517;flex-shrink:0;margin-top:.05rem;}
[data-theme="dark"] .asw-bloqueo > i{color:#EF9F27;}
.asw-bloqueo b{display:block;}
.asw-bloqueo .asw-btn{margin-top:.45rem;}
.asw-plantillas{display:flex;gap:.35rem;overflow-x:auto;padding-bottom:.45rem;scrollbar-width:thin;}
.asw-plant{flex-shrink:0;display:inline-flex;align-items:center;gap:.3rem;padding:4px 10px;border-radius:20px;border:1px solid var(--br);background:var(--c2);color:var(--ts);font-size:11px;font-weight:600;cursor:pointer;}
.asw-plant:hover{border-color:var(--g);color:var(--t);}
.asw-plant i{font-size:12px;}
.asw-plant-sel{display:inline-flex;align-items:center;gap:.3rem;font-size:10.5px;color:var(--ts);margin-bottom:.35rem;}
.asw-plant-sel b{color:var(--t);}
.asw-plant-sel button{border:none;background:transparent;color:var(--ts);cursor:pointer;font-size:12px;padding:0 2px;}
.asw-caja{display:flex;align-items:flex-end;gap:.45rem;background:var(--c2);border:1px solid var(--brh);border-radius:var(--r2);padding:.45rem .5rem .45rem .75rem;}
.asw-caja:focus-within{border-color:var(--g);box-shadow:0 0 0 3px rgba(117,184,42,.12);}
.asw-caja textarea{flex:1;border:none;outline:none;background:transparent;resize:none;font-family:var(--font);font-size:13px;line-height:1.55;color:var(--t);max-height:180px;min-height:22px;padding:.15rem 0;}
.asw-caja textarea::placeholder{color:var(--tm);}
.asw-caja textarea:disabled{cursor:not-allowed;}
.asw-enviar{width:34px;height:34px;border-radius:var(--r);border:none;background:var(--g);color:#000;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.asw-enviar:hover{background:var(--gd);}
.asw-enviar:disabled{background:var(--br);color:var(--tm);cursor:not-allowed;}
.asw-enviar.detener{background:var(--t);color:var(--c1);}
.asw-enviar:focus-visible{outline:2px solid var(--t);outline-offset:2px;}
.asw-priv{display:flex;align-items:center;gap:.35rem;margin-top:.4rem;font-size:10.5px;color:var(--ts);}
.asw-priv i{font-size:12px;}
.asw-contador{margin-left:auto;white-space:nowrap;}
.asw-contador.excede{color:#E24B4A;font-weight:700;}

/* Ventanas */
.asw-velo{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:600;display:flex;align-items:center;justify-content:center;padding:1rem;}
.asw-velo[hidden]{display:none;}
.asw-modal{background:var(--c1);border-radius:var(--r2);width:100%;max-width:460px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.35);color:var(--t);}
.asw-modal-hdr{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem;border-bottom:1px solid var(--br);}
.asw-modal-hdr b{font-size:13.5px;display:flex;align-items:center;gap:.4rem;}
.asw-modal-body{padding:.85rem 1rem;overflow-y:auto;font-size:12px;}
.asw-modal-pie{display:flex;justify-content:flex-end;gap:.4rem;padding:.7rem 1rem;border-top:1px solid var(--br);flex-wrap:wrap;}
.asw-cuentas{margin-top:.55rem;max-height:320px;overflow-y:auto;border:1px solid var(--br);border-radius:var(--r);}
.asw-cuenta{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;border:none;border-bottom:1px solid var(--sep);background:transparent;padding:.5rem .7rem;text-align:left;font-size:12px;color:var(--t);cursor:pointer;}
.asw-cuenta:last-child{border-bottom:none;}
.asw-cuenta:hover{background:var(--c2);}
.asw-cuenta.on{background:var(--green-bg);font-weight:700;}
.asw-cuenta i{color:var(--g);}
.asw-campo{margin-bottom:.65rem;}
.asw-campo label{display:block;font-size:11px;font-weight:700;margin-bottom:.25rem;color:var(--t);}
.asw-campo textarea,.asw-campo input{width:100%;padding:7px 9px;border:1px solid var(--brh);border-radius:var(--r);background:var(--c1);color:var(--t);font-family:var(--font);font-size:12px;outline:none;resize:vertical;}
.asw-campo textarea:focus,.asw-campo input:focus{border-color:var(--g);box-shadow:0 0 0 3px rgba(117,184,42,.12);}
.asw-ayuda{font-size:11px;color:var(--ts);line-height:1.55;margin-bottom:.6rem;}
.asw-sugerir{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;border-radius:var(--r);background:var(--blue-bg);border:1px solid var(--blue-br);font-size:11.5px;line-height:1.5;margin-bottom:.65rem;}
.asw-sugerir i{color:#378ADD;font-size:15px;}

@media(max-width:900px){
  .asw{height:calc(100vh - var(--topbar-h) - 2rem);}
  .asw-lado{position:absolute;left:0;top:0;bottom:0;z-index:30;box-shadow:0 10px 40px rgba(0,0,0,.25);transform:translateX(-102%);transition:transform .2s;}
  .asw.lado-abierto .asw-lado{transform:none;}
  .asw-solo-movil{display:inline-flex;}
  .asw .asw-btn-vincular span{display:none;}
  .asw-bien-grid{grid-template-columns:1fr;}
  .asw-msgs{padding:.8rem .75rem .5rem;}
}
@media(max-width:600px){
  .asw .asw-sub{display:none;}
  .asw-chat-hdr{padding:.5rem .6rem;gap:.4rem;}
  .asw .asw-chip-cli{max-width:130px;}
}

/* ─── Avisos de uso y plantillas de pantalla ─── */
.asw-aviso-uso{display:flex;align-items:center;gap:.4rem;padding:.4rem .65rem;margin-bottom:.5rem;border-radius:var(--r);border:1px solid var(--yellow-br);background:var(--yellow-bg);font-size:11.5px;font-weight:600;color:var(--t);}
.asw-aviso-uso i{font-size:14px;color:#BA7517;flex-shrink:0;}
[data-theme="dark"] .asw-aviso-uso i{color:#EF9F27;}
.asw-plant.pant{border-color:var(--green-br);background:var(--green-bg);color:#3B6D11;}
[data-theme="dark"] .asw-plant.pant{color:var(--g);}
.asw-plant.pant i{color:inherit;}
.asw-insertar{color:#3B6D11;}
[data-theme="dark"] .asw-insertar{color:var(--g);}

/* ─── Chat lateral (asistente-lateral.js) ─── */
:root{--asl-w:420px;}
.asl{position:fixed;top:var(--topbar-h);right:0;bottom:0;width:var(--asl-w);max-width:100%;z-index:650;background:var(--c1);border-left:1px solid var(--br);box-shadow:-10px 0 34px rgba(0,0,0,.14);display:flex;color:var(--t);font-family:var(--font);}
[data-theme="dark"] .asl{box-shadow:-10px 0 34px rgba(0,0,0,.5);}
.asl.arrastrando{user-select:none;}
.asl-asa{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:2;}
.asl-asa::after{content:"";position:absolute;left:3px;top:50%;width:2px;height:36px;margin-top:-18px;border-radius:2px;background:var(--brh);opacity:0;transition:opacity .15s;}
.asl-asa:hover::after,.asl-asa:focus-visible::after,.asl.arrastrando .asl-asa::after{opacity:1;background:var(--g);}
.asl-asa:focus-visible{outline:none;}
.asl-cuerpo{flex:1;min-width:0;display:flex;}
.asl-vivo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.asw-oculto{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.asw-lat{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;height:100%;}
.asl-hdr{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .7rem;border-bottom:1px solid var(--br);}
.asl-hdr .asw-marca-ico{width:28px;height:28px;font-size:16px;}
.asl-hdr-acc{display:flex;gap:.3rem;}
.asl-barra{display:flex;align-items:center;gap:.5rem;padding:.5rem .7rem .35rem;flex-wrap:wrap;}
.asl-barra .asw-sel{flex:1;min-width:150px;width:auto;}
.asl-link{display:inline-flex;align-items:center;gap:.25rem;border:none;background:transparent;color:#2F7CC8;font-size:11px;font-weight:600;cursor:pointer;padding:3px 2px;white-space:nowrap;text-decoration:underline;text-underline-offset:2px;}
[data-theme="dark"] .asl-link{color:#85B7EB;}
.asl-link i{font-size:13px;}
.asl-cli{display:flex;align-items:center;justify-content:space-between;gap:.4rem;padding:0 .7rem .45rem;min-height:30px;flex-wrap:wrap;border-bottom:1px solid var(--br);}
.asl-cli .asw-sub{margin:0;}
.asl-cli-der{display:flex;align-items:center;gap:.35rem;margin-left:auto;min-width:0;}
.asl-cli .asw-btn{padding:5px 9px;}
.asl-cli .asw-chip-cli{max-width:190px;}
.asl-sugerir{display:flex;align-items:flex-start;gap:.5rem;margin:.55rem .7rem 0;padding:.55rem .65rem;border-radius:var(--r);background:var(--blue-bg);border:1px solid var(--blue-br);font-size:11.5px;line-height:1.5;}
.asl-sugerir > i{color:#378ADD;font-size:16px;margin-top:.05rem;}
.asl-sug-acc{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.4rem;}
.asl-sug-acc .asw-btn{padding:5px 10px;white-space:normal;text-align:left;}
.asl-contexto{display:flex;align-items:center;gap:.4rem;margin:.5rem .7rem 0;padding:.35rem .55rem;border-radius:var(--r);background:var(--c2);border:1px solid var(--br);font-size:11px;color:var(--ts);}
.asl-contexto > i{font-size:14px;color:var(--g);flex-shrink:0;}
.asl-contexto.apagado > i{color:var(--tm);}
.asl-contexto b{color:var(--t);font-weight:700;}
.asl-ctx-txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.asl-mini{flex-shrink:0;border:1px solid var(--br);background:var(--c1);color:var(--ts);border-radius:6px;font-size:10.5px;font-weight:600;padding:2px 7px;cursor:pointer;}
.asl-mini:hover{color:var(--t);border-color:var(--brh);}
.asw-lat .asw-msgs{padding:.8rem .75rem .5rem;gap:.7rem;}
.asw-lat .asw-msg{max-width:100%;}
.asw-lat .asw-msg.yo .asw-cuerpo{max-width:92%;}
.asw-lat .asw-av{width:24px;height:24px;font-size:13px;}
.asw-lat .asw-burbuja{font-size:12.5px;padding:.55rem .75rem;}
.asw-lat .asw-pie{padding:.55rem .7rem .6rem;}
.asw-lat .asw-priv{font-size:10px;}
.asw-lat .asw-bienvenida{padding:.5rem 0;}
.asw-lat .asw-bien-tit{font-size:15px;}
.asw-lat .asw-bien-ico{width:42px;height:42px;font-size:21px;}
.asw-lat .asw-bien-grid{grid-template-columns:1fr;}
.asw-lat .asw-bloqueo{font-size:11.5px;}
.asl-medidor{margin-top:.45rem;font-size:10.5px;color:var(--ts);}
.asl-medidor .asw-med-montos{display:inline;font-weight:600;}
.asl-medidor .asw-med-barra{margin-top:.25rem;height:5px;}
.asw-lat .asw-velo{z-index:700;}
/* Campo donde se acaba de insertar una respuesta */
.asl-insertado{box-shadow:0 0 0 3px rgba(117,184,42,.45) !important;border-color:var(--g) !important;transition:box-shadow .3s;}

/* Botón de la barra superior (oculto sin acceso: asistente-lateral.js) */
.tb-asis{width:auto;padding:0 .6rem;gap:.35rem;font-size:12px;font-weight:600;font-family:var(--font);color:var(--t);border:1px solid var(--br);}
.tb-asis[hidden]{display:none !important;}
.tb-asis i{font-size:16px;}
.tb-asis.on{background:var(--nav-active-bg);border-color:var(--green-br);}
.tb-asis:focus-visible{outline:2px solid var(--g);outline-offset:1px;}

/* Con el lateral abierto en pantallas anchas, el contenido (y sus ventanas)
   se recorren para que el lateral no tape nada. */
@media (min-width:1024px){
  body.asl-abierto #main-wrap{margin-right:var(--asl-w);}
  body.asl-abierto .modal-overlay,body.asl-abierto .rem-velo{right:var(--asl-w);}
  body.asl-abierto .rem-drawer{right:var(--asl-w);}
  body.asl-abierto .toast{right:calc(var(--asl-w) + 1.5rem);}
}
@media (max-width:699px){
  .asl{top:0;width:100%;border-left:none;z-index:1000;}
  .asl-asa{display:none;}
  .tb-asis span{display:none;}
  .tb-asis{padding:0;width:32px;border:none;}
}

/* ─── Tarjeta de Wtfok en el Inicio (index.php) ─── */
.wtfok-inicio{display:flex;align-items:center;gap:1.1rem;margin-bottom:.75rem;flex-wrap:wrap;}
.wtfok-inicio-cab{display:flex;align-items:center;gap:.6rem;min-width:220px;flex:1 1 240px;}
.wtfok-inicio-ico{width:36px;height:36px;border-radius:var(--r);background:var(--green-bg);border:1px solid var(--green-br);display:flex;align-items:center;justify-content:center;font-size:19px;flex-shrink:0;}
.wtfok-inicio-tit{font-size:13px;font-weight:700;color:var(--t);}
.wtfok-inicio-sub{font-size:11px;color:var(--ts);margin-top:.1rem;line-height:1.4;}
.wtfok-inicio-uso{flex:2 1 280px;min-width:0;}
.wtfok-inicio-txt{display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap;font-size:11.5px;color:var(--t);font-weight:600;margin-bottom:.35rem;}
.wtfok-inicio-montos{color:var(--ts);font-weight:500;font-variant-numeric:tabular-nums;}
.wtfok-inicio .asw-med-barra{height:7px;}
.wtfok-inicio-aviso{font-size:11px;font-weight:600;margin-top:.35rem;line-height:1.45;color:var(--t);}
.wtfok-inicio-aviso.rojo{color:#C43C3B;}
[data-theme="dark"] .wtfok-inicio-aviso.rojo{color:#f87171;}
.wtfok-inicio-btn{display:inline-flex;align-items:center;gap:.4rem;padding:8px 14px;border-radius:var(--r);border:1px solid var(--br);background:var(--c2);color:var(--t);font-size:12px;font-weight:600;font-family:var(--font);cursor:pointer;white-space:nowrap;flex-shrink:0;}
.wtfok-inicio-btn:hover{border-color:var(--g);}
.wtfok-inicio-btn:focus-visible{outline:2px solid var(--g);outline-offset:1px;}
.wtfok-inicio-btn .wtfok-ico{font-size:15px;}
@media (max-width:700px){
  .wtfok-inicio{gap:.75rem;}
  .wtfok-inicio-btn{width:100%;justify-content:center;}
}
