*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #FF6B6B;--secondary: #4D96FF;--accent: #FFD93D;--success: #6BCB77;--purple: #9B59B6;--orange: #E67E22;--bg-dark: #0f0c29;--bg-mid: #302b63;--bg-light: #24243e;--text: #ffffff;--text-secondary: rgba(255,255,255,.7);--card-bg: rgba(255,255,255,.08);--card-border: rgba(255,255,255,.12)}html,body{width:100%;height:100%;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}.app-container{width:100%;height:100vh;height:100dvh;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f0c29,#302b63,#24243e)}.bg-animation{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.bg-circle{position:absolute;border-radius:50%;filter:blur(60px);opacity:.15}.circle-1{width:300px;height:300px;background:#ff6b6b;top:-100px;right:-50px;animation:floatCircle 8s ease-in-out infinite}.circle-2{width:250px;height:250px;background:#4d96ff;bottom:-80px;left:-60px;animation:floatCircle 10s ease-in-out infinite reverse}.circle-3{width:200px;height:200px;background:#ffd93d;top:50%;left:50%;animation:floatCircle 12s ease-in-out infinite}.circle-4{width:180px;height:180px;background:#6bcb77;top:20%;left:10%;animation:floatCircle 9s ease-in-out infinite reverse}@keyframes floatCircle{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-20px) scale(1.1)}50%{transform:translate(-20px,30px) scale(.9)}75%{transform:translate(-30px,-30px) scale(1.05)}}.bg-particles{position:absolute;top:0;right:0;bottom:0;left:0}.particle{position:absolute;bottom:-30px;animation:rise linear infinite;pointer-events:none}@keyframes rise{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-110vh) rotate(360deg);opacity:0}}.stage-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;z-index:1;position:relative;padding:20px}.card{background:var(--card-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:24px;padding:30px 24px;width:100%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.card::-webkit-scrollbar{width:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 32px;border-radius:50px;font-size:16px;font-weight:700;border:none;cursor:pointer;transition:all .3s ease;color:#fff;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.2),transparent);opacity:0;transition:opacity .3s}.btn:active:after{opacity:1}.btn:active{transform:scale(.96)}.btn-primary{background:linear-gradient(135deg,#ff6b6b,#ee5a24);box-shadow:0 8px 25px #ff6b6b66}.btn-primary:hover{box-shadow:0 12px 35px #ff6b6b99;transform:translateY(-2px)}.btn-secondary{background:linear-gradient(135deg,#4d96ff,#2e80f2);box-shadow:0 8px 25px #4d96ff66}.btn-full{width:100%;justify-content:center}.btn-large{padding:18px 40px;font-size:18px}.option-card{background:#ffffff0f;border:2px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 20px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:12px;position:relative;overflow:hidden}.option-card:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translate(4px)}.option-card:active{transform:scale(.97)}.option-card.selected{border-color:var(--primary);background:#ff6b6b26;box-shadow:0 0 30px #ff6b6b33}.option-emoji{font-size:28px;flex-shrink:0}.option-text{color:var(--text);font-size:15px;line-height:1.4;flex:1}.progress-bar{width:100%;height:8px;background:#ffffff1a;border-radius:10px;overflow:hidden;margin:16px 0}.progress-fill{height:100%;border-radius:10px;transition:width .5s ease;background:linear-gradient(90deg,#ff6b6b,#ffd93d,#6bcb77);background-size:200% 100%;animation:progressShine 2s linear infinite}@keyframes progressShine{0%{background-position:200% 0}to{background-position:-200% 0}}.radar-container{display:flex;justify-content:center;margin:20px 0}.level-badge{width:120px;height:120px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:60px;position:relative;box-shadow:0 0 60px #fff3;animation:badgePulse 2s ease-in-out infinite}@keyframes badgePulse{0%,to{box-shadow:0 0 30px #fff3}50%{box-shadow:0 0 60px #fff6}}.level-bar{width:100%;height:12px;background:#ffffff1a;border-radius:10px;overflow:hidden;margin:10px 0;position:relative}.level-bar-fill{height:100%;border-radius:10px;transition:width 1s ease}.level-bar-labels{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary);margin-top:4px}.score-display{text-align:center;margin:10px 0}.score-number{font-size:64px;font-weight:900;background:linear-gradient(135deg,#ffd93d,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.score-label{color:var(--text-secondary);font-size:14px;margin-top:4px}.dimension-scores{display:flex;flex-direction:column;gap:10px;margin:16px 0}.dim-item{display:flex;align-items:center;gap:10px}.dim-icon{font-size:24px;width:36px;text-align:center;flex-shrink:0}.dim-info{flex:1}.dim-label{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.dim-name{color:var(--text);font-weight:600}.dim-value{color:var(--text-secondary)}.dim-bar{height:6px;background:#ffffff1a;border-radius:6px;overflow:hidden}.dim-bar-fill{height:100%;border-radius:6px;transition:width 1.2s ease}.text-center{text-align:center}.text-gradient{background:linear-gradient(135deg,#ffd93d,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-16{margin-bottom:16px}@media (max-width: 380px){.card{padding:20px 16px;border-radius:20px}.option-card{padding:12px 14px}.option-emoji{font-size:24px}.option-text{font-size:14px}}
