.pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.checkout-plans { grid-template-columns: minmax(0, 1fr); max-width: 680px; margin-inline: auto; }
[data-plan-picker] [hidden] { display: none !important; }
.plan-toggle { border: 0; padding: 0; margin: 0 0 28px; text-align: center; }
.plan-toggle legend { width: 100%; margin-bottom: 12px; font-size: .9rem; color: var(--muted, #617268); }
.plan-toggle-options { display: inline-flex; padding: 5px; gap: 5px; border: 1px solid #cbd7c5; border-radius: 999px; background: #eef2e8; }
.plan-toggle label { position: relative; cursor: pointer; }
.plan-toggle input, .plan-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; clip-path: inset(50%); overflow: hidden; white-space: nowrap; border: 0; }
.plan-toggle span { display: flex; align-items: center; justify-content: center; min-height: 44px; min-width: 112px; padding: 10px 22px; border-radius: 999px; font-weight: 650; color: #253c34; transition: background .15s, color .15s; }
.plan-toggle input:checked + span { background: #253c34; color: #fff; box-shadow: 0 2px 5px #253c3420; }
.plan-toggle input:focus-visible + span { outline: 3px solid #5f8167; outline-offset: 3px; }
[data-checkout][aria-disabled="true"] { opacity: .7; }
[data-checkout][aria-busy="true"] { cursor: progress; }
[data-checkout][aria-busy="true"]::after { content: ""; width: 1em; height: 1em; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: checkout-spin .8s linear infinite; }
@keyframes checkout-spin { to { transform: rotate(360deg); } }
@media (max-width: 700px) { .pricing-grid { grid-template-columns: 1fr; } }
@media (prefers-reduced-motion: reduce) { .plan-toggle span { transition: none; } [data-checkout][aria-busy="true"]::after { animation: none; } }
