/* Current assets and period profit stay visually and semantically separate. */
#capital-overview { margin-block: 28px 32px; min-width: 0; }
#capital-overview:empty { display: none; }
.capital-heading { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-block-end: 15px; }
.capital-heading h3 { margin: 0; font-size: 20px; font-weight: 600; }
.capital-note { margin: 4px 0 0; color: var(--muted); font-size: 13px; line-height: 1.8; }
.capital-finance-link { color: var(--accent); font-size: 14px; text-decoration: underline; text-decoration-color: #c5cec5; text-underline-offset: 4px; }
.capital-heading > .capital-finance-link { flex-shrink: 0; }
.capital-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--line); border-radius: 4px 4px 0 0; overflow: hidden; }
.capital-metric { padding: 16px 18px; border-inline-end: 1px solid var(--line); min-width: 0; }
.capital-metric:last-child { border-inline-end: 0; }
.capital-metric-label, .capital-metric-detail { display: block; font-size: 13px; color: var(--muted); }
.capital-metric-amount { display: block; font-size: 27px; font-weight: 600; margin-block: 5px 3px; line-height: 1.5; overflow-wrap: anywhere; }
.capital-metric-detail { font-size: 12px; }
.capital-metric-amount.capital-value-pending { font-size: 19px; min-height: 41px; display: flex; align-items: center; }
.capital-metric .capital-finance-link { display: block; font-size: 12px; }
.capital-net { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 18px; border: 1px solid var(--line); border-top: 0; border-radius: 0 0 4px 4px; background: #f4f6f1; }
.capital-net > div { min-width: 0; }
.capital-net-label { font-size: 17px; font-weight: 600; }
.capital-net-result { text-align: end; flex-shrink: 0; max-width: 48%; }
.capital-net-result > strong { display: inline; font-size: 31px; font-weight: 600; line-height: 1.4; overflow-wrap: anywhere; }
.capital-net-result > span { color: var(--muted); font-size: 13px; margin-inline-start: 6px; }
.capital-net-result > small { display: block; color: var(--muted); font-size: 12px; }
.capital-net-result > .capital-pending { display: block; font-size: 17px; }
.capital-net-result > .capital-finance-link { display: block; margin-top: 4px; }
.capital-negative { color: #934e38; }
.capital-warning { margin: 10px 0 0; padding: 10px 13px; color: #795a35; background: #fbf8f0; border: 1px solid #e8dfcf; border-radius: 3px; font-size: 13px; }
.capital-panels { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 18px; margin-block-start: 20px; }
.capital-panel { min-width: 0; padding: 20px; border: 1px solid var(--line); border-radius: 4px; background: white; }
.capital-panel h4 { margin: 0; font-size: 18px; font-weight: 600; }
.capital-stock { display: flex; flex-direction: column; }
.capital-stock-list { list-style: none; padding: 0; margin: 15px 0 18px; }
.capital-stock-item { margin-block-end: 13px; }
.capital-stock-item:last-child { margin-block-end: 0; }
.capital-stock-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; margin-block-end: 5px; font-size: 14px; }
.capital-stock-name { min-width: 0; overflow-wrap: anywhere; }
.capital-stock-name > span { display: block; }
.capital-stock-name small, .capital-stock-figures small { display: block; font-size: 11px; color: var(--muted); }
.capital-stock-figures { text-align: end; flex-shrink: 0; max-width: 48%; overflow-wrap: anywhere; }
.capital-stock-figures > strong { font-weight: 600; }
.capital-stock-bar { display: block; width: 100%; height: 5px; direction: ltr; }
.capital-stock-track { fill: #eff2ed; }
.capital-stock-fill { fill: #80937d; }
.capital-stock-other { fill: #b1bab0; }
.capital-retail { border-block-start: 1px solid var(--line); padding-block-start: 13px; margin-block-start: auto; }
.capital-retail > div { display: flex; justify-content: space-between; align-items: baseline; gap: 15px; font-size: 13px; }
.capital-retail strong { font-size: 16px; font-weight: 600; text-align: end; overflow-wrap: anywhere; }
.capital-retail .capital-note { font-size: 12px; }
.capital-profit-chart { display: block; width: 100%; height: auto; margin-block: 12px 6px; direction: ltr; }
.capital-zero-line { stroke: #cbd3c9; stroke-width: 1; }
.capital-connector { stroke: #b7c1b4; stroke-width: 1; stroke-dasharray: 4 3; }
.capital-profit-fill { fill: #9aaa93; }
.capital-net-fill { fill: #526f57; }
.capital-expense-fill { fill: #b99780; }
.capital-loss-fill { fill: #a77561; }
.capital-empty-bar { stroke: #aab4a6; stroke-width: 2; }
.capital-chart-label { fill: var(--muted); font: 14px NotoNaskhArabic, Tahoma, sans-serif; }
.capital-profit-rows { margin: 0; }
.capital-profit-row { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; padding-block: 8px; font-size: 14px; }
.capital-profit-row dt, .capital-profit-row dd { margin: 0; min-width: 0; }
.capital-profit-row dt { color: var(--muted); }
.capital-profit-row dd { text-align: end; overflow-wrap: anywhere; }
.capital-profit-subtotal { border-block-start: 1px solid var(--line); }
.capital-profit-subtotal dd { font-weight: 600; }
.capital-profit-result { border-block-start: 1px solid var(--line); margin-block-start: 4px; padding-block: 12px 8px; }
.capital-profit-result dt { color: var(--ink); font-weight: 600; }
.capital-profit-result dd { font-size: 25px; font-weight: 600; line-height: 1.4; }
.capital-profit-note { font-size: 12px; color: var(--muted); margin: 14px 0 0; }
.capital-scope { margin: 12px 0 0; font-size: 12px; color: var(--muted); }
.capital-empty { padding: 32px 15px; margin: 0; color: var(--muted); text-align: center; font-size: 14px; }
.capital-error { padding: 16px; border: 1px solid #e1c8bc; background: #fcf7f3; color: #894d35; font-size: 14px; margin: 0; border-radius: 4px; }
@media (max-width: 1050px) {
  .capital-metric { padding: 14px 12px; }
  .capital-metric-amount { font-size: 24px; }
  .capital-panels { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .capital-panel { padding: 16px; }
}
@media (max-width: 760px) {
  .capital-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .capital-metric:nth-child(2) { border-inline-end: 0; }
  .capital-metric:nth-child(-n + 2) { border-block-end: 1px solid var(--line); }
  .capital-panels { grid-template-columns: minmax(0, 1fr); }
  .capital-heading { align-items: flex-start; flex-wrap: wrap; gap: 8px; }
  .capital-net { align-items: flex-start; gap: 14px; flex-direction: column; padding: 16px; }
  .capital-net-result { text-align: start; max-width: 100%; }
  .capital-net-result > strong { font-size: 28px; }
  .capital-net-result > .capital-pending { font-size: 17px; }
  .capital-profit-chart { max-height: 220px; }
  .capital-retail > div { flex-wrap: wrap; gap: 4px 12px; }
}
@media (max-width: 380px) {
  .capital-metric { padding: 12px 9px; }
  .capital-metric-amount { font-size: 22px; }
  .capital-stock-heading { gap: 8px; }
}
