#mascot-widget{position:fixed;bottom:1.5rem;right:1.5rem;z-index:999;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;outline:none}#mascot-bubble{background:#1e293b;color:#fff;font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:20px;white-space:nowrap;box-shadow:0 4px 12px #0000004d;animation:bubble-float 2.5s ease-in-out infinite;border:1px solid rgba(59,130,246,.4)}@keyframes bubble-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}#mascot-svg{filter:drop-shadow(0 4px 14px rgba(37,99,235,.5));transition:transform .2s ease}#mascot-widget:hover #mascot-svg{transform:scale(1.08) translateY(-3px)}#arm-l{animation:tap-l .35s ease-in-out infinite alternate;transform-origin:7px 60px}#arm-r{animation:tap-r .35s ease-in-out infinite alternate;transform-origin:61px 60px}@keyframes tap-l{0%{transform:rotate(-10deg) translateY(0)}to{transform:rotate(-4deg) translateY(-3px)}}@keyframes tap-r{0%{transform:rotate(4deg) translateY(-3px)}to{transform:rotate(10deg) translateY(0)}}.loading-bar{animation:load 1.8s ease-in-out infinite}@keyframes load{0%{width:4px}50%{width:24px}to{width:4px}}.pupil-l,.pupil-r{animation:look 3s ease-in-out infinite}@keyframes look{0%,to{transform:translate(0)}30%{transform:translate(2px)}70%{transform:translate(-2px)}}@keyframes zzz-float{0%{opacity:0;transform:translateY(6px)}25%{opacity:1}75%{opacity:1}to{opacity:0;transform:translateY(-14px)}}#mascot-widget.sleeping #face-active{opacity:0}#mascot-widget.sleeping #face-sleep{opacity:1}#mascot-widget.sleeping #arm-l{animation:none;transform:rotate(12deg)}#mascot-widget.sleeping #arm-r{animation:none;transform:rotate(-12deg)}#mascot-widget.sleeping #mascot-svg{animation:sway 4s ease-in-out infinite}#mascot-widget.sleeping #zzz{opacity:1;animation:zzz-float 2s ease-in-out infinite}#mascot-widget.sleeping #mascot-bubble{display:none}@keyframes sway{0%,to{transform:rotate(0)}35%{transform:rotate(-2.5deg)}65%{transform:rotate(2.5deg)}}#mascot-popup{position:fixed;bottom:7.5rem;right:1.5rem;width:380px;min-height:520px;background:#0f172a;border:1px solid rgba(59,130,246,.25);border-radius:18px;box-shadow:0 20px 60px #00000080;z-index:998;display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(20px) scale(.95);pointer-events:none;transition:opacity .25s ease,transform .25s ease}#mascot-popup.open{opacity:1;transform:translateY(0) scale(1);pointer-events:all}#popup-header{background:linear-gradient(135deg,#1e3a5f,#1d4ed8);padding:14px 16px;display:flex;align-items:center;justify-content:space-between}#popup-avatar{width:36px;height:36px;background:#ffffff26;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem}#popup-close{background:#ffffff1f;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:background .2s}#popup-close:hover{background:#ffffff40}#popup-messages{flex:1;padding:14px;display:flex;flex-direction:column;gap:10px;min-height:320px;max-height:400px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#334155 transparent}.msg{display:flex;align-items:flex-end;gap:8px;max-width:88%}.msg.bot:before{content:"🤖";flex-shrink:0;width:28px;height:28px;font-size:1rem;display:flex;align-items:center;justify-content:center;background:#1e3a5f;border-radius:50%;border:1px solid rgba(59,130,246,.3)}.msg span{font-size:.875rem;line-height:1.6;padding:10px 14px}.msg.bot span{background:#1e293b;color:#ffffffeb;border-radius:4px 16px 16px;border:1px solid rgba(59,130,246,.2);box-shadow:0 2px 8px #0003}.msg.user{align-self:flex-end;flex-direction:row-reverse;margin-left:auto}.msg.user span{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border-radius:16px 4px 16px 16px;font-weight:500;box-shadow:0 2px 10px #2563eb66}.msg.user:before{content:"👤";flex-shrink:0;width:28px;height:28px;font-size:.9rem;display:flex;align-items:center;justify-content:center;background:#1d4ed8;border-radius:50%}.msg.typing{max-width:88%}.msg.typing span{background:#1e293b;color:#ffffff73;font-style:italic;border-radius:4px 16px 16px;border:1px solid rgba(255,255,255,.07);padding:10px 14px;animation:pulse-typing 1.2s ease-in-out infinite}@keyframes pulse-typing{0%,to{opacity:.45}50%{opacity:.8}}#popup-quickbtns{padding:0 12px 10px;display:flex;flex-wrap:wrap;gap:6px}.qbtn{font-size:.8rem;padding:6px 12px;background:#2563eb26;border:1px solid rgba(59,130,246,.3);color:#fffc;border-radius:20px;cursor:pointer;transition:background .2s,border-color .2s;white-space:nowrap}.qbtn:hover{background:#2563eb59;border-color:#3b82f6;color:#fff}#popup-input-row{display:flex;gap:8px;padding:10px 14px 14px;border-top:1px solid rgba(255,255,255,.06)}#popup-input{flex:1;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 14px;font-size:.875rem;color:#fff;outline:none;transition:border-color .2s}#popup-input::placeholder{color:#ffffff4d}#popup-input:focus{border-color:#3b82f6}#popup-send{background:#2563eb;border:none;color:#fff;width:36px;height:36px;border-radius:10px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:background .2s;flex-shrink:0}#popup-send:hover{background:#1d4ed8}@media (max-width: 450px){#mascot-popup{width:calc(100vw - 2rem);right:1rem}}
