:root{font-family:Inter,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:#f8fafc}#root{min-height:100vh}.fade-in{animation:fadeIn .5s ease-in}.fade-out{animation:fadeOut .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.answer-btn{transition:all .2s ease}.answer-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #0000001a}.answer-btn.selected{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;transform:scale(1.02)}.answer-btn:disabled{opacity:.9;cursor:not-allowed}.progress-bar{transition:width .5s ease}.persona-btn,.minigame-btn,.share-btn,.zodiac-btn{transition:all .3s ease;cursor:pointer}.persona-btn:hover:not(:disabled),.minigame-btn:hover:not(:disabled),.share-btn:hover,.zodiac-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #0000001a}.persona-btn:active:not(:disabled),.minigame-btn:active:not(:disabled),.share-btn:active,.zodiac-btn:active:not(:disabled){transform:translateY(0)}.typing-dots:after{content:"";animation:typingDots 1.5s infinite}@keyframes typingDots{0%,20%{content:"."}40%{content:".."}60%,to{content:"..."}}@keyframes messageFadeIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}#loading-messages p{animation:messageFadeIn .5s ease-out}.minigame-btn:disabled,.zodiac-btn:disabled,.persona-btn:disabled{opacity:.6;cursor:not-allowed}.share-btn:disabled{opacity:.7;cursor:not-allowed}.glass-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes float-slow{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.logo-float{animation:float-slow 3s ease-in-out infinite}.map-container{height:300px;border-radius:.75rem;overflow:hidden}@media(min-width:768px){.map-container{height:420px}}.indeterminate-bar{position:relative;height:6px;background:#e5e7eb;border-radius:9999px;overflow:hidden}.indeterminate-bar:before{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,#a78bfa,#f472b6);border-radius:inherit;animation:indeterminate 1.4s ease-out infinite}@keyframes indeterminate{0%{left:-40%}to{left:100%}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes pulseGlow{0%{box-shadow:0 0 #ec489959}50%{box-shadow:0 0 32px #a78bfa73}to{box-shadow:0 0 #ec489959}}.cta-attention{background-image:linear-gradient(90deg,#a855f7,#ec4899,#f59e0b);background-size:300% 300%;animation:gradientShift 6s ease infinite,pulseGlow 2.4s ease-in-out infinite;border:0!important}@keyframes wiggle{0%,to{transform:translate(0)}50%{transform:translate(4px)}}.cta-nudge{display:inline-block;animation:wiggle 1.2s ease-in-out infinite}@keyframes ctaWiggle{0%,86%,to{transform:translate(0) rotate(0)}90%{transform:translate(-1px) rotate(-.6deg)}94%{transform:translate(1px) rotate(.6deg)}98%{transform:translate(0) rotate(0)}}.cta-wiggle{display:inline-block;animation:ctaWiggle 2.5s ease-in-out infinite}@keyframes pointerBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.cta-pointer{display:inline-block;animation:pointerBounce 1.4s ease-in-out infinite;margin-left:6px}
