/* Shared pricing surfaces. No styles escape .rhubarb-pricing. */
.rhubarb-pricing { --price-ink:#182326; --price-muted:#59656a; --price-line:#dfe5e2; --price-accent:#4f7f53; }
.rhubarb-pricing .pricing-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.rhubarb-pricing .pricing-card { display:flex; flex-direction:column; min-width:0; background:#fff; border:1px solid var(--price-line); border-radius:16px; padding:26px 24px; box-shadow:0 8px 24px rgba(24,35,38,.035); color:var(--price-ink); }
.rhubarb-pricing .pricing-card.featured { border:2px solid var(--price-accent); padding:25px 23px; }
.rhubarb-pricing .pricing-card h3 { margin:0 0 10px; font-size:25px; font-weight:750; line-height:1.2; }
.rhubarb-pricing .pricing-audience { margin:0 0 16px; min-height:44px; color:var(--price-muted); font-size:14px; line-height:1.55; }
.rhubarb-pricing .pricing-blurb { color:var(--price-muted); font-size:14px; line-height:1.6; min-height:90px; margin:16px 0; }
.rhubarb-pricing .plan-price { display:block; padding:0; margin:0 0 16px; background:none; border:0; border-radius:0; min-height:138px; text-align:left; }
.rhubarb-pricing .plan-price-qualifier { margin:0 0 9px; color:var(--price-muted); font-size:12px; line-height:1.4; font-weight:650; text-transform:none; letter-spacing:0; }
.rhubarb-pricing .plan-price-lockup { display:flex; align-items:baseline; justify-content:flex-start; flex-wrap:wrap; gap:5px 8px; }
.rhubarb-pricing .plan-price-amount { font-size:44px; line-height:1.15; font-weight:780; letter-spacing:-.035em; color:var(--price-ink); overflow-wrap:anywhere; }
.rhubarb-pricing .plan-price-amount-text { font-size:29px; letter-spacing:-.02em; }
.rhubarb-pricing .plan-price-cadence { max-width:none; font-size:15px; font-weight:500; line-height:1.4; color:var(--price-muted); }
.rhubarb-pricing .plan-price-note { margin:10px 0 0; color:var(--price-muted); font-size:13px; line-height:1.5; font-weight:400; }
.rhubarb-pricing .pricing-capacity { border-radius:10px; padding:16px; margin:0 0 18px; background:#f1f6f3; min-height:175px; }
.rhubarb-pricing .pricing-capacity h4, .rhubarb-pricing .pricing-topup h4 { margin:0 0 9px; font-size:13px; line-height:1.4; font-weight:750; color:var(--price-ink); }
.rhubarb-pricing .pricing-estimate { font-size:17px; line-height:1.45; font-weight:750; margin:0 0 8px; color:#304e3b; }
.rhubarb-pricing .pricing-allowance { font-size:14px; font-weight:650; margin:0 0 7px; line-height:1.4; }
.rhubarb-pricing .pricing-small { font-size:12.5px; color:var(--price-muted); line-height:1.55; margin:5px 0 0; font-weight:400; }
.rhubarb-pricing .pricing-features, .rhubarb-pricing .plan-highlights { display:block; padding:0; margin:0 0 20px; list-style:none; text-align:left; }
.rhubarb-pricing .pricing-features li, .rhubarb-pricing .plan-highlights li { position:relative; padding:0 0 0 19px; margin:0 0 11px; font-size:13px; line-height:1.55; color:var(--price-ink); overflow-wrap:anywhere; font-weight:400; }
.rhubarb-pricing .pricing-features li:before, .rhubarb-pricing .plan-highlights li:before { content:"✓"; position:absolute; left:0; top:0; color:var(--price-accent); font-weight:750; }
.rhubarb-pricing .pricing-topup { margin-top:auto; border-top:1px solid var(--price-line); padding:18px 0 0; }
.rhubarb-pricing .pricing-pack { margin:0 0 5px; font-size:17px; line-height:1.4; font-weight:750; }
.rhubarb-pricing .pricing-card-actions { padding-top:22px; }
.rhubarb-pricing .pricing-card-actions .btn { white-space:normal; }
.rhubarb-pricing .pricing-plan-link { display:block; text-align:center; margin:12px 0 0; font-size:12px; color:var(--price-muted); text-decoration:underline; }
.rhubarb-pricing .pricing-explanation { display:grid; grid-template-columns:1fr 1fr; gap:26px; margin:28px 0 8px; padding:24px; border:1px solid var(--price-line); border-radius:12px; background:#fafcfb; }
.rhubarb-pricing .pricing-explanation h3 { font-size:15px; line-height:1.5; margin:0 0 9px; font-weight:750; }
.rhubarb-pricing .pricing-explanation p { font-size:13px; line-height:1.7; color:var(--price-muted); margin:0 0 8px; }
.rhubarb-pricing .plan-list { grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.rhubarb-pricing .plan-list.has-intro { grid-template-columns:repeat(2,minmax(0,1fr)); }
.rhubarb-pricing .plan { text-align:left; min-height:0; }
.rhubarb-pricing .plan:focus-within { outline:3px solid #668ab5; outline-offset:3px; }
.rhubarb-pricing .plan-title-row { justify-content:flex-start; }
.rhubarb-pricing .plan-blurb { font-size:14px; line-height:1.6; min-height:108px; margin-bottom:16px; }
.rhubarb-pricing .plan-select-control { margin-top:22px; white-space:normal; }
.rhubarb-pricing .plan-main > .pricing-topup { margin-top:auto; }
.rhubarb-pricing .auto-topup-rule { display:none; margin:8px 0 0; font-size:13px; color:var(--price-ink); }
.rhubarb-pricing .auto-topup-rule.is-visible { display:block; }
.rhubarb-pricing .plan-card-price { text-align:left; min-width:0; }
.rhubarb-pricing .plan-card-title-row { display:block; }
.rhubarb-pricing .plan-card-head .plan-price { min-height:0; margin-top:14px; }
@media(max-width:1000px) {
 .rhubarb-pricing .plan-list, .rhubarb-pricing .plan-list.has-intro { grid-template-columns:1fr; }
 .rhubarb-pricing .plan-list .plan-blurb, .rhubarb-pricing .plan-list .plan-price, .rhubarb-pricing .plan-list .pricing-capacity { min-height:0; }
}
@media(max-width:800px) {
 .rhubarb-pricing .pricing-grid, .rhubarb-pricing .pricing-explanation { grid-template-columns:1fr; }
 .rhubarb-pricing .pricing-audience, .rhubarb-pricing .pricing-blurb, .rhubarb-pricing .plan-price, .rhubarb-pricing .pricing-capacity { min-height:0; }
 .rhubarb-pricing .pricing-card { padding:22px 20px; }
 .rhubarb-pricing .pricing-card.featured { padding:21px 19px; }
 .rhubarb-pricing .pricing-explanation { padding:20px; gap:18px; }
}
