:root {
    --kx-official-cyan: #76ecff;
    --kx-official-blue: #2f86ff;
    --kx-official-deep: #073062;
    --kx-official-ink: #061528;
    --kx-official-light: #f7fdff;
    --kx-official-success: #72ef9f;
    --kx-official-warning: #ffd166;
    --kx-official-danger: #ff6f7d;
}

.kx-official-avatar {
    --kx-avatar-size: 320px;
    --kx-avatar-accent: var(--kx-official-cyan);
    --kx-avatar-secondary: var(--kx-official-blue);
    --kx-avatar-core: var(--kx-official-light);
    --kx-avatar-glow: rgba(118, 236, 255, .52);
    --kx-avatar-halo: rgba(74, 181, 255, .34);
    --kx-avatar-eye-x: 0px;
    --kx-avatar-eye-y: 0px;
    --kx-avatar-breath-duration: 6200ms;
    --kx-avatar-float-duration: 7600ms;
    --kx-avatar-pulse-duration: 5200ms;
    --kx-avatar-energy: .58;
    --kx-avatar-eye-open: 1;
    --kx-avatar-alert-shift: 0px;
    --kx-avatar-inner-flow: .46;
    --kx-avatar-quantum-tension: .50;
    --kx-avatar-turn-x: 0deg;
    --kx-avatar-turn-y: 0deg;
    --kx-avatar-drift-x: 0%;
    --kx-avatar-drift-y: 0%;
    --kx-avatar-inertia: .45;
    --kx-avatar-approach: 0;
    --kx-avatar-eye-scale-x: 1;
    --kx-avatar-eye-scale-y: 1;
    --kx-avatar-brow-tilt: 0deg;
    --kx-avatar-brow-lift: 0px;
    --kx-avatar-focus-x: 0px;
    --kx-avatar-focus-y: 0px;
    --kx-avatar-wave-opacity: 0;
    --kx-avatar-wave-amplitude: .2;
    --kx-avatar-wave-frequency: .2;
    --kx-avatar-wave-duration: 5200ms;
    position: relative;
    width: var(--kx-avatar-size);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    color: var(--kx-avatar-accent);
    isolation: isolate;
    contain: layout style paint;
}

.kx-official-avatar[data-size="icon"] { --kx-avatar-size: 56px; }
.kx-official-avatar[data-size="widget"] { --kx-avatar-size: 112px; }
.kx-official-avatar[data-size="card"] { --kx-avatar-size: 220px; }
.kx-official-avatar[data-size="assistant"] { --kx-avatar-size: min(44vw, 360px); }
.kx-official-avatar[data-size="fullscreen"] { --kx-avatar-size: min(72vmin, 620px); }

.kx-official-avatar[data-state="veille"] {
    --kx-avatar-accent: #9ac8df;
    --kx-avatar-secondary: #4d7fae;
    --kx-avatar-glow: rgba(154, 200, 223, .22);
    --kx-avatar-halo: rgba(154, 200, 223, .16);
    --kx-avatar-energy: .22;
    --kx-avatar-breath-duration: 8600ms;
    opacity: .64;
    filter: saturate(.82) brightness(.88);
}

.kx-official-avatar[data-state="ecoute"] {
    --kx-avatar-accent: #61f4ff;
    --kx-avatar-secondary: #35c6ff;
    --kx-avatar-glow: rgba(97, 244, 255, .66);
    --kx-avatar-halo: rgba(97, 244, 255, .42);
    --kx-avatar-energy: .76;
    --kx-avatar-breath-duration: 5200ms;
}

.kx-official-avatar[data-state="reflexion"] {
    --kx-avatar-accent: #82a7ff;
    --kx-avatar-secondary: #3d7dff;
    --kx-avatar-glow: rgba(130, 167, 255, .58);
    --kx-avatar-halo: rgba(61, 125, 255, .36);
    --kx-avatar-energy: .68;
    --kx-avatar-pulse-duration: 3600ms;
}

.kx-official-avatar[data-state="reponse"] {
    --kx-avatar-accent: #7df4ff;
    --kx-avatar-secondary: #42a5ff;
    --kx-avatar-glow: rgba(125, 244, 255, .58);
    --kx-avatar-halo: rgba(66, 165, 255, .36);
    --kx-avatar-energy: .64;
}

