/* Fluxo de pagamento em etapas: sinal, saldo antes da consulta e liberação do atendimento. */
.payment-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin:0 0 1.2rem}
.payment-breakdown div{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:.8rem .9rem}
.payment-breakdown dt{color:var(--muted);font-size:.78rem}
.payment-breakdown dd{margin:.2rem 0 0;font-weight:700;font-size:1.15rem;letter-spacing:-.02em}
.payment-breakdown .is-now{border-color:var(--rose);box-shadow:0 0 0 3px rgba(181,31,114,.08)}
.payment-breakdown .is-now dd{color:var(--rose-dark)}
.payment-steps{margin:0;padding:0;list-style:none;counter-reset:pay;display:grid;gap:.55rem}
.payment-steps li{counter-increment:pay;position:relative;padding-left:38px;min-height:26px;color:var(--muted);font-size:.92rem;line-height:1.45}
.payment-steps li:before{content:counter(pay);position:absolute;left:0;top:-1px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--mint);color:var(--deep);font-weight:700;font-size:.8rem}
.payment-steps strong{color:var(--ink)}
.booking-success .payment-return-status{display:inline-flex;align-items:center;gap:.5rem;margin:.4rem auto 0;padding:.45rem .8rem;border-radius:999px;background:var(--mint);color:var(--deep);font-weight:700;font-size:.85rem}
.booking-success .payment-return-status.is-pending{background:#fff2d7;color:#8a5a0c}
.booking-success .payment-return-status.is-failed{background:#fce8f1;color:var(--rose-dark)}
.booking-success .success-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.2rem}
.patient-balance{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.9rem 1rem;border-radius:14px;background:var(--white);border:1px solid var(--line)}
.patient-balance p{margin:0!important;color:var(--ink)!important;font-size:.92rem}
.patient-balance .button{flex:none}
.patient-payments{margin:1.2rem 1.8rem;padding:1.2rem 1.4rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}
.patient-payments ul{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.6rem}
.patient-payments li{display:grid;gap:.2rem;padding:.75rem 0;border-top:1px solid #e6efec}
.patient-payments li:first-child{border-top:0}
.patient-payments li strong{font-size:.95rem}
.patient-payments li span{color:var(--muted);font-size:.84rem}
.patient-payments li a{color:var(--deep);font-weight:700;font-size:.85rem}
.patient-toolkit .patient-tool-action{font:inherit;text-align:left}
@media(max-width:760px){.payment-breakdown{grid-template-columns:1fr}.patient-balance{flex-direction:column;align-items:stretch}.patient-payments{margin:1rem 1.35rem}}
.patient-toolkit .patient-tool-action{min-height:120px;display:flex;flex-direction:column;justify-content:space-between;padding:1rem;border-color:var(--line);color:var(--deep)}
.patient-balance[hidden],.patient-payments[hidden]{display:none}
