/* LibertyTV Connector — pricing table. Scoped under .ltvc-pricing; no global rules. */
.ltvc-pricing{--ltvc-bg:#0f172a;--ltvc-surface:#1e293b;--ltvc-border:#334155;--ltvc-text:#e2e8f0;--ltvc-text-2:#94a3b8;--ltvc-brand:#5a48ff;--ltvc-brand-hover:#4a39e6;--ltvc-focus:#8b7dff;--ltvc-radius:16px;--ltvc-control:10px;box-sizing:border-box;max-width:100%;margin:0 auto;padding:0 16px;color:inherit;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;overflow-x:hidden}
.ltvc-pricing *,.ltvc-pricing *::before,.ltvc-pricing *::after{box-sizing:inherit}
.ltvc-pricing__heading{font-size:24px;line-height:1.25;margin:0 0 16px;text-align:center;color:inherit}
.ltvc-pricing__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:16px}
@media (min-width:640px){.ltvc-pricing__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.ltvc-pricing[data-ltvc-cols="3"] .ltvc-pricing__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ltvc-pricing[data-ltvc-cols="4"] .ltvc-pricing__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ltvc-card{background:var(--ltvc-surface);color:var(--ltvc-text);border:1px solid var(--ltvc-border);border-radius:var(--ltvc-radius);padding:20px;display:flex;flex-direction:column;gap:12px;min-width:0}
.ltvc-card__title{font-size:18px;line-height:1.3;margin:0;font-weight:600;overflow-wrap:anywhere}
.ltvc-card__price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}
.ltvc-card__amount{font-size:28px;font-weight:700;line-height:1.1}
.ltvc-card__amount .woocommerce-Price-amount{font-size:inherit}
.ltvc-card__per{font-size:14px;color:var(--ltvc-text-2)}
.ltvc-card__facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--ltvc-text-2)}
.ltvc-card__facts li::before{content:"✓";color:#34d399;margin-inline-end:8px}
.ltvc-card__form{margin:auto 0 0;padding:0}
.ltvc-btn{display:inline-flex;width:100%;min-height:44px;align-items:center;justify-content:center;padding:10px 16px;border:0;border-radius:var(--ltvc-control);background:var(--ltvc-brand);color:#fff;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none}
.ltvc-btn:hover{background:var(--ltvc-brand-hover)}
.ltvc-btn:focus-visible{outline:3px solid var(--ltvc-focus);outline-offset:2px}
.ltvc-btn--disabled,.ltvc-btn[disabled]{background:var(--ltvc-border);color:var(--ltvc-text-2);cursor:not-allowed}
.ltvc-pricing__notice{margin:12px 0 0;font-size:14px;opacity:.8;text-align:center}
.ltvc-state{background:var(--ltvc-surface);color:var(--ltvc-text);border:1px solid var(--ltvc-border);border-radius:var(--ltvc-radius);padding:20px;text-align:center}
.ltvc-state__title{margin:0 0 6px;font-weight:600;font-size:16px}
.ltvc-state__text{margin:0;font-size:14px;color:var(--ltvc-text-2)}
.ltvc-state--error{border-color:#fb7185}
.ltvc-pricing .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
@media (prefers-reduced-motion:no-preference){.ltvc-btn{transition:background-color .15s ease}}
/* Optional light variant for light storefront themes: [libertytv_pricing theme="light"] */
.ltvc-pricing--light{--ltvc-surface:#ffffff;--ltvc-border:#e2e8f0;--ltvc-text:#111020;--ltvc-text-2:#475569}
.ltvc-pricing--light .ltvc-card{box-shadow:0 18px 48px rgba(30,25,70,.10)}

/* 0.1.5/0.1.6 — grouped plans (connections tabs → duration cards). Scoped under .ltvc-plans.
   Colours, font and radii follow the LibertyTV theme tokens (--ltv-*) when present, with the same values as fallback. */
.ltvc-plans{color-scheme:dark;--p-surface:var(--ltv-surface,#16161a);--p-surface-2:var(--ltv-surface-2,#1d1d22);--p-border:var(--ltv-line-2,rgba(255,255,255,.14));--p-line:var(--ltv-line,rgba(255,255,255,.08));--p-text:var(--ltv-ink,#f4f4f6);--p-text-2:var(--ltv-muted,#a1a1aa);--p-brand:var(--ltv-accent,#7758ed);--p-brand-h:var(--ltv-accent-hover,#6a4be0);--p-brand-ink:var(--ltv-accent-ink,#b8a8ff);--p-good:var(--ltv-ok,#34d399);--p-gold:var(--ltv-warn,#fbbf24);--p-radius:var(--ltv-radius-l,12px);--p-radius-s:var(--ltv-radius-s,6px);--p-font:var(--ltv-font,inherit);box-sizing:border-box;max-width:var(--ltv-wrap,1240px);margin:0 auto;padding:0;font-family:var(--p-font);text-align:left}
.ltvc-plans *,.ltvc-plans *::before,.ltvc-plans *::after{box-sizing:inherit}
.ltvc-plans p,.ltvc-plans h2,.ltvc-plans h3,.ltvc-plans h4,.ltvc-plans ul{max-width:none}
.ltvc-plans--light{color-scheme:light;--p-surface:#fff;--p-surface-2:#f6f6fb;--p-border:#e3e3ee;--p-line:#ececf3;--p-text:#141420;--p-text-2:#5b5b70}
.ltvc-plans__heading{font-size:clamp(28px,4vw,40px);line-height:1.15;margin:0 0 10px;text-align:center;color:inherit;letter-spacing:-.02em}
.ltvc-plans__sub{margin:0 auto 32px!important;max-width:640px!important;text-align:center;color:inherit;opacity:.72;line-height:1.55}
.ltvc-plans__step{margin:0 0 32px}
.ltvc-plans__step-title{font-size:18px;font-weight:600;margin:0 0 6px;text-align:center;color:inherit;letter-spacing:-.01em}
.ltvc-plans__help{margin:0 auto 16px!important;text-align:center;color:inherit;opacity:.65;font-size:14px}
.ltvc-plans__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:960px;margin:0 auto}
@media (min-width:768px){.ltvc-plans__tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ltvc-tab{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);color:var(--p-text);cursor:pointer;text-align:left;font:inherit;min-height:64px;transition:border-color .15s,background .15s}
.ltvc-tab:hover{border-color:var(--p-brand)}
.ltvc-tab.is-active,.ltvc-tab[aria-selected="true"]{border-color:var(--p-brand);box-shadow:0 0 0 1px var(--p-brand) inset;background:var(--p-surface-2)}
.ltvc-tab:focus-visible{outline:2px solid var(--p-brand-ink);outline-offset:2px}
.ltvc-tab__title{font-weight:600;font-size:15px;color:var(--p-text)}
.ltvc-tab__from{font-size:13px;color:var(--p-text-2)}
.ltvc-plans__panel[hidden]{display:none}
.ltvc-plans__grid{list-style:none!important;margin:14px 0 0!important;padding:0!important;display:grid;grid-template-columns:1fr;gap:14px}
@media (min-width:640px){.ltvc-plans__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.ltvc-plans__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ltvc-plan{position:relative;display:flex;flex-direction:column;gap:10px;margin:0!important;padding:24px 20px;background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);min-width:0;color:var(--p-text)}
.ltvc-plan--best{border-color:var(--p-brand);box-shadow:0 0 0 1px var(--p-brand) inset}
.ltvc-plan__ribbon{position:absolute;top:-11px;right:16px;background:var(--p-gold);color:#1a1300;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;line-height:1.2}
.ltvc-plan__top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:28px}
.ltvc-plan__title{margin:0!important;font-size:18px;font-weight:600;color:var(--p-text);letter-spacing:-.01em}
.ltvc-plan__save{font-size:12px;font-weight:600;color:var(--p-good);background:rgba(52,211,153,.12);padding:4px 9px;border-radius:999px;white-space:nowrap}
.ltvc-plan__price{margin:2px 0 0!important;font-size:34px;font-weight:700;line-height:1.1;color:var(--p-text);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ltvc-plan__price .woocommerce-Price-amount{font-size:inherit}
.ltvc-plan__per{margin:0!important;font-size:13px;color:var(--p-text-2);font-variant-numeric:tabular-nums}
.ltvc-plan__features{list-style:none!important;margin:8px 0 0!important;padding:10px 0 0!important;border-top:1px solid var(--p-line);display:flex;flex-direction:column;gap:7px;font-size:14px;color:var(--p-text)}
.ltvc-plan__features li{margin:0!important;padding:0!important}
.ltvc-plan__features li::before{content:"✓";color:var(--p-good);margin-inline-end:8px;font-weight:700}
.ltvc-plan__desc{margin:2px 0 0!important;font-size:13px;line-height:1.5;color:var(--p-text-2)}
.ltvc-plan__form{margin:auto 0 0!important;padding-top:12px}
.ltvc-plans .ltvc-btn{display:inline-flex;width:100%;min-height:46px;align-items:center;justify-content:center;padding:0 16px;border:1px solid transparent;border-radius:var(--p-radius-s);background:var(--p-brand);color:#fff!important;font-family:var(--p-font);font-size:15px;font-weight:600;line-height:1;cursor:pointer;text-decoration:none;transition:background .15s}
.ltvc-plans .ltvc-btn:hover{background:var(--p-brand-h)}
.ltvc-plans .ltvc-plan:not(.ltvc-plan--best) .ltvc-btn{background:transparent;border-color:var(--p-border);color:var(--p-text)!important}
.ltvc-plans .ltvc-plan:not(.ltvc-plan--best) .ltvc-btn:hover{border-color:var(--p-brand);background:var(--p-brand);color:#fff!important}
.ltvc-plans .ltvc-btn:focus-visible{outline:2px solid var(--p-brand-ink);outline-offset:2px}
.ltvc-plans .ltvc-btn--disabled,.ltvc-plans .ltvc-btn--disabled:hover{background:var(--p-surface-2)!important;color:var(--p-text-2)!important;border-color:var(--p-border)!important;cursor:not-allowed}
@media (max-width:480px){.ltvc-tab{padding:12px}.ltvc-tab__title{font-size:14px;white-space:nowrap}.ltvc-tab__from{font-size:12px}.ltvc-plan__price{font-size:30px}}

/* 0.2.0 — both currencies are printed; the one named on the table is shown (EUR for Europe, USD elsewhere). */
.ltvc-plans .ltvc-m{display:none}
.ltvc-plans[data-ltvc-cur="EUR"] .ltvc-m[data-ltvc-c="EUR"],
.ltvc-plans[data-ltvc-cur="USD"] .ltvc-m[data-ltvc-c="USD"]{display:inline}
.ltvc-plans[data-ltvc-cur="EUR"] .ltvc-plan__save.ltvc-m[data-ltvc-c="EUR"],
.ltvc-plans[data-ltvc-cur="USD"] .ltvc-plan__save.ltvc-m[data-ltvc-c="USD"]{display:inline}
