.geo-container{width:100%;background:linear-gradient(to bottom,#fff,#fafcff,#fff);padding:5px 32px 20px;display:flex;justify-content:center;align-items:center;position:relative;overflow:visible;min-height:auto;margin-top:0}.geo-container:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(107,70,193,.08) 0%,transparent 70%);filter:blur(180px);pointer-events:none;z-index:0}.geo-container.analysis-mode{padding:20px 32px}.geo-container.complete{padding-bottom:10px}.geo-wrapper{position:relative;width:100%;max-width:600px;aspect-ratio:1 / 1;max-height:600px;display:flex;justify-content:center;align-items:center;overflow:visible;margin:0 auto}.geo-arc-container{position:absolute;width:100%;height:100%;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1;pointer-events:none;animation:rotateArc 45s linear infinite;transform-origin:center center;overflow:visible;filter:drop-shadow(0 4px 8px rgba(0,0,0,.02))}.geo-arc-container.analysis-mode{animation:rotateArcOscillate 4s ease-in-out infinite;will-change:transform,filter}.geo-arc-container.complete .geo-ring.complete.geo-ring-2{animation:pushOutThenCollapse 2.5s cubic-bezier(.4,0,.2,1) 0s forwards!important;transform-origin:500px 500px}.geo-arc-container.complete .geo-ring.complete.geo-ring-1{animation:pushOutThenCollapse 2.5s cubic-bezier(.4,0,.2,1) .5s forwards!important;transform-origin:500px 500px}.geo-arc-container.complete .geo-ring.complete.geo-ring-0{animation:pushOutThenCollapse 2.5s cubic-bezier(.4,0,.2,1) 1s forwards!important;transform-origin:500px 500px}@keyframes rotateArcOscillate{0%,to{transform:translate(-50%,-50%) rotate(-8deg) scale(1);filter:drop-shadow(0 4px 8px rgba(0,0,0,.02)) drop-shadow(0 0 20px rgba(107,70,193,.1))}50%{transform:translate(-50%,-50%) rotate(8deg) scale(1.02);filter:drop-shadow(0 4px 8px rgba(0,0,0,.02)) drop-shadow(0 0 30px rgba(107,70,193,.15))}}@keyframes pushOutThenCollapse{0%{transform:scale(1);opacity:1}60%{transform:scale(1.3);opacity:1}61%{transform:scale(1.3);opacity:1}to{transform:scale(0);opacity:0}}.geo-arc-container.complete{animation:none!important}.geo-arc-container.complete.recentered{animation:rotateArc 120s linear infinite!important}.geo-arc-container.complete .geo-ring:not(.complete){animation:none!important}.geo-arc-container.complete .geo-dot{animation:none!important}.geo-arc-container.complete .geo-ring.complete.geo-ring-2[style*=animation],.geo-arc-container.complete .geo-ring.complete.geo-ring-1[style*=animation],.geo-arc-container.complete .geo-ring.complete.geo-ring-0[style*=animation]{animation:none!important;transform:scale(0)!important;opacity:0!important}.geo-score-container{position:absolute;width:100%;height:100%;top:50%;left:50%;transform:translate(-50%,-50%);z-index:0;pointer-events:none}.geo-expanding-circle{animation:expandFromCenter .8s cubic-bezier(.34,1.56,.64,1) forwards,orbPing .45s ease-out forwards}.geo-score-outer .geo-expanding-circle{animation-delay:4s}.geo-score-middle .geo-expanding-circle{animation-delay:5s}.geo-score-inner .geo-expanding-circle{animation-delay:6s}.geo-connector-ring{animation:drawConnectorRing 1.2s cubic-bezier(.4,0,.2,1) 4s forwards}.geo-connection-line{opacity:0;filter:blur(2px);transition:opacity .4s ease-in}.geo-connection-outer{animation:fadeInLine .4s ease-in 4s forwards}.geo-connection-middle{animation:fadeInLine .4s ease-in 5s forwards}.geo-connection-inner{animation:fadeInLine .4s ease-in 6s forwards}@keyframes fadeInLine{0%{opacity:0}to{opacity:.1}}.geo-score-circle{pointer-events:none}.geo-score-label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;dominant-baseline:middle}.geo-score-value{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;dominant-baseline:middle;font-weight:650;letter-spacing:-.2px}.geo-score-label,.geo-score-value{opacity:0;animation:fadeInText .4s ease-in forwards}.geo-score-outer .geo-score-label,.geo-score-outer .geo-score-value{animation-delay:4.4s}.geo-score-middle .geo-score-label,.geo-score-middle .geo-score-value{animation-delay:5.4s}.geo-score-inner .geo-score-label,.geo-score-inner .geo-score-value{animation-delay:6.4s}.geo-expanding-dot{z-index:10;position:relative}@keyframes expandFromCenter{0%{r:0;opacity:0}50%{opacity:1}to{r:80;opacity:1}}.geo-expanding-circle{transform-origin:center}@keyframes orbPing{0%{transform:scale(.88);filter:brightness(1)}50%{transform:scale(1.02);filter:brightness(1.15)}to{transform:scale(1);filter:brightness(1)}}.geo-orb-ripple{opacity:0;r:0}.geo-orb-ripple-outer{animation:orbRipple .45s ease-out 4s forwards}.geo-orb-ripple-middle{animation:orbRipple .45s ease-out 5s forwards}.geo-orb-ripple-inner{animation:orbRipple .45s ease-out 6s forwards}@keyframes orbRipple{0%{r:80;opacity:.12}to{r:88;opacity:0}}.geo-score-rotating-group{transform:translate(500px,500px);transform-origin:0 0;animation:slowFloat 4s ease-in-out infinite;animation-delay:6.8s}@keyframes slowFloat{0%,to{transform:translate(500px,500px) translateY(0)}50%{transform:translate(500px,500px) translateY(-8px)}}.geo-score-outer{animation-delay:4s,4s}.geo-score-middle{animation-delay:5s,5s}.geo-score-inner{animation-delay:6s,6s}@keyframes expandGroupFromCenter{0%{transform:scale(0);opacity:0}50%{opacity:1}to{transform:scale(1);opacity:1}}@keyframes drawConnectorRing{0%{stroke-dashoffset:1570}to{stroke-dashoffset:0}}@keyframes fadeInText{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.geo-arc{width:100%;height:100%;overflow:visible;display:block;object-fit:contain}@keyframes rotateArc{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.geo-dot{filter:drop-shadow(0 0 2px currentColor) drop-shadow(0 2px 4px rgba(0,0,0,.1));opacity:1}.geo-connection-line{filter:blur(.5px);opacity:.15}.geo-character{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center}.geo-speech-subtitle{margin-top:24px;text-align:center;position:relative;z-index:10;min-height:24px;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(-8px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}.geo-speech-subtitle.visible{opacity:1;transform:translateY(0)}.geo-speech-subtitle.hidden{opacity:0;transform:translateY(-8px)}.geo-speech-text{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:.95rem;color:#6b7280;margin:0;font-weight:500;text-align:center;letter-spacing:-.01em;line-height:1.5;max-width:500px;padding:0 24px}.geo-head{width:140px;height:140px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(255,255,255,.18) 0%,transparent 50%),radial-gradient(circle at 70% 70%,rgba(59,130,246,.23) 0%,transparent 50%),linear-gradient(135deg,#6b46c1,#3b82f6);position:relative;overflow:hidden;box-shadow:0 0 60px #6b46c166,0 0 120px #3b82f640,0 0 180px #6b46c126,inset 0 0 70px #ffffff1f,inset -20px -20px 40px #0000001a,inset 20px 20px 50px #ffffff2e;animation:headGlow 4s ease-in-out infinite;margin-bottom:8px;transition:box-shadow .5s ease;will-change:box-shadow}.geo-head.analysis-mode{animation:headGlowPulse 2s ease-in-out infinite;will-change:box-shadow}.geo-head.analysis-mode:before{animation:lightWaveSmooth 4s ease-in-out infinite;will-change:opacity,transform}.geo-head.complete{animation:headGlowPulse 2s ease-in-out infinite,completionGlow 1.5s ease-in-out}.geo-head.complete:before{animation:lightWaveSmooth 4s ease-in-out infinite}@keyframes completionGlow{0%{box-shadow:0 0 60px #6b46c166,0 0 120px #3b82f640,0 0 180px #6b46c126,inset 0 0 70px #ffffff1f,inset -20px -20px 40px #0000001a,inset 20px 20px 50px #ffffff2e}50%{box-shadow:0 0 100px #6b46c1b3,0 0 180px #3b82f680,0 0 250px #6b46c14d,inset 0 0 90px #fff3,inset -20px -20px 50px #0000001f,inset 20px 20px 60px #ffffff40}to{box-shadow:0 0 60px #6b46c166,0 0 120px #3b82f640,0 0 180px #6b46c126,inset 0 0 70px #ffffff1f,inset -20px -20px 40px #0000001a,inset 20px 20px 50px #ffffff2e}}@keyframes headGlowPulse{0%,to{box-shadow:0 0 80px #6b46c180,0 0 140px #3b82f659,0 0 200px #6b46c133,inset 0 0 70px #ffffff26,inset -20px -20px 50px #0000001f,inset 20px 20px 50px #fff3}50%{box-shadow:0 0 100px #6b46c1b3,0 0 180px #3b82f680,0 0 240px #6b46c14d,inset 0 0 90px #fff3,inset -20px -20px 60px #00000026,inset 20px 20px 60px #ffffff40}}@keyframes lightWaveSmooth{0%,to{opacity:.6;transform:translate(0) rotate(0) scale(1)}50%{opacity:.85;transform:translate(5px,-5px) rotate(90deg) scale(1.05)}}.geo-head:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 40% 40%,rgba(255,255,255,.1) 0%,transparent 30%),radial-gradient(circle at 60% 60%,rgba(59,130,246,.15) 0%,transparent 30%);animation:particleFloat 8s ease-in-out infinite;pointer-events:none}@keyframes particleFloat{0%,to{transform:translate(0) rotate(0);opacity:.6}50%{transform:translate(10px,-10px) rotate(180deg);opacity:.8}}@keyframes headGlow{0%,to{box-shadow:0 0 60px #6b46c166,0 0 120px #3b82f640,0 0 180px #6b46c126,inset 0 0 60px #ffffff1a,inset -20px -20px 40px #0000001a,inset 20px 20px 40px #ffffff26}50%{box-shadow:0 0 80px #6b46c199,0 0 160px #3b82f666,0 0 220px #6b46c133,inset 0 0 80px #ffffff26,inset -20px -20px 50px #0000001f,inset 20px 20px 50px #fff3}}.geo-inner-particles{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;height:80%;background:radial-gradient(circle at 25% 25%,rgba(255,255,255,.08) 1px,transparent 1px),radial-gradient(circle at 75% 75%,rgba(59,130,246,.08) 1px,transparent 1px),radial-gradient(circle at 50% 50%,rgba(255,255,255,.06) 1px,transparent 1px);background-size:30px 30px,35px 35px,25px 25px;background-position:0 0,15px 15px,7px 7px;border-radius:50%;opacity:.6;animation:particlePulse 6s ease-in-out infinite;pointer-events:none}@keyframes particlePulse{0%,to{opacity:.5;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.05)}}.geo-inner-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(255,255,255,.1);pointer-events:none}.geo-inner-ring-1{width:60%;height:60%;box-shadow:inset 0 0 20px #ffffff1a,0 0 30px #3b82f633;animation:ringPulse 5s ease-in-out infinite}.geo-inner-ring-2{width:40%;height:40%;box-shadow:inset 0 0 15px #ffffff26,0 0 25px #6b46c140;animation:ringPulse 7s ease-in-out infinite 1s}@keyframes ringPulse{0%,to{opacity:.6;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}}.geo-eye{position:absolute;width:10px;height:14px;background:#ffffffe6;border-radius:5px;box-shadow:0 0 20px #fff9,0 0 40px #ffffff4d,inset 0 0 10px #ffffff80;filter:blur(.5px);animation:eyeBlink 4s ease-in-out infinite}.geo-eye.step-0,.geo-eye.step-1,.geo-eye.step-2,.geo-eye.step-3{animation:eyeBlink 4s ease-in-out infinite}.geo-eye.step-4{animation:eyeBlink 4s ease-in-out infinite,doubleBlink 2s ease-in-out infinite}.geo-eye.step-5{animation:eyeBlink 4s ease-in-out infinite,eyeWiden 2s ease-in-out infinite}.geo-eye.complete{animation:eyeBlink 4s ease-in-out infinite,eyeWiden 1.5s ease-out}.geo-head.complete.high-score{animation:geoGlowBoost 1s ease-out 6.4s forwards}.geo-head.complete.high-score .geo-eye{animation:eyeBlink 4s ease-in-out infinite,eyeWidenReaction .3s ease-out 6.4s forwards,doubleBlinkReaction .5s ease-out 6.65s forwards}.geo-head.complete.medium-score{animation:geoGlowBoostSubtle .6s ease-out 6.4s forwards}.geo-head.complete.medium-score .geo-eye{animation:eyeBlink 4s ease-in-out infinite,eyeUpwardGlance .4s ease-out 6.4s forwards}.geo-head.complete.low-score{animation:geoGlowBoostMinimal .5s ease-out 6.4s forwards}.geo-head.complete.low-score .geo-eye{animation:eyeBlink 4s ease-in-out infinite,eyeTiltDown .5s ease-out 6.4s forwards,slowBlinkReaction .8s ease-out 6.6s forwards}@keyframes geoGlowBoost{0%,to{box-shadow:0 0 60px #6b46c14d,0 0 120px #3b82f633}50%{box-shadow:0 0 80px #6b46c166,0 0 140px #3b82f64d}}@keyframes geoGlowBoostSubtle{0%,to{box-shadow:0 0 60px #6b46c14d,0 0 120px #3b82f633}50%{box-shadow:0 0 65px #6b46c152,0 0 125px #3b82f638}}@keyframes geoGlowBoostMinimal{0%,to{box-shadow:0 0 60px #6b46c14d,0 0 120px #3b82f633}50%{box-shadow:0 0 62px #6b46c14f,0 0 122px #3b82f636}}@keyframes eyeWidenReaction{0%{width:10px;height:14px}to{width:10.8px;height:15.12px}}@keyframes doubleBlinkReaction{0%,to{height:14px;opacity:.9}20%,40%{height:2px;opacity:.6}30%{height:12px;opacity:.8}}@keyframes eyeUpwardGlance{0%{transform:translate(calc(-50% + 0px),calc(-50% + 0px))}to{transform:translate(calc(-50% + 0px),calc(-50% - 3px))}}.geo-eye-right.eyeUpwardGlance{transform:translate(calc(50% + 0px),calc(-50% - 3px))}@keyframes eyeTiltDown{0%{transform:translate(calc(-50% + 0px),calc(-50% + 0px)) rotate(0)}to{transform:translate(calc(-50% - 2px),calc(-50% + 2px)) rotate(-5deg)}}.geo-eye-right.eyeTiltDown{transform:translate(calc(50% + 2px),calc(-50% + 2px)) rotate(5deg)}@keyframes slowBlinkReaction{0%,to{height:14px;opacity:.9}50%{height:1px;opacity:.5}}@keyframes doubleBlink{0%,to{height:14px;opacity:.9}10%,20%{height:3px;opacity:.6}15%{height:12px;opacity:.8}30%,to{height:14px;opacity:.9}}@keyframes eyeWiden{0%,to{width:10px;height:14px}50%{width:12px;height:14px}}.geo-eye-left{top:35%;left:35%;transform:translate(-50%,-50%)}.geo-eye-right{top:35%;right:35%;transform:translate(50%,-50%)}@keyframes eyeBlink{0%,90%,to{height:14px;opacity:.9}92%,98%{height:2px;opacity:.7}}@media (max-width: 768px){.geo-container{padding:40px 20px 20px;min-height:auto;overflow:visible;margin-top:0}.geo-wrapper{max-width:100%;max-height:none;width:100%;height:auto;aspect-ratio:1 / 1;overflow:visible;transform:scale(1.1);margin:0 auto}.geo-head{width:120px;height:120px}.geo-eye{width:10px;height:14px}.geo-eye-left{top:35%;left:35%}.geo-eye-right{top:35%;right:35%}.geo-arc{transform:scale(1)}.geo-speech-subtitle{margin-top:20px}.geo-speech-text{font-size:.875rem;padding:0 20px}}@media (max-width: 480px){.geo-container{padding:32px 16px 16px;min-height:auto;overflow:visible;margin-top:0}.geo-wrapper{max-width:100%;max-height:none;width:100%;height:auto;aspect-ratio:1 / 1;overflow:visible;transform:scale(1.15);margin:0 auto}.geo-head{width:110px;height:110px}.geo-eye{width:9px;height:13px}.geo-arc{transform:scale(1)}.geo-speech-subtitle{margin-top:16px}.geo-speech-text{font-size:.8rem;padding:0 16px}}
