/* pages/sjcf/sjcf.wxss */
/* 🔴【样式与cfss页面基本相同，只添加了独占按钮样式】 */

:root {
    --cyber-blue: rgba(0, 243, 255, 0.7);
    --cyber-pink: rgba(255, 0, 255, 0.7);
    --cyber-purple: rgba(157, 0, 255, 0.7);
    --cyber-green: rgba(0, 255, 157, 0.7);
    --cyber-red: rgba(255, 0, 102, 0.7);
    
    --cyber-bg: #2a2a3a;
    --cyber-card: #333344;
    --cyber-border: rgba(255, 255, 255, 0.15);
    --cyber-glow: rgba(0, 243, 255, 0.2);
    
    --cyber-text: #ffffff;
    --cyber-text-light: #e6e6e6;
    --cyber-text-lighter: #cccccc;
}

.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(0, 243, 255, 0.05) 1px, transparent 1px),
      linear-gradient(90deg, rgba(0, 243, 255, 0.05) 1px, transparent 1px);
    background-size: 40rpx 40rpx;
    pointer-events: none;
    opacity: 0.15;
    z-index: 0;
}

/* ====== 统计卡片 ====== */
.tongji-card {
    background: rgba(255, 0, 102, 0.3);
    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(0, 243, 255, 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: rgba(255, 0, 102, 0.3);
    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(0, 243, 255, 0.15), rgba(157, 0, 255, 0.15));
    box-shadow: 0 0 15rpx rgba(0, 243, 255, 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: rgba(560, 50, 65, 0.8);
    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(138, 60, 138, 0.3), rgba(131, 208, 212, 0.3), rgba(255, 0, 255, 0.3), rgba(0, 243, 255, 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(128, 0, 255, 0.2);
    border-color: rgba(128, 0, 255, 0.5);
    box-shadow: 0 0 8rpx rgba(128, 0, 255, 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: #3a3a4a;
    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(0, 243, 255, 0.3);
}

.modal-close:active {
    background: rgba(0, 243, 255, 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(0, 243, 255, 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(0, 243, 255, 0.1);
    border: 1rpx solid rgba(0, 243, 255, 0.3);
    flex-shrink: 0;
}

.fuzhi-btn:active {
    background: rgba(0, 243, 255, 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(0, 243, 255, 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(0, 243, 255, 0.7);
    padding: 8rpx 16rpx;
    border-radius: 8rpx;
}

/* 🔴【新增】弹窗底部按钮独占一行样式 */
.modal-footer {
    padding: 30rpx;
    border-top: 1rpx solid rgba(0, 243, 255, 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(0, 243, 255, 0.1);
    border-color: var(--cyber-blue);
    box-shadow: 0 0 12rpx rgba(0, 243, 255, 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(0, 243, 255, 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(0, 243, 255, 0.7);
    padding: 8rpx 16rpx;
    border-radius: 8rpx;
  }