.record-receipt {
  --receipt-ink:var(--expense);
  --receipt-fill:var(--expense-soft);
  display:grid;
  gap:16px;
  min-width:0;
}
.record-receipt.receipt-income { --receipt-ink:var(--income); --receipt-fill:var(--income-soft); }
.record-receipt.receipt-wallet { --receipt-ink:var(--asset); --receipt-fill:var(--asset-soft); }
.record-receipt.receipt-debt { --receipt-ink:var(--debt); --receipt-fill:var(--debt-soft); }
.record-receipt.receipt-exchange { --receipt-ink:var(--transfer); --receipt-fill:var(--transfer-soft); }
.receipt-hero { display:grid; gap:6px; min-width:0; padding:16px; border-radius:var(--radius); background:var(--receipt-fill); }
.receipt-type { display:flex; align-items:center; gap:7px; font-size:var(--type-caption); font-weight:var(--weight-semibold); color:var(--receipt-ink); }
.receipt-type .icon { width:var(--icon-small); height:var(--icon-small); }
.receipt-hero h3 { margin:3px 0 0; font-size:var(--type-body); line-height:1.45; overflow-wrap:anywhere; }
.receipt-amount { color:var(--text); font-size:var(--type-amount); line-height:1.25; letter-spacing:-.035em; font-weight:var(--weight-bold); font-variant-numeric:tabular-nums; }
.receipt-amount small { margin-inline-start:.15em; color:inherit; font-size:var(--type-money-unit); font-weight:var(--weight-semibold); }
.receipt-date { display:flex; align-items:baseline; flex-wrap:wrap; gap:5px; font-size:var(--type-caption); color:var(--muted); }
.receipt-date span { color:var(--receipt-ink); font-weight:var(--weight-semibold); }
.record-receipt dl { margin:0; }
.receipt-row { display:grid; grid-template-columns:minmax(58px,.7fr) minmax(0,1.55fr); align-items:baseline; gap:14px; padding:9px 0; border-bottom:1px solid var(--line); line-height:1.55; }
.receipt-row:last-child { border:0; }
.receipt-row dt,.receipt-row dd { margin:0; font-size:var(--type-note); }
.receipt-row dt { color:var(--muted); }
.receipt-row dd { color:var(--text); font-weight:var(--weight-semibold); text-align:end; overflow-wrap:anywhere; white-space:pre-wrap; font-variant-numeric:tabular-nums; }
.receipt-history { padding:12px 14px; border-radius:12px; background:var(--neutral-soft); }
.receipt-history h3 { margin:0 0 3px; font-size:var(--type-note); }
.receipt-history .receipt-row { border:0; padding:4px 0; }
.receipt-history-note { margin:4px 0 8px; color:var(--text-sub); font-size:var(--type-caption); line-height:1.55; }
.receipt-history-more { border-top:1px solid var(--line); margin-top:6px; }
.receipt-history-more>summary { min-height:44px; display:flex; align-items:center; padding:8px 0; font-size:var(--type-note); font-weight:var(--weight-semibold); cursor:pointer; }
.quote-details { margin:-8px 0 18px; border-block:1px solid var(--line); }
.quote-details>summary { display:flex; align-items:center; min-height:44px; padding:10px 0; font-size:var(--type-note); font-weight:var(--weight-semibold); cursor:pointer; }
.quote-details>summary,.receipt-history-more>summary { gap:8px; list-style:none; }
.quote-details>summary::-webkit-details-marker,.receipt-history-more>summary::-webkit-details-marker { display:none; }
.quote-details>summary>.icon,.receipt-history-more>summary>.icon { margin-inline-start:auto; width:var(--icon-small); height:var(--icon-small); color:var(--text-sub); }
.quote-details[open]>summary>.icon,.receipt-history-more[open]>summary>.icon { transform:rotate(180deg); }
.quote-details>div { padding:0 0 10px; }
.quote-details p,.trade-share-note { margin:4px 0; color:var(--text-sub); font-size:var(--type-caption); line-height:1.6; overflow-wrap:anywhere; }
.trade-share-note { margin:5px 0 10px; }
.trade-identity p { min-width:0; overflow-wrap:anywhere; }
.receipt-actions { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,125px),1fr)); gap:8px; }
.receipt-actions button { min-width:0; min-height:48px; padding:9px; font-size:var(--type-label); }
.receipt-actions.receipt-current { margin-top:16px; }
.card-settlement { padding:14px; border-radius:var(--radius); background:var(--neutral-soft); min-width:0; }
.card-settlement h3 { font-size:var(--type-label); font-weight:var(--weight-semibold); }
.card-settlement p,.card-settlement summary span,.card-settlement li small,.card-settlement time { font-size:var(--type-caption); color:var(--text-sub); }
.card-settlement p { margin:6px 0; }
.card-settlement summary { cursor:pointer; padding:11px 0; min-height:44px; font-size:var(--type-note); font-weight:var(--weight-semibold); }
.card-settlement summary span { margin-inline-start:4px; font-weight:var(--weight-regular); }
.card-settlement ol { margin:0; padding:0; list-style:none; }
.card-settlement li { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:6px 12px; border-top:1px solid var(--line); padding-block:9px; font-size:var(--type-note); }
.card-settlement li>div { display:grid; gap:3px; min-width:0; overflow-wrap:anywhere; }
.card-settlement li b { font-weight:var(--weight-semibold); }
.card-settlement-value { margin-inline-start:auto; text-align:end; font-variant-numeric:tabular-nums; }
.cash-receipt-posting { min-width:0; padding:14px; border-radius:var(--radius); background:var(--neutral-soft); }
.cash-receipt-posting h3 { margin:0 0 5px; font-size:var(--type-label); }
.cash-receipt-posting p { margin:8px 0 0; color:var(--text-sub); font-size:var(--type-caption); line-height:1.6; }
.cash-receipt-posting.is-held h3 { color:var(--danger); }
