/* GENERADO por scripts/traer-de-la-app.js a partir de pollo-escritorio/ui/estilo.css (lo que está haciendo). No se edita aquí: se edita en la app y se vuelve a generar. */
/* ── Lo que está haciendo ahora (como Kimi) ──────────────────────────
   Una línea: el icono se mueve según lo que hace y el verbo lleva un
   brillo que lo recorre. Con «Sin movimiento» (o el sistema pidiendo
   menos movimiento) se queda quieto. */
.haciendo { display: flex; align-items: center; gap: 10px; margin: 2px 0 12px; font-size: 14px; }
.haciendo-icono { --fondo-icono: color-mix(in srgb, var(--naranja) 12%, var(--fondo)); width: 28px; height: 28px; border-radius: 9px; display: grid; place-items: center; background: var(--fondo-icono); color: var(--naranja-osc); flex-shrink: 0; }
.haciendo-icono svg { width: 16px; height: 16px; }
.haciendo-verbo {
    font-weight: 600;
    background: linear-gradient(90deg, var(--suave) 0%, var(--suave) 38%, var(--naranja-osc) 50%, var(--suave) 62%, var(--suave) 100%);
    background-size: 220% 100%; -webkit-background-clip: text; background-clip: text; color: transparent;
    animation: recorre 1.8s linear infinite;
}
.haciendo-objeto { font-family: var(--mono); font-size: 13px; color: var(--texto); background: var(--superficie-2); border: 1px solid var(--borde); padding: 2px 8px; border-radius: 7px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 420px; }
@keyframes recorre { from { background-position: 110% 0; } to { background-position: -110% 0; } }
[data-pollo-anim="ninguna"] .haciendo *, [data-pollo-anim="ninguna"] .haciendo { animation: none !important; }
[data-pollo-anim="ninguna"] .haciendo-verbo { color: var(--suave); background: none; }
[data-pollo-anim="suave"] .iv * { animation-duration: 3.2s !important; }
@media (prefers-reduced-motion: reduce) {
    [data-pollo-anim="auto"] .haciendo *, [data-pollo-anim="auto"] .haciendo { animation: none !important; }
    [data-pollo-anim="auto"] .haciendo-verbo { color: var(--suave); background: none; }
}
[data-pollo-anim="ninguna"] .logoball .anillo { animation-duration: 4s; }

/* ── Los iconos vivos (iconos-vivos.js): se anima el DIBUJO, no la caja ──
   Como los de Kimi: las líneas se escriben, la lupa recorre, el mundo gira. */
