/* ============================================================
   SafeComments — pricing.css  (uses base.css + landing.css)
   ============================================================ */

.pricing-hero{ padding:80px 0 40px; text-align:center; }
.pricing-hero .eyebrow{ display:block; margin-bottom:16px; }
.pricing-hero h1{ font-size:clamp(36px,5vw,52px); font-weight:800; letter-spacing:-.03em; line-height:1.05; }
.pricing-hero p{ margin:18px auto 0; font-size:19px; color:var(--text-3); max-width:48ch; }

.beta-banner{ display:inline-flex; align-items:center; gap:10px; margin-top:26px; padding:9px 16px; border-radius:var(--r-full);
  background:var(--brand-light); color:var(--brand-dark); font-size:14px; font-weight:600; }
[data-theme="dark"] .beta-banner{ color:#C7D2FE; }
.beta-banner svg{ width:17px; height:17px; }

/* plan section */
.plan-section{ padding:40px 0 32px; }

/* comparison table */
.compare-section{ padding:48px 0 80px; }
.compare-wrap{ overflow-x:auto; border:1px solid var(--border); border-radius:var(--r-lg); background:var(--surface); }
.compare{ width:100%; border-collapse:collapse; min-width:760px; }
.compare th,.compare td{ padding:15px 20px; text-align:center; border-bottom:1px solid var(--border); }
.compare thead th{ position:sticky; top:0; background:var(--surface-2); font-size:15px; font-weight:700; }
.compare thead th .pp{ font-size:12px; font-weight:500; color:var(--text-3); margin-top:3px; }
.compare thead th.pop{ color:var(--brand); }
.compare th:first-child,.compare td:first-child{ text-align:start; font-weight:500; color:var(--text-2); }
.compare tbody tr:last-child td{ border-bottom:none; }
.compare tbody tr:hover td{ background:var(--surface-2); }
.compare .grp td{ background:var(--surface-2); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--text-3); text-align:start; padding:11px 20px; }
.compare .ck{ width:20px; height:20px; color:var(--success); }
.compare .dash{ color:var(--text-3); }
.compare td.popcol{ background:color-mix(in srgb,var(--brand) 4%, var(--surface)); }
[data-theme="dark"] .compare td.popcol{ background:rgba(var(--brand-rgb),.07); }
.compare .val{ font-size:14px; color:var(--text); font-weight:600; }

/* waitlist mini-form inside card */
.waitlist{ display:none; flex-direction:column; gap:8px; margin-top:auto; }
.waitlist.show{ display:flex; }
.waitlist input{ height:42px; border-radius:var(--r-md); border:1px solid var(--border); background:var(--surface-2); color:var(--text);
  padding:0 12px; font-size:14px; font-family:inherit; }
.waitlist input:focus{ outline:none; border-color:var(--brand); box-shadow:0 0 0 3px rgba(var(--brand-rgb),.15); }
.waitlist .done-msg{ display:none; font-size:13px; color:var(--success); align-items:center; gap:6px; padding:10px 0; }
.waitlist .done-msg svg{ width:15px; height:15px; }
.waitlist.complete input,.waitlist.complete .btn{ display:none; }
.waitlist .waitlist-error{ display:flex; color:var(--danger); }
.waitlist.complete .waitlist-error{ display:none; }
.waitlist.complete .waitlist-success{ display:flex; }

.faq-pricing{ padding:0 0 88px; }
