/* ProductBoost 1.0.10 — Concept 25 canonical shared stylesheet.
 * Loaded after both admin and frontend styles so one source of truth wins the cascade.
 */
.productboost-bundle-responsiveurgency,
.productboost-bundle-responsiveurgency * {
    box-sizing: border-box !important;
}

.productboost-bundle-responsiveurgency {
    --pb-c25-shell-bg: #FFFFFF;
    --pb-c25-shell-border: #E8EBF1;
    --pb-c25-header-start: #0F172A;
    --pb-c25-header-end: #2A2140;
    --pb-c25-header-text: #FFFFFF;
    --pb-c25-header-muted: #CBD5E1;
    --pb-c25-live-accent: #FDE68A;
    --pb-c25-row-bg: #FFFFFF;
    --pb-c25-row-hover: #FBFCFF;
    --pb-c25-row-border: #E8EBF1;
    --pb-c25-active-start: #7B2FF7;
    --pb-c25-active-end: #F72585;
    --pb-c25-text: #111827;
    --pb-c25-muted: #64748B;
    --pb-c25-badge-bg: #FFE4E6;
    --pb-c25-badge-text: #9F1239;
    --pb-c25-hot-badge-bg: #111827;
    --pb-c25-hot-badge-text: #FFFFFF;
    --pb-c25-total-bg: #FAFBFF;
    --pb-c25-total-text: #111827;
    --pb-c25-total-muted: #64748B;
    --pb-c25-save-start: #10B981;
    --pb-c25-save-end: #22C55E;
    --pb-c25-save-text: #FFFFFF;
    --pb-c25-shell-radius: 20px;
    --pb-c25-row-pad-y: 9px;
    --pb-c25-row-pad-x: 12px;
    --pb-c25-row-gap: 10px;
    --pb-c25-discount-size: 32px;
    --pb-c25-title-size: 14px;
    --pb-c25-note-size: 11px;
    --pb-c25-price-size: 16px;
    --pb-c25-badge-size: 10px;
    --pb-c25-total-price-size: 20px;
    --pb-c25-shadow-opacity: .06;
    color: var(--pb-c25-text) !important;
    display: block !important;
    font-family: inherit !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

.productboost-bundle-responsiveurgency input[type="hidden"] {
    display: none !important;
}

.productboost-bundle-responsiveurgency .pb-c25-shell {
    background: var(--pb-c25-shell-bg) !important;
    border: 1px solid var(--pb-c25-shell-border) !important;
    border-radius: var(--pb-c25-shell-radius) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, var(--pb-c25-shadow-opacity)) !important;
    overflow: hidden !important;
    width: 100% !important;
}