.icono-vivo { display: inline-grid; place-items: center; }
.iv { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; overflow: visible; }
.iv .t { stroke-dasharray: 8; stroke-dashoffset: 8; }
.iv-escribir .t { animation: ivTrazo 2.4s ease-in-out infinite; }
.iv-escribir .t2 { animation-delay: .5s; }
.iv-escribir .t3 { animation-delay: 1s; }
@keyframes ivTrazo { 0% { stroke-dashoffset: 8; opacity: 1; } 22%, 78% { stroke-dashoffset: 0; opacity: 1; } 92%, 100% { stroke-dashoffset: 0; opacity: 0; } }
.iv-escribir .lapiz { animation: ivLapiz 2.4s ease-in-out infinite; }
@keyframes ivLapiz { 0% { transform: translate(-8px, -6px); } 20% { transform: translate(-2px, -6px); } 22% { transform: translate(-8px, -2px); } 42% { transform: translate(-2px, -2px); } 44% { transform: translate(-8px, 2px); } 60% { transform: translate(-4px, 2px); } 80%, 100% { transform: translate(0, 0); } }
.iv-buscar .r { opacity: .3; animation: ivEnciende 2.1s linear infinite; }
.iv-buscar .r2 { animation-delay: .7s; }
.iv-buscar .r3 { animation-delay: 1.4s; }
@keyframes ivEnciende { 0%, 100% { opacity: .3; } 15%, 30% { opacity: 1; } }
.iv-buscar .lupa { animation: ivLupa 2.1s ease-in-out infinite; }
/* La lente tapa lo que hay debajo: si no, las rayas se veían por encima de la lupa. */
.iv-buscar .lupa circle { fill: var(--fondo-icono, var(--superficie)); }
@keyframes ivLupa { 0%, 100% { transform: translate(-5px, -5px); } 33% { transform: translate(-6px, 0); } 66% { transform: translate(-5px, 5px); } }
.iv-buscar .brillo { animation: ivBrillo 1s linear infinite; transform-origin: 15px 11px; }
@keyframes ivBrillo { to { transform: rotate(360deg); } }
.iv-leer .franja { fill: color-mix(in srgb, currentColor 22%, transparent); stroke: none; animation: ivFranja 1.8s ease-in-out infinite; }
@keyframes ivFranja { 0% { transform: translateY(0); } 33% { transform: translateY(3.5px); } 66%, 100% { transform: translateY(7px); } }
.iv-leer .t { stroke-dashoffset: 0; animation: ivLeida 1.8s linear infinite; }
.iv-leer .t2 { animation-delay: .6s; }
.iv-leer .t3 { animation-delay: 1.2s; }
@keyframes ivLeida { 0%, 100% { opacity: .35; } 20%, 40% { opacity: 1; } }
.iv-ejecutar .c { opacity: 0; animation: ivTecla 1.6s steps(1) infinite; }
.iv-ejecutar .c2 { animation-delay: .25s; }
.iv-ejecutar .c3 { animation-delay: .5s; }
@keyframes ivTecla { 0% { opacity: 0; } 10%, 85% { opacity: 1; } 100% { opacity: 0; } }
.iv-ejecutar .cursor { fill: currentColor; stroke: none; animation: ivCursor .8s steps(1) infinite; }
@keyframes ivCursor { 50% { opacity: 0; } }
.iv-navegar .m { transform-box: fill-box; transform-origin: center; animation: ivGira 2s linear infinite; }
.iv-navegar .m2 { animation-delay: -1s; }
@keyframes ivGira { 0% { transform: scaleX(1); opacity: 1; } 50% { transform: scaleX(0); opacity: .4; } 100% { transform: scaleX(-1); opacity: 1; } }
.iv-conectar .izq { animation: ivIzq 1.6s ease-in-out infinite; }
.iv-conectar .der { animation: ivDer 1.6s ease-in-out infinite; }
@keyframes ivIzq { 0%, 100% { transform: translateX(-2.5px); } 45%, 60% { transform: translateX(1.2px); } }
@keyframes ivDer { 0%, 100% { transform: translateX(2.5px); } 45%, 60% { transform: translateX(-1.2px); } }
.iv-conectar .chispa { opacity: 0; animation: ivChispa 1.6s ease-out infinite; }
@keyframes ivChispa { 0%, 44% { opacity: 0; } 50% { opacity: 1; } 70%, 100% { opacity: 0; } }
.iv-reloj .minutero { transform-origin: 12px 12px; animation: ivVuelta 1.6s linear infinite; }
.iv-reloj .horaria { transform-origin: 12px 12px; animation: ivVuelta 9.6s linear infinite; }
.iv-reloj .eje { fill: currentColor; }
@keyframes ivVuelta { to { transform: rotate(360deg); } }
.iv-skill .hoja { fill: color-mix(in srgb, currentColor 14%, var(--superficie)); transform-origin: 12px 12px; animation: ivPagina 1.8s ease-in-out infinite; }
@keyframes ivPagina { 0%, 15% { transform: scaleX(1); } 55%, 100% { transform: scaleX(-1); } }
[data-pollo-anim="ninguna"] .iv * { animation: none !important; opacity: 1 !important; stroke-dashoffset: 0 !important; }
@media (prefers-reduced-motion: reduce) { [data-pollo-anim="auto"] .iv * { animation: none !important; opacity: 1 !important; stroke-dashoffset: 0 !important; } }
.haciendo-icono .icono-vivo .iv { width: 18px; height: 18px; }
.haciendos { display: grid; gap: 6px; margin: 2px 0 12px; }
.haciendos .haciendo { margin: 0; }

/* Las fuentes de lo que ha buscado o leído, bajo la respuesta */
.fuentes { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 8px; }
.fuente { display: inline-flex; align-items: center; gap: 6px; max-width: 260px; padding: 5px 10px; border-radius: 99px; border: 1px solid var(--borde); background: var(--superficie); color: var(--suave); font-size: 12.5px; cursor: pointer; }
.fuente:hover { border-color: var(--borde-fuerte); color: var(--texto); }
.fuente span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.fuente svg { width: 13px; height: 13px; flex-shrink: 0; }

/* Solo en la web: dónde va en su chat, y el final del texto que entra letra a letra. */
a.fuente { text-decoration: none; }
.pollo-content-wrapper > .fuentes { margin: 8px 0 2px; }
.haciendos.suelto { margin: 8px 0 8px 48px; }
.haciendos + .message-bubble:empty { display: none; }
.message-bubble.escribiendo > :last-child::after, .message-bubble.escribiendo:not(:has(> *))::after { content: ''; display: inline-block; width: .45em; height: 1em; margin-left: 2px; vertical-align: -2px; border-radius: 2px; background: var(--naranja); opacity: .6; animation: ivCursor .9s steps(1) infinite; }
@media (max-width: 768px) { .haciendo-objeto { max-width: 52vw; } .haciendos.suelto { margin-left: 8px; } }
