.billing-preview-note { color: var(--auth-accent); font-size: .85rem; margin-top: 2rem; }
.billing-read-action { margin: 20px 0 28px; }
.billing-read-link { display: inline-block; font-size: 1.5rem; font-weight: 700; line-height: 1.4; text-underline-offset: 4px; }
.billing-read-link:focus-visible { outline: 2px solid var(--auth-accent); outline-offset: 4px; }
.billing-details { margin: 1.75rem 0 0; padding: 0; }
.billing-details > div { display: flex; justify-content: space-between; flex-wrap: wrap; gap: .5rem 1.5rem; padding: .85rem 0; border-bottom: 1px solid var(--auth-border); }
.billing-details dt { color: var(--auth-muted); }
.billing-details dd { margin: 0; overflow-wrap: anywhere; }
.billing-plan-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 24px 0 18px; }
.billing-page .billing-plan-option { display: flex; flex-direction: column; gap: 10px; padding: 18px 14px; border: 1px solid var(--auth-border); border-radius: 16px; color: var(--auth-text); text-decoration: none; }
.billing-plan-option.is-selected { border-color: var(--auth-accent); background: rgba(240, 199, 121, .08); }
.billing-plan-option:focus-visible { outline: 2px solid var(--auth-accent); outline-offset: 3px; }
.billing-plan-option > span:last-child { color: var(--auth-muted); font-size: .85rem; line-height: 1.5; }
.billing-plan-price { font-size: 1.4rem; font-weight: 700; }
.billing-plan-price > span { font-size: .85rem; font-weight: 400; }
.billing-signout { justify-self: start; background: transparent; border: 0; padding: .6rem 0; color: var(--auth-accent); cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.billing-signout:focus-visible { outline: 2px solid var(--auth-accent); outline-offset: 3px; }
.billing-consent { display: grid; grid-template-columns: 1.2rem 1fr; gap: .8rem; align-items: start; font-size: .92rem; line-height: 1.55; cursor: pointer; }
.billing-consent input { width: 1.15rem; height: 1.15rem; margin: .22rem 0 0; accent-color: var(--auth-accent); }
.billing-consent input:focus-visible { outline: 2px solid var(--auth-accent); outline-offset: 3px; }
.billing-policy { max-width: 800px; width: calc(100% - 40px); margin: 48px auto; line-height: 1.7; }
.billing-policy h1 { margin-top: 1rem; }
.billing-policy h2 { font-size: 1.35rem; margin-top: 2rem; }
.billing-policy a, .billing-page a { color: var(--auth-accent); }
@media (max-width: 420px) { .billing-page .auth-card { padding: 22px; } }
@media (max-width: 480px) { .billing-plan-options { grid-template-columns: 1fr; } }