.productboost-bundle-responsiveurgency .pb-c25-head {
    align-items: center !important;
    background: linear-gradient(90deg, var(--pb-c25-header-start), var(--pb-c25-header-end)) !important;
    color: var(--pb-c25-header-text) !important;
    display: flex !important;
    gap: 12px !important;
    justify-content: space-between !important;
    min-height: 42px !important;
    padding: 10px 14px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-head-copy {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-title {
    color: var(--pb-c25-header-text) !important;
    display: block !important;
    font-size: var(--pb-c25-title-size) !important;
    font-weight: 900 !important;
    letter-spacing: -.03em !important;
    line-height: 1.1 !important;
    margin: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-subtitle {
    color: var(--pb-c25-header-muted) !important;
    display: none !important;
    font-size: var(--pb-c25-note-size) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    margin: 2px 0 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-dealmeter {
    align-items: center !important;
    background: rgba(255, 255, 255, .10) !important;
    border: 1px solid rgba(255, 255, 255, .18) !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12) !important;
    color: var(--pb-c25-header-text) !important;
    display: grid !important;
    flex: 0 0 auto !important;
    gap: 8px !important;
    grid-template-columns: auto auto 54px !important;
    min-width: 178px !important;
    padding: 7px 9px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-pulse {
    animation: pb-c25-live-pulse 1.35s ease-out infinite !important;
    background: var(--pb-c25-live-accent) !important;
    border-radius: 999px !important;
    height: 9px !important;
    width: 9px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-meter-copy {
    display: flex !important;
    flex-direction: column !important;
    line-height: 1 !important;
    min-width: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-meter-copy strong,
.productboost-bundle-responsiveurgency .pb-c25-meter-copy em {
    display: block !important;
    font-style: normal !important;
    line-height: 1 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.productboost-bundle-responsiveurgency .pb-c25-meter-copy strong {
    color: var(--pb-c25-live-accent) !important;
    font-size: 10px !important;
    font-weight: 1000 !important;
    letter-spacing: .09em !important;
}

.productboost-bundle-responsiveurgency .pb-c25-meter-copy em {
    color: var(--pb-c25-header-text) !important;
    font-size: 10.5px !important;
    font-weight: 850 !important;
    margin-top: 2px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-mini-track {
    background: rgba(255, 255, 255, .18) !important;
    border-radius: 999px !important;
    display: block !important;
    height: 6px !important;
    overflow: hidden !important;
    width: 54px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-mini-track i {
    animation: pb-c25-meter-slide 2.8s ease-in-out infinite !important;
    background: linear-gradient(90deg, var(--pb-c25-live-accent), #FB923C, var(--pb-c25-active-end)) !important;
    border-radius: inherit !important;
    display: block !important;
    height: 100% !important;
    width: 68% !important;
}

.productboost-bundle-responsiveurgency .pb-c25-list {
    background: var(--pb-c25-row-bg) !important;
    display: flex !important;
    flex-direction: column !important;
    margin: 0 !important;
    padding: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-row {
    -webkit-appearance: none !important;
    align-items: center !important;
    appearance: none !important;
    background: var(--pb-c25-row-bg) !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-top: 1px solid var(--pb-c25-row-border) !important;
    box-shadow: none !important;
    color: var(--pb-c25-text) !important;
    cursor: pointer !important;
    display: grid !important;
    font: inherit !important;
    gap: var(--pb-c25-row-gap) !important;
    grid-template-columns: 96px minmax(0, 1fr) 120px 104px !important;
    line-height: normal !important;
    margin: 0 !important;
    min-height: 0 !important;
    padding: var(--pb-c25-row-pad-y) var(--pb-c25-row-pad-x) !important;
    text-align: left !important;
    text-decoration: none !important;
    text-transform: none !important;
    transition: background-color .16s ease, box-shadow .16s ease, transform .16s ease !important;
    width: 100% !important;
}

.productboost-bundle-responsiveurgency .pb-c25-row:first-child {
    border-top: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-row:hover {
    background: var(--pb-c25-row-hover) !important;
}

.productboost-bundle-responsiveurgency .pb-c25-row.is-active,
.productboost-bundle-responsiveurgency .pb-c25-row.active {
    background: linear-gradient(90deg, rgba(123, 47, 247, .08), rgba(247, 37, 133, .05), transparent) !important;
    box-shadow: inset 4px 0 0 var(--pb-c25-active-end) !important;
}

.productboost-bundle-responsiveurgency .pb-c25-save {
    -webkit-background-clip: text !important;
    background: linear-gradient(135deg, var(--pb-c25-active-start), var(--pb-c25-active-end)) !important;
    background-clip: text !important;
    color: transparent !important;
    display: block !important;
    font-size: var(--pb-c25-discount-size) !important;
    font-weight: 1000 !important;
    letter-spacing: -.085em !important;
    line-height: .82 !important;
    margin: 0 !important;
    text-align: left !important;
}

.productboost-bundle-responsiveurgency .pb-c25-main {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-buy {
    color: var(--pb-c25-text) !important;
    display: block !important;
    font-size: var(--pb-c25-title-size) !important;
    font-weight: 1000 !important;
    line-height: 1.1 !important;
    margin: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-note {
    color: var(--pb-c25-muted) !important;
    display: block !important;
    font-size: var(--pb-c25-note-size) !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    margin: 2px 0 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-price {
    align-items: baseline !important;
    color: var(--pb-c25-muted) !important;
    display: flex !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    gap: 4px !important;
    justify-content: flex-end !important;
    line-height: 1.1 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

.productboost-bundle-responsiveurgency .pb-c25-price-main,
.productboost-bundle-responsiveurgency .pb-c25-price-main .woocommerce-Price-amount,
.productboost-bundle-responsiveurgency .pb-c25-price-main .woocommerce-Price-currencySymbol {
    color: var(--pb-c25-text) !important;
    font-size: var(--pb-c25-price-size) !important;
    font-weight: 950 !important;
    letter-spacing: -.03em !important;
    line-height: 1 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-badge {
    background: var(--pb-c25-badge-bg) !important;
    border: 1px solid var(--pb-c25-badge-bg) !important;
    border-radius: 999px !important;
    color: var(--pb-c25-badge-text) !important;
    font-size: var(--pb-c25-badge-size) !important;
    font-weight: 1000 !important;
    justify-self: end !important;
    line-height: 1 !important;
    padding: 7px 9px !important;
    white-space: nowrap !important;
}

.productboost-bundle-responsiveurgency .pb-c25-row.is-hot .pb-c25-badge {
    background: var(--pb-c25-hot-badge-bg) !important;
    border-color: var(--pb-c25-hot-badge-bg) !important;
    color: var(--pb-c25-hot-badge-text) !important;
}

.productboost-bundle-responsiveurgency .pb-c25-total {
    align-items: center !important;
    background: var(--pb-c25-total-bg) !important;
    border-top: 1px solid var(--pb-c25-row-border) !important;
    display: flex !important;
    gap: 12px !important;
    justify-content: space-between !important;
    margin: 0 !important;
    padding: 10px 12px !important;
}

.productboost-bundle-responsiveurgency .pb-c25-total-copy {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-total-label {
    color: var(--pb-c25-total-muted) !important;
    display: block !important;
    font-size: var(--pb-c25-note-size) !important;
    font-weight: 850 !important;
    line-height: 1.1 !important;
    margin: 0 !important;
}

.productboost-bundle-responsiveurgency .pb-c25-total-price,
.productboost-bundle-responsiveurgency .pb-c25-total-price .woocommerce-Price-amount,
.productboost-bundle-responsiveurgency .pb-c25-total-price .woocommerce-Price-currencySymbol {
    color: var(--pb-c25-total-text) !important;
    display: block !important;
    font-size: var(--pb-c25-total-price-size) !important;
    font-weight: 1000 !important;
    letter-spacing: -.05em !important;
    line-height: 1.05 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.productboost-bundle-responsiveurgency .pb-c25-total-save {
    background: linear-gradient(135deg, var(--pb-c25-save-start), var(--pb-c25-save-end)) !important;
    border-radius: 999px !important;
    box-shadow: 0 8px 18px rgba(16, 185, 129, .18) !important;
    color: var(--pb-c25-save-text) !important;
    display: block !important;
    flex: 0 0 auto !important;
    font-size: var(--pb-c25-note-size) !important;
    font-weight: 1000 !important;
    line-height: 1.1 !important;
    min-height: 0 !important;
    min-width: 0 !important;
    padding: 8px 11px !important;
    text-align: center !important;
    white-space: nowrap !important;
}

/* Admin preview: force the compact state based on the explicit class,
 * not the browser viewport. This is the key fix for the preview sidebar. */
.productboost-bundle-responsiveurgency.pb-preview-mobile {
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 390px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-head {
    align-items: flex-start !important;
    background: var(--pb-c25-shell-bg) !important;
    color: var(--pb-c25-text) !important;
    min-height: auto !important;
    padding: 14px 12px 10px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-title {
    color: var(--pb-c25-text) !important;
    font-size: max(16px, var(--pb-c25-title-size)) !important;
    letter-spacing: -.04em !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-subtitle {
    color: var(--pb-c25-muted) !important;
    display: block !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-dealmeter {
    background: #FFF7ED !important;
    border: 1px solid #FED7AA !important;
    box-shadow: none !important;
    color: #9A3412 !important;
    gap: 6px !important;
    grid-template-columns: auto auto !important;
    min-width: auto !important;
    padding: 7px 9px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-pulse {
    background: #F97316 !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-meter-copy strong,
.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-meter-copy em {
    color: #9A3412 !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-mini-track {
    display: none !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-list {
    background: var(--pb-c25-shell-bg) !important;
    gap: 8px !important;
    padding: 0 10px 2px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-row {
    background: var(--pb-c25-row-hover) !important;
    border: 1px solid var(--pb-c25-row-border) !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    gap: 9px !important;
    grid-template-columns: 70px minmax(0, 1fr) auto !important;
    min-height: 58px !important;
    padding: 10px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-row:first-child {
    border-top: 1px solid var(--pb-c25-row-border) !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-row.is-active,
.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-row.active {
    background: linear-gradient(var(--pb-c25-row-bg), var(--pb-c25-row-bg)) padding-box,
                linear-gradient(135deg, var(--pb-c25-active-start), var(--pb-c25-active-end), #FF8A00) border-box !important;
    border: 2px solid transparent !important;
    box-shadow: 0 9px 18px rgba(247, 37, 133, .13) !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-save {
    font-size: max(26px, var(--pb-c25-discount-size)) !important;
    text-align: center !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-price {
    align-items: flex-end !important;
    flex-direction: column !important;
    gap: 1px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-badge {
    display: none !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total {
    background: var(--pb-c25-header-start) !important;
    border: 0 !important;
    border-radius: 16px !important;
    margin: 8px 10px 10px !important;
    padding: 11px !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total-label {
    color: #A7F3D0 !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total-price,
.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total-price .woocommerce-Price-amount,
.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total-price .woocommerce-Price-currencySymbol {
    color: var(--pb-c25-header-text) !important;
    font-size: max(18px, var(--pb-c25-total-price-size)) !important;
}

.productboost-bundle-responsiveurgency.pb-preview-mobile .pb-c25-total-save {
    font-size: max(10px, var(--pb-c25-note-size)) !important;
    padding: 9px 11px !important;
}

@media (max-width: 767px) {
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-head {
        align-items: flex-start !important;
        background: var(--pb-c25-shell-bg) !important;
        color: var(--pb-c25-text) !important;
        min-height: auto !important;
        padding: 14px 12px 10px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-title {
        color: var(--pb-c25-text) !important;
        font-size: max(16px, var(--pb-c25-title-size)) !important;
        letter-spacing: -.04em !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-subtitle {
        color: var(--pb-c25-muted) !important;
        display: block !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-dealmeter {
        background: #FFF7ED !important;
        border: 1px solid #FED7AA !important;
        box-shadow: none !important;
        color: #9A3412 !important;
        gap: 6px !important;
        grid-template-columns: auto auto !important;
        min-width: auto !important;
        padding: 7px 9px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-pulse {
        background: #F97316 !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-meter-copy strong,
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-meter-copy em {
        color: #9A3412 !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-mini-track {
        display: none !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-list {
        background: var(--pb-c25-shell-bg) !important;
        gap: 8px !important;
        padding: 0 10px 2px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-row {
        background: var(--pb-c25-row-hover) !important;
        border: 1px solid var(--pb-c25-row-border) !important;
        border-radius: 16px !important;
        box-shadow: none !important;
        gap: 9px !important;
        grid-template-columns: 70px minmax(0, 1fr) auto !important;
        min-height: 58px !important;
        padding: 10px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-row:first-child {
        border-top: 1px solid var(--pb-c25-row-border) !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-row.is-active,
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-row.active {
        background: linear-gradient(var(--pb-c25-row-bg), var(--pb-c25-row-bg)) padding-box,
                    linear-gradient(135deg, var(--pb-c25-active-start), var(--pb-c25-active-end), #FF8A00) border-box !important;
        border: 2px solid transparent !important;
        box-shadow: 0 9px 18px rgba(247, 37, 133, .13) !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-save {
        font-size: max(26px, var(--pb-c25-discount-size)) !important;
        text-align: center !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-price {
        align-items: flex-end !important;
        flex-direction: column !important;
        gap: 1px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-badge {
        display: none !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total {
        background: var(--pb-c25-header-start) !important;
        border: 0 !important;
        border-radius: 16px !important;
        margin: 8px 10px 10px !important;
        padding: 11px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total-label {
        color: #A7F3D0 !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total-price,
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total-price .woocommerce-Price-amount,
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total-price .woocommerce-Price-currencySymbol {
        color: var(--pb-c25-header-text) !important;
        font-size: max(18px, var(--pb-c25-total-price-size)) !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-total-save {
        font-size: max(10px, var(--pb-c25-note-size)) !important;
        padding: 9px 11px !important;
    }
}

@media (max-width: 430px) {
    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-head {
        gap: 8px !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-row {
        grid-template-columns: 62px minmax(0, 1fr) auto !important;
    }

    .productboost-bundle-responsiveurgency:not(.pb-preview-mobile) .pb-c25-save {
        font-size: min(30px, max(24px, var(--pb-c25-discount-size))) !important;
    }
}

@keyframes pb-c25-live-pulse {
    0% { transform: scale(1); }
    70% { transform: scale(1.08); }
    100% { transform: scale(1); }
}

@keyframes pb-c25-meter-slide {
    0%, 100% { width: 54%; }
    50% { width: 86%; }
}
