#life-finance-panel { display:grid; gap:16px; min-width:0; scroll-margin-top:130px; }
#finance-review-heading, #finance-review-detail-heading, [data-finance-review-detail] { scroll-margin-top:130px; scroll-margin-bottom:100px; }
#life-finance-panel h2 { font-size:1.5rem; font-weight:800; }
#life-finance-panel h3 { font-size:1.15rem; font-weight:750; margin-bottom:12px; }
#life-finance-panel h4, #life-finance-panel h5 { font-weight:750; margin:12px 0 8px; }
#life-finance-panel summary { cursor:pointer; min-height:42px; padding:10px 0; font-weight:650; }
#life-finance-panel p { margin:8px 0; overflow-wrap:anywhere; }
#life-finance-panel fieldset { min-width:0; }
#life-finance-panel :is(input,select,textarea,button,summary), [data-finance-detail] { scroll-margin-top:130px; scroll-margin-bottom:100px; }
#life-finance-panel button:disabled { opacity:.55; cursor:not-allowed; }
#life-finance-panel input, #life-finance-panel select, #life-finance-panel textarea { min-height:44px; width:100%; box-sizing:border-box; }
#life-finance-panel .life-label { margin:10px 0; }
#life-finance-panel .life-list-row { align-items:flex-start; flex-wrap:wrap; }
.finance-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.finance-card { border:1px solid #d6dfeb; border-radius:12px; padding:16px; min-width:0; }
.finance-card dl > div { display:flex; justify-content:space-between; gap:12px; padding:6px 0; flex-wrap:wrap; }
.finance-card dd { font-variant-numeric:tabular-nums; font-weight:650; overflow-wrap:anywhere; }
.finance-warning { background:#fff8e6; color:#654600; padding:14px; border-radius:8px; }
.finance-text { white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }
.finance-notice:empty { display:none; }
#reconciliation-editor input[type="checkbox"] { width:20px; min-height:20px; margin-right:6px; vertical-align:middle; }
@media (max-width:640px) { .finance-grid { grid-template-columns:1fr; } #life-finance-panel .life-panel { padding:16px; } }
