/* Qero+ Finance UI V2 — display-only. No payment, balance or action behavior. */
:root { --qf-accent:#ec4b2c; --qf-text:#172236; --qf-border:#e2e7ee; --qf-muted:#64748b; }

/* Shared financial cards: retain existing white/light Qero+ branding. */
.finance-summary-card,
.finance-history-filters,
.finance-card,
.finance-box,
.finance-statement-box { border-radius:16px; }
.finance-summary-card strong,
.finance-stats strong { font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
.finance-summary-card small { line-height:1.45; }
.finance-history-filters { padding:0 !important; overflow:hidden; }
.qero-finance-filter-disclosure > summary {
  padding:17px 20px; display:flex; flex-wrap:wrap; align-items:center; gap:8px 14px;
  cursor:pointer; color:var(--qf-text); list-style:none; position:relative;
}
.qero-finance-filter-disclosure > summary::-webkit-details-marker { display:none; }
.qero-finance-filter-disclosure > summary::after {
  content:'⌄'; margin-left:auto; font-size:1.45em; line-height:1; color:var(--qf-muted);
  transition:transform .18s ease;
}
.qero-finance-filter-disclosure[open] > summary::after { transform:rotate(180deg); }
.qero-finance-filter-title { font-size:15px; font-weight:750; }
.qero-finance-filter-hint { color:var(--qf-muted); font-size:12px; }
.qero-finance-filter-disclosure[open] > summary { border-bottom:1px solid var(--qf-border); }
.qero-finance-filter-disclosure > p,
.qero-finance-filter-disclosure > form { margin-left:20px; margin-right:20px; }
.qero-finance-filter-disclosure > form { margin-bottom:20px; }
.qero-finance-sr-only { position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap; }

.qero-finance-provider-card { border-left:3px solid var(--qf-border); }
.qero-finance-stone-card { border-left-color:var(--qf-accent); }
.qero-finance-asaas-card { border-left-color:#64748b; }
.qero-finance-provider-card h2 { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.qero-finance-provider-env { font-size:11px; font-weight:650; color:#7a430b;
  background:#fff5e8; border-radius:999px; padding:3px 8px; line-height:1.5; }
.qero-finance-provider-card .muted { line-height:1.55; }

/* Invoice row: visible provider, status and a read-only detail disclosure. */
.qero-finance-invoice-row { align-items:flex-start; gap:16px; }
.qero-finance-invoice-main { flex:1 1 280px; min-width:0; }
.qero-finance-invoice-heading { display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px; }
.qero-finance-invoice-heading strong { color:var(--qf-text); font-size:14px; }
.qero-finance-provider-pill, .qero-finance-status { display:inline-flex; align-items:center;
  border-radius:999px; padding:3px 9px; font-size:11px; font-weight:650; line-height:1.5;
  white-space:nowrap; }
.qero-finance-provider-pill.is-stone { color:#ba391b; background:#fff0e9; }
.qero-finance-provider-pill.is-asaas { color:#375482; background:#edf3fe; }
.qero-finance-provider-pill.is-other { color:#455468; background:#eff2f6; }
.qero-finance-status.is-paid { color:#17603b; background:#e8f8ee; }
.qero-finance-status.is-pending, .qero-finance-status.is-draft,
.qero-finance-status.is-creating { color:#825312; background:#fff5df; }
.qero-finance-status.is-overdue, .qero-finance-status.is-failed { color:#a52725; background:#fff0ef; }
.qero-finance-status.is-refunded { color:#4b5682; background:#f0f0ff; }
.qero-finance-invoice-meta { display:flex; flex-wrap:wrap; align-items:center; gap:5px 10px; margin-top:6px; }
.qero-finance-invoice-details { margin-top:9px; max-width:600px; }
.qero-finance-invoice-details summary { cursor:pointer; color:#c24525; font-size:12px;
  text-decoration:underline; text-underline-offset:3px; width:max-content; max-width:100%; }
.qero-finance-invoice-details[open] { background:#f7f9fb; border:1px solid var(--qf-border);
  border-radius:11px; padding:10px 12px; }
.qero-finance-invoice-details dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 16px; margin:12px 0 0; font-size:12px; }
.qero-finance-invoice-details dt { color:var(--qf-muted); margin-bottom:2px; }
.qero-finance-invoice-details dd { margin:0; font-weight:650; overflow-wrap:anywhere; }
.qero-finance-invoice-row .invoice-actions { align-self:center; }

/* Partner financial cards: conservative changes to known existing classes. */
.finance-box { border-color:var(--qf-border); }
.finance-box .invoice-status { font-size:11px; font-weight:700; border-radius:999px; }
.finance-box .invoice-status-paid { background:#e8f8ee; color:#17603b; }
.finance-box .invoice-status-overdue { background:#fff0ef; color:#a52725; }
.finance-box .invoice-status-pending { background:#fff5df; color:#825312; }
.finance-box .link-action { border-radius:10px; min-height:38px; display:inline-flex; align-items:center; }
.finance-statement-box { overflow:visible; }
.finance-statement-box :is(th,td) { font-size:clamp(12px,.9vw,14px); line-height:1.55; }
.finance-box .muted { line-height:1.5; }
.finance-box :is(a,button,summary):focus-visible,
.qero-finance-filter-disclosure > summary:focus-visible,
.qero-finance-invoice-details > summary:focus-visible { outline:2px solid #ed542e; outline-offset:3px; }

@media (max-width:760px) {
  .qero-finance-provider-card { padding:16px !important; }
  .qero-finance-invoice-row { flex-direction:column; align-items:stretch; }
  .qero-finance-invoice-row .invoice-actions { align-self:flex-start; margin-top:3px; }
  .qero-finance-filter-disclosure > summary { padding:15px; }
  .qero-finance-filter-disclosure > p,
  .qero-finance-filter-disclosure > form { margin-left:15px; margin-right:15px; }
  .qero-finance-filter-disclosure > form { margin-bottom:15px; }
  .qero-finance-filter-hint { flex-basis:100%; }
  .qero-finance-invoice-details dl { grid-template-columns:1fr 1fr; }
  .finance-box .invoice-status { font-size:12px; }
  .finance-statement-box { overflow-x:auto; -webkit-overflow-scrolling:touch; }
}
@media (prefers-reduced-motion:reduce) {
  .qero-finance-filter-disclosure > summary::after { transition:none; }
}

/* Qero+ Finance V2.1 — readable status and no dead-end paid checkout controls. */
.qero-finance-invoice-details .qf-details-open { display:none; }
.qero-finance-invoice-details[open] .qf-details-open { display:inline; }
.qero-finance-invoice-details[open] .qf-details-closed { display:none; }
.finance-box .qero-finance-provider-pill { margin-left:8px; vertical-align:middle; }
.finance-box :is(.muted,small) { line-height:1.55; }
.finance-box .invoice-status, .finance-box .qero-finance-provider-pill { font-size:12px; }
.finance-box .invoice-status { display:inline-flex; }
@media (max-width:760px) {
 .finance-box .qero-finance-provider-pill { margin:4px 0 0 0; }
 .finance-statement-box :is(th,td) { font-size:12px; }
 .qero-finance-invoice-details summary { padding:6px 0; }
}
