.procedure-billing-panel > summary,
.personal-billing > summary { display:flex; align-items:center; justify-content:space-between; gap:1rem; cursor:pointer; font-weight:800; }
.procedure-billing-panel[hidden] { display:none; }
.procedure-billing-panel > summary { font-size:1.05rem; }
.personal-billing { border-top:1px solid var(--care-line, #28495a); margin-top:.8rem; padding-top:.75rem; }
.personal-billing > summary small,
.procedure-billing-panel > summary small { color:var(--care-muted, #8db0c1); font-size:.76rem; }
.billing-toolbar { display:grid; grid-template-columns:minmax(260px, 1fr) auto; gap:.65rem; margin-top:1rem; }
.billing-toolbar label { display:grid; gap:.3rem; }
.billing-toolbar label span,
.billing-payment-form label span { color:var(--care-muted, #8db0c1); font-size:.76rem; }
.billing-toolbar select,
.billing-toolbar button,
.billing-payment-form input,
.billing-payment-form select,
.billing-payment-form button { min-height:44px; border:1px solid var(--care-line, #28495a); border-radius:11px; background:var(--care-input, #091e28); color:var(--care-text, #eefbff); padding:.65rem .8rem; }
.billing-toolbar button { align-self:end; border:0; background:#2675dc; color:#fff; font-weight:800; }
.billing-person { display:flex; justify-content:space-between; gap:1rem; margin-top:1rem; }
.billing-person b { font-size:1.05rem; }
.billing-person small { color:var(--care-muted, #8db0c1); }
.billing-metrics { display:grid; grid-template-columns:repeat(5, minmax(130px, 1fr)); gap:.65rem; margin-top:.8rem; }
.billing-metrics > div { display:grid; gap:.22rem; border:1px solid var(--care-line, #28495a); border-radius:13px; padding:.8rem; background:var(--care-soft, #0b2430); }
.billing-metrics small,.billing-metrics span { color:var(--care-muted, #8db0c1); font-size:.75rem; }
.billing-metrics b { font-size:1.25rem; }
.billing-metrics .paid b,.billing-metrics .settled b { color:#31d48d; }
.billing-metrics .due b { color:#ffbf45; }
.billing-payment-form { display:grid; grid-template-columns:180px 170px 170px minmax(220px, 1fr) auto; gap:.65rem; align-items:end; margin-top:1rem; padding:1rem; border:1px dashed var(--care-line, #28495a); border-radius:14px; }
.billing-payment-form label { display:grid; gap:.3rem; }
.billing-payment-form button { border:0; background:#16875f; color:#fff; font-weight:800; }
.billing-history { margin-top:1rem; }
.billing-history h3,.personal-payment-history h4 { margin:.5rem 0; }
.billing-entry { display:flex; justify-content:space-between; gap:1rem; margin-top:.5rem; padding:.7rem .85rem; border-left:4px solid #16875f; border-radius:10px; background:var(--care-soft, #0b2430); }
.billing-entry.refund { border-left-color:#d97706; }
.billing-entry div { display:grid; gap:.18rem; }
.billing-entry small,.billing-entry > span,.billing-entry p { color:var(--care-muted, #8db0c1); font-size:.78rem; margin:0; }
.billing-empty { margin-top:.8rem; padding:1rem; text-align:center; border:1px dashed var(--care-line, #28495a); border-radius:12px; color:var(--care-muted, #8db0c1); }
.billing-empty.compact { padding:.7rem; }
.billing-empty.error { color:#ff8792; }
.personal-billing-content { padding-top:.15rem; }
html[data-theme="light"] .billing-toolbar select,
html[data-theme="light"] .billing-payment-form input,
html[data-theme="light"] .billing-payment-form select { background:#fff; color:#092132; border-color:#bfd5e2; }
html[data-theme="light"] .billing-metrics > div,
html[data-theme="light"] .billing-entry { background:#f5f9fc; border-color:#c5dce8; }
@media (max-width:1000px) {
  .billing-metrics { grid-template-columns:repeat(2, minmax(130px, 1fr)); }
  .billing-payment-form { grid-template-columns:1fr 1fr; }
  .billing-payment-form input[name="note"],.billing-payment-form button { grid-column:1/-1; }
}
@media (max-width:600px) {
  .billing-toolbar,.billing-payment-form,.billing-metrics { grid-template-columns:1fr; }
  .billing-payment-form input[name="note"],.billing-payment-form button { grid-column:auto; }
  .billing-person,.billing-entry { align-items:flex-start; flex-direction:column; }
}
