/**
 * Workbook CTA — Preview Carousel + Side-by-Side Pricing Table
 *
 * Enqueued only on the results page.
 *
 * @package SportPersonalities
 * @since 4.1.0
 */

/* ============================================================================
   UNIFIED PRICING SECTION WRAPPER
   ========================================================================= */

.sp-pricing-unified {
    margin-top: 28px;
}

/* ============================================================================
   WORKBOOK PREVIEW CAROUSEL
   ========================================================================= */

.sp-workbook-preview-carousel {
    position: relative;
    max-width: 460px;
    margin: 0 auto 28px;
    border-radius: 12px;
    overflow: hidden;
    background: #f8f9fa;
    border: 1px solid #e5e7eb;
}

.sp-workbook-preview-carousel .sp-testimonials-carousel {
    padding: 0 44px 44px 44px;
}

.sp-workbook-preview-carousel .sp-testimonials-carousel-track {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.sp-workbook-preview-carousel .sp-testimonial-carousel-slide {
    min-width: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    text-align: center;
    padding: 16px 0 0;
}

.sp-workbook-preview-carousel .sp-testimonial-carousel-slide.active {
    opacity: 1;
}

.sp-workbook-preview-carousel .sp-testimonial-carousel-slide img {
    max-width: 100%;
    height: auto;
    border-radius: 6px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.sp-workbook-preview-carousel .sp-carousel-nav {
    width: 36px;
    height: 36px;
    top: 50%;
    transform: translateY(-50%);
}

.sp-workbook-preview-carousel .sp-carousel-prev {
    left: 4px;
}

.sp-workbook-preview-carousel .sp-carousel-next {
    right: 4px;
}

.sp-workbook-preview-carousel .sp-carousel-dots {
    margin-top: 14px;
}

.sp-workbook-preview-carousel .sp-carousel-dot {
    padding: 12px;
}

.sp-workbook-preview-label {
    display: block;
    text-align: center;
    font-size: 0.75em;
    color: #9ca3af;
    margin-top: 6px;
    font-style: italic;
}

/* ============================================================================
   SIDE-BY-SIDE PRICING TABLE
   ========================================================================= */

.sp-pricing-table {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 0;
}

.sp-pricing-column {
    background: #fff;
    border: 2px solid #e5e7eb;
    border-radius: 14px;
    padding: 28px 20px;
    text-align: center;
    position: relative;
    display: flex;
    flex-direction: column;
}

/* Bundle column — highlighted */
.sp-pricing-column--bundle {
    border-color: #b60f0a;
    background: #fef8f8;
}

.sp-pricing-badge {
    position: absolute;
    top: 0;
    right: 0;
    background: #b60f0a;
    color: #fff;
    font-size: 0.65em;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 5px 14px;
    border-radius: 0 12px 0 10px;
    line-height: 1.3;
}

.sp-pricing-title {
    font-size: 1.1em;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0 0 8px;
    line-height: 1.3;
}

.sp-pricing-price {
    font-size: 2em;
    font-weight: 800;
    color: #1a1a2e;
    margin: 4px 0 16px;
    line-height: 1;
}

.sp-pricing-price .sp-pricing-currency {
    font-size: 0.55em;
    vertical-align: super;
    font-weight: 700;
}

.sp-pricing-features {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
    text-align: left;
    flex: 1;
}

.sp-pricing-features li {
    font-size: 0.85em;
    color: #374151;
    padding: 5px 0;
    line-height: 1.4;
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.sp-pricing-features li::before {
    content: "\2713";
    color: #16a34a;
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 1px;
}

.sp-pricing-column--bundle .sp-pricing-features li::before {
    color: #b60f0a;
}

.sp-pricing-cta-wrap {
    margin-top: auto;
    padding-top: 8px;
}

.sp-pricing-cta {
    display: inline-block;
    font-weight: 700;
    padding: 13px 28px;
    border-radius: 6px;
    text-decoration: none;
    font-size: 0.95em;
    border: none;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
}

.sp-pricing-cta:hover {
    transform: translateY(-1px);
}

.sp-pricing-cta--standard {
    background: #1a1a2e;
    color: #fff;
    box-shadow: 0 4px 12px rgba(26, 26, 46, 0.2);
}

.sp-pricing-cta--standard:hover {
    background: #2a2a4e;
    color: #fff;
    box-shadow: 0 6px 16px rgba(26, 26, 46, 0.3);
}

.sp-pricing-cta--bundle {
    background: #b60f0a;
    color: #fff;
    box-shadow: 0 4px 12px rgba(182, 15, 10, 0.25);
}

.sp-pricing-cta--bundle:hover {
    background: #9a0d09;
    color: #fff;
    box-shadow: 0 6px 16px rgba(182, 15, 10, 0.35);
}

.sp-pricing-addl {
    margin: 8px 0 0;
    font-size: 0.78em;
    color: #6b7280;
}

.sp-pricing-addl strong {
    color: #374151;
}

/* ============================================================================
   PROFILE PAGE — WORKBOOK UPSELL
   ========================================================================= */

.sp-workbook-upsell {
    margin-top: 20px;
    padding: 20px;
    background: #fef8f8;
    border: 2px solid #b60f0a;
    border-radius: 10px;
    text-align: center;
}

.sp-workbook-upsell p {
    margin: 0 0 12px;
    font-size: 0.95em;
    color: #374151;
    line-height: 1.5;
}

.sp-workbook-upsell .sp-pricing-cta--bundle {
    padding: 10px 24px;
    font-size: 0.9em;
}

/* ============================================================================
   MOBILE RESPONSIVE
   ========================================================================= */

@media (max-width: 640px) {
    .sp-pricing-table {
        grid-template-columns: 1fr;
    }

    /* Show bundle first on mobile */
    .sp-pricing-column--bundle {
        order: -1;
    }

    .sp-pricing-column {
        padding: 24px 18px;
    }

    .sp-workbook-preview-carousel {
        max-width: 100%;
    }

    .sp-workbook-preview-carousel .sp-testimonials-carousel {
        padding: 0 0 36px 0;
    }

    .sp-workbook-preview-carousel .sp-carousel-nav {
        display: none;
    }
}