.kx-official-avatar[data-state="alerte"] {
    --kx-avatar-accent: var(--kx-official-warning);
    --kx-avatar-secondary: var(--kx-official-danger);
    --kx-avatar-glow: rgba(255, 209, 102, .62);
    --kx-avatar-halo: rgba(255, 111, 125, .30);
    --kx-avatar-energy: .88;
    --kx-avatar-breath-duration: 3600ms;
    --kx-avatar-pulse-duration: 2400ms;
}

.kx-official-avatar[data-state="succes"] {
    --kx-avatar-accent: var(--kx-official-success);
    --kx-avatar-secondary: #60d9ff;
    --kx-avatar-glow: rgba(114, 239, 159, .62);
    --kx-avatar-halo: rgba(96, 217, 255, .34);
    --kx-avatar-energy: .82;
}

.kx-official-avatar__halo,
.kx-official-avatar__field,
.kx-official-avatar__ring,
.kx-official-avatar__orbit,
.kx-official-avatar__pedestal,
.kx-official-avatar__particle {
    position: absolute;
    pointer-events: none;
}

.kx-official-avatar__halo {
    inset: 4%;
    border-radius: 46% 54% 51% 49% / 48% 45% 55% 52%;
    background:
        radial-gradient(ellipse at 42% 38%, rgba(255,255,255,.16), transparent 18%),
        radial-gradient(ellipse at 58% 56%, var(--kx-avatar-glow), transparent 46%),
        conic-gradient(from 18deg, transparent, var(--kx-avatar-halo), transparent 24%, rgba(255,255,255,.16), transparent 43%, color-mix(in srgb, var(--kx-avatar-secondary) 34%, transparent), transparent 72%, var(--kx-avatar-halo), transparent);
    opacity: calc(.42 + var(--kx-avatar-energy) * .32);
    filter: blur(calc(var(--kx-avatar-size) * .032));
    transform: translateZ(0);
    animation: kx-official-halo var(--kx-avatar-pulse-duration) ease-in-out infinite;
}

.kx-official-avatar__field {
    inset: 16%;
    border-radius: 50%;
    background:
        radial-gradient(circle at 42% 36%, rgba(255,255,255,.22), transparent 18%),
        radial-gradient(circle at 62% 68%, var(--kx-avatar-halo), transparent 44%);
    opacity: .54;
    filter: blur(calc(var(--kx-avatar-size) * .038));
    animation: kx-official-field 9200ms ease-in-out infinite;
}

.kx-official-avatar__ring {
    left: 50%;
    bottom: 9.8%;
    width: 76%;
    height: 14%;
    border: max(1px, calc(var(--kx-avatar-size) * .005)) solid color-mix(in srgb, var(--kx-avatar-accent) 68%, transparent);
    border-radius: 50%;
    opacity: calc(.24 + var(--kx-avatar-energy) * .34);
    filter:
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .032) var(--kx-avatar-glow))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .070) color-mix(in srgb, var(--kx-avatar-secondary) 38%, transparent));
    transform: translateX(-50%);
    animation: kx-official-ring var(--kx-avatar-pulse-duration) ease-in-out infinite;
}

.kx-official-avatar__orbit {
    left: 50%;
    top: 50%;
    z-index: 1;
    width: 90%;
    height: 78%;
    border: max(1px, calc(var(--kx-avatar-size) * .007)) solid color-mix(in srgb, var(--kx-avatar-accent) 72%, transparent);
    border-left-color: transparent;
    border-bottom-color: rgba(255,255,255,.18);
    border-radius: 50%;
    opacity: calc(.30 + var(--kx-avatar-energy) * .36);
    filter:
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .025) var(--kx-avatar-glow))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .045) color-mix(in srgb, var(--kx-avatar-secondary) 48%, transparent));
    transform: translate(-50%, -50%) rotate(-24deg);
    animation: kx-official-orbit var(--kx-avatar-pulse-duration) ease-in-out infinite;
}

