.tia-robot {
    position: relative;
    cursor: pointer;
    filter: drop-shadow(0 4px 16px rgba(34, 211, 238, 0.24));
}

.tia-robot__svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
    transform-origin: center bottom;
    animation: tiaRobotFloat 3.2s ease-in-out infinite;
}

.tia-robot__shadow {
    animation: tiaShadowPulse 3.2s ease-in-out infinite;
}

.tia-robot__eyes,
.tia-robot__mouth {
    opacity: 0;
    transition: opacity 0.28s ease;
}

.tia-robot__eyes--blink {
    opacity: 0;
}

.tia-robot[data-expression="neutral"] .tia-robot__eyes--neutral,
.tia-robot[data-expression="neutral"] .tia-robot__mouth--neutral,
.tia-robot[data-expression="happy"] .tia-robot__eyes--happy,
.tia-robot[data-expression="happy"] .tia-robot__mouth--happy,
.tia-robot[data-expression="alegre"] .tia-robot__eyes--alegre,
.tia-robot[data-expression="alegre"] .tia-robot__mouth--alegre,
.tia-robot[data-expression="divertido"] .tia-robot__eyes--divertido,
.tia-robot[data-expression="divertido"] .tia-robot__mouth--divertido,
.tia-robot[data-expression="preocupado"] .tia-robot__eyes--preocupado,
.tia-robot[data-expression="preocupado"] .tia-robot__mouth--preocupado,
.tia-robot[data-expression="triste"] .tia-robot__eyes--triste,
.tia-robot[data-expression="triste"] .tia-robot__mouth--triste,
.tia-robot[data-expression="bravo"] .tia-robot__eyes--bravo,
.tia-robot[data-expression="bravo"] .tia-robot__mouth--bravo,
.tia-robot[data-expression="sarcastico"] .tia-robot__eyes--sarcastico,
.tia-robot[data-expression="sarcastico"] .tia-robot__mouth--sarcastico,
.tia-robot[data-expression="thinking"] .tia-robot__eyes--thinking,
.tia-robot[data-expression="thinking"] .tia-robot__mouth--thinking,
.tia-robot[data-expression="surprised"] .tia-robot__eyes--surprised,
.tia-robot[data-expression="surprised"] .tia-robot__mouth--surprised,
.tia-robot[data-expression="processing"] .tia-robot__eyes--processing,
.tia-robot[data-expression="processing"] .tia-robot__mouth--processing {
    opacity: 1;
}

.tia-robot[data-expression="alegre"] .tia-robot__eye-arch,
.tia-robot[data-expression="alegre"] .tia-robot__mouth-arch {
    animation-duration: 1.6s, 1.4s;
}

.tia-robot[data-expression="divertido"] .tia-robot__eye-wink {
    animation: tiaWink 2.2s ease-in-out infinite;
}

.tia-robot[data-expression="triste"] .tia-robot__face {
    animation: tiaFaceTilt 6.5s ease-in-out infinite, tiaFaceDroop 4s ease-in-out infinite;
}

.tia-robot[data-expression="preocupado"] .tia-robot__face {
    animation: tiaFaceTilt 4s ease-in-out infinite, tiaFaceWorry 3s ease-in-out infinite;
}

.tia-robot[data-expression="bravo"] .tia-robot__head {
    animation: tiaHeadBob 3s ease-in-out infinite, tiaHeadShake 0.45s ease-in-out infinite;
}

.tia-robot[data-expression="bravo"] .tia-robot__screen-shine {
    animation: tiaScreenPulse 1.2s ease-in-out infinite;
}

.tia-robot[data-expression="sarcastico"] .tia-robot__mouth-smirk {
    animation: tiaSmirk 2.8s ease-in-out infinite;
}

.tia-robot[data-expression="sarcastico"] .tia-robot__eye-flat--raised {
    animation: tiaEyeFlatPulse 1.6s ease-in-out infinite;
}

.tia-robot__face {
    transform-origin: 28px 19px;
    animation: tiaFaceTilt 5.2s ease-in-out infinite;
}

.tia-robot__head {
    transform-origin: 28px 19px;
    animation: tiaHeadBob 3s ease-in-out infinite;
}

.tia-robot__screen {
    animation: tiaScreenBorder 3.8s ease-in-out infinite;
}

.tia-robot__eye-arch {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation: tiaArchBreathe 2.4s ease-in-out infinite, tiaEyeGlowPulse 2s ease-in-out infinite;
}

.tia-robot__eye-arch--right {
    animation-delay: 0.14s, 0.2s;
}

.tia-robot__eye-halo {
    transform-box: fill-box;
    transform-origin: center bottom;
    animation: tiaEyeHalo 2.4s ease-in-out infinite;
}

.tia-robot__eye-halo--right {
    animation-delay: 0.14s;
}

