[data-buy-license][hidden], [data-billing-status][hidden] { display: none; }
.billing-status { margin-bottom: 18px; padding: 18px 22px; border-color: var(--or); }
.billing-status p { margin: 0; }
.billing-status button { margin-top: 12px; }
.billing-dialog { width: min(520px, calc(100vw - 28px)); max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #414147; border-radius: 18px; background: #131418; color: var(--text, #f0f0f2); box-shadow: 0 24px 90px #000b; }
.billing-dialog::backdrop { background: #000b; backdrop-filter: blur(5px); }
.billing-dialog .billing-content { padding: 24px; display: grid; gap: 18px; }
.billing-dialog .billing-heading { display: flex; gap: 16px; justify-content: space-between; align-items: flex-start; }
.billing-dialog h2 { font-size: 21px; margin: 0; line-height: 1.3; }
.billing-dialog .billing-close { background: transparent; color: inherit; border: 0; min-width: 36px; min-height: 36px; font-size: 28px; cursor: pointer; }
.billing-dialog .billing-vin { font-family: monospace; font-size: 16px; letter-spacing: .04em; overflow-wrap: anywhere; margin: 8px 0 0; }
.billing-dialog .billing-note { color: var(--mut); font-size: 13px; line-height: 1.55; margin: 0; }
.billing-dialog .billing-price { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.billing-dialog .billing-price strong { color: var(--or2); font-size: 30px; white-space: nowrap; }
.billing-products { border: 0; padding: 0; margin: 0; min-width: 0; }
.billing-products legend { margin-bottom: 9px; font-size: 14px; color: var(--mut); }
.billing-options { display: grid; gap: 8px; }
.billing-option { display: flex; align-items: center; gap: 10px; padding: 12px; border: 1px solid #44454b; border-radius: 10px; background: #202126; cursor: pointer; }
.billing-option:has(input:checked) { border-color: var(--or); background: #342519; }
.billing-option:has(input:disabled) { opacity: .55; cursor: default; }
.billing-option input { width: 18px; height: 18px; flex: 0 0 18px; accent-color: #ff9c27; }
.billing-option span { flex: 1; font-size: 14px; }
.billing-option small { display: block; margin-top: 4px; color: var(--mut); font-size: 10px; }
.billing-option strong { font-size: 14px; white-space: nowrap; }
.billing-dialog label.billing-confirm { display: flex; align-items: flex-start; gap: 10px; line-height: 1.45; font-size: 13px; }
.billing-confirm input { flex: 0 0 18px; width: 18px; height: 18px; accent-color: #ff9c27; margin-top: 2px; }
.billing-dialog .billing-submit { width: 100%; }
.billing-dialog button:disabled { opacity: .55; cursor: default; }
.billing-dialog .billing-test { background: #3a2a12; color: #ffd49b; padding: 10px 12px; border-radius: 9px; font-size: 13px; }
.billing-dialog [hidden] { display: none; }
.billing-dialog .form-error:not([hidden]) { display: block; }
@media (max-width: 420px) { .billing-dialog .billing-content { padding: 18px; } }

.billing-option strong del { display: block; color: var(--mut); font-size: 11px; font-weight: 400; margin-bottom: 3px; }
.billing-option .billing-sale { color: var(--or2); }
/* The Pro entitlement belongs to the account, even when the garage is empty. */
.account-pro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px;padding:24px}
.account-pro h2{margin:4px 0 8px;font-size:22px}
.account-pro p{margin:0}
.account-pro-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
@media(max-width:640px){.account-pro{align-items:flex-start;flex-direction:column}.account-pro-actions{width:100%}}
