/* The reference mascot keeps its warm plush texture against the monochrome UI. */
.brand-mascot,.avatar-mascot,.engine-mascot,.tiny-mascot,.footer-mascot{object-fit:contain;flex-shrink:0;vertical-align:middle}
.brand-mascot{width:43px;height:46px;filter:drop-shadow(0 3px 7px #0006);transition:transform .35s ease}
.brand:hover .brand-mascot{transform:rotate(-7deg) translateY(-2px)}
.avatar-mascot{width:34px;height:36px}
.engine-mascot{width:39px;height:44px}
.tiny-mascot{width:26px;height:27px;margin-right:7px}
.reasoning-panel .tiny-mascot{width:35px;height:36px;margin:0}
.footer-mascot{width:23px;height:25px;margin-left:5px}
.mascot-stage{height:156px;width:190px;position:relative;display:grid;place-items:center;margin:4px auto 0;isolation:isolate}
.mascot-halo{position:absolute;inset:3px 20px 2px;border-radius:50%;background:radial-gradient(ellipse,#ddd1 0%,#ddd05 50%,transparent 72%);z-index:-1;animation:mascot-glow 6s ease-in-out infinite}
.agent-mascot{display:block;width:152px;height:152px;object-fit:contain;position:relative;z-index:1;transform-origin:50% 78%;filter:drop-shadow(0 7px 10px #0008);animation:mascot-float 5.6s ease-in-out infinite;user-select:none;-webkit-user-drag:none}
.mascot-shadow{position:absolute;bottom:1px;left:62px;right:62px;height:7px;background:#0008;filter:blur(4px);border-radius:50%;animation:mascot-shadow 5.6s ease-in-out infinite}
.mascot-stage:hover .agent-mascot{animation:mascot-greeting 1.6s ease-in-out infinite}
.replaying .agent-mascot{animation:mascot-attention 2.2s ease-in-out infinite}
.replaying .mascot-halo{animation:mascot-glow 2.2s ease-in-out infinite}
@keyframes mascot-float{0%,100%{transform:translateY(1px) rotate(-2deg)}50%{transform:translateY(-9px) rotate(2deg)}}
@keyframes mascot-shadow{0%,100%{transform:scaleX(1);opacity:.6}50%{transform:scaleX(.78);opacity:.3}}
@keyframes mascot-glow{0%,100%{opacity:.45;transform:scale(.94)}50%{opacity:1;transform:scale(1.07)}}
@keyframes mascot-greeting{0%,100%{transform:translateY(-4px) rotate(-5deg)}50%{transform:translateY(-9px) rotate(5deg)}}
@keyframes mascot-attention{0%,100%{transform:translateY(-3px) rotate(-3deg)}50%{transform:translateY(-10px) rotate(3deg)}}
@media(min-width:1600px){.mascot-stage{margin-top:24px;margin-bottom:24px}}
@media(max-width:980px){.brand-mascot{width:40px;height:43px}}
@media(max-width:760px){.mascot-stage{width:130px;height:128px;margin:0 0 15px 5px}.agent-mascot{width:124px;height:124px}.mascot-shadow{left:43px;right:43px}.mascot-halo{inset:0 5px}}
@media(max-width:480px){.brand-mascot{width:34px;height:36px}.tiny-mascot{width:21px;height:23px}}
@media(prefers-reduced-motion:reduce){.agent-mascot,.mascot-shadow,.mascot-halo,.mascot-stage:hover .agent-mascot,.replaying .agent-mascot,.replaying .mascot-halo{animation:none!important;transform:none}.brand:hover .brand-mascot{transform:none}}
