.page { position: relative; min-height: 100vh; overflow: hidden; } .glow-layer { position: absolute; inset: 0; pointer-events: none; } .glow { position: absolute; border-radius: 50%; filter: blur(90px); opacity: 0.5; animation: float 20s ease-in-out infinite; } .glow-one { width: 260px; height: 260px; top: -80px; right: -40px; background: radial-gradient(circle, rgba(84, 198, 255, 0.8), rgba(84, 198, 255, 0)); } .glow-two { width: 300px; height: 300px; bottom: -140px; left: -60px; background: radial-gradient(circle, rgba(214, 139, 255, 0.8), rgba(214, 139, 255, 0)); animation-delay: 6s; } @keyframes float { 0% { transform: translate3d(0, 0, 0); opacity: 0.4; } 50% { transform: translate3d(40px, -30px, 0); opacity: 0.7; } 100% { transform: translate3d(0, 0, 0); opacity: 0.4; } } .content { position: relative; z-index: 2; height: 100vh; padding: 18px 12px 10px; box-sizing: border-box; display: flex; flex-direction: column; gap: 20px; } .headline { text-align: center; display: flex; flex-direction: column; gap: 10px; } .title { font-size: 28px; letter-spacing: 8px; text-indent: 8px; color: #fbe6ce; text-shadow: 0 0 16px rgba(255, 196, 120, 0.35); } .subtitle { font-size: 13px; color: rgba(255, 244, 227, 0.78); line-height: 1.6; } .summary { background: rgba(18, 24, 46, 0.7); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 14px; padding: 14px 16px; color: rgba(255, 244, 227, 0.85); line-height: 1.7; font-size: 13px; } .summary-text { white-space: pre-line; } .tip { font-size: 14px; color: rgba(255, 244, 227, 0.7); letter-spacing: 2px; text-align: center; margin-bottom: 8px; } .element-section { display: flex; flex-direction: column; gap: 12px; background: rgba(18, 24, 46, 0.65); border: 1px solid rgba(255, 255, 255, 0.08); border-radius: 16px; padding: 16px 18px; color: rgba(255, 244, 227, 0.85); } .chart-title { font-size: 14px; letter-spacing: 3px; text-align: center; } .chart-row { display: flex; align-items: center; gap: 10px; } .chart-label { width: 42px; font-size: 13px; color: rgba(255, 244, 227, 0.78); } .chart-bar { flex: 1; height: 10px; background: rgba(255, 255, 255, 0.1); border-radius: 10px; overflow: hidden; } .chart-bar-fill { height: 100%; background: linear-gradient(90deg, rgba(255, 205, 146, 0.9), rgba(112, 184, 255, 0.9)); border-radius: 10px; } .chart-percent { font-size: 12px; color: rgba(255, 244, 227, 0.7); min-width: 70px; text-align: right; } .result-card { display: flex; flex-direction: column; gap: 12px; background: linear-gradient(135deg, rgba(16, 22, 46, 0.86), rgba(36, 44, 80, 0.76)); border-radius: 18px; padding: 18px 20px; margin-bottom: 12px; border: 1px solid rgba(255, 255, 255, 0.12); box-shadow: 0 18px 32px rgba(8, 12, 24, 0.45); backdrop-filter: blur(16px); } .result-header { display: flex; align-items: center; justify-content: space-between; gap: 12px; } .result-name { font-size: 18px; color: #fdf0da; font-weight: 600; letter-spacing: 3px; flex: 1; } .collect-button { height: 32px; line-height: 32px; padding: 0 22px; border-radius: 20px; background: rgba(255, 255, 255, 0.12); color: #fbe6ce; border: 1px solid rgba(255, 255, 255, 0.18); } .result-meaning { font-size: 14px; color: rgba(255, 244, 227, 0.86); line-height: 1.8; } .result-reason { font-size: 13px; color: rgba(255, 244, 227, 0.7); line-height: 1.6; } .back-button { width: 100%; border-radius: 24px; margin-top: 16px; } .empty { display: flex; flex-direction: column; align-items: center; gap: 18px; margin-top: 80px; color: rgba(255, 244, 227, 0.8); font-size: 14px; }