.home-page { min-height: 100vh; padding: 24rpx 24rpx 0; box-sizing: border-box; display: flex; flex-direction: column; background: linear-gradient(180deg, #fff9f6 0%, #f7f8fc 100%); } .banner-swiper { height: 360rpx; margin-bottom: 24rpx; } .banner-card { position: relative; height: 360rpx; overflow: hidden; border-radius: 32rpx; } .banner-image { width: 100%; height: 100%; background: #f0f0f0; } .banner-image-placeholder { display: flex; align-items: center; justify-content: center; color: #999999; } .banner-overlay { position: absolute; left: 0; right: 0; bottom: 0; padding: 28rpx; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(20, 16, 18, 0.78)); } .banner-tag { display: inline-block; margin-bottom: 14rpx; padding: 8rpx 16rpx; border-radius: 999rpx; background: rgba(255, 255, 255, 0.18); color: #ffffff; font-size: 22rpx; } .banner-title { font-size: 38rpx; font-weight: 700; color: #ffffff; } .banner-meta, .banner-remain { margin-top: 10rpx; color: rgba(255, 255, 255, 0.88); font-size: 24rpx; } .entry-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16rpx; margin-bottom: 24rpx; } .entry-item { padding: 24rpx 12rpx 20rpx; border-radius: 24rpx; background: #ffffff; text-align: center; box-shadow: 0 12rpx 26rpx rgba(15, 23, 42, 0.05); } .entry-icon { width: 76rpx; height: 76rpx; margin: 0 auto 14rpx; border-radius: 24rpx; display: flex; align-items: center; justify-content: center; color: #ffffff; font-weight: 700; } .entry-blue { background: linear-gradient(135deg, #57a7ff, #3b82f6); } .entry-purple { background: linear-gradient(135deg, #8a7dff, #7c3aed); } .entry-red { background: linear-gradient(135deg, #ff8d7d, #ef4444); } .entry-green { background: linear-gradient(135deg, #4fd5a4, #10b981); } .entry-text { font-size: 24rpx; color: #3a2a25; } .section-card { margin-bottom: 24rpx; padding: 24rpx; background: #ffffff; border-radius: 24rpx; box-shadow: 0 12rpx 28rpx rgba(15, 23, 42, 0.05); } .section-card-fill { flex: 1; min-height: 0; display: flex; flex-direction: column; } .section-title { font-size: 32rpx; font-weight: 600; } .member-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20rpx; } .more-link { color: #e8593c; font-size: 26rpx; } .section-tip { font-size: 24rpx; color: #999999; } .member-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16rpx; } .member-card { padding: 20rpx 16rpx; border-radius: 20rpx; background: #f8f8fb; text-align: center; box-shadow: inset 0 0 0 1rpx rgba(232, 89, 60, 0.06); } .member-swiper { width: 100%; height: 520rpx; margin-bottom: 0; } .member-swiper swiper-item { width: 100%; height: 520rpx; } .featured-member { position: relative; width: 100%; height: 520rpx; overflow: hidden; border-radius: 28rpx; } .featured-member-image { display: block; width: 100%; height: 520rpx; background: #f0f0f0; } .featured-member-placeholder { display: flex; align-items: center; justify-content: center; color: #999999; } .featured-member-overlay { position: absolute; left: 0; right: 0; bottom: 0; padding: 28rpx; background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(20, 16, 18, 0.78)); } .featured-member-name { font-size: 36rpx; font-weight: 700; color: #ffffff; } .featured-member-meta, .featured-member-intro { margin-top: 10rpx; color: rgba(255, 255, 255, 0.9); line-height: 1.6; } .member-avatar { width: 120rpx; height: 120rpx; border-radius: 60rpx; margin-bottom: 12rpx; } .member-avatar-placeholder { display: flex; align-items: center; justify-content: center; background: #f0f0f0; color: #999999; } .member-name { font-weight: 600; margin-bottom: 6rpx; } .member-meta { font-size: 24rpx; color: #666666; } .member-tags { margin-top: 10rpx; font-size: 22rpx; color: #d06b52; line-height: 1.5; } .member-mask { position: fixed; inset: 0; display: flex; align-items: flex-end; background: rgba(0, 0, 0, 0.42); } .member-sheet { width: 100%; padding: 32rpx; background: #ffffff; border-radius: 32rpx 32rpx 0 0; } .member-sheet-header { display: flex; align-items: center; gap: 20rpx; } .member-sheet-avatar { width: 120rpx; height: 120rpx; border-radius: 24rpx; } .member-sheet-name { font-size: 34rpx; font-weight: 700; } .member-sheet-meta { margin-top: 10rpx; color: #7d655d; } .member-sheet-tags { margin-top: 24rpx; padding: 14rpx 18rpx; border-radius: 18rpx; background: #fff3ef; color: #d06b52; line-height: 1.6; } .member-sheet-intro { margin: 20rpx 0 28rpx; color: #4d403a; line-height: 1.7; } @media (max-height: 700px) { .member-swiper, .member-swiper swiper-item, .featured-member, .featured-member-image { height: 420rpx; } } @media (max-width: 380px) { .section-card-fill { min-height: 0; } .member-swiper, .member-swiper swiper-item, .featured-member, .featured-member-image { height: 420rpx; } }