.kx-official-avatar__orbit--two {
    width: 78%;
    height: 94%;
    border-top-color: transparent;
    border-right-color: rgba(255,255,255,.24);
    opacity: calc(.22 + var(--kx-avatar-energy) * .30);
    transform: translate(-50%, -50%) rotate(43deg);
    animation-duration: calc(var(--kx-avatar-pulse-duration) * 1.34);
    animation-delay: -1800ms;
}

.kx-official-avatar__orbit--three {
    width: 96%;
    height: 54%;
    border-top-color: color-mix(in srgb, var(--kx-avatar-accent) 78%, transparent);
    border-right-color: transparent;
    opacity: calc(.16 + var(--kx-avatar-energy) * .26);
    transform: translate(-50%, -48%) rotate(11deg);
    animation-duration: calc(var(--kx-avatar-pulse-duration) * 1.72);
    animation-delay: -3100ms;
}

.kx-official-avatar__pedestal {
    left: 50%;
    bottom: 6.5%;
    z-index: 0;
    width: 54%;
    height: 20%;
    border-radius: 50%;
    background:
        radial-gradient(ellipse at 50% 38%, rgba(255,255,255,.34), transparent 7%),
        radial-gradient(ellipse at 50% 46%, color-mix(in srgb, var(--kx-avatar-accent) 84%, transparent), transparent 28%),
        radial-gradient(ellipse at 50% 58%, var(--kx-avatar-glow), transparent 62%);
    opacity: calc(.26 + var(--kx-avatar-energy) * .30);
    filter: blur(calc(var(--kx-avatar-size) * .018)) saturate(1.24);
    transform: translateX(-50%);
    animation: kx-official-pedestal 4600ms ease-in-out infinite;
}

.kx-official-avatar__particle {
    width: max(2px, calc(var(--kx-avatar-size) * .012));
    height: max(2px, calc(var(--kx-avatar-size) * .012));
    border-radius: 50%;
    background: radial-gradient(circle, #fff 0 18%, var(--kx-avatar-accent) 48%, transparent 78%);
    box-shadow: 0 0 calc(var(--kx-avatar-size) * .042) var(--kx-avatar-glow);
    opacity: calc(.14 + var(--kx-avatar-energy) * .42);
    transform: translateZ(0);
    animation: kx-official-particle calc(9200ms - var(--kx-avatar-inner-flow) * 3400ms) ease-in-out infinite;
}

.kx-official-avatar__particle--one { left: 20%; top: 32%; animation-delay: -900ms; }
.kx-official-avatar__particle--two { left: 76%; top: 30%; animation-delay: -2800ms; }
.kx-official-avatar__particle--three { left: 68%; top: 74%; animation-delay: -4500ms; }
.kx-official-avatar__particle--four { left: 30%; top: 77%; animation-delay: -6100ms; }
.kx-official-avatar__particle--five { left: 50%; top: 18%; animation-delay: -1900ms; }

.kx-official-avatar__body {
    position: relative;
    z-index: 2;
    width: 72%;
    overflow: visible;
    transform:
        translate3d(var(--kx-avatar-drift-x), var(--kx-avatar-drift-y), 0)
        rotateX(var(--kx-avatar-turn-x))
        rotateY(var(--kx-avatar-turn-y))
        scale(calc(1 + var(--kx-avatar-approach)));
    transform-style: preserve-3d;
    animation:
        kx-official-float var(--kx-avatar-float-duration) ease-in-out infinite,
        kx-official-breathe var(--kx-avatar-breath-duration) ease-in-out infinite;
    transition: transform calc(420ms + var(--kx-avatar-inertia) * 520ms) cubic-bezier(.19, 1, .22, 1);
    filter:
        drop-shadow(0 calc(var(--kx-avatar-size) * .07) calc(var(--kx-avatar-size) * .075) rgba(0,0,0,.36))
        drop-shadow(0 calc(var(--kx-avatar-size) * .024) calc(var(--kx-avatar-size) * .035) rgba(0,29,67,.32))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .075) var(--kx-avatar-glow));
}

