/* Shared Adapt characters: brand colour stays fixed in light and dark themes. */
.adp-character{display:inline-grid;place-items:center;position:relative;flex:0 0 auto;vertical-align:middle;background:transparent!important;border-radius:0!important;line-height:0;filter:drop-shadow(0 3px 2px rgba(18,30,65,.12));transition:transform .3s cubic-bezier(.2,.9,.25,1)}
.adp-character>svg{display:block;width:100%;height:100%;overflow:visible}
.adp-motion{transform-origin:50px 58px;transition:transform .3s cubic-bezier(.2,.9,.25,1)}
.adp-look{transform-origin:50px 58px;transition:transform .28s cubic-bezier(.2,.9,.25,1)}
.adp-gaze{transform:translate(8px,-10px);transition:transform .24s ease}
.adp-eyes{transform-origin:54px 49px;animation:adp-blink 8s ease-in-out infinite;animation-delay:var(--adp-delay,0s)}
.adp-character[data-character-hover="true"]{transform:scale(1.08)}
.adp-character[data-character-state="thinking"] .adp-motion{animation:adp-think 2s ease-in-out infinite}
.adp-character[data-character-state="speaking"] .adp-motion{animation:adp-speak .65s ease-in-out infinite}
.adp-character[data-character-state="speaking"] .adp-eyes{animation:adp-speak-eyes 1.4s ease-in-out infinite}
.ag-bot:has(.adp-character){background:transparent;border-radius:0}
.ag-bot.run:has(.adp-character)::after{display:none}
#loop .face:has(.adp-character){width:64px;height:64px;background:transparent;border-radius:0;box-shadow:none}
@keyframes adp-blink{0%,44%,48%,100%{transform:scaleY(1)}46%{transform:scaleY(.13)}}
@keyframes adp-think{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-2.3px) rotate(4deg)}}
@keyframes adp-speak{0%,100%{transform:translateY(0) scale(1)}36%{transform:translateY(-2px) scale(1.035,.97)}68%{transform:translateY(0) scale(.98,1.025)}}
@keyframes adp-speak-eyes{0%,100%{transform:scaleY(1)}50%{transform:scaleY(.8)}}
@media(prefers-reduced-motion:reduce){.adp-character,.adp-character *{animation:none!important;transition:none!important}.adp-character[data-character-hover="true"]{transform:none}}
