/* pages/parent/report/report.wxss */ .top{ margin-top: 40rpx; } /* page{ overflow: hidden; } */ /* ===== 成绩弹窗 ===== */ .popup-mask { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0,0,0,0.45); z-index: 100; } .score-popup { position: fixed; left: 0; right: 0; bottom: 0; background: #fff; border-radius: 36rpx 36rpx 0 0; padding: 36rpx 40rpx 60rpx; z-index: 9999; transform: translateY(100%); transition: transform 0.3s ease; box-shadow: 0 -8rpx 40rpx rgba(73,165,252,0.18); padding-bottom: 250rpx; } .popup-show { transform: translateY(0); } .popup-header { display: flex; align-items: center; margin-bottom: 36rpx; } .popup-icon { width: 88rpx; height: 88rpx; margin-right: 20rpx; border-radius: 50%; /* background: linear-gradient(135deg, #8dcfff, #49a5fc); */ /* padding: 14rpx; */ box-sizing: border-box; } .popup-title { flex: 1; font-size: 34rpx; font-weight: bold; color: #18394D; } .popup-close { width: 56rpx; height: 56rpx; border-radius: 50%; background: #f0f4f8; display: flex; align-items: center; justify-content: center; font-size: 26rpx; color: #999; } .score-rows { background: #f7fbff; border-radius: 20rpx; padding: 8rpx 30rpx; margin-bottom: 36rpx; } .score-row { display: flex; justify-content: space-between; align-items: center; padding: 24rpx 0; border-bottom: 1rpx solid #eef2f8; } .score-row:last-child { border-bottom: none; } .score-divider { height: 2rpx; background: linear-gradient(90deg, transparent, #d0e8ff, transparent); margin: 4rpx 0; } .score-label { font-size: 28rpx; color: #666; } .score-value { font-size: 34rpx; font-weight: bold; color: #333; } .score-highlight { color: #1d78e8; font-size: 40rpx; } .score-unit { font-size: 22rpx; color: #999; font-weight: normal; } .popup-btn { background: linear-gradient(135deg, #49a5fc, #1d78e8); color: #fff; text-align: center; padding: 28rpx 0; border-radius: 50rpx; font-size: 30rpx; font-weight: bold; box-shadow: 0 6rpx 20rpx rgba(73,165,252,0.4); letter-spacing: 2rpx; } .tit{ display: flex; font-weight: bold; font-size: 32rpx; align-items: center; margin-bottom: 70rpx; } .heart{ width: 50rpx; height: 50rpx; margin-right: 20rpx; } .score{ position: relative; height: 560rpx; overflow: hidden; } .score-img{ width: 900rpx; height: 680rpx; position: absolute; left: -70rpx; } .type{ position: absolute; left: 100rpx; top: 100rpx; font-size: 24rpx; } .score-detail{ font-size: 36rpx; font-weight: bold; } .btto{ margin-top: 10rpx; background-color: #F2CD4B; height:4rpx; width: 160rpx; } .jineng{ position: absolute; right: 90rpx; top: 100rpx; font-size: 24rpx; text-align: right; } .suzhi{ position: absolute; right: 90rpx; top: 280rpx; font-size: 24rpx; text-align: right; } .card{ padding: 30rpx; border-radius: 20rpx; box-shadow: 2rpx 2rpx 2rpx 2rpx rgba(53, 53, 53, 0.15); background: #fff; margin-top: 30rpx; } .title{ display: flex; justify-content: space-between; color: #18394D; font-weight: bold; font-size: 28rpx; } .unit{ font-size: 22rpx; } .progress-box{ border: 2rpx solid #E4E4E4; border-radius: 14rpx; box-sizing: border-box; position: relative; height: 60rpx; } .progress{ border: 2rpx solid #E4E4E4; border-radius: 14rpx; box-sizing: border-box; height: 100%; width: 10%; min-width: 13%; max-width: 100%; background-color: #FF3D71; display: flex; align-items: center; justify-content: space-between; color: #fff; padding-right: 8rpx; font-size: 22rpx; } .normal{ background-color: #00C2FF; } .good{ background-color: #2A7BFF; } .grate{ background-color: #00F7FF; } .score-box{ display: flex; justify-content: space-evenly; color: #999; font-size: 26rpx; } .cut-box{ width: 2rpx; height: 16rpx; background-color: #999; } .grade-box{ display: flex; justify-content: space-around; color: #999; font-size: 26rpx; } .grade-box view{ width: 25%; display: flex; align-items: center; justify-content: center; } .with{ display: flex; align-items: center; justify-content: space-between; } .image-icon{ margin-right: 36rpx; width: 110rpx; height: 110rpx; } .right{ flex: 1; } .card1{ display: flex; justify-content: space-between; align-items: center; padding: 28rpx 24rpx; font-size: 26rpx; } .room-info { display: flex; flex-direction: column; } .room-date { font-size: 28rpx; color: #18394D; font-weight: 500; } .room-week { font-size: 24rpx; color: #999; margin-top: 6rpx; } .more-tip { font-size: 26rpx; color: #999; text-align: center; margin-top: 50rpx; } /* ===== 学员 Tab 切换 ===== */ .trainee-wrap { margin-top: 20rpx; } .tab-switcher { display: flex; justify-content: center; background: rgba(255,255,255,0.7); border-radius: 50rpx; padding: 8rpx; margin: 20rpx 60rpx 36rpx; box-shadow: 0 4rpx 20rpx rgba(73,165,252,0.15); } .tab-btn { flex: 1; text-align: center; padding: 16rpx 0; border-radius: 42rpx; font-size: 28rpx; color: #666; transition: all 0.25s; } .tab-btn-active { background: linear-gradient(135deg, #49a5fc, #1d78e8); color: #fff; font-weight: bold; box-shadow: 0 4rpx 14rpx rgba(73,165,252,0.45); } /* ===== 体测报告卡片 ===== */ .fitness-card { background: #fff; border-radius: 24rpx; padding: 30rpx 20rpx 10rpx; box-shadow: 0 4rpx 20rpx rgba(73,165,252,0.12); margin-bottom: 30rpx; display: flex; flex-direction: column; align-items: center; } .fitness-chart-title { font-size: 30rpx; font-weight: bold; color: #18394D; margin-bottom: 16rpx; position: relative; padding: 0 30rpx; } .fitness-chart-title::before, .fitness-chart-title::after { content: ''; display: inline-block; width: 60rpx; height: 4rpx; background: linear-gradient(90deg, transparent, #49a5fc); vertical-align: middle; margin-right: 16rpx; border-radius: 2rpx; } .fitness-chart-title::after { background: linear-gradient(90deg, #49a5fc, transparent); margin-right: 0; margin-left: 16rpx; } .radar-wrap { overflow: hidden; margin: 0 -20rpx; /* 抵消 fitness-card 两侧 padding,让图表更宽 */ } .radar-legend { display: flex; justify-content: center; gap: 48rpx; margin-top: 8rpx; margin-bottom: 10rpx; } .legend-item { display: flex; align-items: center; font-size: 24rpx; color: #555; } .legend-dot { width: 20rpx; height: 20rpx; border-radius: 50%; margin-right: 10rpx; } .legend-blue { background: #4A90E2; } .legend-red { background: #E74C3C; } /* ===== 六项指标网格 ===== */ .fitness-grid { display: flex; flex-wrap: wrap; gap: 20rpx; margin-bottom: 10rpx; } .fitness-item { width: calc(33.33% - 14rpx); background: #fff; border-radius: 20rpx; box-shadow: 0 4rpx 16rpx rgba(73,165,252,0.12); display: flex; flex-direction: column; align-items: center; padding: 30rpx 10rpx 24rpx; box-sizing: border-box; active-opacity: 0.7; } .fitness-item:active { transform: scale(0.96); } .fitness-icon-wrap { width: 100rpx; height: 100rpx; border-radius: 50%; background: linear-gradient(135deg, #8dcfff, #49a5fc); display: flex; align-items: center; justify-content: center; margin-bottom: 18rpx; box-shadow: 0 6rpx 18rpx rgba(73,165,252,0.35); } .fitness-icon { width: 88rpx; height: 88rpx; } .fitness-name { font-size: 24rpx; color: #333; font-weight: 500; text-align: center; margin-bottom: 8rpx; } .fitness-score { font-size: 30rpx; font-weight: bold; color: #1d78e8; } .fitness-unit { font-size: 20rpx; color: #999; font-weight: normal; } .more{ font-size: 26rpx; color: #575555; text-align: center; margin-top: 50rpx; }