/* pages/sjcf/sjcf.wxss */ /* 🔴【样式与cfss页面基本相同,只添加了独占按钮样式】 */ :root { --cyber-blue: rgba(255, 208, 97, 0.85); --cyber-pink: rgba(255, 192, 163, 0.85); --cyber-purple: rgba(230, 126, 34, 0.85); --cyber-green: rgba(76, 175, 80, 0.85); --cyber-red: rgba(230, 74, 25, 0.85); --cyber-bg: #fff8e1; --cyber-card: #fef6d4; --cyber-border: rgba(255, 208, 97, 0.35); --cyber-glow: rgba(255, 208, 97, 0.2); --cyber-text: #333333; --cyber-text-light: #666666; --cyber-text-lighter: #888888; } .cfss-container { padding: 30rpx; background: var(--cyber-bg); min-height: 100vh; color: var(--cyber-text) !important; position: relative; overflow: hidden; box-sizing: border-box; } /* 恢复网格背景 */ .cfss-container::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-image: linear-gradient(rgba(255, 208, 97, 0.08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 208, 97, 0.08) 1px, transparent 1px); background-size: 40rpx 40rpx; pointer-events: none; opacity: 0.15; z-index: 0; } /* ====== 统计卡片 ====== */ .tongji-card { background: #fef6d4; border-radius: 20rpx; padding: 30rpx; margin-bottom: 30rpx; border: 1rpx solid var(--cyber-border); box-shadow: 0 0 20rpx rgba(255, 0, 102, 0.2), inset 0 0 10rpx rgba(255, 208, 97, 0.05); position: relative; overflow: hidden; z-index: 1; } .tongji-title { color: var(--cyber-blue); font-size: 34rpx; font-weight: bold; margin-bottom: 30rpx; text-shadow: 0 0 8rpx var(--cyber-blue); letter-spacing: 2rpx; } .tongji-content { display: flex; justify-content: space-between; } .tongji-item { display: flex; flex-direction: column; align-items: center; flex: 1; } .tongji-label { color: var(--cyber-text-light) !important; font-size: 26rpx; margin-bottom: 15rpx; opacity: 0.9; } .tongji-value { color: var(--cyber-text) !important; font-size: 44rpx; font-weight: bold; text-shadow: 0 0 8rpx currentColor; } .daichuli-value { color: var(--cyber-red) !important; text-shadow: 0 0 8rpx rgba(255, 0, 102, 0.3); } .yichuli-value { color: var(--cyber-green) !important; text-shadow: 0 0 8rpx rgba(0, 255, 157, 0.3); } /* ====== 类型切换 ====== */ .leixing-qiehuan { display: flex; background: #fef6d4; border-radius: 16rpx; padding: 10rpx; margin-bottom: 30rpx; border: 1rpx solid var(--cyber-border); box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.2); z-index: 1; } .leixing-item { flex: 1; display: flex; flex-direction: column; align-items: center; padding: 25rpx 0; border-radius: 12rpx; transition: all 0.3s; } .leixing-item:active { transform: scale(0.98); } .leixing-active { background: linear-gradient(135deg, rgba(250, 224, 77, 0.25), rgba(255, 192, 163, 0.25)); box-shadow: 0 0 15rpx rgba(255, 208, 97, 0.2); } .leixing-text { font-size: 28rpx; font-weight: bold; margin-bottom: 8rpx; color: var(--cyber-text-light) !important; } .leixing-active .leixing-text { color: var(--cyber-text) !important; text-shadow: 0 0 8rpx var(--cyber-blue); } .leixing-count { font-size: 24rpx; color: var(--cyber-text-lighter) !important; opacity: 0.9; } .leixing-active .leixing-count { color: rgba(255, 255, 255, 0.9) !important; } /* ====== 处罚列表 ====== */ .chufa-list { margin-bottom: 0; padding-bottom: 30rpx; z-index: 1; } /* 加载动画 */ .jiazai-zhong { display: flex; flex-direction: column; align-items: center; padding: 60rpx 0; color: var(--cyber-blue); } .loading-animation { display: flex; justify-content: center; margin-bottom: 20rpx; } .loading-dot { width: 20rpx; height: 20rpx; border-radius: 50%; background-color: var(--cyber-blue); margin: 0 10rpx; animation: pulse 1.5s infinite ease-in-out; } .loading-dot:nth-child(2) { animation-delay: 0.2s; } .loading-dot:nth-child(3) { animation-delay: 0.4s; } @keyframes pulse { 0%, 100% { transform: scale(0.8); opacity: 0.5; } 50% { transform: scale(1.2); opacity: 1; } } /* 处罚卡片 */ .chufa-card { background: #fff; border-radius: 20rpx; padding: 30rpx; margin-bottom: 30rpx; border: 1rpx solid var(--cyber-border); position: relative; overflow: hidden; transition: all 0.3s; z-index: 1; } .chufa-card:active { transform: translateY(-4rpx); box-shadow: 0 10rpx 30rpx rgba(0, 0, 0, 0.3), 0 0 25rpx var(--cyber-glow); } .card-border { position: absolute; top: -1px; left: -1px; right: -1px; bottom: -1px; border-radius: 21rpx; background: linear-gradient(45deg, rgba(250, 224, 77, 0.3), rgba(255, 192, 163, 0.3), rgba(255, 208, 97, 0.3), rgba(255, 224, 130, 0.3)); z-index: -1; opacity: 0; transition: opacity 0.3s ease; } .chufa-card:active .card-border { opacity: 0.3; } .card-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 25rpx; } .shijian { color: var(--cyber-text-light) !important; font-size: 26rpx; font-family: 'Courier New', monospace; letter-spacing: 1rpx; opacity: 0.9; } .zhuangtai-badge { padding: 8rpx 25rpx; border-radius: 20rpx; font-size: 24rpx; font-weight: bold; text-transform: uppercase; letter-spacing: 2rpx; border: 1rpx solid; box-shadow: 0 0 8rpx; color: #ffffff !important; } .zhuangtai-daichuli { background: rgba(255, 0, 102, 0.2); border-color: var(--cyber-red); box-shadow: 0 0 8rpx rgba(255, 0, 102, 0.2); } .zhuangtai-yichufa { background: rgba(0, 255, 157, 0.2); border-color: var(--cyber-green); box-shadow: 0 0 8rpx rgba(0, 255, 157, 0.2); } .zhuangtai-yibohui { background: rgba(102, 102, 102, 0.2); border-color: #666; box-shadow: 0 0 8rpx rgba(102, 102, 102, 0.2); } .zhuangtai-shensuzhong { background: rgba(255, 165, 0, 0.2); border-color: #FFA500; box-shadow: 0 0 8rpx rgba(255, 165, 0, 0.2); } .zhuangtai-weizhi { background: rgba(255, 152, 0, 0.15); border-color: rgba(255, 152, 0, 0.5); box-shadow: 0 0 8rpx rgba(255, 152, 0, 0.2); } /* 其他文字内容 */ .qingqiu-row, .liyou-row, .dingdan-row { display: flex; align-items: flex-start; margin-bottom: 20rpx; } .qingqiu-label, .liyou-label, .dingdan-label { color: var(--cyber-text-light) !important; font-size: 26rpx; font-weight: bold; margin-right: 15rpx; opacity: 0.9; flex-shrink: 0; } .qingqiu-value, .liyou-value, .dingdan-value { color: var(--cyber-text) !important; font-size: 26rpx; flex: 1; word-break: break-all; } .liyou-value { line-height: 1.5; } .dingdan-value { font-family: 'Courier New', monospace; letter-spacing: 1rpx; } /* 加载更多 */ .jiazai-gengduo { text-align: center; padding: 40rpx 0; color: var(--cyber-blue); position: relative; overflow: hidden; } .scan-line { position: absolute; top: 0; left: -100%; width: 100%; height: 2rpx; background: linear-gradient(90deg, transparent, var(--cyber-blue), transparent); animation: scan 2s linear infinite; } @keyframes scan { 0% { left: -100%; } 100% { left: 100%; } } /* 没有更多数据 */ .meiyou-gengduo { text-align: center; padding: 40rpx 0; color: var(--cyber-green); font-size: 28rpx; opacity: 0.9; } /* 空状态 */ .kong-zhuangtai { display: flex; flex-direction: column; align-items: center; padding: 100rpx 40rpx; text-align: center; z-index: 1; } .empty-icon { font-size: 120rpx; color: var(--cyber-blue); margin-bottom: 30rpx; text-shadow: 0 0 15rpx var(--cyber-blue); animation: pulse 2s infinite; } .empty-text { font-size: 34rpx; color: var(--cyber-text) !important; margin-bottom: 15rpx; font-weight: bold; } .empty-subtext { font-size: 28rpx; color: var(--cyber-text-light) !important; opacity: 0.8; } /* ====== 弹窗样式 ====== */ .xiangqing-modal { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; } .modal-mask { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.7); } .modal-content { position: relative; background: #fff; border-radius: 30rpx; width: 90%; max-height: 80vh; display: flex; flex-direction: column; border: 1rpx solid var(--cyber-border); box-shadow: 0 0 35rpx rgba(135, 218, 223, 0.3); z-index: 1001; } .modal-header { display: flex; justify-content: space-between; align-items: center; padding: 40rpx 30rpx 30rpx 30rpx; border-bottom: 1rpx solid rgba(157, 250, 253, 0.2); flex-shrink: 0; } .modal-title { font-size: 36rpx; font-weight: bold; color: var(--cyber-blue); text-shadow: 0 0 8rpx var(--cyber-blue); } .modal-close { width: 60rpx; height: 60rpx; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(137, 210, 214, 0.1); border: 1rpx solid rgba(255, 208, 97, 0.3); } .modal-close:active { background: rgba(255, 208, 97, 0.2); transform: scale(0.95); } .close-icon { font-size: 40rpx; color: var(--cyber-blue); line-height: 1; } /* 弹窗主体 */ .modal-body { flex: 1; padding: 30rpx; overflow-y: auto; min-height: 200rpx; box-sizing: border-box; } /* 详情区域 */ .detail-section { margin-bottom: 40rpx; } .section-title { font-size: 32rpx; font-weight: bold; color: var(--cyber-blue); margin-bottom: 25rpx; padding-bottom: 15rpx; border-bottom: 1rpx solid rgba(255, 208, 97, 0.2); text-shadow: 0 0 8rpx var(--cyber-blue); } .detail-row { display: flex; margin-bottom: 25rpx; align-items: center; } .detail-label { color: var(--cyber-text-light) !important; font-size: 30rpx; min-width: 180rpx; margin-right: 20rpx; line-height: 1.5; opacity: 0.9; flex-shrink: 0; } .detail-value-container { flex: 1; display: flex; align-items: center; justify-content: space-between; } .detail-value { color: var(--cyber-text) !important; font-size: 30rpx; line-height: 1.5; word-break: break-all; opacity: 0.95; flex: 1; margin-right: 20rpx; } .fuzhi-btn { color: var(--cyber-blue); font-size: 24rpx; padding: 8rpx 20rpx; border-radius: 8rpx; background: rgba(255, 208, 97, 0.1); border: 1rpx solid rgba(255, 208, 97, 0.3); flex-shrink: 0; } .fuzhi-btn:active { background: rgba(255, 208, 97, 0.2); } .full-row { flex-direction: column; align-items: flex-start; } .full-row .detail-label { margin-bottom: 10rpx; min-width: auto; } /* 弹窗内的状态标签 */ .zhuangtai-badge-inline { padding: 8rpx 24rpx; border-radius: 20rpx; font-size: 26rpx; font-weight: bold; text-transform: uppercase; letter-spacing: 1rpx; border: 1rpx solid; min-width: 120rpx; text-align: center; color: #ffffff !important; } /* 理由方框 */ .liyou-full { background: rgba(255, 255, 255, 0.05); padding: 25rpx 30rpx; border-radius: 15rpx; line-height: 1.6; border: 1rpx solid rgba(218, 176, 176, 0.1); color: var(--cyber-text) !important; width: 100%; box-sizing: border-box; margin: 0; display: block; opacity: 0.95; } /* 图片网格样式 */ .tupian-grid { display: flex; flex-wrap: wrap; margin-top: 10rpx; margin-left: -5rpx; margin-right: -5rpx; } .tupian-item { width: calc(33.333% - 10rpx); margin: 5rpx; aspect-ratio: 1; border-radius: 10rpx; overflow: hidden; position: relative; border: 1rpx solid rgba(255, 208, 97, 0.2); } .tupian-image { width: 100%; height: 100%; } /* 图片预览遮罩 */ .tupian-preview { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.3); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; } .tupian-item:hover .tupian-preview { opacity: 1; } .preview-text { color: white; font-size: 24rpx; background: rgba(255, 208, 97, 0.7); padding: 8rpx 16rpx; border-radius: 8rpx; } /* 🔴【新增】弹窗底部按钮独占一行样式 */ .modal-footer { padding: 30rpx; border-top: 1rpx solid rgba(255, 208, 97, 0.2); flex-shrink: 0; } .btn-group-single { display: flex; width: 100%; } .btn-group-single .btn { flex: 1; height: 90rpx; display: flex; align-items: center; justify-content: center; border-radius: 15rpx; font-size: 32rpx; font-weight: bold; transition: all 0.3s; border: 1rpx solid; box-shadow: 0 0 12rpx; color: var(--cyber-text) !important; } .btn-group-single .btn:active { transform: scale(0.98); } /* 按钮样式 */ .btn-kefu { background: rgba(255, 208, 97, 0.1); border-color: var(--cyber-blue); box-shadow: 0 0 12rpx rgba(255, 208, 97, 0.2); } /* 响应式调整 */ @media (max-width: 375px) { .tongji-value { font-size: 36rpx; } .shijian, .qingqiu-label, .liyou-label, .dingdan-label { font-size: 24rpx; } .qingqiu-value, .liyou-value, .dingdan-value { font-size: 24rpx; } .modal-content { width: 95%; } } /* 🔴【关键修改】图片网格和图片样式 */ .tupian-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12rpx; margin-top: 10rpx; width: 100%; } .tupian-item { position: relative; width: 100%; aspect-ratio: 1; border-radius: 12rpx; overflow: hidden; border: 1rpx solid rgba(255, 208, 97, 0.3); background-color: rgba(0, 0, 0, 0.2); } .tupian-image { width: 100%; height: 100%; display: block; object-fit: cover; } /* 图片预览遮罩 */ .tupian-preview { position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.3); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; } .tupian-item:hover .tupian-preview { opacity: 1; } .preview-text { color: white; font-size: 24rpx; background: rgba(255, 208, 97, 0.7); padding: 8rpx 16rpx; border-radius: 8rpx; }