// ==================== 品牌色变量 ====================
$brand-color: #0055AA;
$brand-color-light: #EBF5FF;
$brand-color-hover: #004488;

// ==================== 工单管理页面样式 ====================
.workcase-container {
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 0;
}

// 筛选卡片
.filter-card {
    background: #fff;
    border-radius: 16px;
    border: 1px solid #f1f5f9;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    
    :deep(.el-card__body) {
        padding: 20px;
    }
}

.ticket-filters {
    display: flex;
    flex-direction: column;
    gap: 16px;
    
    @media (min-width: 1024px) {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }
}

// 状态标签组
:deep(.el-radio-group) {
    display: inline-flex;
    background: #f1f5f9;
    padding: 4px;
    border-radius: 8px;
    
    .el-radio-button {
        .el-radio-button__inner {
            border: none;
            background: transparent;
            color: #64748b;
            font-weight: 500;
            padding: 8px 16px;
            border-radius: 6px;
            box-shadow: none;
            
            &:hover {
                color: #1e293b;
            }
        }
        
        &.is-active {
            .el-radio-button__inner {
                background: $brand-color;
                color: #fff;
                box-shadow: 0 2px 8px rgba($brand-color, 0.25);
            }
        }
    }
}

.filter-right {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

// 下拉选择框样式
:deep(.el-select) {
    .el-input__wrapper {
        border-radius: 8px;
        border: 1px solid #e2e8f0;
        box-shadow: none;
        
        &:hover {
            border-color: $brand-color;
        }
        
        &.is-focus {
            border-color: $brand-color;
            box-shadow: 0 0 0 2px rgba($brand-color, 0.1);
        }
    }
}

// 搜索输入框
:deep(.el-input) {
    .el-input__wrapper {
        border-radius: 8px;
        border: 1px solid #e2e8f0;
        box-shadow: none;
        
        &:hover {
            border-color: $brand-color;
        }
        
        &.is-focus {
            border-color: $brand-color;
            box-shadow: 0 0 0 2px rgba($brand-color, 0.1);
        }
    }
}

// 工单列表卡片
:deep(.el-card) {
    border-radius: 16px;
    border: 1px solid #f1f5f9;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

// 表格样式
:deep(.el-table) {
    --el-table-header-bg-color: #fff;
    --el-table-row-hover-bg-color: rgba(248, 250, 252, 0.5);
    
    thead {
        th {
            background: #fff;
            border-bottom: 1px solid #f1f5f9;
            color: #94a3b8;
            font-weight: 500;
            font-size: 12px;
            text-transform: uppercase;
            letter-spacing: 0.05em;
            padding: 12px 16px;
        }
    }
    
    tbody {
        tr {
            transition: background 0.15s;
            
            &:hover {
                background: rgba(248, 250, 252, 0.5);
            }
            
            td {
                padding: 16px;
                border-bottom: 1px solid #f8fafc;
            }
        }
    }
}

// 工单号链接
.ticket-no {
    color: $brand-color;
    font-weight: 600;
    cursor: pointer;
    transition: color 0.2s;
    
    &:hover {
        color: $brand-color-hover;
        text-decoration: underline;
    }
}

// 客户信息
.customer-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    
    .name {
        font-weight: 600;
        color: #1e293b;
        font-size: 14px;
    }
    
    .phone {
        font-size: 12px;
        color: #94a3b8;
    }
}

// 未指派标签
.unassigned {
    color: #94a3b8;
    font-style: italic;
}

// 标签样式覆盖
:deep(.el-tag) {
    border-radius: 9999px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 500;
    border: none;
    
    &.el-tag--warning {
        background: #fef3c7;
        color: #d97706;
    }
    
    &.el-tag--info {
        background: #dbeafe;
        color: #2563eb;
    }
    
    &.el-tag--success {
        background: #dcfce7;
        color: #16a34a;
    }
    
    &.el-tag--danger {
        background: #fee2e2;
        color: #dc2626;
    }
}

// 操作按钮
:deep(.el-button--link) {
    padding: 4px 8px;
    
    &.el-button--primary {
        color: $brand-color;
        
        &:hover {
            color: $brand-color-hover;
        }
    }
    
    &.el-button--warning {
        color: #f59e0b;
        
        &:hover {
            color: #d97706;
        }
    }
    
    &.el-button--success {
        color: #22c55e;
        
        &:hover {
            color: #16a34a;
        }
    }
}

// 分页样式
.table-pagination {
    padding: 16px 20px;
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #f1f5f9;
    background: #fff;
}

:deep(.el-pagination) {
    .el-pager {
        li {
            border-radius: 6px;
            
            &.is-active {
                background: $brand-color;
                color: #fff;
            }
        }
    }
    
    .btn-prev,
    .btn-next {
        border-radius: 6px;
    }
}

// 弹窗样式
:deep(.el-dialog) {
    border-radius: 16px;
    overflow: hidden;
    
    .el-dialog__header {
        padding: 20px 24px;
        border-bottom: 1px solid #f1f5f9;
        margin-right: 0;
        
        .el-dialog__title {
            font-size: 18px;
            font-weight: 600;
            color: #1e293b;
        }
    }
    
    .el-dialog__body {
        padding: 24px;
    }
    
    .el-dialog__footer {
        padding: 16px 24px;
        border-top: 1px solid #f1f5f9;
    }
}

// 表单样式
:deep(.el-form) {
    .el-form-item__label {
        color: #64748b;
        font-weight: 500;
    }
    
    .el-input__wrapper,
    .el-textarea__inner {
        border-radius: 8px;
    }
}

// 主按钮样式
:deep(.el-button--primary) {
    background: $brand-color;
    border-color: $brand-color;
    border-radius: 8px;
    font-weight: 500;
    
    &:hover {
        background: $brand-color-hover;
        border-color: $brand-color-hover;
    }
}

// 响应式
@media (max-width: 768px) {
    .workcase-container {
        gap: 16px;
    }
    
    .ticket-filters {
        flex-direction: column;
        align-items: stretch;
    }
    
    .filter-right {
        flex-direction: column;
        align-items: stretch;
        
        :deep(.el-select),
        :deep(.el-input) {
            width: 100% !important;
        }
    }
    
    :deep(.el-radio-group) {
        display: flex;
        flex-wrap: wrap;
        
        .el-radio-button {
            flex: 1;
            min-width: fit-content;
        }
    }
}
