/* Presentation only. Financial values, sources and contracts remain server-owned. */
.liq-chart-card {
  --liq-ink: #173654;
  --liq-blue: #356caa;
  --liq-positive: #16735b;
  --liq-warning: #946014;
  --liq-danger: #b23848;
  --liq-incomplete: #65758a;
  padding: 22px;
  border-color: #dce5ee;
  border-radius: 18px;
  box-shadow: 0 4px 20px #17365406;
}
.liq-chart-card > header { align-items: flex-start; gap: 12px; margin-bottom: 20px; }
.liq-chart-card h4 { color: var(--liq-ink); font-size: 18px; font-weight: 800; margin-bottom: 7px; }
.liq-chart-card header p { font-size: 13px; line-height: 1.8; max-width: 56ch; color: #607185; }
.liq-chart-card .liq-dependency { padding: 6px 10px; border-radius: 7px; font-size: 11px; background: #faf5e8; border-color: #e9dbb9; color: #7b601e; }
.liq-chart { min-height: 0; scrollbar-width: thin; scrollbar-color: #c3d1e1 #f5f8fc; }
.liq-chart-meta { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; padding: 0 2px; font-size: 12px; color: #607185; }
.liq-chart-view { border: 1px solid #e1e8f0; background: #f6f8fb; border-radius: 6px; padding: 5px 9px; }
.liq-chart-reserve { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.liq-chart-reserve i { width: 18px; border-top: 2px dashed #b23848; }
.liq-chart-reserve bdi { color: #394e64; font-weight: 700; font-variant-numeric: tabular-nums; }
.liq-chart[data-resolution="monthly"] svg { width: 100%; height: 320px; overflow: visible; }
.liq-chart-grid { stroke: #e8edf3; stroke-width: 1; }
.liq-chart .liq-balance-area { fill: #356caa; opacity: .035; pointer-events: none; }
.liq-chart .liq-balance-line { stroke: var(--liq-blue); stroke-width: 2.75; stroke-linecap: round; stroke-linejoin: round; }
.liq-chart .liq-safety-line { stroke: #b23848; stroke-width: 1.2; stroke-dasharray: 5 5; opacity: .6; }
.liq-chart .liq-point { --point-color: var(--liq-blue); }
.liq-chart .tone-positive { --point-color: var(--liq-positive); }
.liq-chart .tone-warning { --point-color: var(--liq-warning); }
.liq-chart .tone-danger { --point-color: var(--liq-danger); }
.liq-chart .tone-incomplete { --point-color: var(--liq-incomplete); }
.liq-chart .liq-point circle.liq-point-hit { fill: transparent; stroke: none; }
.liq-chart .liq-point circle.liq-balance-marker { fill: #fff; stroke: var(--point-color); stroke-width: 2.5; }
.liq-chart .tone-incomplete circle.liq-balance-marker { stroke-dasharray: 2 1; }
.liq-chart .liq-point .liq-critical-marker { fill: #fff !important; stroke: #b23848; stroke-width: 1.8; }
.liq-chart .liq-point text.liq-point-value { fill: #263e58; font-size: 13px; font-weight: 750; font-variant-numeric: tabular-nums; paint-order: stroke; stroke: #fff; stroke-width: 5px; stroke-linejoin: round; }
.liq-chart .liq-point text.liq-month-axis { fill: #3c5169; font-size: 12px; font-weight: 650; }
.liq-chart .liq-point text.liq-point-state { fill: var(--point-color); font-size: 10px; font-weight: 650; }
.liq-chart .liq-point .liq-unavailable-value { fill: #758498; font-size: 23px; }
.liq-chart .liq-point .liq-unavailable-copy { fill: #758498; font-size: 11px; }
.liq-unknown-guide { stroke: #cdd7e2; stroke-dasharray: 3 5; }
.liq-chart circle[data-chart-point].chart-point-active { fill: var(--point-color) !important; stroke: #fff !important; stroke-width: 2px !important; transform: scale(1.2); filter: drop-shadow(0 0 2px #356caa40); }
.liq-chart .chart-active-local-segment { stroke: #356caa !important; stroke-width: 3.5px !important; filter: none; }
.liq-chart [data-chart-point] { cursor: pointer; }
.liq-chart [data-chart-point]:focus-visible { outline: 2px solid #356caa; outline-offset: 4px; filter: none; }
.liq-chart .chart-point-active:not(circle):not(rect):not(path) { outline: none; filter: none; }
.liq-chart-legend { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; padding: 14px 0 0; border-top: 1px solid #e8edf3; font-size: 11px; color: #607185; }
.liq-chart-legend span { display: inline-flex; gap: 6px; align-items: center; white-space: nowrap; padding: 0; background: none; border: 0; border-radius: 0; }
.liq-chart-legend i,.liq-balance-badge i { display: inline-grid; place-items: center; flex: 0 0 18px; width: 18px; height: 18px; border: 1px solid currentColor; border-radius: 50%; font-style: normal; font-weight: 800; line-height: 1; }
.liq-chart-legend .positive { color: #16735b; }.liq-chart-legend .warning { color: #946014; }.liq-chart-legend .danger { color: #b23848; }.liq-chart-legend .incomplete { color: #65758a; }
.liq-chart-card p.liq-chart-hint { font-size: 11px; line-height: 1.8; margin: 12px 0 0; color: #718096; }

.liq-month-detail {
  width: min(460px,calc(100vw - 24px)); padding: 0; overflow: visible;
  border: 1px solid #d9e3ee; border-radius: 20px; background: #fff; color: #263e58;
  box-shadow: 0 24px 80px #17365430,0 3px 12px #17365412; font-size: 13px;
}
.liq-month-detail::backdrop { background: #17365414; }
.liq-detail-body { padding: 24px; border-radius: inherit; max-height: calc(100dvh - 26px); overflow: auto; box-sizing: border-box; scrollbar-width: thin; }
.liq-month-detail[data-placement="right"]::before,.liq-month-detail[data-placement="left"]::before { content: ""; position: absolute; top: var(--liq-arrow-top,60px); width: 10px; height: 10px; background: #fff; border: 1px solid #d9e3ee; transform: translateY(-50%) rotate(45deg); }
.liq-month-detail[data-placement="right"]::before { left: 4px; border-top: 0; border-right: 0; }
.liq-month-detail[data-placement="left"]::before { right: 4px; border-bottom: 0; border-left: 0; }
.liq-month-detail header { gap: 12px; padding-bottom: 18px; border-bottom: 1px solid #e8edf3; }
.liq-month-detail header > div { min-width: 0; }
.liq-month-detail h3 { color: #173654; font-size: 18px; font-weight: 800; line-height: 1.6; }
.liq-month-detail header p.liq-month-subtitle { margin: 5px 0 10px; color: #607185; font-size: 14px; font-weight: 600; }
.liq-month-detail header button { display: grid; place-items: center; flex: 0 0 34px; min-width: 34px; min-height: 34px; padding: 0; border: 1px solid #e2e8f0; border-radius: 9px; background: #f8fafc; color: #607185; font-size: 23px; line-height: 1; }
.liq-month-detail header button:hover { background: #edf2f7; color: #173654; }
.liq-month-detail header button:focus-visible { outline: 3px solid #356caa; outline-offset: 2px; }
.liq-balance-badge { display: inline-flex; align-items: center; gap: 7px; padding: 5px 9px; border: 1px solid #dbe4ed; border-radius: 7px; font-size: 11px; font-weight: 700; }
.liq-balance-badge.positive { color: #16735b; background: #f0f8f5; border-color: #cde8dd; }
.liq-balance-badge.warning { color: #946014; background: #fff8ea; border-color: #ecdcb7; }
.liq-balance-badge.danger { color: #b23848; background: #fff3f4; border-color: #f0d3d8; }
.liq-balance-badge.incomplete { color: #65758a; background: #f4f6f9; border-style: dashed; }
.liq-balance-badge i { flex-basis: 15px; width: 15px; height: 15px; font-size: 10px; }
.liq-month-period { margin: 13px 0 0; font-size: 11px; color: #607185; line-height: 1.7; }
.liq-month-detail dl { margin: 12px 0 0; }
.liq-month-detail dl > div { display: grid; grid-template-columns: minmax(0,1fr) max-content; align-items: center; gap: 14px; padding: 10px 0; }
.liq-month-detail dt { display: flex; align-items: center; gap: 7px; line-height: 1.65; color: #52677d; min-width: 0; }
.liq-month-detail dt > span:not(.liq-month-sign) { flex: 1; }
.liq-month-sign { order: 2; display: inline-grid; place-items: center; flex: 0 0 19px; height: 19px; border-radius: 5px; background: #f0f4f8; color: #65758a; font-size: 13px; font-weight: 700; }
.liq-month-detail dd { display: inline-flex; direction: ltr; align-items: baseline; justify-content: flex-end; gap: 5px; color: #263e58; font-size: 14px; font-weight: 650; text-align: end; font-variant-numeric: tabular-nums; }
.liq-month-detail dd small { font-size: 10px; color: #718096; font-weight: 500; }
.liq-month-detail dd bdi { unicode-bidi: isolate; }
.liq-month-detail dd.is-unavailable { padding: 3px 7px; border: 1px dashed #d2dce6; border-radius: 6px; background: #f7f9fb; color: #65758a; font-size: 11px; font-weight: 600; }
.liq-month-detail dl > div.liq-month-total { margin: 12px -10px 0; padding: 16px 10px; border: 1px solid #d5e2ef; border-radius: 11px; background: #f0f5fa; font-weight: 800; }
.liq-month-total dt { color: #173654; font-size: 13px; font-weight: 800; }
.liq-month-total dd { color: #173654; font-size: 19px; font-weight: 800; letter-spacing: -.3px; }
.liq-month-total .liq-month-sign { background: #dfeaf5; color: #356caa; }
.liq-month-detail[data-tone="danger"] .liq-month-total { background: #fff4f5; border-color: #eed1d6; }
.liq-month-detail[data-tone="danger"] .liq-month-total dd { color: #b23848; }
.liq-month-detail dl.liq-month-change { margin-top: 6px; }
.liq-month-net dt,.liq-month-net dd { font-weight: 750; }.liq-month-net.positive dd { color: #16735b; }.liq-month-net.negative dd { color: #b23848; }
.liq-month-minimum { margin-top: 10px; padding: 16px 14px 10px; border: 1px solid #e7ecf2; border-radius: 11px; background: #fafbfd; }
.liq-month-minimum h4 { font-size: 11px; font-weight: 700; color: #718096; margin: 0 0 6px; }
.liq-month-minimum dl { margin: 0; }.liq-month-minimum dl > div { padding: 6px 0; }
.liq-month-minimum dd { font-size: 13px; }
.liq-month-detail p.liq-month-note { margin: 12px 0 0; background: #f7f8fa; border: 1px dashed #d5dee8; padding: 11px; border-radius: 9px; color: #607185; font-size: 11px; line-height: 1.8; }
.liq-month-hint { color: #7b8999; font-size: 10px; text-align: center; margin: 14px 0 0; line-height: 1.7; }
@media(max-width:600px) {
  .liq-chart-card { padding: 16px 12px; border-radius: 14px; }
  .liq-chart-card > header { margin-bottom: 16px; }
  .liq-chart-card h4 { font-size: 16px; }
  .liq-chart-card header p { font-size: 12px; }
  .liq-chart-meta { font-size: 11px; align-items: flex-start; }
  .liq-chart-legend { gap: 10px 12px; }
  .liq-month-detail { inset: auto 0 0; width: 100%; max-width: 100vw; max-height: 90dvh; border-radius: 22px 22px 0 0; }
  .liq-detail-body { padding: 22px 18px calc(20px + env(safe-area-inset-bottom)); max-height: 90dvh; }
  .liq-month-detail::before { display: none; }
  .liq-month-detail h3 { font-size: 17px; }
  .liq-month-detail dl > div { gap: 9px; padding-block: 9px; }
  .liq-month-detail dd { font-size: 13px; }
  .liq-month-total dd { font-size: 17px; }
  .liq-month-detail dl > div.liq-month-total { padding: 14px 10px; }
  .liq-month-minimum { padding: 13px 10px 9px; }
}
@media(forced-colors:active) {
  .liq-chart .liq-point circle.liq-balance-marker,.liq-chart .liq-critical-marker { stroke: CanvasText !important; }
  .liq-chart .liq-point text { fill: CanvasText !important; stroke: none; }
  .liq-chart .liq-balance-line,.liq-chart .liq-safety-line { stroke: CanvasText; }
}
