.mascot-live{--mascot-ink:var(--text,#1a1410);position:relative;display:inline-block;width:var(--mascot-size,104px);flex:none;line-height:0}.mascot-live>svg{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 10px 18px rgb(var(--shadow,0 0 0)/.18));touch-action:none}.mascot-live--small>svg{filter:none}.mascot-live>svg[data-interactive]{cursor:grab}.mascot-live>svg[data-interactive]:active{cursor:grabbing}.mascot-live>svg[data-interactive] [data-part]{cursor:pointer}.ml-limbs{stroke:var(--mascot-ink)}.ml-ink-fill{stroke:none}.ml-hand,.ml-ink-fill{fill:var(--mascot-ink)}.ml-hand{stroke:#f8f4c6}.mascot-say{position:absolute;left:62%;bottom:88%;z-index:1;padding:6px 12px;border-radius:14px 14px 14px 4px;white-space:nowrap;background:var(--bg);color:var(--text);box-shadow:0 8px 22px -10px rgb(var(--shadow,0 0 0)/.45);line-height:1.3;font-size:max(13px,calc(var(--mascot-size, 104px) * .09));animation:ml-say .35s cubic-bezier(.2,.9,.25,1.4)}@keyframes ml-say{0%{opacity:0;translate:-6px 6px;scale:.85}}.mascot-say--think{border-radius:22px;outline:1.5px dashed color-mix(in srgb,var(--text) 30%,transparent);outline-offset:-5px;font-style:italic}.mascot-say--think:after,.mascot-say--think:before{content:"";position:absolute;border-radius:50%;background:var(--bg);box-shadow:0 4px 10px -6px rgb(var(--shadow,0 0 0)/.45)}.mascot-say--think:before{width:12px;height:12px;left:6px;bottom:-14px}.mascot-say--think:after{width:7px;height:7px;left:-2px;bottom:-24px}.ml-spin{transform-box:fill-box;transform-origin:center;animation:ml-rot 1.1s linear infinite}.ml-stars{animation:ml-rot 2.4s linear infinite}@keyframes ml-rot{to{rotate:1turn}}.ml-steam>g{animation:ml-puff 1.4s ease-out infinite}.ml-steam>g:last-child{animation-delay:.7s}@keyframes ml-puff{0%{translate:0 6px;opacity:1}to{translate:0 -16px;opacity:0}}.ml-drop{animation:ml-drop 1.8s ease-in infinite}@keyframes ml-drop{0%,30%{translate:0 0}to{translate:0 22px;opacity:0}}.ml-dots circle{animation:ml-dot 1.4s infinite}.ml-dots circle:nth-child(2){animation-delay:.2s}.ml-dots circle:nth-child(3){animation-delay:.4s}@keyframes ml-dot{0%,to{opacity:.2}40%{opacity:1}}.ml-q,.ml-zzz{font:800 30px/1 var(--font-display,sans-serif);fill:var(--mascot-ink)}.ml-q,.ml-zzz text{transform-box:fill-box;transform-origin:center}.ml-q{animation:ml-bob 1.6s ease-in-out infinite}.ml-zzz{font-size:18px}.ml-zzz text{animation:ml-z 2.4s ease-in infinite}.ml-zzz text:nth-child(2){animation-delay:.5s;font-size:22px}.ml-zzz text:nth-child(3){animation-delay:1s;font-size:27px}@keyframes ml-z{0%{opacity:0;translate:-6px 8px}30%{opacity:1}to{opacity:0;translate:6px -10px}}@keyframes ml-bob{50%{translate:0 -5px;rotate:6deg}}.ml-thought{fill:#fff;stroke:var(--mascot-ink);stroke-width:2}.ml-thought-q{font:800 22px/1 var(--font-display,sans-serif);fill:var(--mascot-ink);stroke:none}.ml-thought{animation:ml-bob 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.ml-rays{animation:ml-glow 1s ease-in-out infinite alternate}@keyframes ml-glow{0%{opacity:.35}to{opacity:1}}.ml-notes{font:700 22px/1 sans-serif;fill:var(--mascot-ink)}.ml-hearts path,.ml-notes text{animation:ml-z 2.2s ease-out infinite;transform-box:fill-box;transform-origin:center}.ml-hearts path:nth-child(2),.ml-notes text:nth-child(2){animation-delay:.7s}.ml-hearts path:nth-child(3),.ml-notes text:nth-child(3){animation-delay:1.4s}.ml-confetti rect{animation:ml-fall 1.6s linear infinite;transform-box:fill-box;transform-origin:center}.ml-confetti rect:nth-child(2n){animation-duration:2.1s;animation-delay:.3s}.ml-confetti rect:nth-child(3n){animation-duration:1.8s;animation-delay:.8s}@keyframes ml-fall{0%{translate:0 -10px;rotate:0deg;opacity:1}to{translate:6px 70px;rotate:300deg;opacity:0}}@media (prefers-reduced-motion:reduce){.mascot-say,.ml-confetti rect,.ml-dots circle,.ml-drop,.ml-hearts path,.ml-notes text,.ml-q,.ml-rays,.ml-spin,.ml-stars,.ml-steam>g,.ml-thought,.ml-zzz text{animation:none}}.mascot-live>svg[data-paused],.mascot-live>svg[data-paused] *{animation-play-state:paused!important}.mascot{width:var(--mascot-size,104px);height:auto;flex:none;filter:drop-shadow(0 10px 18px rgb(var(--shadow)/.2))}.mascot.mascot-live{filter:none}.mascot--float{animation:mascot-float 5s ease-in-out infinite}@keyframes mascot-float{50%{transform:translateY(-6px) rotate(-2deg)}}@media (prefers-reduced-motion:reduce){.mascot--float{animation:none}}