/**
 * AI Product Review Generator - RetailCoupons Style v5 (Bulletproof Version)
 * Resilient to theme conflicts and legacy HTML structures.
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* Bulletproof Container */
.aprg-product-card {
    display: block !important;
    font-family: 'Inter', sans-serif !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 16px !important;
    padding: 24px !important;
    margin: 32px 0 !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05) !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    clear: both !important;
    color: #111827 !important;
    line-height: normal !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.aprg-product-card:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04) !important;
}

.aprg-product-card * {
    box-sizing: border-box !important;
}

/* Horizontal Layout Fix for Both Old and New HTML */
.aprg-product-header,
.aprg-flex-container {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 24px !important;
    flex-wrap: wrap !important;
    /* Changed from nowrap to wrap allow stacking if too narrow */
    margin-bottom: 20px !important;
}

/* Image column fix - Larger Size */
.aprg-product-image,
.aprg-image-col {
    flex: 0 0 200px !important;
    width: 200px !important;
    min-width: 200px !important;
    height: 200px !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 10px !important;
    border: 1px solid #f3f4f6 !important;
    font-size: 0 !important;
    /* Hide potential alt text rendering behind image */
    line-height: 0 !important;
}

.aprg-product-image img,
.aprg-image-col img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    transition: transform 0.3s ease !important;
}

/* UX Pro Max: Hover Effect */
.aprg-product-image:hover img,
.aprg-image-col:hover img {
    transform: scale(1.08) !important;
}

/* Content column fix */
.aprg-product-info,
.aprg-product-content,
.aprg-content-col {
    flex: 1 1 300px !important;
    /* Allow growing and shrinking, base 300px */
    min-width: 50% !important;
    /* Ensure it takes at least half width if wrapping doesn't occur, or force wrap */
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 16px !important;
}

/* Title Styling - Remove theme overrides */
.aprg-product-title,
.aprg-product-title a {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: #111827 !important;
    text-decoration: none !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    letter-spacing: -0.01em !important;
}

/* Meta Styling */
.aprg-product-meta,
.aprg-meta-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    font-size: 14px !important;
    color: #6b7280 !important;
}

.aprg-rating-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    font-size: 15px !important;
    background: #f3f4f6 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
}

/* Price Styling */
/* Price Removed - Hidden for legacy compatibility */
.aprg-product-price {
    display: none !important;
}

/* Button Styling - Force Right Side */
.aprg-buy-button,
.aprg-action-col {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
}

.aprg-btn-amazon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(135deg, #a855f7 0%, #7e22ce 100%) !important;
    color: #ffffff !important;
    padding: 14px 28px !important;
    border-radius: 10px !important;
    text-decoration: none !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border: none !important;
    white-space: nowrap !important;
    min-width: 180px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 6px -1px rgba(126, 34, 206, 0.2) !important;
}

.aprg-btn-amazon:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 10px 15px -3px rgba(126, 34, 206, 0.3) !important;
}

/* Accordion Styling */
.aprg-pros-cons-wrapper {
    margin-top: 24px !important;
    padding-top: 20px !important;
    border-top: 1px dashed #e5e7eb !important;
}

.aprg-pros-cons-toggle {
    background: none !important;
    border: none !important;
    padding: 8px 16px !important;
    font-weight: 600 !important;
    color: #4b5563 !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    transition: background 0.2s !important;
    width: 100%;
    justify-content: flex-start;
}

.aprg-pros-cons-toggle:hover {
    background: #f9fafb !important;
    color: #111827 !important;
}

/* Grid Layout for Pros/Cons */
.aprg-grid-2-cols {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
    margin-top: 16px !important;
}

.aprg-pros h4,
.aprg-cons h4 {
    margin: 0 0 10px 0 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
}

.aprg-pros h4 {
    color: #16a34a !important;
}

.aprg-cons h4 {
    color: #dc2626 !important;
}

.aprg-pros ul,
.aprg-cons ul {
    margin: 0 !important;
    padding-left: 20px !important;
    list-style-type: disc !important;
}

.aprg-pros li,
.aprg-cons li {
    margin-bottom: 6px !important;
    color: #374151 !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* Responsive Fixes */
@media (max-width: 768px) {

    .aprg-product-header,
    .aprg-flex-container {
        flex-direction: column !important;
        align-items: center !important;
        gap: 20px !important;
    }

    .aprg-product-image,
    .aprg-image-col {
        width: 100% !important;
        max-width: 280px !important;
        height: 280px !important;
        margin: 0 auto !important;
        flex: 0 0 auto !important;
    }

    .aprg-product-info,
    .aprg-product-content,
    .aprg-content-col {
        width: 100% !important;
        text-align: center !important;
        align-items: center !important;
        flex: 1 !important;
    }

    .aprg-product-meta,
    .aprg-meta-item {
        justify-content: center !important;
    }

    .aprg-buy-button,
    .aprg-action-col {
        width: 100% !important;
        margin-left: 0 !important;
        margin-top: 10px !important;
    }

    .aprg-btn-amazon {
        width: 100% !important;
    }

    .aprg-grid-2-cols {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}