.tia-robot__eye-flat {
    animation: tiaEyeFlatPulse 1.8s ease-in-out infinite;
}

.tia-robot__mouth-arch {
    transform-box: fill-box;
    transform-origin: center top;
    animation: tiaMouthTalk 2.4s ease-in-out infinite, tiaEyeGlowPulse 2.6s ease-in-out infinite;
}

.tia-robot__mouth-line {
    transform-box: fill-box;
    transform-origin: center;
    animation: tiaMouthTalk 2.4s ease-in-out infinite;
}

.tia-robot__neck-glow {
    animation: tiaNeckGlow 2.2s ease-in-out infinite;
}

.tia-robot__base {
    transform-origin: 28px 46px;
    animation: tiaBaseSway 4.5s ease-in-out infinite;
}

.tia-robot__aura {
    transform-origin: 28px 19px;
    animation: tiaAuraPulse 2.8s ease-in-out infinite;
}

.tia-robot__screen-shine {
    animation: tiaScreenPulse 2.2s ease-in-out infinite;
}

.tia-robot__head-shell {
    animation: tiaShellGlow 3.6s ease-in-out infinite;
}

.tia-robot__neck-line {
    transform-origin: 28px 32px;
    animation: tiaNeckStretch 3s ease-in-out infinite;
}

.tia-robot__base-line {
    stroke-dasharray: 34;
    stroke-dashoffset: 34;
    animation: tiaBaseDraw 2.4s ease-in-out infinite;
}

.tia-robot__node--center {
    animation: tiaNodePulse 1.8s ease-in-out infinite;
}

.tia-robot__node--left {
    animation: tiaNodeSide 2.4s ease-in-out infinite;
}

.tia-robot__node--right {
    animation: tiaNodeSide 2.4s ease-in-out infinite 0.35s;
}

.tia-robot__ripple--1 {
    transform-origin: 28px 46px;
    animation: tiaRipple 2.4s ease-out infinite;
}

.tia-robot__ripple--2 {
    transform-origin: 28px 46px;
    animation: tiaRipple 2.4s ease-out infinite 1.2s;
}

.tia-robot__ripple--3 {
    transform-origin: 28px 46px;
    animation: tiaRipple 2.4s ease-out infinite 0.55s;
}

.tia-robot__scan--left {
    animation: tiaScanH 0.85s ease-in-out infinite;
}

.tia-robot__scan--right {
    animation: tiaScanH 0.85s ease-in-out infinite reverse;
}

.tia-robot__dot--1 { animation: tiaDot 0.9s ease-in-out infinite; }
.tia-robot__dot--2 { animation: tiaDot 0.9s ease-in-out infinite 0.12s; }
.tia-robot__dot--3 { animation: tiaDot 0.9s ease-in-out infinite 0.24s; }

.tia-robot.is-blinking .tia-robot__eyes:not(.tia-robot__eyes--blink) {
    opacity: 0;
}

.tia-robot.is-blinking .tia-robot__eyes--blink {
    opacity: 1;
}

.tia-robot:hover .tia-robot__svg,
.tia-robot:focus-within .tia-robot__svg {
    animation-duration: 2s;
}

.tia-robot:hover .tia-robot__head,
.tia-robot:focus-within .tia-robot__head {
    animation-duration: 1.8s;
}

.tia-robot:hover .tia-robot__face,
.tia-robot:focus-within .tia-robot__face {
    animation-duration: 3.2s;
}

.tia-robot:hover .tia-robot__eye-arch,
.tia-robot:focus-within .tia-robot__eye-arch {
    animation-duration: 1.4s, 1.1s;
}

.tia-robot:hover .tia-robot__node--center,
.tia-robot:focus-within .tia-robot__node--center {
    animation-duration: 1s;
}

.tia-robot:hover .tia-robot__screen-shine,
.tia-robot:focus-within .tia-robot__screen-shine {
    animation-duration: 1.2s;
}

@keyframes tiaRobotFloat {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-2px); }
}

@keyframes tiaShadowPulse {
    0%, 100% { opacity: 0.1; transform: scaleX(1); }
    50% { opacity: 0.2; transform: scaleX(0.88); }
}

@keyframes tiaHeadBob {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    35% { transform: translateY(-1.5px) rotate(-1.5deg); }
    70% { transform: translateY(0.5px) rotate(1deg); }
}

@keyframes tiaAuraPulse {
    0%, 100% { opacity: 0.35; transform: scale(1); }
    50% { opacity: 0.75; transform: scale(1.04); }
}

@keyframes tiaScreenPulse {
    0%, 100% { opacity: 0.55; }
    50% { opacity: 1; }
}

@keyframes tiaShellGlow {
    0%, 100% { stroke-opacity: 1; filter: none; }
    50% { stroke-opacity: 0.82; filter: drop-shadow(0 0 4px rgba(34, 211, 238, 0.45)); }
}

