2026-04-24 17:51:19 +08:00

490 lines
7.6 KiB
Plaintext

/* 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;
}
.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;
}