.page { min-height: 100vh; background-color: #f8f8f8; display: flex; flex-direction: column; } .unified-header { position: fixed; top: 0; left: 0; right: 0; height: 194rpx; background: linear-gradient(135deg, #B06AB3 0%, #9B59B6 100%); border-bottom: none; display: flex; align-items: flex-end; justify-content: space-between; padding: 0 32rpx 20rpx; z-index: 1000; } .unified-header-left { display: flex; align-items: center; gap: 8rpx; width: 160rpx; height: 56rpx; } .unified-back-icon { width: 56rpx; height: 56rpx; } .unified-back-text { font-size: 34rpx; font-weight: bold; color: #ffffff; } .unified-header-title { font-size: 40rpx; font-weight: bold; color: #ffffff; flex: 1; text-align: center; } .unified-header-right { width: 160rpx; height: 56rpx; } .content { flex: 1; } .loading-tip, .error-tip, .empty-tip { display: flex; flex-direction: column; align-items: center; justify-content: center; padding-top: 200rpx; } .loading-tip text, .empty-tip text, .error-tip text { font-size: 28rpx; color: #999; } .error-tip text:first-child { color: #ff6b6b; margin-bottom: 20rpx; } .retry-btn { background: linear-gradient(135deg, #B06AB3 0%, #9B59B6 100%); color: #fff !important; padding: 16rpx 48rpx; border-radius: 36rpx; font-size: 28rpx !important; } .empty-tip image { width: 240rpx; height: 240rpx; margin-bottom: 20rpx; } .notices-list { padding: 30rpx; } .notice-item { background: #fff; border-radius: 20rpx; padding: 30rpx; margin-bottom: 20rpx; box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.05); } .notice-content { font-size: 32rpx; color: #333; line-height: 1.8; } .notice-content rich-text { line-height: 1.8; } .notice-content p { margin-bottom: 16rpx; } .notice-content h3 { font-size: 36rpx; font-weight: bold; color: #333; margin: 24rpx 0 16rpx; } .notice-footer { margin-top: 20rpx; padding-top: 20rpx; border-top: 2rpx solid #f0f0f0; } .link-hint { font-size: 30rpx; color: #B06AB3; } .notice-date { font-size: 30rpx; color: #999; margin-top: 16rpx; text-align: right; }