/* Shared feedback for subscription management and hosted Checkout hand-off. */
:root{--billing-error-ink:#a33232;--billing-error-bg:#fff3f1}
:root[data-workspace-theme="dark"]{--billing-error-ink:#ffb4ad;--billing-error-bg:#3a252a}
.billing-spinner{display:inline-block;inline-size:17px;block-size:17px;flex:none;border:2px solid currentColor;border-inline-end-color:transparent;border-radius:50%;animation:billing-spin .8s linear infinite;vertical-align:middle}
[data-button-label]{display:inline-flex;align-items:center;justify-content:center;gap:9px}
button[aria-busy="true"]{cursor:progress!important;opacity:1!important}
.billing-loading-title{display:flex;align-items:center;gap:12px;color:var(--workspace-accent-text,#315bdf)}
.billing-feedback{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;margin-block-end:20px;border:1px solid var(--workspace-line,#dce4f2);border-radius:14px;background:var(--workspace-accent-soft,#eff3ff);color:var(--workspace-ink,#172554)}
.billing-feedback p{margin:4px 0 0;font-size:14px;line-height:1.55;max-inline-size:65ch}
.billing-feedback-mark{display:flex;align-items:center;justify-content:center;inline-size:22px;block-size:24px;flex:none;color:var(--workspace-accent-text,#315bdf)}
.billing-feedback[data-tone="success"]{background:var(--workspace-success-bg,#e4f8ef);color:var(--workspace-success-ink,#207958);border-color:transparent}
.billing-feedback[data-tone="success"] .billing-feedback-mark{color:inherit}
.billing-feedback[data-tone="error"]{background:var(--billing-error-bg);color:var(--billing-error-ink);border-color:transparent}
.billing-feedback[data-tone="error"] .billing-feedback-mark{color:inherit}
.billing-feedback .text-button{margin-block-start:10px;min-block-size:32px;padding:0;text-align:start;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:inherit}
.billing-sr-only{position:absolute!important;inline-size:1px!important;block-size:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.billing-operation-note{min-block-size:1.5em;font-size:13px;line-height:1.5;color:var(--workspace-muted,#68788e);margin:14px 0 0}
.billing-operation-note.is-error{color:var(--billing-error-ink)}
.billing-skeleton-row{display:grid;gap:14px;margin-block-start:24px}
.billing-skeleton{display:block;border-radius:6px;background:var(--workspace-subtle,#edf1f8);max-inline-size:100%}
.billing-skeleton-title{inline-size:48%;block-size:22px}.billing-skeleton-price{inline-size:64%;block-size:34px}.billing-skeleton-line{inline-size:82%;block-size:14px}.billing-skeleton-option{block-size:132px}
@keyframes billing-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.billing-spinner{animation:none}}

/* Success emphasis after arrival: text and panel stay in their final position. */
.billing-feedback[data-tone="success"] .billing-feedback-mark{inline-size:28px;block-size:28px;border-radius:50%;background:var(--workspace-success-ink,#207958);color:var(--workspace-surface,#fff)}
.billing-feedback[data-tone="success"] .billing-feedback-mark .hm-icon{inline-size:18px;block-size:18px}
@media(prefers-reduced-motion:no-preference){
 .billing-confirmation-enter{animation:billing-confirmation-in 600ms cubic-bezier(.2,0,0,1) both}
 .billing-confirmation-enter .billing-feedback-mark{animation:billing-confirmation-mark 350ms cubic-bezier(.2,0,0,1) both}
 .billing-confirmation-enter .billing-feedback-mark path{stroke-dasharray:36;animation:billing-confirmation-check 350ms cubic-bezier(.2,0,0,1) both}
 @keyframes billing-confirmation-in{from{background-color:var(--workspace-accent-soft,#eff3ff);border-color:var(--workspace-success-ink,#207958)}to{background-color:var(--workspace-success-bg,#e4f8ef);border-color:transparent}}
 @keyframes billing-confirmation-mark{from{transform:scale(.72)}to{transform:scale(1)}}
 @keyframes billing-confirmation-check{from{stroke-dashoffset:36}to{stroke-dashoffset:0}}
}
