/* Currency picker in the pricing block (currency-src/inject_currency.py copies this to site/light/).
   Hidden until JavaScript runs (ui.js adds .vo-js), because only currency.js can switch the prices.
   The select itself gets the shared dropdown look from ui.css. */
.vo-currency { display: none; align-items: center; justify-content: flex-end; gap: 10px; margin-bottom: -16px; }
.vo-js .vo-currency { display: flex; }
.vo-currency-label { font: 500 14px/20px var(--font-sans, inherit); color: var(--ink-muted, #56615c); }
.vo-currency .vo-dd .vo-dd-trigger { min-height: 40px; }
.vo-currency .vo-dd-value { font-variant-numeric: tabular-nums; }
.vo-money { white-space: nowrap; }
@media (max-width: 560px) { .vo-currency { justify-content: flex-start; } }
/* Inside a plan card's big price: look like the number around it (".plan-price span" styles the "/month" suffix). */
.plan-price strong span.vo-money { font: inherit; color: inherit; letter-spacing: inherit; }

/* Generated by inject_currency.py: price size by number of characters (data-len). */
.plan-price strong:has(> .vo-money[data-len="4"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 4 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="4"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 4 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="4"]) { font-size: clamp(14px, (100cqi / 4 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="5"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 5 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="5"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 5 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="5"]) { font-size: clamp(14px, (100cqi / 5 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="6"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 6 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="6"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 6 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="6"]) { font-size: clamp(14px, (100cqi / 6 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="7"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 7 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="7"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 7 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="7"]) { font-size: clamp(14px, (100cqi / 7 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="8"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 8 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="8"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 8 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="8"]) { font-size: clamp(14px, (100cqi / 8 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="9"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 9 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="9"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 9 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="9"]) { font-size: clamp(14px, (100cqi / 9 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="10"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 10 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="10"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 10 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="10"]) { font-size: clamp(14px, (100cqi / 10 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="11"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 11 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="11"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 11 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="11"]) { font-size: clamp(14px, (100cqi / 11 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="12"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 12 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="12"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 12 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="12"]) { font-size: clamp(14px, (100cqi / 12 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="13"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 13 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="13"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 13 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="13"]) { font-size: clamp(14px, (100cqi / 13 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="14"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 14 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="14"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 14 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="14"]) { font-size: clamp(14px, (100cqi / 14 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="15"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 15 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="15"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 15 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="15"]) { font-size: clamp(14px, (100cqi / 15 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="16"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 16 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="16"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 16 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="16"]) { font-size: clamp(14px, (100cqi / 16 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="17"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 17 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="17"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 17 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="17"]) { font-size: clamp(14px, (100cqi / 17 + 1px) / 0.6, 28px); }
.plan-price strong:has(> .vo-money[data-len="18"]) { font-size: clamp(14px, min((100cqi - 56px) / 3.5, (100cqi / 18 + 1px) / 0.6), 36px); }
.plan-price-long strong:has(> .vo-money[data-len="18"]) { font-size: clamp(14px, min((100cqi - 56px) / 4.5, (100cqi / 18 + 1px) / 0.6), 36px); }
.stats-plan .plan-price strong:has(> .vo-money[data-len="18"]) { font-size: clamp(14px, (100cqi / 18 + 1px) / 0.6, 28px); }