@keyframes tiaNeckStretch {
    0%, 100% { transform: scaleY(1); opacity: 0.92; }
    50% { transform: scaleY(1.08); opacity: 1; }
}

@keyframes tiaBaseDraw {
    0%, 100% { stroke-dashoffset: 34; opacity: 0.65; }
    50% { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes tiaNodePulse {
    0%, 100% { transform: scale(1); opacity: 0.9; }
    50% { transform: scale(1.35); opacity: 1; }
}

@keyframes tiaNodeSide {
    0%, 100% { opacity: 0.55; transform: scale(1); }
    50% { opacity: 1; transform: scale(1.2); }
}

@keyframes tiaRipple {
    0% { transform: scale(0.7); opacity: 0.55; }
    100% { transform: scale(2.2); opacity: 0; }
}

@keyframes tiaScanH {
    0%, 100% { transform: translateX(0); width: 3.5px; opacity: 0.55; }
    50% { transform: translateX(5px); width: 4px; opacity: 1; }
}

@keyframes tiaDot {
    0%, 100% { opacity: 0.35; transform: translateY(0); }
    50% { opacity: 1; transform: translateY(-1px); }
}

@keyframes tiaFaceTilt {
    0%, 100% { transform: rotate(0deg); }
    40% { transform: rotate(-1.2deg); }
    70% { transform: rotate(1deg); }
}

@keyframes tiaArchBreathe {
    0%, 100% { transform: scale(1, 1); }
    50% { transform: scale(1.08, 0.92); }
}

@keyframes tiaEyeGlowPulse {
    0%, 100% { opacity: 0.88; filter: url(#tiaEyeGlow); }
    50% { opacity: 1; filter: url(#tiaEyeGlow) drop-shadow(0 0 3px rgba(103, 232, 249, 0.9)); }
}

@keyframes tiaEyeHalo {
    0%, 100% { opacity: 0.25; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(1.12); }
}

@keyframes tiaEyeFlatPulse {
    0%, 100% { opacity: 0.75; stroke-width: 2; }
    50% { opacity: 1; stroke-width: 2.4; }
}

@keyframes tiaScreenBorder {
    0%, 100% { stroke: #334155; }
    50% { stroke: #475569; }
}

@keyframes tiaMouthTalk {
    0%, 100% { transform: scaleX(1); }
    50% { transform: scaleX(1.1); }
}

@keyframes tiaNeckGlow {
    0%, 100% { opacity: 0.15; stroke-width: 3; }
    50% { opacity: 0.42; stroke-width: 5; }
}

@keyframes tiaBaseSway {
    0%, 100% { transform: rotate(0deg) translateY(0); }
    50% { transform: rotate(-0.8deg) translateY(0.5px); }
}

@keyframes tiaWink {
    0%, 78%, 100% { opacity: 1; stroke-width: 2.2; }
    86% { opacity: 0.35; stroke-width: 1.2; }
}

@keyframes tiaFaceDroop {
    0%, 100% { transform: rotate(0deg) translateY(0); }
    50% { transform: rotate(1.2deg) translateY(0.6px); }
}

@keyframes tiaFaceWorry {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-0.5px); }
    75% { transform: translateX(0.5px); }
}

@keyframes tiaHeadShake {
    0%, 100% { transform: translateX(0); }
    25% { transform: translateX(-0.8px); }
    75% { transform: translateX(0.8px); }
}

@keyframes tiaSmirk {
    0%, 100% { transform: scale(1) rotate(0deg); }
    50% { transform: scale(1.06) rotate(-2deg); }
}

@media (prefers-reduced-motion: reduce) {
    .tia-robot__svg,
    .tia-robot__shadow,
    .tia-robot__head,
    .tia-robot__face,
    .tia-robot__screen,
    .tia-robot__eye-arch,
    .tia-robot__eye-halo,
    .tia-robot__eye-flat,
    .tia-robot__mouth-line,
    .tia-robot__mouth-arch,
    .tia-robot__neck-glow,
    .tia-robot__base,
    .tia-robot__aura,
    .tia-robot__screen-shine,
    .tia-robot__head-shell,
    .tia-robot__neck-line,
    .tia-robot__base-line,
    .tia-robot__node--center,
    .tia-robot__node--left,
    .tia-robot__node--right,
    .tia-robot__ripple--1,
    .tia-robot__ripple--2,
    .tia-robot__ripple--3,
    .tia-robot__scan--left,
    .tia-robot__scan--right,
    .tia-robot__dot--1,
    .tia-robot__dot--2,
    .tia-robot__dot--3 {
        animation: none;
    }

    .tia-robot__base-line {
        stroke-dashoffset: 0;
    }
}
