/**
 * 侧边客服系统样式
 * @author VR720
 * @date 2025
 */

/* 客服侧边栏容器 */
.contact-sidebar {
    position: fixed !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 99999 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-sizing: border-box !important;
}

/* 客服项目 */
.contact-sidebar .contact-item {
    position: relative !important;
    width: 48px !important;
    height: 48px !important;
    border-radius: 10px 0 0 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: -3px 3px 12px rgba(0,0,0,0.2) !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
}

/* a 标签样式重置 */
a.contact-item {
    color: inherit !important;
    text-decoration: none !important;
    outline: none !important;
}

.contact-sidebar .contact-item:hover {
    width: 56px !important;
    box-shadow: -4px 4px 15px rgba(0,0,0,0.25) !important;
}

/* 不同类型的颜色 */
.contact-sidebar .contact-item.type-qq {
    background: linear-gradient(135deg, #12B7F5 0%, #0099CC 100%) !important;
}
.contact-sidebar .contact-item.type-qq:hover {
    background: linear-gradient(135deg, #0099CC 0%, #12B7F5 100%) !important;
}

.contact-sidebar .contact-item.type-wechat {
    background: linear-gradient(135deg, #07C160 0%, #00A651 100%) !important;
}
.contact-sidebar .contact-item.type-wechat:hover {
    background: linear-gradient(135deg, #00A651 0%, #07C160 100%) !important;
}

.contact-sidebar .contact-item.type-phone {
    background: linear-gradient(135deg, #FF6B35 0%, #E85D26 100%) !important;
}
.contact-sidebar .contact-item.type-phone:hover {
    background: linear-gradient(135deg, #E85D26 0%, #FF6B35 100%) !important;
}

.contact-sidebar .contact-item.type-email {
    background: linear-gradient(135deg, #EA4335 0%, #C5221F 100%) !important;
}
.contact-sidebar .contact-item.type-email:hover {
    background: linear-gradient(135deg, #C5221F 0%, #EA4335 100%) !important;
}

.contact-sidebar .contact-item.type-custom {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
}
.contact-sidebar .contact-item.type-custom:hover {
    background: linear-gradient(135deg, #764ba2 0%, #667eea 100%) !important;
}

/* 图标样式 */
.contact-sidebar .contact-item .contact-icon {
    width: 24px !important;
    height: 24px !important;
    fill: white !important;
    display: block !important;
}

.contact-sidebar .contact-item .contact-icon path {
    fill: white !important;
}

.contact-sidebar .contact-item .contact-icon-img {
    width: 24px !important;
    height: 24px !important;
    border-radius: 4px !important;
    display: block !important;
}

/* 悬停面板 */
.contact-sidebar .contact-panel {
    position: absolute !important;
    right: 55px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background: #fff !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.15) !important;
    padding: 15px !important;
    min-width: 180px !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: all 0.3s ease !important;
    pointer-events: none !important;
    z-index: 100000 !important;
    text-align: left !important;
}

.contact-sidebar .contact-item:hover .contact-panel {
    opacity: 1 !important;
    visibility: visible !important;
    right: 60px !important;
    pointer-events: auto !important;
}

/* 面板箭头 */
.contact-sidebar .contact-panel::after {
    content: '' !important;
    position: absolute !important;
    right: -8px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-left: 8px solid white !important;
    border-top: 8px solid transparent !important;
    border-bottom: 8px solid transparent !important;
    border-right: none !important;
}

/* 面板标题 */
.contact-sidebar .contact-panel-title {
    font-size: 14px !important;
    font-weight: bold !important;
    color: #333 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 0 8px 0 !important;
    border-bottom: 1px solid #eee !important;
    line-height: 1.4 !important;
}

/* 面板内容 */
.contact-sidebar .contact-panel-content {
    font-size: 13px !important;
    color: #666 !important;
    line-height: 1.6 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 二维码 */
.contact-sidebar .contact-qrcode {
    width: 140px !important;
    height: 140px !important;
    margin-top: 10px !important;
    border: 1px solid #eee !important;
    border-radius: 8px !important;
    display: block !important;
}

/* 复制按钮 */
.contact-sidebar .contact-copy-btn {
    display: inline-block !important;
    margin-top: 10px !important;
    padding: 6px 16px !important;
    background: #667eea !important;
    color: white !important;
    border: none !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    cursor: pointer !important;
    transition: background 0.3s !important;
    line-height: 1.4 !important;
}

.contact-sidebar .contact-copy-btn:hover {
    background: #5a6fd6 !important;
}

/* 返回顶部按钮 */
.contact-sidebar .contact-item.back-top {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%) !important;
    margin-top: 8px !important;
}

.contact-sidebar .contact-item.back-top:hover {
    background: linear-gradient(135deg, #495057 0%, #6c757d 100%) !important;
}

/* 折叠按钮已移除 */

/* 移动端适配 */
@media (max-width: 768px) {
    .contact-sidebar {
        right: 0 !important;
        bottom: 80px !important;
        top: auto !important;
        transform: none !important;
        flex-direction: column !important;
    }
    
    .contact-sidebar .contact-item {
        width: 42px !important;
        height: 42px !important;
        border-radius: 8px 0 0 8px !important;
    }
    
    .contact-sidebar .contact-item:hover {
        width: 42px !important;
    }
    
    .contact-sidebar .contact-item .contact-icon {
        width: 20px !important;
        height: 20px !important;
    }
    
    .contact-sidebar .contact-panel {
        display: none !important;
    }
    
    .contact-sidebar .contact-item.back-top {
        margin-top: 8px !important;
    }
    
    .contact-sidebar .contact-toggle {
        display: none !important;
    }
    
    .contact-sidebar.hidden {
        transform: translateX(100%) !important;
    }
}

/* 提示框样式 */
.contact-tip {
    position: fixed !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    background: rgba(0,0,0,0.8) !important;
    color: #fff !important;
    padding: 12px 24px !important;
    border-radius: 6px !important;
    z-index: 999999 !important;
    font-size: 14px !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
}

/* 移动端弹窗样式 */
.contact-modal-overlay {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0,0,0,0.6) !important;
    z-index: 999998 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px !important;
    box-sizing: border-box !important;
}

.contact-modal {
    background: #fff !important;
    border-radius: 12px !important;
    padding: 25px 20px !important;
    min-width: 280px !important;
    max-width: 90% !important;
    text-align: center !important;
    position: relative !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.3) !important;
}

.contact-modal-close {
    position: absolute !important;
    top: 10px !important;
    right: 15px !important;
    font-size: 24px !important;
    color: #999 !important;
    cursor: pointer !important;
    line-height: 1 !important;
    padding: 5px !important;
}

.contact-modal-close:hover {
    color: #333 !important;
}

.contact-modal-content {
    font-size: 16px !important;
    color: #333 !important;
    margin-bottom: 15px !important;
    word-break: break-all !important;
    line-height: 1.5 !important;
}

.contact-modal-qrcode {
    width: 180px !important;
    height: 180px !important;
    margin: 10px auto !important;
    display: block !important;
    border: 1px solid #eee !important;
    border-radius: 8px !important;
}

.contact-modal-btn {
    display: inline-block !important;
    margin-top: 15px !important;
    padding: 10px 30px !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: white !important;
    border: none !important;
    border-radius: 25px !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
    -webkit-tap-highlight-color: transparent !important;
}

.contact-modal-btn:active {
    transform: scale(0.95) !important;
    opacity: 0.9 !important;
}
