/* Gestão de cobrança: estilos locais com os tokens da aplicação. */
.billing-management{max-width:1080px;margin:0 auto;padding:12px 0 36px;color:var(--text);font-size:15px;line-height:1.55}.billing-management>header{display:block;position:static;z-index:auto;height:auto;max-width:720px;margin:12px 0 28px;padding:0 0 22px;border-bottom:1px solid var(--line);background:transparent}.billing-management h1{display:block;font-size:clamp(30px,4vw,42px);line-height:1.12;letter-spacing:-1.2px;margin:6px 0 10px}.billing-management h2{font-size:20px;line-height:1.3;letter-spacing:-.3px;margin:0 0 10px}.billing-management p{margin:0 0 12px;color:var(--muted)}.billing-management a{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);text-underline-offset:3px}.billing-management :is(button,input,select,textarea){font:inherit}.billing-management :is(a,button,input,select,textarea,.bm-table-wrap):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.bm-eyebrow{display:block;font-size:12px!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)!important}.bm-back{min-height:44px;margin-bottom:4px}.bm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.bm-card,.bm-operation{min-width:0;border:1px solid var(--line);border-radius:16px;padding:22px;background:var(--panel)}.bm-card ul{margin:13px 0 0;padding-left:18px}.bm-card li{padding:5px 0}.bm-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.bm-facts div{min-width:0;padding:10px 0;border-top:1px solid var(--line)}.bm-facts dt{font-size:12px;color:var(--muted)}.bm-facts dd{margin:3px 0 0;overflow-wrap:anywhere;font-weight:650;font-variant-numeric:tabular-nums}.bm-card form{display:grid;gap:10px;margin-top:16px}.bm-card label{display:grid;gap:6px;font-size:14px}.bm-card label:has(input[type=checkbox]){grid-template-columns:24px minmax(0,1fr);align-items:start;min-height:44px}.bm-card input,.bm-card select,.bm-card textarea{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--inset);color:var(--text)}.bm-card input[type=checkbox]{width:24px;min-height:24px;margin:0}.bm-card textarea{min-height:92px;resize:vertical}.bm-card button{min-height:44px;padding:10px 14px;border:1px solid var(--accent);border-radius:10px;background:var(--accent);color:#fff;cursor:pointer;font-weight:650}.bm-card button:disabled{opacity:.65;cursor:wait}[data-theme=dark] .bm-card button{color:#13251b}.bm-review{background:var(--inset)}.bm-operation{margin-top:14px}.bm-operation dl{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0 0}.bm-operation div{display:grid;gap:2px}.bm-operation dt{font-size:12px;color:var(--muted)}.bm-operation dd{margin:0;font-weight:650}.bm-status{min-height:22px;margin:14px 0 0!important;font-size:13px}.bm-status[role=alert]{color:var(--negativo,var(--text))}.bm-scope{padding:10px 12px;border-left:3px solid var(--accent);background:var(--inset);font-size:13px}.bm-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.bm-table-wrap{overflow:auto}.billing-management table{width:100%;min-width:620px;border-collapse:collapse;margin-top:16px}.billing-management th,.billing-management td{padding:11px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.billing-management th{font-size:12px;color:var(--muted)}
@media(min-width:1200px){.billing-management{padding-top:20px}.bm-grid{gap:18px}.bm-card,.bm-operation{padding:24px}}@media(max-width:768px){.billing-management{padding-bottom:96px}.bm-grid{grid-template-columns:1fr}.bm-card,.bm-operation{padding:18px}.bm-facts{gap:8px}.billing-management h1{font-size:31px}.billing-management table{min-width:560px}}@media(max-width:390px){.billing-management{font-size:14px}.bm-card,.bm-operation{padding:16px}.bm-actions>*{width:100%;justify-content:center}.bm-facts{grid-template-columns:1fr}}@media(max-width:320px){.billing-management h1{font-size:29px}.bm-card,.bm-operation{border-radius:12px;padding:14px}.bm-card button{font-size:13px}.billing-management table{min-width:500px}}@media(prefers-reduced-motion:reduce){.billing-management *{scroll-behavior:auto}}
.bm-payment-history{margin-top:14px}.bm-payment-history td>strong,.bm-payment-history td>small,.bm-payment-history td>span{display:block}.bm-payment-history td small{margin-top:3px;color:var(--muted)}.bm-payment-list{display:none;margin:14px 0 0;padding:0;list-style:none}.bm-payment-item{padding:14px 0;border-top:1px solid var(--line)}.bm-payment-item dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}.bm-payment-item div{min-width:0}.bm-payment-item dt{font-size:12px;color:var(--muted)}.bm-payment-item dd{margin:3px 0 0;font-weight:650;overflow-wrap:anywhere}.bm-payment-item dd>*{display:block}.bm-payment-item dd small{margin-top:3px;color:var(--muted);font-weight:400}@media(max-width:768px){.bm-payment-history .bm-history-table{display:none}.bm-payment-list{display:grid}}@media(max-width:390px){.bm-payment-item dl{grid-template-columns:1fr}}

