/* LibertyTV v2 skin for the WooCommerce-driven [itva_pricing_table] shortcode.
   Structure, data and prices come from the order-automation plugin; this file only restyles it.
   Flat dark cards, purple only on the primary action and the featured plan. */
.ltv-body .itva-pricing {
	--itva-pricing-primary: #b8a8ff !important;
	--itva-pricing-secondary: #7758ed !important;
	--itva-pricing-text: #f4f4f6 !important;
	--itva-pricing-button: #7758ed !important;
	--itva-pricing-card-bg: #16161a !important;
	--itva-pricing-radius: 12px !important;
	--itva-pricing-shadow: none !important;
	margin: 0 auto;
	font-family: var(--ltv-font);
	color: var(--ltv-ink);
}

/* Device tabs: segmented control */
.ltv-body .itva-pricing__tabs { margin-bottom: 28px; padding: 4px; gap: 2px; border: 1px solid var(--ltv-line-2); border-radius: 10px; background: var(--ltv-bg); }
.ltv-body .itva-pricing__tab { min-width: 110px; padding: 10px 16px; border: 0; border-radius: 7px; background: transparent; color: var(--ltv-muted); font-family: var(--ltv-font); font-size: 14px; font-weight: 600; letter-spacing: -.01em; text-transform: none; box-shadow: none; }
.ltv-body .itva-pricing__tab:hover { color: var(--ltv-ink); background: rgba(255,255,255,.04); }
.ltv-body .itva-pricing__tab.is-active { background: var(--ltv-ink); color: var(--ltv-bg); box-shadow: none; }

