/* Layout das telas de assinatura e atendimento. */
[hidden]{display:none!important}
.billing-page{background:#f4f6f9;color:#182230}
.billing-page .topbar{padding:16px max(20px,calc((100% - 1040px)/2));gap:16px;min-height:76px}
.billing-page .brand{font-size:25px;white-space:nowrap}
.billing-page .billing-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:#fff;border:1px solid #dce2e9;border-radius:10px;text-decoration:none;color:#344054;font-size:13px;font-weight:600;min-height:42px}
#billingApp{max-width:1040px;margin:36px auto;padding:0 24px 40px}
#billingApp h1{font-size:clamp(24px,4vw,32px);line-height:1.25;margin-bottom:10px;letter-spacing:-.7px}
#billingApp h2{font-size:20px;margin-bottom:12px;line-height:1.3}
#billingApp p{font-size:14px;line-height:1.65;color:#667085;overflow-wrap:anywhere}
#billingApp .card{padding:28px;margin:0 0 22px;border:1px solid #e3e7ed;border-radius:18px;background:#fff;box-shadow:0 4px 18px #18223005;min-width:0}
#billingApp #notice{padding:13px 16px;background:#eef2f7;border:1px solid #e1e7ef;border-radius:10px;margin:20px 0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
#billingApp #notice:empty{display:none}
#billingApp .btn,.triage-service-panel .btn{display:inline-flex;align-items:center;justify-content:center;width:auto;min-height:44px;padding:10px 16px;border:1px solid #d8dfe8;border-radius:10px;font-size:13px;line-height:1.4;font-weight:700;background:#fff;color:#344054;text-decoration:none;cursor:pointer;white-space:normal;box-shadow:none;transition:background .15s,border-color .15s}
#billingApp .btn.primary,.triage-service-panel .btn.primary{background:#e50914;border-color:#e50914;color:white}
#billingApp .btn:hover,.triage-service-panel .btn:hover{background:#f2f4f7;border-color:#b9c2ce;transform:none}
#billingApp .btn.primary:hover,.triage-service-panel .btn.primary:hover{background:#c70812;border-color:#c70812}
#billingApp .btn:disabled{opacity:.45;cursor:not-allowed}
#billingApp :is(button,a,input,select,textarea):focus-visible,.triage-service-panel :is(button,a,input):focus-visible{outline:3px solid #e5091430;outline-offset:3px}
#billingApp .billing-actions,.triage-service-panel .compact-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:20px}
#billingApp #loginBox{max-width:560px;margin:24px auto}
#billingApp .form{display:flex;flex-direction:column;gap:18px;margin-top:22px}
#billingApp .form label,#billingApp .payment-method{display:flex;flex-direction:column;gap:8px;font-size:13px;font-weight:700;color:#344054}
#billingApp :is(input:not([type=radio]),select,textarea){width:100%;min-height:46px;padding:11px 13px;border:1px solid #d6dde6;border-radius:10px;font:inherit;background:#fff;color:#182230;margin:0}
#billingApp .form .btn{align-self:flex-start}
#billingApp .billing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0}
#billingApp .billing-plan{position:relative;display:flex;flex-direction:column;gap:8px;min-width:0;margin:0;padding:20px;border:1px solid #dce2e9;border-radius:14px;cursor:pointer;background:#fff;transition:border .15s,background .15s}
#billingApp .billing-plan:has(input:checked){border-color:#e50914;background:#fff7f7;box-shadow:0 0 0 1px #e50914}
#billingApp .billing-plan:has(input:disabled){opacity:.5;cursor:not-allowed}
#billingApp .billing-plan input[type=radio]{width:18px;height:18px;accent-color:#e50914;align-self:flex-end;margin:0}
#billingApp .billing-plan h3{font-size:16px;line-height:1.4;margin:0;overflow-wrap:anywhere}
#billingApp .billing-plan p{white-space:pre-line;font-size:13px;margin:0}
#billingApp .billing-plan p:first-of-type{font-size:16px;font-weight:700;color:#182230}
#billingApp .checkout-row{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-top:24px;padding-top:20px;border-top:1px solid #edf0f4}
#billingApp .payment-method{flex:1;max-width:320px;min-width:180px}
#billingApp #userInfo{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px 18px;margin:22px 0;font-size:14px;line-height:1.5}
#billingApp #userInfo dt{color:#667085}#billingApp #userInfo dd{margin:0;font-weight:600;overflow-wrap:anywhere}
#billingApp .table-wrap{overflow-x:auto;border:1px solid #e4e8ef;border-radius:12px;margin-top:20px}
#billingApp table{width:100%;border-collapse:collapse;font-size:13px;text-align:left;min-width:540px}
#billingApp th{background:#f8fafc;color:#667085;font-size:12px;font-weight:700;white-space:nowrap}
#billingApp :is(th,td){padding:14px 16px;border-bottom:1px solid #edf0f4;line-height:1.5;vertical-align:top}
#billingApp tbody tr:last-child td{border-bottom:0}#billingApp td{max-width:260px;overflow-wrap:anywhere}
#billingApp #paymentStatus{display:inline-block;padding:7px 12px;border-radius:8px;background:#fff5dc;color:#855300;font-weight:700;margin-bottom:16px}
#billingApp #instructions{white-space:pre-line;margin:8px 0 18px}
#billingApp #payment img{display:block;width:220px;max-width:100%;height:auto;margin:20px auto}
#billingApp #pix{min-height:90px;font-size:12px;resize:vertical;background:#f8fafc}
#billingApp #proofForm{padding-top:22px;border-top:1px solid #edf0f4}
#billingApp #cancelPayment{color:#b42318;background:#fff;border-color:#f5cdc9}
.triage-service-panel .subscription-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.triage-service-panel .subscribe-box{padding:22px;margin-top:20px;background:white;border:1px solid #e2e8f0;border-radius:14px}
.triage-service-panel .subscribe-box h3{font-size:18px;margin-bottom:8px}
.triage-service-panel .subscribe-box p{line-height:1.6;color:#667085}
.triage-service-panel .inline-form-row{display:flex;align-items:center;gap:12px;margin-top:10px}
.triage-service-panel .inline-form-row input{flex:1;min-width:0;margin:0}
.triage-service-panel .subscription-data-grid{gap:18px;padding-top:18px}
.triage-service-panel .subscription-data-grid strong{overflow-wrap:anywhere;line-height:1.5}
@media(max-width:780px){#billingApp .billing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#billingApp{margin-top:24px;padding:0 18px 28px}#billingApp .card{padding:22px}.triage-service-panel{padding:20px}}
@media(max-width:480px){.billing-page .topbar{padding:14px 16px;gap:10px}.billing-page .brand{font-size:22px}.billing-page .billing-back{padding:9px 11px;font-size:12px;max-width:170px}#billingApp{padding:0 14px 24px}#billingApp .card{padding:20px 16px;border-radius:14px}#billingApp .billing-grid{grid-template-columns:1fr;gap:12px}#billingApp .billing-plan{padding:16px;gap:6px}#billingApp .billing-plan input{position:absolute;top:18px;right:16px}#billingApp .billing-plan h3{padding-right:28px}#billingApp .checkout-row{align-items:stretch;flex-direction:column;gap:14px}#billingApp .payment-method{max-width:none;min-width:0}#billingApp .checkout-row .btn{align-self:flex-start}#billingApp #userInfo{grid-template-columns:1fr;gap:4px}#billingApp #userInfo dd{margin-bottom:12px}#billingApp .billing-actions{gap:10px;align-items:flex-start}#billingApp .billing-actions .btn{flex:0 1 auto}.triage-service-panel .inline-form-row{flex-wrap:wrap}.triage-service-panel .inline-form-row input{flex-basis:100%}.triage-service-panel .subscription-actions .btn{width:auto}.triage-service-panel .subscription-data-grid{grid-template-columns:1fr;gap:16px}.triage-service-panel .compact-actions{align-items:flex-start;gap:10px}.triage-service-panel .subscribe-box{padding:18px}.triage-service-panel .service-panel-head{gap:12px}}

/* Consulta e renovação alinhadas no mesmo grupo. */
.triage-service-panel .subscription-button-row{display:flex;align-items:stretch;gap:12px;flex-shrink:0}
.triage-service-panel .subscription-button-row .btn{margin:0;white-space:nowrap}
@media(max-width:760px){
 .triage-service-panel .inline-form-row{flex-wrap:wrap}
 .triage-service-panel .inline-form-row input{flex-basis:100%;width:100%}
 .triage-service-panel .subscription-button-row{width:100%;gap:10px}
 .triage-service-panel .subscription-button-row .btn{flex:1 1 0;min-width:0;padding:10px 8px;font-size:12px;white-space:normal}
}
