/* NDI Plans v1.6 - isolated frontend namespace. All plugin UI selectors use the unique ndipls- prefix. */
.ndipls-root, .ndipls-root * { box-sizing: border-box; }
.ndipls-root button, .ndipls-root a { font-family: inherit; }
.ndipls-root .ndipls-plan-card h3, .ndipls-root .ndipls-plan-card p, .ndipls-root .ndipls-plan-card ul, .ndipls-root .ndipls-plan-card li { margin-top: 0; }
.ndipls-root .ndipls-plan-card ul { margin-left: 0; margin-right: 0; }
.ndipls-plans-section{background:var(--ndipls-section-bg);color:var(--ndipls-section-text);padding:56px 20px;font-family:inherit}.ndipls-plans-heading{text-align:center;max-width:760px;margin:0 auto 34px}.ndipls-plans-heading h2{margin:0 0 10px;font-size:clamp(28px,4vw,44px);font-weight:800;letter-spacing:-.03em}.ndipls-plans-heading p{margin:0;opacity:.72;font-size:17px}.ndipls-plans-grid{max-width:var(--ndipls-max-width,1200px);margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ndipls-gap)}.ndipls-plans-grid.ndipls-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ndipls-plans-grid.ndipls-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ndipls-plans-grid.ndipls-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ndipls-plan-card{position:relative;background:var(--ndipls-card-bg);color:var(--ndipls-card-text);border:1px solid var(--ndipls-card-border);border-radius:var(--ndipls-radius);box-shadow:var(--ndipls-shadow);padding:var(--ndipls-card-padding,30px 24px 24px);display:flex;flex-direction:column;min-height:490px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}.ndipls-plan-card:hover{transform:translateY(-5px)}.ndipls-plan-card.ndipls-no-hover:hover{transform:none}.ndipls-feature-excluded{opacity:.45;text-decoration:line-through}.ndipls-feature-excluded span{color:#98a2b3!important}.ndipls-plan-price{color:var(--ndipls-price-color,currentColor)}.ndipls-plan-card.ndipls-is-featured{border-width:2px;border-color:var(--ndipls-accent)}.ndipls-plan-tag{position:absolute;top:0;right:0;background:var(--ndipls-accent);color:#fff;padding:9px 17px;border-radius:0 0 0 14px;font-size:12px;font-weight:800}.ndipls-plan-icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:color-mix(in srgb,var(--ndipls-accent) 13%,transparent);font-size:22px;margin-bottom:18px}.ndipls-plan-card h3{font-size:24px;margin:0 0 8px;letter-spacing:-.02em}.ndipls-plan-subtitle{font-size:14px;line-height:1.55;opacity:.72;min-height:46px;margin:0 0 20px}.ndipls-plan-price{font-size:32px;font-weight:850;letter-spacing:-.03em;line-height:1.1;margin-bottom:5px}.ndipls-plan-price del{font-size:14px;font-weight:500;opacity:.45;margin-left:8px}.ndipls-plan-payment{font-size:13px;opacity:.68;margin-bottom:20px}.ndipls-plan-features{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:11px;font-size:14px}.ndipls-plan-features li{display:flex;gap:9px;align-items:flex-start}.ndipls-plan-features span{color:var(--ndipls-feature-color,#1fb879);font-weight:900}.ndipls-plan-button{margin-top:auto;display:flex;justify-content:center;align-items:center;gap:9px;text-decoration:none!important;background:var(--ndipls-btn-bg);color:var(--ndipls-btn-text)!important;border:1px solid var(--ndipls-btn-border);border-radius:var(--ndipls-btn-radius);padding:13px 16px;font-weight:800;font-size:14px;transition:opacity .2s,transform .2s}.ndipls-plan-button:hover{opacity:.9;transform:translateY(-1px)}@media(max-width:1050px){.ndipls-plans-grid.ndipls-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.ndipls-plans-grid,.ndipls-plans-grid.ndipls-cols-2,.ndipls-plans-grid.ndipls-cols-3,.ndipls-plans-grid.ndipls-cols-4{grid-template-columns:1fr}.ndipls-plan-card{min-height:0}.ndipls-plans-section{padding:38px 14px}}.ndipls-billing-toggle{display:flex;align-items:center;justify-content:center;width:max-content;margin:0 auto 30px;padding:4px;background:var(--ndipls-toggle-bg,#f4f8fd);border:1px solid #dfe9f5;border-radius:999px;box-shadow:0 8px 25px rgba(23,64,120,.07)}.ndipls-billing-btn{border:0;background:transparent;color:#12213f;padding:11px 26px;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.ndipls-billing-btn.ndipls-is-active{background:var(--ndipls-toggle-active-bg,#1877f2);color:#fff;box-shadow:0 7px 18px rgba(24,119,242,.2)}.ndipls-saving-badge{margin-left:8px;background:#20b875;color:#fff;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:800}.ndipls-yearly-value,.ndipls-yearly-period{display:none}.ndipls-billing-yearly .ndipls-monthly-value,.ndipls-billing-yearly .ndipls-monthly-period{display:none}.ndipls-billing-yearly .ndipls-yearly-value,.ndipls-billing-yearly .ndipls-yearly-period{display:inline}.ndipls-billing-monthly .ndipls-yearly-value,.ndipls-billing-monthly .ndipls-yearly-period{display:none}.ndipls-billing-monthly .ndipls-monthly-value,.ndipls-billing-monthly .ndipls-monthly-period{display:inline}.ndipls-price-period{font-size:14px;font-weight:700;opacity:.6}.ndipls-plan-price{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}.ndipls-plan-price del{font-size:14px;font-weight:500;opacity:.45;margin-left:5px}.ndipls-billing-monthly .ndipls-plan-card .ndipls-monthly-value,.ndipls-billing-yearly .ndipls-plan-card .ndipls-yearly-value{display:inline}.ndipls-billing-yearly .ndipls-plan-card .ndipls-monthly-value{display:none}.ndipls-billing-monthly .ndipls-plan-card .ndipls-yearly-value{display:none}@media(max-width:650px){.ndipls-billing-toggle{max-width:100%}.ndipls-billing-btn{padding:10px 18px}.ndipls-saving-badge{display:none}}

/* Billing visibility: keep visible cards as flex cards so buttons stay aligned */
.ndipls-plan-card.ndipls-visibility-both{display:flex}
.ndipls-plan-card.ndipls-visibility-monthly{display:flex}
.ndipls-plan-card.ndipls-visibility-yearly{display:none}
.ndipls-billing-yearly .ndipls-plan-card.ndipls-visibility-monthly{display:none}
.ndipls-billing-yearly .ndipls-plan-card.ndipls-visibility-yearly{display:flex}
.ndipls-billing-monthly .ndipls-plan-card.ndipls-visibility-yearly{display:none}
.ndipls-billing-monthly .ndipls-plan-card.ndipls-visibility-monthly{display:flex}

/* Equal-height row + bottom-aligned CTA */
.ndipls-plans-grid{align-items:stretch}
.ndipls-plan-card{height:100%;box-sizing:border-box}
.ndipls-plan-features{flex:1 1 auto}
.ndipls-plan-button{margin-top:auto}

/* Automatic yearly savings */
.ndipls-card-savings{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-10px 0 18px;padding:9px 11px;border-radius:10px;background:color-mix(in srgb,var(--ndipls-accent) 8%,#fff);color:var(--ndipls-accent);font-size:12px;font-weight:800}
.ndipls-card-savings small{font-size:11px;font-weight:600;opacity:.72}
.ndipls-billing-monthly .ndipls-card-savings{display:none}
.ndipls-billing-yearly .ndipls-card-savings{display:flex}
@media(max-width:650px){.ndipls-card-savings{align-items:flex-start;flex-direction:column;gap:2px}}

/* Isolation and equal-height safeguards */
.ndipls-root { isolation: isolate; contain: layout style; width: 100%; }
.ndipls-root .ndipls-plans-grid { align-items: stretch; grid-auto-rows: 1fr; }
.ndipls-root .ndipls-plan-card { min-width: 0; height: 100%; }
.ndipls-root .ndipls-plan-features { flex: 1 1 auto; }
.ndipls-root .ndipls-plan-button { margin-top: auto; box-sizing: border-box; }
.ndipls-root .ndipls-billing-btn { appearance: none; -webkit-appearance: none; }
.ndipls-root .ndipls-plan-button:focus-visible, .ndipls-root .ndipls-billing-btn:focus-visible { outline: 3px solid color-mix(in srgb, var(--ndipls-accent, #1877f2) 35%, transparent); outline-offset: 3px; }