/* Feedback imediato sem alterar a geometria ou o foco. */
@media (prefers-reduced-motion: no-preference) {
  .billing-management button:not(:disabled):not([aria-disabled="true"]) { transition: transform 100ms cubic-bezier(0.23,1,0.32,1), background-color 100ms ease; }
  .billing-management button:not(:disabled):not([aria-disabled="true"]):active:not(:focus-visible) { transform: scale(.98); }
}
@media (prefers-reduced-motion: reduce) {
  .billing-management button:not(:disabled):not([aria-disabled="true"]):active { transform: none; }
}

/* Escolhas visíveis e hierarquia das ações de Meu plano. */
.bm-choice-group{min-width:0;margin:0 0 8px;padding:0;border:0;background:transparent}
.bm-choice-group legend{float:none;width:auto;margin:0 0 9px;padding:0;color:var(--text);font-size:14px;font-weight:650}
.bm-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.bm-card .bm-choice{display:flex;align-items:center;gap:8px;min-width:0;min-height:60px;margin:0;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);cursor:pointer}
.bm-card .bm-choice input[type=radio]{flex:none;width:16px;height:16px;min-height:16px;margin:0;padding:0;accent-color:var(--accent);border:0}
.bm-choice>span{display:grid;gap:2px;min-width:0}.bm-choice strong{font-size:13px;font-weight:650}.bm-choice small{font-size:11px;color:var(--muted)}
.bm-choice:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--inset)}
.bm-choice:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:3px}.billing-management .bm-choice input:focus-visible{outline:none}
.bm-card .bm-selection-note{margin:0;font-size:12px;color:var(--muted)}
.billing-management .bm-card button{background:var(--panel);border-color:var(--line);color:var(--text)}
.billing-management .bm-card button:is([value=change-preview],[value=change-confirm],[value=refund-cancel-confirm],[value=credit-closure-preview],[value=credit-closure-confirm]){background:var(--accent);border-color:var(--accent);color:#fff}
[data-theme=dark] .billing-management .bm-card button:is([value=change-preview],[value=change-confirm],[value=refund-cancel-confirm],[value=credit-closure-preview],[value=credit-closure-confirm]){color:#13251b}
.billing-management .bm-card [data-bm-action=clear-preview]{margin-top:12px}
.billing-management a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.billing-management .bm-receipt-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:600;white-space:nowrap}
.bm-receipt-unavailable{color:var(--muted);font-weight:400}.bm-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(hover:hover){.billing-management .bm-card button:not(:disabled):hover{border-color:var(--accent)}.bm-choice:hover{border-color:var(--accent)}.billing-management a:hover{text-decoration-thickness:2px}}
@media(max-width:390px){.bm-card .bm-choice{gap:6px;padding:8px;min-height:64px}.bm-choices{gap:6px}.bm-choice strong{font-size:12px}}
@media(max-width:340px){.bm-choices{grid-template-columns:1fr}.bm-card .bm-choice{min-height:44px}.bm-choice>span{display:flex;align-items:center;gap:8px}}

/* Espaço seguro da navegação móvel e cartões legíveis nos menores dispositivos. */
@media (max-width:768px) {
  .billing-management { padding-bottom:calc(132px + env(safe-area-inset-bottom)); }
  .billing-management .bm-card:last-child { margin-bottom:8px; }
}
