.stateWrap { margin-top: 120px; display: flex; flex-direction: column; align-items: center; } .retryBtn { margin-top: 40px; width: 240px; height: 80px; background: #2ccb98; border-radius: 40px; display: flex; align-items: center; justify-content: center; color: #ffffff; } .heartCard { margin: 24px; padding: 32px; background: #ffffff; border-radius: 24px; display: flex; align-items: flex-start; } .heartLeft { display: flex; flex-direction: column; align-items: center; min-width: 200px; } .heartIcon { font-size: 72px; color: #f5222d; line-height: 1; } .heartValue { margin-top: 16px; font-size: 96px; font-weight: 700; color: #2a2d33; line-height: 1.1; } .heartUnit { margin-top: 8px; font-size: 30px; color: #9ea1a6; } .badge { margin-top: 20px; display: flex; align-items: center; padding: 8px 24px; border-radius: 999px; font-size: 24px; } .badgeOn { background: #f6ffed; color: #52c41a; } .badgeOff { background: #f5f5f5; color: #999999; } .badgeDot { width: 14px; height: 14px; border-radius: 50%; margin-right: 10px; } .badgeDotOn { background: #52c41a; } .badgeDotOff { background: #999999; } .heartRight { flex: 1; min-width: 0; margin-left: 32px; } .heartHealthLabel { font-size: 30px; font-weight: 500; color: #2a2d33; margin-bottom: 8px; display: block; } .metricGrid { display: flex; flex-wrap: wrap; justify-content: space-between; padding: 0 24px; } .metricCard { width: 48.5%; box-sizing: border-box; margin-bottom: 20px; padding: 24px; background: #ffffff; border-radius: 16px; } .metricLabel { font-size: 26px; color: #9ea1a6; } .metricRow { margin-top: 12px; display: flex; align-items: baseline; } .metricValue { font-size: 44px; font-weight: 700; } .metricUnit { margin-left: 8px; font-size: 24px; color: #b5b9c0; } .infoCard { margin: 4px 24px 24px; padding: 8px 32px; background: #ffffff; border-radius: 24px; } .infoRow { min-height: 104px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid #f0f1f3; } .infoRow:last-child { border-bottom: none; } .infoLabel { font-size: 28px; color: #9ea1a6; } .infoValue { font-size: 28px; color: #2a2d33; }