/**
 * 파일명: coupang-products.css
 * 파일경로: /wp-content/plugins/coupang-auto-insert/assets/css/
 * 기능: 쿠팡 상품 카드 스타일
 * 작성일: 2025-10-09
 * 수정일: 2026-02-13
 */

/* ===================================
 * 최상단 디스클레이머
 * =================================== */

.cai-disclaimer-top {
    margin: 0 0 20px 0 !important;
    padding: 12px 15px !important;
    background: #fff8e1 !important;
    font-size: 0.9em !important;
    color: #6d5c00 !important;
    text-align: left !important;
    line-height: 1.5 !important;
    border-radius: 4px !important;
    font-weight: 500 !important;
    border: 1px solid #ffe082 !important;
}

/* ===================================
 * 컨테이너
 * =================================== */

#cai-product-container.cai-products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    justify-content: space-between !important;
    margin: 30px 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* ===================================
 * 상품 카드
 * =================================== */

#cai-product-container .cai-product-card {
    flex: 1 1 calc(33.333% - 16px) !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 8px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    background: #fff !important;
    padding: 15px !important;
    display: flex !important;
    flex-direction: column !important;
}

/* ===================================
 * 상품 이미지
 * =================================== */

#cai-product-container .cai-product-image {
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    border-radius: 4px !important;
    margin-bottom: 12px !important;
    max-height: 260px !important;
    display: block !important;
}

#cai-product-container .cai-product-image-placeholder {
    width: 100% !important;
    height: 200px !important;
    background: #f5f5f5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 4px !important;
    margin-bottom: 12px !important;
    color: #999 !important;
    font-size: 0.9em !important;
}

/* ===================================
 * 상품 제목
 * =================================== */

#cai-product-container .cai-product-title {
    font-weight: 600 !important;
    margin-bottom: 8px !important;
    height: 3em !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    color: #333 !important;
    line-height: 1.5 !important;
    font-size: 0.95em !important;
}

/* ===================================
 * 상품 가격
 * =================================== */

#cai-product-container .cai-product-price {
    color: #d32f2f !important;
    font-size: 1.2em !important;
    margin-bottom: 12px !important;
    font-weight: 700 !important;
}

/* ===================================
 * 구매 버튼
 * =================================== */

#cai-product-container .cai-product-link,
#cai-product-container a.cai-product-link,
#cai-product-container a.cai-product-link:link,
#cai-product-container a.cai-product-link:visited {
    display: inline-block !important;
    background-color: #ff6b00 !important;
    color: #ffffff !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    text-decoration: none !important;
    font-size: 0.95em !important;
    font-weight: 600 !important;
    border: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    margin-top: auto !important;
    cursor: pointer !important;
}

#cai-product-container a.cai-product-link:hover,
#cai-product-container a.cai-product-link:active,
#cai-product-container a.cai-product-link:focus {
    background-color: #e65c00 !important;
    color: #ffffff !important;
    text-decoration: none !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* ===================================
 * 다크모드 대응
 * =================================== */

@media (prefers-color-scheme: dark) {
    .cai-disclaimer-top {
        background: #3d3416 !important;
        color: #ffc107 !important;
        border-color: #5c4d1a !important;
    }

    #cai-product-container .cai-product-card {
        background: #2d2d2d !important;
        border-color: #444 !important;
    }

    #cai-product-container .cai-product-title {
        color: #e0e0e0 !important;
    }

    #cai-product-container .cai-product-price {
        color: #ff8a80 !important;
    }

    #cai-product-container .cai-product-image-placeholder {
        background: #444 !important;
        color: #999 !important;
    }
}

/* ===================================
 * 모바일 반응형: 가로 슬라이드
 * =================================== */

@media (max-width: 768px) {
    #cai-product-container.cai-products {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        -webkit-overflow-scrolling: touch !important;
        padding: 10px 5px !important;
        gap: 12px !important;
    }

    #cai-product-container .cai-product-card {
        flex: 0 0 auto !important;
        min-width: 80% !important;
        max-width: 80% !important;
        scroll-snap-align: start !important;
    }

    #cai-product-container .cai-product-image {
        max-height: 220px !important;
    }
}

/* ===================================
 * 태블릿 반응형: 2열
 * =================================== */

@media (min-width: 769px) and (max-width: 1024px) {
    #cai-product-container .cai-product-card {
        flex: 1 1 calc(50% - 16px) !important;
    }
}

/* ===================================
 * 슬라이드 인디케이터
 * =================================== */

.cai-slide-indicators {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 12px;
    padding: 8px 0;
}

.cai-slide-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ddd;
    cursor: pointer;
    transition: width 0.2s ease, border-radius 0.2s ease;
}

.cai-slide-dot.active {
    background: #ff6b00;
    width: 24px;
    border-radius: 4px;
}

@media (min-width: 769px) {
    .cai-slide-indicators {
        display: none;
    }
}

/* ===================================
 * 에러/로딩 상태
 * =================================== */

.cai-error {
    padding: 15px !important;
    background: #ffebee !important;
    color: #c62828 !important;
    margin: 20px 0 !important;
    border-radius: 4px !important;
    border: 1px solid #ef9a9a !important;
}

.cai-loading {
    padding: 20px !important;
    text-align: center !important;
    color: #999 !important;
    font-style: italic !important;
}