.mascot-wrapper{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;display:inline-flex;position:relative}.mascot-image{object-fit:contain;width:100%;max-width:100%;height:auto;display:block}.mascot-video{mix-blend-mode:multiply;pointer-events:none}.mascot-wrapper[role=button]{cursor:pointer;transition:transform .2s}.mascot-wrapper[role=button]:hover{transform:scale(1.05)}.mascot-wrapper[role=button]:active{transform:scale(.98)}.mascot-wrapper:focus{outline-offset:4px;border-radius:8px;outline:3px solid #2563eb}.mascot-wrapper:focus:not(:focus-visible){outline:none}.mascot-hero-welcome{animation:4s ease-in-out infinite mascot-breathe}.mascot-upload-ready{animation:2s ease-in-out infinite mascot-idle-bounce}.mascot-upload-drag{animation:.5s ease-in-out infinite mascot-excited-wobble}.mascot-processing{animation:1.5s ease-in-out infinite mascot-processing-bob}.mascot-celebrating{animation:.6s ease-in-out mascot-celebrate-bounce}.mascot-error-sad,.mascot-error-naughty{animation:3s ease-in-out infinite mascot-sad-sway}.mascot-thinking{animation:3s ease-in-out infinite mascot-think-tilt}.mascot-loading{animation:1s steps(4,end) infinite mascot-walk}.mascot-animated .mascot-image{animation-play-state:running}@keyframes mascot-breathe{0%,to{transform:scale(1)translateY(0)}50%{transform:scale(1.02)translateY(-2px)}}@keyframes mascot-idle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes mascot-excited-wobble{0%,to{transform:rotate(0)scale(1)}25%{transform:rotate(-5deg)scale(1.05)}75%{transform:rotate(5deg)scale(1.05)}}@keyframes mascot-processing-bob{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-8px)rotate(-2deg)}75%{transform:translateY(-8px)rotate(2deg)}}@keyframes mascot-celebrate-bounce{0%{transform:translateY(0)scale(1)}30%{transform:translateY(-30px)scale(1.1)}50%{transform:translateY(0)scale(1.05)}65%{transform:translateY(-15px)scale(1)}80%{transform:translateY(0)scale(1.02)}to{transform:translateY(0)scale(1)}}@keyframes mascot-sad-sway{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes mascot-think-tilt{0%,to{transform:rotate(0)}50%{transform:rotate(5deg)}}@keyframes mascot-walk{0%{transform:translate(0)}to{transform:translate(4px)}}.mascot-tooltip{color:#fff;white-space:nowrap;opacity:0;pointer-events:none;z-index:1000;background:#1f2937;border-radius:8px;padding:8px 12px;font-size:14px;transition:opacity .2s;position:absolute;bottom:110%;left:50%;transform:translate(-50%)}.mascot-tooltip:after{content:"";border:6px solid #0000;border-top-color:#1f2937;position:absolute;top:100%;left:50%;transform:translate(-50%)}.mascot-wrapper:hover .mascot-tooltip{opacity:1}.mascot-dialog{background:#f9fafb;border-radius:12px;align-items:flex-end;gap:16px;padding:16px;display:flex;box-shadow:0 4px 6px -1px #0000001a}.mascot-dialog-left{flex-direction:row}.mascot-dialog-right{flex-direction:row-reverse}.mascot-dialog-bubble{background:#fff;border-radius:12px;flex:1;max-width:300px;padding:12px 16px;position:relative;box-shadow:0 2px 4px #0000001a}.mascot-dialog-left .mascot-dialog-bubble:before{content:"";border-top:0 solid #0000;border-bottom:12px solid #0000;border-left:0 solid #0000;border-right:12px solid #fff;width:0;height:0;position:absolute;bottom:16px;left:-8px}.mascot-dialog-right .mascot-dialog-bubble:before{content:"";border-top:12px solid #fff;border-bottom:0 solid #0000;border-left:0 solid #0000;border-right:12px solid #0000;width:0;height:0;position:absolute;bottom:16px;right:-8px}.mascot-dialog-bubble p{color:#1f2937;margin:0;font-size:14px;line-height:1.5}.mascot-dialog-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:20px;line-height:1;transition:color .2s;position:absolute;top:4px;right:8px}.mascot-dialog-close:hover{color:#1f2937}@media (max-width:1023px){.mascot-wrapper{max-width:80%}}@media (max-width:767px){.mascot-wrapper{max-width:70%}@keyframes mascot-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.01)}}@keyframes mascot-idle-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.mascot-dialog{flex-direction:column;align-items:center}.mascot-dialog-bubble{max-width:100%}.mascot-dialog-bubble:before{display:none}}@media (prefers-reduced-motion:reduce){.mascot-wrapper,.mascot-image,.mascot-animated{transition:none!important;animation:none!important}.mascot-wrapper[role=button]:hover,.mascot-wrapper[role=button]:active{transform:none}}@media print{.mascot-wrapper{display:none}}@media (prefers-color-scheme:dark){.mascot-tooltip{background:#374151}.mascot-tooltip:after{border-top-color:#374151}.mascot-dialog{background:#1f2937}.mascot-dialog-bubble{color:#f9fafb;background:#374151}.mascot-dialog-bubble p{color:#f9fafb}}.mascot-no-animation{animation:none!important}.mascot-pulse{animation:2s ease-in-out infinite mascot-pulse}@keyframes mascot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.mascot-spin{animation:1s linear infinite mascot-spin}@keyframes mascot-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.mascot-shake{animation:.5s ease-in-out mascot-shake}@keyframes mascot-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.mascot-float{animation:3s ease-in-out infinite mascot-float}@keyframes mascot-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}
