/* pricing-toggle.css — ベースライン(自動読込)。最低限の見た目を保証する。
   上書き・拡張はページ側/custom側で行い、このファイルと同名クラスをゼロから書き直さないこと。 */
.pricing-switch { display: inline-flex; border: 1px solid var(--color-primary-light); border-radius: 999px; overflow: hidden; margin-bottom: 2rem; }
.pricing-opt { cursor: pointer; font: inherit; border: none; background: none; color: var(--color-text); padding: .55rem 1.4rem; transition: background .2s, color .2s; }
.pricing-opt.is-active { background: var(--color-accent); color: var(--color-on-accent, #fff); }
.pricing-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: var(--card-gap, 1.5rem); }
.price-card { border: 1px solid var(--color-primary-light); border-radius: var(--radius-card, 10px); padding: 2rem 1.5rem; text-align: center; }
.price-card.is-recommended { border-color: var(--color-accent); box-shadow: var(--shadow-card, 0 6px 20px rgba(0,0,0,.08)); }
.price-card h3 { font-family: var(--font-heading); color: var(--color-text); margin: 0 0 .75rem; }
.price { display: block; font-family: var(--font-heading); font-size: 1.7rem; color: var(--color-primary); margin-bottom: 1rem; }
.price-card ul { list-style: none; padding: 0; margin: 0; color: var(--color-text-muted); display: grid; gap: .5rem; }

/* セクションの器。 */
.pricing-section {
  padding: clamp(2rem, 5vw, 4rem) 0;
}
