/* Company billing uses the shared action, surface, type and focus tokens. */
.refund-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-block:24px}
.refund-card{min-width:0;display:flex;flex-direction:column;gap:8px}
.refund-card h2,.refund-card p{margin:0}
.refund-card .billing-confirm-actions{margin-block:12px 0}
.refund-card .billing-confirm-actions form{margin:0}
.refund-card .invoice{margin-block:12px}
.refund-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}
.refund-heading strong{font-size:1.3rem}
.refund-heading .billing-money{color:var(--yellow);white-space:nowrap}
.refund-id,.refund-reason{overflow-wrap:anywhere;min-width:0}
.refund-reason{white-space:pre-wrap}
.refund-status{font-size:.9rem;color:var(--muted)}
.refund-status[data-refund-status=approved]{color:#4cdbab}
.refund-status[data-refund-status=pending_approval],.refund-status[data-refund-status=uncertain],.refund-status[data-refund-status=cancel_uncertain]{color:#ffb56b}
.refund-form{display:flex;flex-direction:column;gap:12px}
.refund-form label{margin:0}.refund-form .fine{margin:0 0 12px}
.refund-form textarea{resize:vertical;min-height:100px;width:100%;box-sizing:border-box}
.refund-card .invoice dd,.refund-details .invoice dd{color:var(--yellow)}
.billing-confirmation dd.refund-reason{font-weight:400;text-align:start}
.refund-history{margin-block-start:36px}
@media(max-width:760px){.refund-list{grid-template-columns:1fr}.refund-card .billing-confirm-actions>*{width:100%}.refund-card .billing-confirm-actions button{width:100%}}
.billing-sync{margin-block:20px;padding:20px;border:1px solid var(--line);border-radius:var(--gs-radius-control);min-width:0}
.billing-sync-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}
.billing-sync-heading h3{font-size:1.05rem;margin:0;display:flex;align-items:center;gap:8px}
.billing-sync-heading h3 i{color:var(--yellow)}
.billing-sync-heading form{margin:0}
.billing-sync-dates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:16px 0;font-size:.85rem}
.billing-sync-dates>div{display:block;padding:0;min-width:0}
.billing-sync-dates dt{color:var(--muted);margin-bottom:6px}
.billing-sync-dates dd{margin:0;overflow-wrap:anywhere;text-align:start}
.billing-sync-ok{color:#4cdbab}
.billing-sync-warning{color:#ffb56b}
.billing-sync code{overflow-wrap:anywhere}
.checkout-recovery>.button{margin-block-start:16px}
@media(max-width:600px){.billing-sync{padding:14px}.billing-sync-dates{grid-template-columns:1fr}.billing-sync-heading form,.billing-sync-heading button{width:100%}}
.billing-section{padding-block:48px 64px}
.billing-section .section-heading{margin-block:24px 28px}
.billing-section h1{font-size:clamp(1.85rem,3.4vw,2.75rem);overflow-wrap:anywhere}
.billing-section h2{font-size:1.35rem}
.billing-section .status[data-access=grace],.billing-section .status[data-access=read_only]{color:#ffb56b}
.billing-back{display:inline-flex;align-items:center;gap:8px}
[dir=rtl] .billing-back i{transform:rotate(180deg)}
.subscription-actions,.billing-confirm-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-block:24px}
.subscription-actions form{margin:0}
.subscription-actions .cancel-subscription-link{margin-inline-start:auto;text-decoration:underline;text-underline-offset:4px}
.subscription-notice{display:flex;gap:16px;align-items:flex-start;margin-block:24px}
.subscription-notice>i{font-size:1.4rem;color:var(--yellow)}
.subscription-notice p:last-child{margin-bottom:0}
.subscription-policy{margin-bottom:28px}
.billing-confirmation{margin-block:24px;max-width:100%;min-width:0}
.billing-grid:has(> :only-child){grid-template-columns:1fr;max-width:760px}
.billing-confirmation .invoice>div{gap:20px;align-items:start}
.billing-confirmation dd{text-align:end;overflow-wrap:anywhere}
.billing-confirmation .invoice dd{color:var(--text)}
.billing-confirmation .invoice-total dd,.billing-confirmation .invoice dd.billing-money{color:var(--yellow)}
.billing-section fieldset{border:0;margin:0 0 28px;padding:0;min-width:0}
.billing-section legend{font-size:1rem;font-weight:700;margin-bottom:12px}
.billing-period-choices{display:flex;flex-wrap:wrap;gap:12px}
.billing-period-choices label{display:flex;flex-direction:row;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--line);border-radius:var(--gs-radius-control);cursor:pointer;min-height:48px;margin:0;transition:border-color .2s ease,background .2s ease}
.billing-period-choices label:has(:checked){border-color:var(--yellow);background:rgba(255,204,0,.07)}
.billing-section input[type=radio]{accent-color:var(--yellow);width:18px;height:18px;margin:0;flex-shrink:0}
.subscription-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.subscription-plan{position:relative;display:flex;gap:10px;flex-direction:column;padding:24px;cursor:pointer;min-width:0;transition:border-color .22s ease,background .22s ease,box-shadow .22s ease}
.subscription-plan>input{position:absolute;inset-inline-end:20px;top:24px}
.subscription-plan:has(:checked){border-color:var(--yellow);box-shadow:inset 0 0 0 1px var(--yellow);background:rgba(255,204,0,.06)}
.subscription-plan:has(:focus-visible){outline:3px solid var(--yellow);outline-offset:4px}
.subscription-plan-name{font-size:1.25rem;font-weight:750;padding-inline-end:26px;display:flex;flex-wrap:wrap;gap:10px;align-items:center;min-height:36px}
.subscription-plan-name small{font-size:.72rem;color:var(--yellow);font-weight:600}
.subscription-plan-price{font-size:1.8rem;font-weight:750;color:var(--yellow);margin-top:12px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
.subscription-plan-price small{font-weight:400;font-size:.85rem}
.plan-over-limit{cursor:default;border-style:dashed}
.plan-limit-message{color:#ffb56b;font-size:.85rem}
.billing-portal-fallback{border-top:1px solid var(--line);padding-top:20px;margin-top:28px}
.billing-portal-fallback button{background:none;border:0;padding:8px 0;font:inherit;text-align:start}
.cancel-confirm{border-color:#ff8a80;color:#ffb4aa}
.cancel-confirm:hover{background:rgba(255,138,128,.1)}
.subscription-access-date strong{display:inline-block;color:var(--text)}
[data-billing-form][aria-busy=true]{cursor:progress}
[data-billing-form][aria-busy=true] button[type=submit],[data-billing-form][aria-busy=true] button:not([type]){opacity:.7;pointer-events:none}
@media(max-width:760px){
 .subscription-plan-grid{grid-template-columns:1fr}
 .billing-section{padding-block:28px 48px}
 .subscription-actions{align-items:stretch;gap:10px}
 .subscription-actions>a,.subscription-actions>form{flex:1 1 100%;margin-inline:0}
 .subscription-actions form .button{width:100%}
 .billing-period-choices label{flex:1 1 100%;flex-wrap:wrap}
 .billing-confirm-actions>*{flex:1 1 100%}
 .billing-confirmation .invoice>div{gap:12px;flex-wrap:wrap}
 .billing-confirmation dd{margin-inline-start:0}
}
@media(prefers-reduced-motion:reduce){.subscription-plan,.billing-period-choices label{transition:none}}
.billing-confirmation .invoice dd.neutral { color: var(--sb-text, #f5f5f5); font-weight: 600; }
