/* =====================================================================
   Plan picker + "Choose a plan to continue" gate — enlarged, and styled
   to match the marketing pricing page. Loaded after styles.css and
   polish.css so these rules win over the originals.
   ===================================================================== */

/* ---- Auth gate card ("Choose a plan to continue", "Sign in required") ---- */
.auth-gate{justify-content:center;}
.auth-gate .site-logo{margin-bottom:44px;}
.auth-gate .site-logo .mark{width:52px;height:52px;font-size:22px;}
.auth-gate .site-logo h1{font-size:26px;}
.auth-gate-card{
  max-width:640px;padding:56px 56px 50px;
  box-shadow:0 24px 64px rgba(15,23,42,.16), var(--shadow);
}
.auth-gate-card h2{font-size:34px;margin-bottom:16px;letter-spacing:-.01em;}
.auth-gate-card p{font-size:18.5px;line-height:1.65;margin:0 auto 30px;max-width:480px;}
.auth-gate-actions{gap:14px;margin-bottom:22px;}
.auth-gate-actions .btn-cta{padding:16px 32px;font-size:17px;}
.auth-gate-back{font-size:15.5px;}
@media (max-width:640px){
  .auth-gate-card{padding:40px 26px 36px;}
  .auth-gate-card h2{font-size:26px;}
  .auth-gate-card p{font-size:16.5px;}
}

/* ---- Plan modal: wide panel with pricing-page-style cards ---- */
.plan-modal-panel{max-width:1080px;padding:40px 44px 40px;}
.plan-modal-panel .modal-head h2{font-size:28px;}
.plan-modal-panel .plan-modal-sub{font-size:17px;max-width:720px;margin-bottom:22px;}
.plan-modal-panel .billing-toggle{margin:0 auto 30px;}
.plan-pick-grid-rich{gap:24px;margin-bottom:22px;}
.plan-pick-grid-rich.plan-pick-grid-3{align-items:stretch;}
.plan-pick-grid-rich .plan-pick-card{
  padding:32px 26px 28px;gap:0;border-radius:var(--radius-lg);border-width:1.5px;
}
.plan-pick-grid-rich .plan-pick-tag{font-size:13.5px;margin-bottom:10px;}

/* Featured card: same wrapper technique as the pricing page's
   .pricing-card.featured > .featured-inner */
.plan-pick-grid-rich .plan-pick-card.featured{
  border:none;padding:3px;background:var(--accent);
  box-shadow:0 8px 24px rgba(var(--accent-rgb),.28), 0 30px 70px rgba(var(--accent-rgb),.22);
  display:block;
}
.plan-pick-grid-rich .plan-pick-card.featured::before{content:none;}
.plan-pick-grid-rich .plan-pick-card.featured .featured-inner{
  background:var(--surface);border-radius:calc(var(--radius-lg) - 1px);
  padding:32px 26px 28px;display:flex;flex-direction:column;height:100%;text-align:left;
}
.plan-pick-grid-rich .plan-pick-card.featured .plan-pick-tag{
  display:inline-block;background:var(--accent);color:#fff;padding:4px 12px;
  border-radius:var(--radius-pill);width:fit-content;
}
.plan-pick-grid-rich .plan-pick-name{font-size:23px;margin-bottom:2px;}
.plan-pick-grid-rich .plan-pick-price{margin:14px 0 4px;}
.plan-pick-grid-rich .plan-pick-price .amt{font-size:44px;}
.plan-pick-grid-rich .plan-pick-card.featured .plan-pick-price .amt{color:var(--accent);}
.plan-pick-grid-rich .plan-pick-price .per{font-size:15px;}
.plan-pick-grid-rich .plan-pick-save{font-size:14.5px;margin-bottom:8px;}
.plan-pick-grid-rich .plan-pick-desc{font-size:15.5px;color:var(--ink-dim);margin-bottom:18px;min-height:36px;}
.plan-pick-features{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;text-align:left;}
.plan-pick-features li{font-size:15px;line-height:1.4;padding-left:24px;position:relative;color:var(--ink);}
.plan-pick-features li::before{content:"\2713";position:absolute;left:0;color:var(--good);font-weight:700;}
@media (max-width:900px){
  .plan-modal-panel{padding:30px 22px 30px;}
  .plan-modal-panel .modal-head h2{font-size:23px;}
}
