/* IAN: la ilustración 2D institucional es el recurso principal; SVG solo es respaldo. */
.liam-tab{width:64px!important;height:74px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;place-items:end center!important;filter:drop-shadow(0 5px 9px #02061799);transform:translateX(-8.625rem)}
.liam-tab:hover,.liam-tab:focus-visible{background:transparent!important;filter:drop-shadow(0 0 9px #22d3ee)}
.ian-visibility-fallback{display:block!important;visibility:visible!important;opacity:1!important;z-index:10060!important}.ian-visibility-fallback .liam-tab{display:grid!important}
.ian-visibility-fallback .ian-avatar-2d,.ian-visibility-fallback .ian-pose-neutral{display:block!important;visibility:visible!important;opacity:1!important}
.ian-launcher-avatar{display:block!important;width:64px;height:74px;overflow:hidden;pointer-events:none}.liam-tab .ian-avatar-2d{display:block!important;visibility:visible!important;opacity:1!important}.ian-avatar-svg{display:block;width:100%;height:100%;overflow:visible;transform-origin:50% 100%}.ian-launcher-avatar .ian-avatar-svg{width:70px;height:91px;transform:translate(-3px,3px)}
.ian-avatar-2d{position:relative;display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.ian-pose{position:absolute;inset:0;display:none;width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 7px 10px #02061766);user-select:none}.ian-pose-neutral{display:block}.liam-avatar-wrap[data-state=listening] .ian-pose-neutral,.liam-avatar-wrap[data-state=thinking] .ian-pose-neutral,.liam-avatar-wrap[data-state=reading_tablet] .ian-pose-neutral,.liam-avatar-wrap[data-state=speaking] .ian-pose-neutral,.ian-tour-avatar[data-state=listening] .ian-pose-neutral,.ian-tour-avatar[data-state=thinking] .ian-pose-neutral,.ian-tour-avatar[data-state=reading_tablet] .ian-pose-neutral,.ian-tour-avatar[data-state=speaking] .ian-pose-neutral{display:none}.liam-avatar-wrap[data-state=listening] .ian-pose-reading,.liam-avatar-wrap[data-state=thinking] .ian-pose-reading,.liam-avatar-wrap[data-state=reading_tablet] .ian-pose-reading,.liam-avatar-wrap[data-state=speaking] .ian-pose-reading,.ian-tour-avatar[data-state=listening] .ian-pose-reading,.ian-tour-avatar[data-state=thinking] .ian-pose-reading,.ian-tour-avatar[data-state=reading_tablet] .ian-pose-reading,.ian-tour-avatar[data-state=speaking] .ian-pose-reading{display:block}.liam-avatar-wrap[data-state=pointing_left] .ian-pose,.ian-tour-avatar[data-state=pointing_left] .ian-pose,.liam-avatar-wrap[data-state=pointing_right] .ian-pose,.ian-tour-avatar[data-state=pointing_right] .ian-pose{display:none}.liam-avatar-wrap[data-state=pointing_left] .ian-pose-left,.ian-tour-avatar[data-state=pointing_left] .ian-pose-left{display:block}.liam-avatar-wrap[data-state=pointing_right] .ian-pose-right,.ian-tour-avatar[data-state=pointing_right] .ian-pose-right{display:block}.ian-launcher-avatar .ian-avatar-2d{width:64px;height:74px}.ian-launcher-avatar .ian-pose{display:none}.ian-launcher-avatar .ian-pose-neutral{display:block}
.ian-avatar-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center bottom;transform-origin:50% 100%;user-select:none}.ian-launcher-avatar .ian-avatar-image{width:76px;height:94px;max-width:none;transform:translate(-6px,1px);object-fit:cover;object-position:50% 15%}.liam-avatar-wrap>.ian-avatar-image{width:250px;height:302px;object-fit:contain;filter:drop-shadow(0 0 10px #22d3ee55)}
.liam-avatar-wrap{place-items:center!important}.liam-avatar-wrap>.ian-avatar-svg{width:250px;height:302px;filter:drop-shadow(0 0 10px #22d3ee55)}
.ian-face,.ian-ear,.ian-neck path,.ian-arm path,.ian-arm circle{fill:#70452f}.ian-hair{fill:#141116}.ian-hair-female{display:none}.ian-avatar-svg[data-gender=female] .ian-hair-male{display:none}.ian-avatar-svg[data-gender=female] .ian-hair-female{display:block}.ian-shirt{fill:#f8fafc}.ian-vest{fill:#123a63}.ian-shirt-center{fill:#e2e8f0}.ian-badge{fill:#16c6d8}.ian-body-layer text{fill:#06213b;font:bold 9px sans-serif;text-anchor:middle}.ian-eyes{fill:#111827;transform-origin:120px 91px}.ian-brow,.ian-nose{fill:none;stroke:#2e1d18;stroke-width:3;stroke-linecap:round}.ian-headset{fill:none;stroke:#16c6d8;stroke-width:5;stroke-linecap:round}.ian-headset-pad{fill:#123a63;stroke:#16c6d8;stroke-width:2}
.ian-mouth-closed{fill:none;stroke:#3b1720;stroke-width:3;stroke-linecap:round}.ian-mouth-open{fill:#3b0712;transform-box:fill-box;transform-origin:center;transform:scaleY(var(--liam-mouth,.05))}.ian-tablet-layer rect{fill:#071525;stroke:#67e8f9;stroke-width:3}.ian-tablet-layer path{fill:none;stroke:#22d3ee;stroke-width:2}.ian-arm{transform-box:view-box;transform-origin:120px 174px}.ian-avatar-svg[data-variant=afro_colombian_technological] .ian-vest{fill:#082f49;stroke:#22d3ee;stroke-width:3}.ian-avatar-svg[data-variant=afro_colombian_technological] .ian-tablet-layer{filter:drop-shadow(0 0 7px #22d3ee)}.ian-avatar-svg[data-variant=afro_colombian_educational] .ian-vest{fill:#155e75}.ian-avatar-svg[data-variant=afro_colombian_educational] .ian-tablet-layer{opacity:.78}
.ian-avatar-rig .ian-head-layer{transform-box:view-box;transform-origin:50% 37%}.ian-avatar-rig .ian-arm-left{transform-box:view-box;transform-origin:31% 42%}.ian-avatar-rig .ian-arm-right{transform-box:view-box;transform-origin:70% 43%}.ian-avatar-rig .ian-face-controls{pointer-events:none}.ian-avatar-rig .ian-eyelids{fill:#5c2f24;opacity:0;transform-origin:50% 20%}.ian-avatar-rig .ian-mouth-open{fill:#4a1018;opacity:0;transform-origin:center;transform-box:fill-box}.liam-avatar-wrap[data-state=idle] .ian-avatar-rig .ian-head-layer{animation:ian-head-idle 4.2s ease-in-out infinite}.liam-avatar-wrap[data-state=idle] .ian-avatar-rig .ian-eyelids{animation:ian-rig-blink 5.4s step-end infinite}.liam-avatar-wrap[data-state=listening] .ian-avatar-rig .ian-head-layer{animation:ian-head-listen 1.8s ease-in-out infinite}.liam-avatar-wrap[data-state=speaking] .ian-avatar-rig .ian-head-layer{animation:ian-head-speak 1.25s ease-in-out infinite}.liam-avatar-wrap[data-state=speaking] .ian-avatar-rig .ian-mouth-open{opacity:.88;transform:scaleY(max(.08,var(--liam-mouth,.3)))}.liam-avatar-wrap[data-state=greeting] .ian-avatar-rig .ian-arm-right{animation:ian-rig-wave .48s ease-in-out 3 alternate}.liam-avatar-wrap[data-state=thinking] .ian-avatar-rig .ian-head-layer{animation:ian-rig-think 1.35s ease-in-out infinite}.liam-avatar-wrap[data-state=pointing_left] .ian-avatar-rig .ian-arm-left,.liam-avatar-wrap[data-state=guiding] .ian-avatar-rig .ian-arm-left{animation:ian-rig-point-left .6s ease-out forwards}.liam-avatar-wrap[data-state=pointing_right] .ian-avatar-rig .ian-arm-right{animation:ian-rig-point-right .6s ease-out forwards}.liam-avatar-wrap[data-state=success] .ian-avatar-rig .ian-head-layer{animation:ian-rig-success .65s ease-out}
.liam-avatar-wrap[data-state=idle] .ian-body-layer{animation:ian-breathe 3.8s ease-in-out infinite;transform-origin:120px 274px}.liam-avatar-wrap[data-state=idle] .ian-eyes{animation:ian-blink 5s step-end infinite}.liam-avatar-wrap[data-state=speaking] .ian-mouth-open{animation:ian-mouth .18s steps(3,end) infinite}.liam-avatar-wrap[data-state=speaking] .ian-mouth-closed{opacity:0}.liam-avatar-wrap[data-state=greeting] .ian-arm-right{animation:ian-wave .55s ease-in-out infinite alternate}.liam-avatar-wrap[data-state=guiding] .ian-arm-right,.liam-avatar-wrap[data-state=pointing_left] .ian-arm-right{animation:ian-point-left .55s ease-out forwards}.liam-avatar-wrap[data-state=pointing_right] .ian-arm-left{animation:ian-point-right .55s ease-out forwards}.liam-avatar-wrap[data-state=pointing_up] .ian-arm-right{animation:ian-point-up .55s ease-out forwards}.liam-avatar-wrap[data-state=pointing_down] .ian-arm-right{animation:ian-point-down .55s ease-out forwards}.liam-avatar-wrap[data-state=thinking] .ian-head-layer{animation:ian-think 1.2s ease-in-out infinite}.liam-avatar-wrap[data-state=success] .ian-arm-left,.liam-avatar-wrap[data-state=success] .ian-arm-right{animation:ian-success .7s ease-out}
.liam-avatar-wrap[data-state=idle]>.ian-avatar-image{animation:ian-image-breathe 3.6s ease-in-out infinite}.liam-avatar-wrap[data-state=greeting]>.ian-avatar-image{animation:ian-image-greeting .65s ease-in-out 2}.liam-avatar-wrap[data-state=listening]>.ian-avatar-image{animation:ian-image-listening 1.1s ease-in-out infinite}.liam-avatar-wrap[data-state=thinking]>.ian-avatar-image{animation:ian-image-thinking 1.3s ease-in-out infinite}.liam-avatar-wrap[data-state=speaking]>.ian-avatar-image{animation:ian-image-speaking .46s ease-in-out infinite alternate}.liam-avatar-wrap[data-state=guiding]>.ian-avatar-image,.liam-avatar-wrap[data-state^=pointing]>.ian-avatar-image{animation:ian-image-guiding .85s ease-in-out infinite}.liam-avatar-wrap[data-state=success]>.ian-avatar-image{animation:ian-image-success .7s ease-out}.liam-avatar-wrap[data-state=warning]>.ian-avatar-image,.liam-avatar-wrap[data-state=error]>.ian-avatar-image{animation:ian-image-attention .55s ease-in-out 2}
.liam-stage:has(.liam-avatar-wrap[data-state=speaking]){background:transparent!important}.liam-stage:has(.liam-avatar-wrap[data-state=speaking]) .liam-hologram,.liam-stage:has(.liam-avatar-wrap[data-state=speaking]) #liam-tablet{opacity:0}
.ian-tour-avatar{position:fixed;z-index:10042;width:170px;height:220px;pointer-events:none;filter:drop-shadow(0 7px 12px #020617aa);transition:opacity .16s ease}.ian-tour-avatar .ian-avatar-svg{width:100%;height:100%}.ian-panel-avatar-away{opacity:.08}.ian-tour-avatar[data-state=walking_left] .ian-arm-left,.ian-tour-avatar[data-state=walking_right] .ian-arm-right,.ian-tour-avatar[data-state=walking_up] .ian-arm-left,.ian-tour-avatar[data-state=walking_down] .ian-arm-right{animation:ian-walk-arm .34s ease-in-out infinite alternate}.ian-tour-avatar[data-state=walking_left] .ian-body-layer,.ian-tour-avatar[data-state=walking_right] .ian-body-layer,.ian-tour-avatar[data-state=walking_up] .ian-body-layer,.ian-tour-avatar[data-state=walking_down] .ian-body-layer{animation:ian-walk-body .34s ease-in-out infinite alternate}.ian-tour-avatar[data-state=pointing_left] .ian-arm-right{animation:ian-point-left .55s ease-out forwards}.ian-tour-avatar[data-state=pointing_right] .ian-arm-left{animation:ian-point-right .55s ease-out forwards}.ian-tour-avatar[data-state=speaking] .ian-mouth-open{animation:ian-mouth .18s steps(3,end) infinite}.ian-tour-avatar[data-state=speaking] .ian-mouth-closed{opacity:0}@keyframes ian-walk-arm{to{transform:rotate(15deg)}}@keyframes ian-walk-body{to{transform:translateY(-5px) rotate(.8deg)}}
.ian-tour-avatar .ian-avatar-image{width:100%;height:100%;object-fit:contain}.ian-tour-avatar[data-state^=walking] .ian-avatar-image{animation:ian-image-walk .34s ease-in-out infinite alternate}.ian-tour-avatar[data-state=pointing_left] .ian-avatar-image{transform:rotate(-2deg)}.ian-tour-avatar[data-state=pointing_right] .ian-avatar-image{transform:rotate(2deg)}@keyframes ian-image-walk{to{transform:translateY(-5px) rotate(.8deg)}}
body:has(.liam-shell[data-open=true]) .pi-a11y-widget{right:calc(min(470px,100vw - 18px) + 2rem)}
.liam-avatar-wrap[data-state=speaking] .ian-mouth-open,.ian-tour-avatar[data-state=speaking] .ian-mouth-open{animation:none!important;transition:transform 70ms linear}.liam-avatar-wrap:not([data-state=speaking]) .ian-mouth-open,.ian-tour-avatar:not([data-state=speaking]) .ian-mouth-open{transform:scaleY(.05)!important}
@keyframes ian-breathe{50%{transform:scaleY(1.015) translateY(-2px)}}@keyframes ian-blink{0%,46%,50%,100%{transform:scaleY(1)}48%{transform:scaleY(.08)}}@keyframes ian-mouth{0%{transform:scaleY(.15)}50%{transform:scaleY(2.8)}100%{transform:scaleY(.7)}}@keyframes ian-wave{from{transform:rotate(0deg)}to{transform:rotate(-42deg) translate(20px,-18px)}}@keyframes ian-point-left{to{transform:rotate(72deg) translate(-34px,-10px) scaleY(.9)}}@keyframes ian-point-right{to{transform:rotate(-72deg) translate(34px,-10px) scaleY(.9)}}@keyframes ian-point-up{to{transform:rotate(-145deg) translate(4px,-24px)}}@keyframes ian-point-down{to{transform:rotate(25deg) translate(7px,13px)}}@keyframes ian-think{50%{transform:rotate(3deg) translateY(2px)}}@keyframes ian-success{50%{transform:rotate(20deg) translateY(-12px)}}
@keyframes ian-image-breathe{50%{transform:translateY(-3px) scale(1.018)}}@keyframes ian-image-greeting{35%{transform:translateY(-5px) rotate(-2deg)}70%{transform:translateY(-2px) rotate(2deg)}}@keyframes ian-image-listening{50%{transform:translateY(-2px) scale(1.025) rotate(-.7deg)}}@keyframes ian-image-thinking{50%{transform:translateY(2px) rotate(1.4deg)}}@keyframes ian-image-speaking{to{transform:translateY(-2px) scale(1.022) rotate(.6deg)}}@keyframes ian-image-guiding{50%{transform:translateX(-4px) rotate(-1deg)}}@keyframes ian-image-success{45%{transform:translateY(-8px) scale(1.035)}75%{transform:rotate(1.5deg)}}@keyframes ian-image-attention{50%{transform:translateX(-3px) rotate(-1deg)}}
@keyframes ian-head-idle{50%{transform:translateY(-3px) rotate(.35deg)}}@keyframes ian-head-listen{50%{transform:rotate(-1.5deg) translateY(2px)}}@keyframes ian-head-speak{25%{transform:rotate(-.55deg)}75%{transform:rotate(.55deg)}}@keyframes ian-rig-blink{0%,46%,50%,100%{opacity:0}47%,49%{opacity:.92}}@keyframes ian-rig-wave{to{transform:rotate(-5deg) translate(8px,-8px)}}@keyframes ian-rig-think{50%{transform:rotate(2deg) translateY(3px)}}@keyframes ian-rig-point-left{to{transform:rotate(7deg) translate(-20px,-5px)}}@keyframes ian-rig-point-right{to{transform:rotate(-7deg) translate(20px,-5px)}}@keyframes ian-rig-success{50%{transform:translateY(-7px) rotate(1deg)}}
.liam-avatar-wrap[data-state=pointing_left] .ian-avatar-rig .ian-arm-right,.liam-avatar-wrap[data-state=pointing_right] .ian-avatar-rig .ian-arm-left{animation:none}.liam-avatar-wrap[data-state=pointing_left] .ian-avatar-rig .ian-arm-left,.liam-avatar-wrap[data-state=guiding] .ian-avatar-rig .ian-arm-left{animation:ian-rig-point-left .6s ease-out forwards}.liam-avatar-wrap[data-state=pointing_right] .ian-avatar-rig .ian-arm-right{animation:ian-rig-point-right .6s ease-out forwards}.ian-tour-avatar[data-state=pointing_left] .ian-avatar-rig .ian-arm-right,.ian-tour-avatar[data-state=pointing_right] .ian-avatar-rig .ian-arm-left{animation:none}.ian-tour-avatar[data-state=pointing_left] .ian-avatar-rig .ian-arm-left{animation:ian-rig-point-left .6s ease-out forwards}.ian-tour-avatar[data-state=pointing_right] .ian-avatar-rig .ian-arm-right{animation:ian-rig-point-right .6s ease-out forwards}
@media(max-width:768px){.liam-avatar-wrap>.ian-avatar-svg,.liam-avatar-wrap>.ian-avatar-image{width:165px;height:178px}.ian-launcher-avatar{width:58px;height:68px}.liam-tab{width:58px!important;height:68px!important;transform:none}body:has(.liam-shell[data-open=true]) .pi-a11y-widget{display:none}}@media(prefers-reduced-motion:reduce){.ian-avatar-svg *,.ian-avatar-image{animation:none!important;transition:none!important}}
.liam-model-viewer{position:absolute;inset:0;width:100%;height:100%;z-index:3;background:transparent;opacity:0;transition:opacity .2s ease}.liam-avatar-wrap.liam-3d-ready .liam-model-viewer{opacity:1}.liam-avatar-wrap.liam-3d-ready>.ian-avatar-svg,.liam-avatar-wrap.liam-3d-ready>.ian-avatar-image{visibility:hidden}.liam-avatar-wrap:not(.liam-3d-ready) .liam-model-viewer{pointer-events:none}@media(max-width:768px){.liam-model-viewer{transform:scale(.86);transform-origin:center bottom}}
.liam-avatar-wrap.liam-3d-static{animation:none!important;transform:none!important;filter:drop-shadow(0 10px 12px #02061755) drop-shadow(0 0 9px #67e8f933)}.liam-stage:has(.liam-avatar-wrap.liam-3d-static){background:transparent!important}.liam-stage:has(.liam-avatar-wrap.liam-3d-static) .liam-hologram{display:none!important}
.liam-lector-poster{position:absolute;inset:0;width:100%;height:100%;z-index:3;object-fit:contain;background:transparent}.liam-lector-motion-proxy{width:100%;height:100%;object-fit:contain}.liam-avatar-wrap.liam-lector-ready[data-liam-lector-state=speaking]::after,.liam-avatar-wrap.liam-lector-ready[data-liam-lector-state=listening]::after{content:'';position:absolute;right:10px;bottom:10px;z-index:4;width:10px;height:10px;border-radius:50%;background:#67e8f9;box-shadow:0 0 0 5px #67e8f933;pointer-events:none}.liam-avatar-wrap.liam-lector-ready[data-liam-lector-state=speaking]::after{animation:liam-lector-voice-pulse 1.1s ease-in-out infinite}@keyframes liam-lector-voice-pulse{50%{transform:scale(1.35);box-shadow:0 0 0 9px #67e8f91f}}@media(prefers-reduced-motion:reduce){.liam-avatar-wrap.liam-lector-ready::after{animation:none!important}}

/* LIAM full-body v2: articulación natural de cabeza, brazos y piernas. */
.ian-avatar-rig .ian-head-layer{transform-origin:50% 25%}
.ian-avatar-rig .ian-arm-left{transform-origin:32% 28%}.ian-avatar-rig .ian-arm-right{transform-origin:68% 28%}
.ian-avatar-rig .ian-leg-left,.ian-avatar-rig .ian-leg-right{transform-box:view-box;transform-origin:50% 49%}
.liam-avatar-wrap[data-state=speaking] .ian-avatar-rig .ian-arm-left{animation:ian-v2-explain-left 1.8s ease-in-out infinite alternate}
.liam-avatar-wrap[data-state=speaking] .ian-avatar-rig .ian-arm-right{animation:ian-v2-explain-right 2.1s ease-in-out infinite alternate}
.liam-avatar-wrap[data-state=pointing_left] .ian-avatar-rig .ian-arm-left,.liam-avatar-wrap[data-state=guiding] .ian-avatar-rig .ian-arm-left,.ian-tour-avatar[data-state=pointing_left] .ian-avatar-rig .ian-arm-left{animation:ian-v2-point-left .6s ease-out forwards}
.liam-avatar-wrap[data-state=pointing_right] .ian-avatar-rig .ian-arm-right,.ian-tour-avatar[data-state=pointing_right] .ian-avatar-rig .ian-arm-right{animation:ian-v2-point-right .6s ease-out forwards}
.ian-tour-avatar[data-state^=walking] .ian-arm-left{animation:ian-v2-walk-arm .34s ease-in-out infinite alternate}.ian-tour-avatar[data-state^=walking] .ian-arm-right{animation:ian-v2-walk-arm-opposite .34s ease-in-out infinite alternate}
.ian-tour-avatar[data-state^=walking] .ian-leg-left{animation:ian-v2-walk-leg .34s ease-in-out infinite alternate}.ian-tour-avatar[data-state^=walking] .ian-leg-right{animation:ian-v2-walk-leg-opposite .34s ease-in-out infinite alternate}
@keyframes ian-v2-point-left{to{transform:rotate(68deg) translate(-12px,-8px)}}@keyframes ian-v2-point-right{to{transform:rotate(-68deg) translate(12px,-8px)}}
@keyframes ian-v2-explain-left{to{transform:rotate(7deg) translateY(-4px)}}@keyframes ian-v2-explain-right{to{transform:rotate(-9deg) translateY(-6px)}}
@keyframes ian-v2-walk-arm{from{transform:rotate(-9deg)}to{transform:rotate(11deg)}}@keyframes ian-v2-walk-arm-opposite{from{transform:rotate(11deg)}to{transform:rotate(-9deg)}}
@keyframes ian-v2-walk-leg{from{transform:rotate(-4deg)}to{transform:rotate(5deg)}}@keyframes ian-v2-walk-leg-opposite{from{transform:rotate(5deg)}to{transform:rotate(-4deg)}}