.kx-official-avatar__energy-shell,
.kx-official-avatar__subsurface,
.kx-official-avatar__specular-veil,
.kx-official-avatar__inner-current,
.kx-official-avatar__inner-current-soft,
.kx-official-avatar__electric-thread,
.kx-official-avatar__micro-light,
.kx-official-avatar__edge-haze,
.kx-official-avatar__eye-depth,
.kx-official-avatar__eye-reflection {
    pointer-events: none;
}

.kx-official-avatar__presence-sphere {
    fill: url(#kxOfficialSphereVolume);
    stroke: url(#kxOfficialSphereRim);
    stroke-width: 1.8;
}

.kx-official-avatar__energy-shell {
    fill: url(#kxOfficialEnergyShell);
    opacity: calc(.24 + var(--kx-avatar-energy) * .22);
    mix-blend-mode: screen;
    animation: kx-official-energy-shell 7600ms ease-in-out infinite;
}

.kx-official-avatar__sphere-depth {
    fill: url(#kxOfficialSphereDepth);
    opacity: .74;
    mix-blend-mode: multiply;
}

.kx-official-avatar__sphere-light {
    fill: url(#kxOfficialSphereLight);
    opacity: .82;
    mix-blend-mode: screen;
}

.kx-official-avatar__subsurface {
    fill: url(#kxOfficialSubsurface);
    opacity: calc(.38 + var(--kx-avatar-energy) * .18);
    mix-blend-mode: screen;
    animation: kx-official-subsurface calc(var(--kx-avatar-pulse-duration) * 1.28) ease-in-out infinite;
}

.kx-official-avatar__specular-veil {
    fill: url(#kxOfficialSpecularVeil);
    opacity: calc(.28 + var(--kx-avatar-energy) * .16);
    mix-blend-mode: screen;
    filter: url(#kxOfficialSoftGlow);
    animation: kx-official-specular 8800ms ease-in-out infinite;
}

.kx-official-avatar__inner-current,
.kx-official-avatar__inner-current-soft {
    fill: none;
    stroke-linecap: round;
    mix-blend-mode: screen;
}

.kx-official-avatar__inner-current {
    stroke: url(#kxOfficialInnerCurrent);
    stroke-width: 7;
    opacity: calc(.14 + var(--kx-avatar-energy) * .20 + var(--kx-avatar-inner-flow) * .14);
    filter: url(#kxOfficialSoftGlow);
    stroke-dasharray: 92 180;
    stroke-dashoffset: 0;
    animation: kx-official-current calc(14200ms - var(--kx-avatar-inner-flow) * 5200ms) ease-in-out infinite;
}

.kx-official-avatar__inner-current-soft {
    stroke: url(#kxOfficialInnerCurrentSoft);
    stroke-width: 15;
    opacity: calc(.06 + var(--kx-avatar-energy) * .10 + var(--kx-avatar-inner-flow) * .10);
    filter: url(#kxOfficialSoftGlow);
    stroke-dasharray: 160 240;
    stroke-dashoffset: 40;
    animation: kx-official-current-soft calc(18800ms - var(--kx-avatar-inner-flow) * 5800ms) ease-in-out infinite;
}

.kx-official-avatar__electric-thread {
    fill: none;
    stroke: url(#kxOfficialElectricThread);
    stroke-width: 2.2;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 16 96;
    stroke-dashoffset: 0;
    opacity: calc(.03 + var(--kx-avatar-energy) * .10 + var(--kx-avatar-quantum-tension) * .08);
    filter: url(#kxOfficialPinGlow);
    mix-blend-mode: screen;
    animation: kx-official-electric calc(6200ms - var(--kx-avatar-quantum-tension) * 1800ms) ease-in-out infinite;
}

.kx-official-avatar__micro-light {
    fill: rgba(255,255,255,.78);
    opacity: calc(.16 + var(--kx-avatar-energy) * .18);
    filter: url(#kxOfficialPinGlow);
    animation: kx-official-micro-light 6200ms ease-in-out infinite;
}

.kx-official-avatar__edge-haze {
    fill: none;
    stroke: url(#kxOfficialEdgeHaze);
    stroke-width: 10;
    opacity: calc(.18 + var(--kx-avatar-energy) * .14 + var(--kx-avatar-quantum-tension) * .10);
    mix-blend-mode: screen;
    filter: url(#kxOfficialSoftGlow);
    animation: kx-official-edge-haze calc(9800ms - var(--kx-avatar-quantum-tension) * 2800ms) ease-in-out infinite;
}

.kx-official-avatar__core-glow {
    fill: url(#kxOfficialCoreGlow);
    opacity: calc(.36 + var(--kx-avatar-energy) * .32);
    animation: kx-official-core var(--kx-avatar-pulse-duration) ease-in-out infinite;
}

.kx-official-avatar__rim-light {
    fill: none;
    stroke: url(#kxOfficialRimLight);
    stroke-width: 3;
    stroke-linecap: round;
    opacity: .68;
}

.kx-official-avatar__eye {
    transform-box: fill-box;
    transform-origin: center;
    transform:
        translate(
            calc(var(--kx-avatar-eye-x) + var(--kx-avatar-focus-x)),
            calc(var(--kx-avatar-eye-y) + var(--kx-avatar-focus-y))
        )
        scale(var(--kx-avatar-eye-scale-x), calc(var(--kx-avatar-eye-scale-y) * var(--kx-avatar-eye-open)));
    transition: transform calc(150ms + var(--kx-avatar-inertia) * 140ms) cubic-bezier(.19, 1, .22, 1);
}

.kx-official-avatar__eye-white {
    fill: url(#kxOfficialEyeWell);
    stroke: rgba(222, 250, 255, .92);
    stroke-width: 4.4;
    filter:
        drop-shadow(0 0 5px rgba(210, 252, 255, .42))
        drop-shadow(0 0 14px rgba(64, 188, 255, .34));
}

.kx-official-avatar__iris {
    fill: url(#kxOfficialEyeInner);
    filter:
        drop-shadow(0 0 5px rgba(102, 224, 255, .36))
        drop-shadow(0 0 12px rgba(47, 134, 255, .28));
}

.kx-official-avatar__pupil {
    fill: rgba(0, 7, 18, .92);
}

.kx-official-avatar__catchlight {
    fill: rgba(220, 253, 255, .92);
    filter: drop-shadow(0 0 6px rgba(118, 236, 255, .78));
}

.kx-official-avatar__eye-depth {
    fill: rgba(0, 5, 16, .30);
    mix-blend-mode: multiply;
}

.kx-official-avatar__eye-reflection {
    fill: rgba(255,255,255,.38);
    mix-blend-mode: screen;
    opacity: .82;
    animation: kx-official-eye-reflection 7800ms ease-in-out infinite;
}

.kx-official-avatar__brow {
    fill: none;
    stroke: color-mix(in srgb, var(--kx-avatar-accent) 48%, #ffffff);
    stroke-width: 2.6;
    stroke-linecap: round;
    opacity: .30;
    filter: drop-shadow(0 0 4px color-mix(in srgb, var(--kx-avatar-accent) 18%, transparent));
    transform: translateY(var(--kx-avatar-brow-lift)) rotate(var(--kx-avatar-brow-tilt));
    transform-box: fill-box;
    transform-origin: center;
    transition: transform calc(240ms + var(--kx-avatar-inertia) * 220ms) ease, opacity 300ms ease;
}

.kx-official-avatar__vocal-wave,
.kx-official-avatar__vocal-wave-glow {
    fill: none;
    stroke: url(#kxOfficialVocalEnergy);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 12 10 5 14;
    stroke-dashoffset: 0;
    opacity: var(--kx-avatar-wave-opacity);
    filter:
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .012) rgba(255,255,255,.72))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .032) rgba(118,236,255,.72))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .060) rgba(47,134,255,.42));
    mix-blend-mode: screen;
    transform-origin: center;
    transition: opacity 260ms ease, stroke-width 260ms ease, filter 260ms ease;
    animation: kx-official-vocal-wave var(--kx-avatar-wave-duration) ease-in-out infinite;
}

.kx-official-avatar__vocal-wave {
    stroke-width: calc(2px + var(--kx-avatar-wave-amplitude) * 2.7px);
}

.kx-official-avatar__vocal-wave-glow {
    stroke-width: calc(8px + var(--kx-avatar-wave-amplitude) * 9px);
    opacity: calc(var(--kx-avatar-wave-opacity) * .56);
    filter:
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .024) rgba(150, 244, 255, .72))
        drop-shadow(0 0 calc(var(--kx-avatar-size) * .080) rgba(47, 134, 255, .46));
    stroke-dasharray: 16 14 8 18;
    animation: kx-official-vocal-wave-glow var(--kx-avatar-wave-duration) ease-in-out infinite;
}

.kx-official-avatar[data-state="ecoute"] .kx-official-avatar__brow {
    transform: translateY(calc(var(--kx-avatar-brow-lift) - 2px)) rotate(var(--kx-avatar-brow-tilt));
    opacity: .42;
}

.kx-official-avatar[data-state="reflexion"] .kx-official-avatar__eye {
    --kx-avatar-eye-y: -1px;
}

.kx-official-avatar[data-state="alerte"] .kx-official-avatar__brow-left {
    transform: translate(-2px, calc(var(--kx-avatar-brow-lift) - 5px)) rotate(calc(var(--kx-avatar-brow-tilt) - 8deg));
    opacity: .56;
}

.kx-official-avatar[data-state="alerte"] .kx-official-avatar__brow-right {
    transform: translate(2px, calc(var(--kx-avatar-brow-lift) - 5px)) rotate(calc(var(--kx-avatar-brow-tilt) + 8deg));
    opacity: .56;
}

.kx-official-avatar[data-state="succes"] .kx-official-avatar__body {
    animation:
        kx-official-float 6200ms ease-in-out infinite,
        kx-official-breathe 4800ms ease-in-out infinite,
        kx-official-success 5200ms ease-in-out infinite;
}

.kx-official-avatar[data-state="alerte"] .kx-official-avatar__body {
    animation:
        kx-official-float 5200ms ease-in-out infinite,
        kx-official-breathe 3600ms ease-in-out infinite,
        kx-official-alert 2200ms ease-in-out infinite;
}

.kx-official-avatar[data-behavior="concentration"] .kx-official-avatar__orbit,
.kx-official-avatar[data-behavior="stabilisation"] .kx-official-avatar__orbit {
    animation-duration: calc(var(--kx-avatar-pulse-duration) * 1.34);
}

.kx-official-avatar[data-behavior="celebration"] .kx-official-avatar__body,
.kx-official-avatar[data-displacement="impulsion"] .kx-official-avatar__body {
    animation:
        kx-official-float 5200ms ease-in-out infinite,
        kx-official-breathe var(--kx-avatar-breath-duration) ease-in-out infinite,
        kx-official-success 4200ms ease-in-out infinite;
}

.kx-official-avatar[data-displacement="rotation"] .kx-official-avatar__body {
    animation:
        kx-official-float var(--kx-avatar-float-duration) ease-in-out infinite,
        kx-official-breathe var(--kx-avatar-breath-duration) ease-in-out infinite,
        kx-official-signature-turn 12800ms cubic-bezier(.45, 0, .25, 1) infinite;
}

.kx-official-avatar[data-displacement="vibration"] .kx-official-avatar__body {
    animation:
        kx-official-float 4200ms ease-in-out infinite,
        kx-official-breathe var(--kx-avatar-breath-duration) ease-in-out infinite,
        kx-official-vibration 1600ms ease-in-out infinite;
}

.kx-official-avatar[data-blink="true"] {
    --kx-avatar-eye-open: .08;
}

.kx-official-avatar[data-motion="off"],
.kx-official-avatar[data-motion="off"] * {
    animation: none !important;
    transition-duration: 1ms !important;
}

@keyframes kx-official-float {
    0%, 100% { translate: 0 0; }
    42% { translate: 0 -2.6%; }
    68% { translate: .8% -1.2%; }
}

@keyframes kx-official-breathe {
    0%, 100% { scale: 1; }
    52% { scale: 1.018 .986; }
}

@keyframes kx-official-halo {
    0%, 100% { opacity: calc(.38 + var(--kx-avatar-energy) * .26); scale: .985; rotate: -2deg; border-radius: 46% 54% 51% 49% / 48% 45% 55% 52%; }
    52% { opacity: calc(.54 + var(--kx-avatar-energy) * .28); scale: 1.032; rotate: 7deg; border-radius: 53% 47% 45% 55% / 44% 52% 48% 56%; }
}

@keyframes kx-official-field {
    0%, 100% { transform: translate3d(-1%, 1%, 0) scale(.98); opacity: .34; }
    50% { transform: translate3d(1.5%, -1%, 0) scale(1.06); opacity: .58; }
}

@keyframes kx-official-ring {
    0%, 100% { transform: translateX(-50%) scaleX(.92); opacity: calc(.18 + var(--kx-avatar-energy) * .24); }
    48% { transform: translateX(-50%) scaleX(1.10); opacity: calc(.32 + var(--kx-avatar-energy) * .34); }
}

@keyframes kx-official-orbit {
    0%, 100% { rotate: calc(var(--kx-avatar-quantum-tension) * -2deg); scale: .985; opacity: calc(.20 + var(--kx-avatar-energy) * .26); }
    50% { rotate: calc(5deg + var(--kx-avatar-quantum-tension) * 5deg); scale: calc(1.006 + var(--kx-avatar-energy) * .018); opacity: calc(.30 + var(--kx-avatar-energy) * .30); }
}

@keyframes kx-official-pedestal {
    0%, 100% { opacity: calc(.18 + var(--kx-avatar-energy) * .20); scale: .90 .82; }
    50% { opacity: calc(.34 + var(--kx-avatar-energy) * .30); scale: 1.10 .96; }
}

@keyframes kx-official-particle {
    0%, 100% { transform: translate3d(0, 0, 0) scale(.76); opacity: .18; }
    38% { transform: translate3d(calc(10% + var(--kx-avatar-quantum-tension) * 8%), calc(-24% - var(--kx-avatar-inner-flow) * 20%), 0) scale(1); opacity: calc(.46 + var(--kx-avatar-energy) * .22); }
    72% { transform: translate3d(-12%, 18%, 0) scale(.88); opacity: .42; }
}

@keyframes kx-official-core {
    0%, 100% { opacity: calc(.30 + var(--kx-avatar-energy) * .22); scale: .985; }
    50% { opacity: calc(.48 + var(--kx-avatar-energy) * .34); scale: 1.025; }
}

@keyframes kx-official-energy-shell {
    0%, 100% { opacity: calc(.20 + var(--kx-avatar-energy) * .18); transform: translateX(0) scale(.995); }
    50% { opacity: calc(.30 + var(--kx-avatar-energy) * .24); transform: translateX(1px) scale(1.01); }
}

@keyframes kx-official-subsurface {
    0%, 100% { opacity: calc(.28 + var(--kx-avatar-energy) * .14); transform: scale(.986) translateY(0); }
    45% { opacity: calc(.42 + var(--kx-avatar-energy) * .20); transform: scale(1.012) translateY(-1px); }
    72% { opacity: calc(.34 + var(--kx-avatar-energy) * .16); transform: scale(.996) translateY(1px); }
}

@keyframes kx-official-specular {
    0%, 100% { opacity: calc(.18 + var(--kx-avatar-energy) * .10); transform: translate(-2px, 2px) scale(.98); }
    48% { opacity: calc(.34 + var(--kx-avatar-energy) * .18); transform: translate(2px, -1px) scale(1.018); }
}

@keyframes kx-official-current {
    0%, 100% { stroke-dashoffset: 0; opacity: calc(.18 + var(--kx-avatar-energy) * .18); }
    50% { stroke-dashoffset: calc(-54 - var(--kx-avatar-inner-flow) * 80); opacity: calc(.22 + var(--kx-avatar-energy) * .20 + var(--kx-avatar-inner-flow) * .12); }
}

@keyframes kx-official-current-soft {
    0%, 100% { stroke-dashoffset: 40; opacity: calc(.08 + var(--kx-avatar-energy) * .10); }
    50% { stroke-dashoffset: -120; opacity: calc(.16 + var(--kx-avatar-energy) * .14); }
}

@keyframes kx-official-electric {
    0%, 100% { stroke-dashoffset: 0; opacity: calc(.02 + var(--kx-avatar-quantum-tension) * .05); }
    38% { stroke-dashoffset: -42; opacity: calc(.08 + var(--kx-avatar-energy) * .08 + var(--kx-avatar-quantum-tension) * .12); }
    44% { stroke-dashoffset: -48; opacity: calc(.03 + var(--kx-avatar-quantum-tension) * .04); }
}

@keyframes kx-official-micro-light {
    0%, 100% { opacity: calc(.10 + var(--kx-avatar-energy) * .12); transform: translateY(0); }
    46% { opacity: calc(.22 + var(--kx-avatar-energy) * .22); transform: translateY(-2px); }
}

@keyframes kx-official-edge-haze {
    0%, 100% { opacity: calc(.22 + var(--kx-avatar-energy) * .12); stroke-width: 8; }
    50% { opacity: calc(.36 + var(--kx-avatar-energy) * .18); stroke-width: 12; }
}

@keyframes kx-official-eye-reflection {
    0%, 100% { opacity: .42; transform: translateY(0); }
    44% { opacity: .70; transform: translateY(-1px); }
}

@keyframes kx-official-vocal-wave {
    0%, 100% {
        stroke-dashoffset: 0;
        opacity: calc(var(--kx-avatar-wave-opacity) * .72);
        transform: scaleY(calc(.80 + var(--kx-avatar-wave-amplitude) * .18));
    }
    35% {
        stroke-dashoffset: calc(-28px - var(--kx-avatar-wave-frequency) * 34px);
        opacity: var(--kx-avatar-wave-opacity);
        transform: scaleY(calc(.92 + var(--kx-avatar-wave-amplitude) * .42));
    }
    68% {
        stroke-dashoffset: calc(-52px - var(--kx-avatar-wave-frequency) * 48px);
        opacity: calc(var(--kx-avatar-wave-opacity) * .86);
        transform: scaleY(calc(.74 + var(--kx-avatar-wave-amplitude) * .30));
    }
}

@keyframes kx-official-vocal-wave-glow {
    0%, 100% {
        stroke-dashoffset: 0;
        opacity: calc(var(--kx-avatar-wave-opacity) * .22);
        transform: scaleY(calc(.88 + var(--kx-avatar-wave-amplitude) * .14));
    }
    44% {
        stroke-dashoffset: calc(-20px - var(--kx-avatar-wave-frequency) * 28px);
        opacity: calc(var(--kx-avatar-wave-opacity) * .46);
        transform: scaleY(calc(.96 + var(--kx-avatar-wave-amplitude) * .30));
    }
    72% {
        stroke-dashoffset: calc(-42px - var(--kx-avatar-wave-frequency) * 36px);
        opacity: calc(var(--kx-avatar-wave-opacity) * .30);
        transform: scaleY(calc(.82 + var(--kx-avatar-wave-amplitude) * .22));
    }
}

@keyframes kx-official-alert {
    0%, 100% { transform: translateX(0); }
    18% { transform: translateX(-.8%); }
    36% { transform: translateX(.8%); }
    54% { transform: translateX(-.4%); }
}

@keyframes kx-official-success {
    0%, 74%, 100% { transform: translateY(0) scale(1); }
    82% { transform: translateY(-1.2%) scale(1.018); }
    90% { transform: translateY(0) scale(1); }
}

@keyframes kx-official-signature-turn {
    0%, 82%, 100% { transform: rotate(0deg) translateY(0) scale(1); }
    90% { transform: rotate(358deg) translateY(-1%) scale(1.012); }
}

@keyframes kx-official-vibration {
    0%, 100% { transform: translateX(0); }
    28% { transform: translateX(calc(var(--kx-avatar-size) * .003)); }
    56% { transform: translateX(calc(var(--kx-avatar-size) * -.002)); }
    78% { transform: translateX(calc(var(--kx-avatar-size) * .001)); }
}

@media (prefers-reduced-motion: reduce) {
    .kx-official-avatar,
    .kx-official-avatar * {
        animation: none !important;
        transition-duration: 1ms !important;
    }
}