/* Cards */
.ltv-body .itva-pricing__grid { gap: 12px; align-items: stretch; }
.ltv-body .itva-pricing__card { position: relative; align-self: stretch; gap: 14px; padding: 28px 24px 24px; border: 1px solid var(--ltv-line-2); border-radius: 12px; background: var(--ltv-surface); box-shadow: none; overflow: visible; transition: border-color .15s ease; }
.ltv-body .itva-pricing__card:hover { border-color: rgba(255,255,255,.24); }
.ltv-body .itva-pricing__card::before { display: none; }
.ltv-body .itva-pricing__title { color: var(--ltv-ink); font-family: var(--ltv-font); font-size: 19px; font-weight: 600; letter-spacing: -.025em; }
.ltv-body .itva-pricing__subtitle { margin-top: -8px; color: var(--ltv-muted); font-size: 14px; line-height: 1.5; }
.ltv-body .itva-pricing__price { margin: 4px 0 2px; color: var(--ltv-ink); font-family: var(--ltv-font); font-size: clamp(36px, 3.6vw, 44px); font-weight: 650; letter-spacing: -.045em; font-variant-numeric: tabular-nums; }
.ltv-body .itva-pricing__price .woocommerce-Price-currencySymbol { font-size: .58em; vertical-align: .5em; margin: 0 .04em; font-weight: 600; }
.ltv-body .itva-pricing__price del { color: var(--ltv-dim); font-size: .4em; font-weight: 500; letter-spacing: -.01em; }
.ltv-body .itva-pricing__price ins { text-decoration: none; background: none; }
.ltv-body .itva-pricing__features { gap: 10px; padding-top: 18px; border-top: 1px solid var(--ltv-line); color: var(--ltv-ink-2); font-size: 14px; line-height: 1.5; }
.ltv-body .itva-pricing__features li { padding-left: 26px; }
.ltv-body .itva-pricing__features li::before { width: 18px; height: 18px; border-radius: 50%; background: rgba(52, 211, 153, .12); color: var(--ltv-ok); font-size: 10px; }
.ltv-body .itva-pricing__cta { align-self: stretch; margin-top: auto; min-height: 46px; border: 1px solid var(--ltv-line-2); border-radius: 6px; background: transparent; color: var(--ltv-ink) !important; font-family: var(--ltv-font); font-size: 15px; font-weight: 600; letter-spacing: -.01em; box-shadow: none; transition: background-color .15s, border-color .15s; }
.ltv-body .itva-pricing__cta:hover { filter: none; background: rgba(255,255,255,.06); border-color: rgba(255,255,255,.34); }
.ltv-body .itva-pricing__badge { position: absolute; top: -11px; left: 22px; margin: 0; padding: 4px 9px; border-radius: 4px; background: var(--ltv-accent); color: #fff; font-size: 11px; font-weight: 650; letter-spacing: .04em; text-transform: uppercase; box-shadow: none; }

/* Featured plan: any plan with a badge (set in LibertyTV Automation → Pricing tables) */
.ltv-body .itva-pricing__card:has(.itva-pricing__badge) { border-color: var(--ltv-accent); background: var(--ltv-surface-2); box-shadow: inset 0 0 0 1px var(--ltv-accent); }
.ltv-body .itva-pricing__card:has(.itva-pricing__badge) .itva-pricing__cta { background: var(--ltv-accent); border-color: var(--ltv-accent); color: #fff !important; }
.ltv-body .itva-pricing__card:has(.itva-pricing__badge) .itva-pricing__cta:hover { background: var(--ltv-accent-hover); }

.ltv-body .itva-pricing__payments { opacity: .75; }
.ltv-body .itva-pricing__payments img { filter: grayscale(1) brightness(1.6); opacity: .8; }

@media (max-width: 767px) {
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__mobile-controls { padding: 16px; border: 1px solid var(--ltv-line-2); border-radius: 12px; background: var(--ltv-surface); box-shadow: none; }
	.ltv-body .itva-pricing__mobile-field > label, .ltv-body .itva-pricing__mobile-label { color: var(--ltv-muted); font-size: 12px; font-weight: 600; letter-spacing: .02em; text-transform: none; }
	.ltv-body .itva-pricing__select-wrap select { border: 1px solid var(--ltv-line-2); border-radius: 8px; background: var(--ltv-bg); color: var(--ltv-ink); font-family: var(--ltv-font); font-weight: 600; }
	.ltv-body .itva-pricing__select-wrap::after { border-color: var(--ltv-muted); }
	.ltv-body .itva-pricing__duration { border: 1px solid var(--ltv-line-2); border-radius: 8px; background: var(--ltv-bg); color: var(--ltv-ink-2); font-family: var(--ltv-font); font-weight: 600; }
	.ltv-body .itva-pricing__duration.is-active { background: var(--ltv-ink); border-color: var(--ltv-ink); color: var(--ltv-bg); box-shadow: none; }
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__card { padding: 26px 20px 20px; }
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__title { font-size: 26px; }
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__mobile-connection { color: var(--ltv-muted); font-size: 15px; font-weight: 600; }
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__features { font-size: 15px; }
	.ltv-body .itva-pricing--mobile-optimized .itva-pricing__feature-toggle { color: var(--ltv-accent-ink); font-weight: 600; }
	.ltv-body .itva-pricing__badge { left: 18px; }
	.ltv-body .itva-pricing__sticky { font-family: var(--ltv-font); }
	.ltv-body .itva-pricing__sticky.is-visible { background: rgba(17, 17, 20, .94); border-top: 1px solid var(--ltv-line-2); box-shadow: 0 -10px 30px rgba(0,0,0,.4); color: var(--ltv-ink); }
	.ltv-body .itva-pricing__sticky-copy > span { color: var(--ltv-ink); font-weight: 700; }
	.ltv-body .itva-pricing__sticky-cta { border-radius: 6px; background: var(--ltv-accent); font-weight: 600; }
}

/* Tabs with 4–5 plans: one row on desktop instead of 3 + 2 */
@media (min-width: 1100px) {
	.ltv-body .itva-pricing__grid:has(> .itva-pricing__card:nth-child(4)) { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
	.ltv-body .itva-pricing__grid:has(> .itva-pricing__card:nth-child(4)) .itva-pricing__card { padding: 26px 18px 20px; }
	.ltv-body .itva-pricing__grid:has(> .itva-pricing__card:nth-child(4)) .itva-pricing__title { font-size: 17px; }
	.ltv-body .itva-pricing__grid:has(> .itva-pricing__card:nth-child(4)) .itva-pricing__price { font-size: 34px; }
	.ltv-body .itva-pricing__grid:has(> .itva-pricing__card:nth-child(4)) .itva-pricing__features { font-size: 13.5px; }
}
