.mc-root{--mc-correct:#6edc8a;--mc-wrong:#ff6b6b;--mc-streak:#ff8a3d;--mc-focus:#6fa8ff;--mc-stress:#ffd966;--mc-tired:#b8a7c9;position:relative;display:inline-flex;align-items:flex-end;justify-content:center;width:var(--mc-size,220px);height:calc(var(--mc-size, 220px) * 1.35)}.mc-halo{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:85%;aspect-ratio:1;border-radius:50%;filter:blur(38px);opacity:0;transition:opacity .5s,background .5s;z-index:1;pointer-events:none}.mc-correct .mc-halo{background:var(--mc-correct);opacity:.35;animation:mcHalo 2s ease-in-out infinite}.mc-wrong .mc-halo{background:var(--mc-wrong);opacity:.15}.mc-streak .mc-halo{background:var(--mc-streak);opacity:.5;animation:mcHalo .9s ease-in-out infinite}.mc-focus .mc-halo{background:var(--mc-focus);opacity:.18;animation:mcHalo 3s ease-in-out infinite}.mc-stress .mc-halo{background:var(--mc-stress);opacity:.3;animation:mcHalo .7s ease-in-out infinite}.mc-tired .mc-halo{opacity:0}@keyframes mcHalo{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.12)}}.mc-shadow{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);width:55%;height:5%;border-radius:50%;background:#1a1a2e;opacity:.14;filter:blur(4px);z-index:2;pointer-events:none}.mc-char{position:relative;z-index:5;width:100%;height:auto;transform-origin:50% 100%;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.mc-focus .mc-char{animation:mcBreathe 3.2s cubic-bezier(.45,0,.55,1) infinite}.mc-correct.mc-char-anim .mc-char{animation:mcJump .9s cubic-bezier(.34,1.56,.64,1),mcBreathe 3.2s cubic-bezier(.45,0,.55,1) 1s infinite}.mc-correct:not(.mc-char-anim) .mc-char{animation:mcBreathe 3.2s cubic-bezier(.45,0,.55,1) infinite}.mc-wrong .mc-char{animation:mcShake .55s ease,mcDroop 3.4s ease-in-out .6s infinite}.mc-streak .mc-char{animation:mcPump .85s cubic-bezier(.45,0,.55,1) infinite}.mc-stress .mc-char{animation:mcTremble .16s linear infinite}.mc-tired .mc-char{animation:mcSway 4.5s ease-in-out infinite}@keyframes mcBreathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(.975) scaleX(1.008)}}@keyframes mcJump{0%{transform:translateY(0) scaleY(1)}18%{transform:translateY(4px) scaleY(.9) scaleX(1.06)}45%{transform:translateY(-14%) scaleY(1.06) scaleX(.96)}70%{transform:translateY(0) scaleY(.92) scaleX(1.05)}85%{transform:translateY(-4%)}to{transform:translateY(0) scaleY(1)}}@keyframes mcShake{0%,to{transform:translateX(0)}20%{transform:translateX(-9px) rotate(-2deg)}40%{transform:translateX(8px) rotate(2deg)}60%{transform:translateX(-6px) rotate(-1.5deg)}80%{transform:translateX(4px) rotate(1deg)}}@keyframes mcDroop{0%,to{transform:translateY(2px) rotate(-1.2deg) scaleY(.99)}50%{transform:translateY(5px) rotate(-2deg) scaleY(.975)}}@keyframes mcPump{0%,to{transform:scale(1) rotate(-1deg)}50%{transform:scale(1.05) rotate(1.2deg) translateY(-6px)}}@keyframes mcTremble{0%{transform:translate(-1.6px,.6px) rotate(-.7deg)}25%{transform:translate(1.4px,-.8px) rotate(.6deg)}50%{transform:translate(-1px,-.5px) rotate(-.4deg)}75%{transform:translate(1.7px,.9px) rotate(.8deg)}to{transform:translate(-1.6px,.6px) rotate(-.7deg)}}@keyframes mcSway{0%,to{transform:rotate(-1.6deg) translateY(3px)}50%{transform:rotate(1.4deg) translateY(5px)}}.mc-switching .mc-char{animation:mcSwitch .38s cubic-bezier(.34,1.56,.64,1)!important}@keyframes mcSwitch{0%{transform:scale(.86);opacity:.4}to{transform:scale(1);opacity:1}}.mc-particles{position:absolute;inset:-20% -30% 0;pointer-events:none;z-index:10;overflow:hidden}.mc-pt{position:absolute;will-change:transform,opacity}.mc-pt.rise{animation:mcPtRise 1.6s ease-out forwards}.mc-pt.erratic{animation:mcPtErratic 1.4s ease-in-out forwards}.mc-pt.drift{animation:mcPtDrift 3.2s ease-in-out forwards}@keyframes mcPtRise{0%{transform:translateY(0) scale(.5);opacity:0}15%{opacity:1}to{transform:translateY(-130px) scale(1.15) rotate(14deg);opacity:0}}@keyframes mcPtErratic{0%{transform:translate(0) scale(.6);opacity:0}15%{opacity:1}40%{transform:translate(-14px,-36px) rotate(-16deg)}70%{transform:translate(12px,-72px) rotate(12deg)}to{transform:translate(-8px,-108px) rotate(-8deg) scale(.9);opacity:0}}@keyframes mcPtDrift{0%{transform:translate(0) scale(.7);opacity:0}20%{opacity:.8}to{transform:translate(16px,-80px) scale(1.05);opacity:0}}@media (prefers-reduced-motion:reduce){.mc-root *{animation:none!important}}