/* Liquidity and data tabs (ps-liquidity, dt-audit, dt-explore) — js/pages/fis/liquidity.js, audit.js,
   explore.js. Scoped under .fis-scope .fis-dt; builds on css/fis.css (cards, tables, pills, help box).
   Colours only from the prototype tokens (--p-*, css/fis-theme.css). */
.fis-scope .fis-dt{display:flex;flex-direction:column;gap:14px;min-width:0;}
.fis-scope .fis-dt .pos{color:var(--p-good);}
.fis-scope .fis-dt .neg{color:var(--p-bad);}
.fis-scope .fis-dt .warn{color:var(--p-warn);}

/* KPI tiles */
.fis-scope .fis-dt-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;}
.fis-scope .fis-dt-kpi{background:var(--p-card);border:1px solid var(--p-line);border-radius:14px;padding:16px;min-width:0;overflow:hidden;
  display:flex;flex-direction:column;gap:2px;color:var(--p-ink);}
.fis-scope .fis-dt-kpi small{font-size:calc(12.5px*var(--fz,1));color:var(--p-muted);line-height:1.4;}
.fis-scope .fis-dt-kpi b{font-size:calc(23px*var(--fz,1));font-weight:700;font-variant-numeric:tabular-nums;line-height:1.3;margin:2px 0;}
.fis-scope .fis-dt-kpi span{font-size:calc(12px*var(--fz,1));color:var(--p-muted);line-height:1.4;}

/* stat rows */
.fis-scope .fis-dt-stat{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 0;
  border-bottom:1px solid var(--p-line);font-size:calc(13px*var(--fz,1));color:var(--p-ink);}
.fis-scope .fis-dt-stat:last-child{border-bottom:0;}
.fis-scope .fis-dt-stat > span:first-child{min-width:0;}
.fis-scope .fis-dt-stat small{display:block;font-size:calc(11.5px*var(--fz,1));color:var(--p-muted);margin-top:2px;}
.fis-scope .fis-dt-stat > b,.fis-scope .fis-dt-stat > span:last-child{white-space:nowrap;font-weight:700;text-align:right;font-variant-numeric:tabular-nums;}
.fis-scope .fis-dt-note{font-size:calc(12px*var(--fz,1));color:var(--p-muted);margin-top:8px;line-height:1.5;}

/* tables */
.fis-scope .fis-dt-scroll{overflow:auto;max-width:100%;-webkit-overflow-scrolling:touch;margin-top:8px;}
.fis-scope .fis-dt-scroll.fis-dt-short{max-height:240px;}
.fis-scope .fis-dt-scroll.fis-dt-tall{max-height:420px;}
.fis-scope .fis-dt-tbl{min-width:480px;}
.fis-scope .fis-dt-tbl th{position:sticky;top:0;background:var(--p-card);z-index:1;white-space:nowrap;}
.fis-scope .fis-dt-tbl td{padding:7px 6px;}
.fis-scope .fis-dt-tbl th{padding:8px 6px;font-weight:500;}
.fis-scope .fis-dt-tbl td:first-child{width:auto;color:var(--p-ink);white-space:nowrap;}
.fis-scope .fis-dt-tbl .n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;}
.fis-scope .fis-dt-sub{color:var(--p-muted);font-size:calc(12px*var(--fz,1));white-space:normal;}
.fis-scope .fis-dt-tbl td .fis-dt-sub{max-width:300px;}
.fis-scope .fis-dt-click{cursor:pointer;}
.fis-scope .fis-dt-click:hover td{background:var(--p-soft);}
.fis-scope .fis-dt-click:focus-visible{outline:2px solid var(--p-accent);outline-offset:-2px;}
.fis-scope .fis-dt-click.sel td{background:var(--p-soft);}

/* liquidity projection */
.fis-scope .fis-lq-proj{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:start;}
.fis-scope .fis-lq-side{display:flex;flex-direction:column;gap:6px;min-width:0;}
.fis-scope .fis-lq-lab{font-size:calc(13px*var(--fz,1));color:var(--p-ink);display:flex;justify-content:space-between;gap:8px;margin-top:10px;}
.fis-scope .fis-lq-lab b{color:var(--p-accent);font-weight:700;white-space:nowrap;}
.fis-scope .fis-lq-side input[type=range]{width:100%;accent-color:var(--p-accent);}
.fis-scope .fis-lq-btns{display:flex;align-items:center;gap:10px;margin-top:6px;}
.fis-scope .fis-lq-seed{font-size:calc(11.5px*var(--fz,1));color:var(--p-muted);}
.fis-scope .fis-lq-out{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px;}
.fis-scope .fis-lq-out > div{background:var(--p-soft);border-radius:10px;padding:10px;min-width:0;}
.fis-scope .fis-lq-out small{display:block;font-size:calc(12px*var(--fz,1));color:var(--p-muted);line-height:1.4;}
.fis-scope .fis-lq-out strong{font-size:calc(19px*var(--fz,1));font-weight:700;font-variant-numeric:tabular-nums;color:var(--p-ink);}
.fis-scope .fis-lq-out strong.pos{color:var(--p-good);}
.fis-scope .fis-lq-out strong.warn{color:var(--p-warn);}
.fis-scope .fis-lq-out strong.neg{color:var(--p-bad);}
.fis-scope [aria-busy="true"] .fis-lq-chart,.fis-scope #exDetail[aria-busy="true"]{opacity:.55;transition:opacity .15s;}

/* explorer */
.fis-scope .fis-ex-ctl{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.fis-scope .fis-ex-q{flex:1 1 220px;min-width:0;}
.fis-scope .fis-ex-g{flex:0 1 260px;min-width:0;max-width:100%;}
.fis-scope .fis-ex-q,.fis-scope .fis-ex-g{height:36px;padding:0 10px;border-radius:8px;border:1px solid var(--p-line);
  background:var(--p-card);color:var(--p-ink);font:inherit;font-size:calc(13px*var(--fz,1));}
.fis-scope .fis-ex-q:focus,.fis-scope .fis-ex-g:focus{outline:2px solid var(--p-accent);outline-offset:0;border-color:var(--p-accent);}
.fis-scope .fis-ex-count{font-size:calc(12px*var(--fz,1));color:var(--p-muted);white-space:nowrap;}
.fis-scope .fis-dt-scroll.fis-ex-list{max-height:560px;}
.fis-scope .fis-ex-list .fis-dt-sub{min-width:180px;}

@media (max-width: 767.98px){
  .fis-scope .fis-lq-proj{grid-template-columns:minmax(0,1fr);}
  .fis-scope .fis-dt-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .fis-scope .fis-dt-kpi{padding:12px;}
  .fis-scope .fis-dt-kpi b{font-size:calc(18px*var(--fz,1));}
  .fis-scope .fis-dt-scroll.fis-ex-list{max-height:420px;}
}
