*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:#f0f4f8;color:#2c3e50;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}@media (max-width: 640px){.mobile-hide-sidebar{display:none!important}.mobile-show-sidebar{display:block!important;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100;background:#00000080}.mobile-show-sidebar>div{position:absolute;right:0;top:0;bottom:0;width:280px;max-width:85vw;background:#fff;box-shadow:-4px 0 20px #0003;overflow-y:auto}.mobile-sidebar-toggle{display:flex!important}}@media (min-width: 641px){.mobile-sidebar-toggle,.mobile-sidebar-overlay{display:none!important}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeUp{0%{opacity:1;transform:translateY(0)}60%{opacity:1;transform:translateY(-18px)}to{opacity:0;transform:translateY(-30px)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes confetti1{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(300px) rotate(720deg);opacity:0}}@keyframes confetti2{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(280px) rotate(-540deg);opacity:0}}@keyframes confetti3{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(320px) rotate(600deg);opacity:0}}@keyframes xpPop{0%{opacity:1;transform:translateY(0) scale(1)}50%{transform:translateY(-30px) scale(1.3)}to{opacity:0;transform:translateY(-60px) scale(.8)}}@keyframes moodShift{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes glow{0%,to{box-shadow:0 0 5px #27ae604d}50%{box-shadow:0 0 20px #27ae6099}}@keyframes badgePop{0%{transform:scale(0) rotate(-180deg);opacity:0}60%{transform:scale(1.2) rotate(10deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes barFill{0%{width:0}}@keyframes timerPulse{0%,to{color:#e67e22}50%{color:#c0392b}}@keyframes toastSlideIn{0%{transform:translate(120%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes toastSlideOut{0%{transform:translate(0);opacity:1}to{transform:translate(120%);opacity:0}}@keyframes badgeUnlock{0%{transform:scale(0) rotate(-180deg);opacity:0}50%{transform:scale(1.3) rotate(10deg)}to{transform:scale(1) rotate(0);opacity:1}}@keyframes countdownPulse{0%,to{transform:scale(1)}50%{transform:scale(1.15);color:#e74c3c}}@keyframes goldGlow{0%,to{box-shadow:0 0 8px #ffd7004d}50%{box-shadow:0 0 20px #ffd70099}}@keyframes avatarBreathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.015)}}@keyframes avatarBlink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes avatarSpeak{0%,to{transform:scaleY(1) scaleX(1)}25%{transform:scaleY(1.3) scaleX(.9)}50%{transform:scaleY(.7) scaleX(1.1)}75%{transform:scaleY(1.2) scaleX(.95)}}@keyframes typingBounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}@keyframes msgSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.fade-in{animation:fadeIn .3s ease}.slide-up{animation:slideUp .4s ease}.pop-in{animation:popIn .4s ease}.xp-float{animation:xpPop 1.5s ease forwards;pointer-events:none;position:absolute;font-weight:800;color:#27ae60;font-size:18px;z-index:99}.badge-pop{animation:badgePop .6s ease}.mood-shift{animation:moodShift .3s ease}.glow{animation:glow 2s ease infinite}.timer-pulse{animation:timerPulse 1s ease infinite}.bar-fill{animation:barFill .8s ease}.streak-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:700}.confetti-piece{position:fixed;width:8px;height:8px;border-radius:2px;z-index:999;pointer-events:none}.conf1{animation:confetti1 2s ease forwards}.conf2{animation:confetti2 2.2s ease forwards}.conf3{animation:confetti3 1.8s ease forwards}.avatar-breathe{animation:avatarBreathe 3s ease-in-out infinite;transform-origin:center bottom}.avatar-blink{animation:avatarBlink 4s ease-in-out infinite}.avatar-speak{animation:avatarSpeak .3s ease-in-out infinite;transform-origin:center center}.msg-slide-in{animation:msgSlideIn .3s ease}.toast-in{animation:toastSlideIn .4s ease}.toast-out{animation:toastSlideOut .4s ease forwards}.badge-unlock{animation:badgeUnlock .6s ease}.countdown-pulse{animation:countdownPulse 1s ease infinite}.gold-glow{animation:goldGlow 2s ease infinite}
