/* Ruvo Liquidity Surface — trading terminal, desktop-first but responsive. */
#liquidity{--ls-bg:#0b1014;--ls-pane:#10171c;--ls-line:#27343b;--ls-muted:#81949c;--ls-high:#e6eeee;--ls-soft:#bdd2d0;--ls-accent:#9dcac5}
#liquidity>.heading{display:none!important}
#liquidity .ls-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:6px 0 18px}
#liquidity .ls-eyebrow{font:10px ui-monospace,SFMono-Regular,monospace;letter-spacing:.16em;color:#647780}
#liquidity .ls-eyebrow i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#537e75;margin-right:9px}
#liquidity .ls-header h2{font-size:clamp(36px,4.4vw,60px);font-weight:500;line-height:1.05;letter-spacing:-.065em;margin:10px 0}
#liquidity .ls-header h2 em{font-weight:350;font-style:normal;opacity:.62}
#liquidity .ls-header p{font-size:12px;color:#687880;margin:0}
#liquidity .ls-uptime{display:flex;flex-direction:column;align-items:flex-end;gap:8px;white-space:nowrap}
#liquidity .ls-uptime b{font:10px ui-monospace,monospace;letter-spacing:.13em;border:1px solid #b3bebd;padding:9px 13px;border-radius:2px}
#liquidity .ls-uptime small{font:9px ui-monospace,monospace;color:#7b898a;letter-spacing:.08em}
#liquidity .ls-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #c9d0cf;border-bottom:1px solid #c9d0cf;margin:0 0 17px}
#liquidity .ls-stats>div{padding:16px 20px 18px;border-right:1px solid #ced4d3;display:flex;flex-direction:column;gap:8px;min-width:0}
#liquidity .ls-stats>div:first-child{padding-left:2px}
#liquidity .ls-stats>div:last-child{border-right:0}
#liquidity .ls-stats span{font:10px ui-monospace,monospace;letter-spacing:.08em;color:#78878b}
#liquidity .ls-stats strong{font:500 clamp(24px,2.8vw,38px)/1 ui-monospace,monospace;letter-spacing:-.065em}
#liquidity .ls-stats small{font:10px/1.45 ui-monospace,monospace;color:#869392}
#liquidity .ls-terminal{background:var(--ls-bg);color:#e0e9e7;border:1px solid #1d292f;border-radius:4px;overflow:hidden}
#liquidity .ls-topbar,#liquidity .ls-bottombar{min-height:37px;display:flex;gap:16px;align-items:center;justify-content:space-between;padding:8px 14px;background:#111a1f;border-bottom:1px solid var(--ls-line);font:9px ui-monospace,monospace;letter-spacing:.085em}
#liquidity .ls-topbar b{font-weight:700;color:#fff}
#liquidity .ls-topbar b span{font-weight:400;color:#94a8b0}
#liquidity .ls-topbar>span{color:#b1c7c4}
#liquidity .ls-topbar>span i{display:inline-block;width:5px;height:5px;background:#9fcdc3;border-radius:50%;margin-right:7px}
#liquidity .ls-topbar small{font:9px ui-monospace,monospace;color:#71878e}
#liquidity .ls-workspace{display:grid;grid-template-columns:minmax(190px,216px) minmax(0,1fr) minmax(176px,207px);min-height:688px}
#liquidity .ls-assets,#liquidity .ls-inspector{background:#0d1419;min-width:0}
#liquidity .ls-assets{border-right:1px solid var(--ls-line);display:flex;flex-direction:column}
#liquidity .ls-inspector{border-left:1px solid var(--ls-line);padding:16px 14px}
#liquidity .ls-pane-label{display:flex;justify-content:space-between;align-items:center;gap:5px;padding:15px 13px 12px;color:#b8c7c9;font:9px ui-monospace,monospace;letter-spacing:.105em}
#liquidity .ls-pane-label b{font-size:9px;color:#667f86;font-weight:400}
#liquidity .ls-search{display:flex;align-items:center;gap:9px;background:#162026;border:1px solid #303e45;border-radius:2px;margin:0 10px 10px;padding:8px 9px;height:37px}
#liquidity .ls-search span{font-size:22px;color:#728993;line-height:1}
#liquidity .ls-search input{background:transparent;border:0;outline:0;min-width:0;flex:1;color:#dce8e6;font:11px ui-monospace,monospace}
#liquidity .ls-search input::placeholder{color:#657d85}
#liquidity .ls-search kbd{font:9px ui-monospace,monospace;border:1px solid #3e4f56;color:#70888f;padding:3px 5px}
#liquidity .ls-filters{display:flex;gap:3px;margin:0 10px 12px}
#liquidity .ls-filters button{cursor:pointer;background:transparent;color:#8aa0a6;border:1px solid #324149;padding:8px 4px;flex:1;font:9px ui-monospace,monospace}
#liquidity .ls-filters button[aria-pressed=true]{background:#34494d;color:#e6f4f1;border-color:#4d6b6b}
#liquidity .ls-asset-list{overflow-y:auto;scrollbar-color:#53666b transparent;scrollbar-width:thin;max-height:580px;flex:1;min-height:0}
#liquidity .ls-asset{width:100%;height:35px;display:grid;grid-template-columns:5px 44px minmax(0,1fr) 36px;gap:6px;align-items:center;background:transparent;border:0;border-bottom:1px solid #1d2a2f;color:#d0dedf;text-align:left;cursor:pointer;padding:0 10px;position:relative}
#liquidity .ls-asset:hover,#liquidity .ls-asset:focus-visible{background:#213138;outline:0}
#liquidity .ls-asset.active{background:#284049;box-shadow:inset 2px 0 #c4ded8}
#liquidity .ls-asset i{width:4px;height:4px;background:#a2c9bd;border-radius:50%;display:block}
#liquidity .ls-asset i.unknown{background:#3f555e}
#liquidity .ls-asset b{font:700 11px ui-monospace,monospace}
#liquidity .ls-asset span{font:10px ui-monospace,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#95a8ab}
#liquidity .ls-asset small{font:9px ui-monospace,monospace;text-align:right;color:#c2d0cd}
#liquidity .ls-asset em{position:absolute;bottom:1px;right:8px;height:2px;width:calc(var(--bar) * .36);max-width:34px;background:#769996;opacity:.65}
#liquidity .ls-sidefoot{padding:12px 10px;border-top:1px solid var(--ls-line);font:9px ui-monospace,monospace;color:#728a90}
#liquidity .ls-center{min-width:0;background:#0b1014;display:flex;flex-direction:column}
#liquidity .ls-symbolrow{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding:21px 22px 14px}
#liquidity .ls-symbolrow>div:first-child>span{font:9px ui-monospace,monospace;letter-spacing:.15em;color:#8da5ac}
#liquidity .ls-symbolrow h3{font:500 clamp(24px,3vw,39px)/1 ui-monospace,monospace;letter-spacing:-.055em;color:#f7f9f8;margin:9px 0}
#liquidity .ls-symbolrow h3 small{font-size:.54em;color:#748f98;font-weight:350}
#liquidity .ls-symbolrow p{font:10px ui-monospace,monospace;color:#81989d;margin:0}
#liquidity .ls-last{display:flex;flex-direction:column;gap:9px;text-align:right;align-items:flex-end}
#liquidity .ls-last strong{font:500 clamp(22px,2.6vw,32px) ui-monospace,monospace;letter-spacing:-.045em;white-space:nowrap}
#liquidity .ls-last small{font:9px ui-monospace,monospace;color:#769095}
#liquidity .ls-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:9px 20px;border-top:1px solid #22313a;border-bottom:1px solid #22313a;color:#88a0a6;font:9px ui-monospace,monospace}
#liquidity .ls-timeframes{display:flex;gap:1px}
#liquidity .ls-timeframes button,#liquidity #ls-refresh{background:transparent;color:#8ea4a9;border:1px solid #36474e;padding:6px 11px;font:10px ui-monospace,monospace;cursor:pointer}
#liquidity .ls-timeframes button[aria-pressed=true]{background:#e1ebea;color:#151b1d;border-color:#e1ebea}
#liquidity .ls-plot{min-width:0;padding:13px 14px 5px;flex:1}
#liquidity #ls-heat{display:block;width:100%;height:auto;max-height:435px;overflow:visible}
#liquidity .ls-axis{fill:#748d96;font:11px ui-monospace,monospace}
#liquidity .ls-label{fill:#8ca5ad;font:9px ui-monospace,monospace;letter-spacing:1.1px}
#liquidity .ls-plotlabel{fill:#dde9e5;font:9px ui-monospace,monospace}
#liquidity .ls-hover{display:flex;justify-content:space-between;gap:12px;padding:2px 3px 10px;color:#839ba0;font:9px ui-monospace,monospace}
#liquidity .ls-loading{height:420px;display:flex;flex-direction:column;gap:20px;align-items:center;justify-content:center;font:10px ui-monospace,monospace;letter-spacing:.1em;color:#a5b5b6}
#liquidity .ls-loadbar{height:2px;width:160px;background:linear-gradient(90deg,transparent,#c0d9d5,transparent);animation:ls-load 1.4s ease-in-out infinite}
@keyframes ls-load{0%,100%{opacity:.15;transform:scaleX(.4)}50%{opacity:1;transform:scaleX(1)}}
#liquidity .ls-empty{min-height:405px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:30px;text-align:center}
#liquidity .ls-empty span{font:10px ui-monospace,monospace;color:#8fa5ac;letter-spacing:.12em}
#liquidity .ls-empty strong{font:400 36px ui-monospace,monospace;margin:20px 0}
#liquidity .ls-empty p{max-width:430px;font:12px/1.7 ui-monospace,monospace;color:#899ba2}
#liquidity .ls-empty a,#liquidity .ls-empty button{background:transparent;border:1px solid #637a81;color:#bfd2d1;padding:11px;font:10px ui-monospace,monospace;text-decoration:none;cursor:pointer}
#liquidity .ls-gradient{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:2px 17px 13px;color:#7f969c;font:9px ui-monospace,monospace}
#liquidity .ls-gradient i{width:100px;height:6px;background:linear-gradient(90deg,#19262e,#466668,#99bfba,#eef5ef)}
#liquidity .ls-gradient b{font-weight:400;margin-left:auto;color:#799197}
#liquidity .ls-bottompanels{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid #25343b;margin-top:auto}
#liquidity .ls-bottompanels section{padding:13px 17px;min-width:0}
#liquidity .ls-bottompanels section+section{border-left:1px solid #25343b}
#liquidity .ls-sectionhead{font:10px ui-monospace,monospace;color:#c9d7d7;display:flex;justify-content:space-between;gap:8px}
#liquidity .ls-sectionhead span{color:#67818b}
#liquidity .ls-bottompanels p{font:10px/1.65 ui-monospace,monospace;color:#91a2a5;margin:12px 0}
#liquidity .ls-profmetrics{display:flex;gap:14px;margin:14px 0;flex-wrap:wrap}
#liquidity .ls-profmetrics span{display:flex;flex-direction:column;gap:5px;font:9px ui-monospace,monospace;color:#8ba0a4}
#liquidity .ls-profmetrics b{font:500 13px ui-monospace,monospace;color:#e6efed}
#liquidity .ls-mini-profile{height:27px;display:flex;align-items:flex-end;gap:2px}
#liquidity .ls-mini-profile i{flex:1;background:#6c9493;min-height:2px}
#liquidity .ls-inspector .ls-pane-label{padding:0 0 14px}
#liquidity .ls-inspector-title{padding:13px 0 18px;border-bottom:1px solid var(--ls-line)}
#liquidity .ls-status{display:inline-block;border:1px solid #607d78;color:#bad6cf;padding:6px 8px;font:9px ui-monospace,monospace;letter-spacing:.08em}
#liquidity .ls-status.dim{color:#849da3;border-color:#43575c}
#liquidity .ls-inspector-title h3{font:550 29px ui-monospace,monospace;letter-spacing:-.05em;margin:17px 0 2px}
#liquidity .ls-inspector-title p{font:11px ui-monospace,monospace;color:#8e9fa1;margin:0}
#liquidity .ls-kpis>div{padding:15px 0;border-bottom:1px solid #213138;display:flex;flex-direction:column;gap:9px}
#liquidity .ls-kpis span{font:9px ui-monospace,monospace;color:#819a9f;letter-spacing:.08em}
#liquidity .ls-kpis strong{font:500 24px ui-monospace,monospace;letter-spacing:-.055em}
#liquidity .ls-levels strong{font-size:18px}
#liquidity .ls-pane-label.ls-divider{padding:25px 0 0}
#liquidity .ls-source{font:10px/1.75 ui-monospace,monospace;color:#8ba0a5;overflow-wrap:anywhere}
#liquidity .ls-actions{display:flex;gap:7px;flex-direction:column;margin-top:16px}
#liquidity .ls-actions button{border:1px solid #547078;background:#18272e;color:#d3e3df;padding:11px 9px;font:9px ui-monospace,monospace;text-align:left;cursor:pointer}
#liquidity .ls-actions button:disabled{opacity:.3;cursor:not-allowed}
#liquidity .ls-actions button:hover:not(:disabled){background:#2c4046}
#liquidity .ls-bottombar{border-bottom:0;border-top:1px solid var(--ls-line);background:#0e161b;color:#6f848e;letter-spacing:.08em;font-size:8px}
#liquidity .ls-universe{margin-top:23px}
#liquidity .ls-universe-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:14px}
#liquidity .ls-universe-head>div>span{font:9px ui-monospace,monospace;letter-spacing:.1em;color:#7b898d}
#liquidity .ls-universe-head h3{font:450 26px ui-monospace,monospace;letter-spacing:-.045em;margin:5px 0}
#liquidity .ls-universe-head h3 small{font-size:11px;color:#829299;letter-spacing:0}
#liquidity .ls-universe-head>span{font:9px ui-monospace,monospace;color:#74848b}
#liquidity .ls-field{background:#10171d;display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:3px;border-radius:3px;padding:9px;border:1px solid #233139}
#liquidity .ls-node{height:37px;background:#20292e;color:#708186;border:1px solid #303e46;cursor:pointer;font:10px ui-monospace,monospace}
#liquidity .ls-node.mapped{background:rgba(168,207,201,var(--shade));color:#edf3f1;border-color:#506c72;text-shadow:0 1px 3px #0c171b}
#liquidity .ls-node.selected{outline:2px solid #f4f7f4;outline-offset:-2px}
#liquidity .ls-node:hover{filter:brightness(1.4)}
#liquidity .ls-universe footer{display:flex;justify-content:space-between;margin-top:10px;gap:10px;color:#859296;font:9px ui-monospace,monospace}
@media(max-width:1280px){#liquidity .ls-workspace{grid-template-columns:184px minmax(0,1fr) 170px}#liquidity .ls-assets .ls-asset{grid-template-columns:4px 38px minmax(0,1fr) 30px;gap:4px;padding:0 6px}#liquidity .ls-inspector{padding:14px 10px}#liquidity .ls-kpis strong{font-size:21px}#liquidity .ls-bottompanels{grid-template-columns:1fr}}
@media(max-width:1000px){#liquidity .ls-workspace{grid-template-columns:182px minmax(0,1fr)}#liquidity .ls-inspector{grid-column:1/-1;border-top:1px solid var(--ls-line);border-left:0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}#liquidity .ls-inspector .ls-pane-label{display:none}#liquidity .ls-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#liquidity .ls-inspector-title{border:0}#liquidity .ls-kpis.ls-levels{display:grid}#liquidity .ls-source{grid-column:2/-1}}
@media(max-width:700px){#liquidity .ls-header{align-items:start;flex-direction:column}#liquidity .ls-uptime{align-items:start}#liquidity .ls-stats{grid-template-columns:1fr 1fr}#liquidity .ls-stats>div{padding:12px}#liquidity .ls-stats>div:nth-child(2){border-right:0}#liquidity .ls-stats>div:nth-child(-n+2){border-bottom:1px solid #ced4d3}#liquidity .ls-stats>div:first-child{padding-left:12px}#liquidity .ls-topbar small,#liquidity .ls-topbar>span{display:none}#liquidity .ls-workspace{display:flex;flex-direction:column}#liquidity .ls-assets{border-right:0;border-bottom:1px solid var(--ls-line)}#liquidity .ls-asset-list{max-height:145px}#liquidity .ls-symbolrow{padding:16px 10px}#liquidity .ls-toolbar{padding:10px}#liquidity .ls-toolbar>span{font-size:8px}#liquidity .ls-plot{padding:7px}#liquidity .ls-inspector{display:block;padding:15px}#liquidity .ls-inspector .ls-pane-label{display:flex}#liquidity .ls-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}#liquidity .ls-kpis strong{font-size:17px}#liquidity .ls-source{grid-column:auto}#liquidity .ls-gradient b{margin-left:0}#liquidity .ls-universe-head{align-items:start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){#liquidity .ls-loadbar{animation:none}}

/* Small-screen hierarchy: make the real heatmap visible before summary numbers. */
@media(max-width:700px){
 #liquidity:not([hidden]) #liquidity-root{display:flex;flex-direction:column}
 #liquidity .ls-header{order:1;margin-bottom:12px}
 #liquidity .ls-terminal{order:2}
 #liquidity .ls-stats{order:3;margin-top:15px}
 #liquidity .ls-universe{order:4}
 #liquidity .ls-center{order:1}
 #liquidity .ls-assets{order:2}
 #liquidity .ls-inspector{order:3}
 #liquidity .ls-asset-list{max-height:118px}
 #liquidity .ls-plot{min-height:200px}
 #liquidity .ls-workspace{display:flex;flex-direction:column}
 #liquidity .ls-symbolrow h3{font-size:26px}
 #liquidity .ls-header h2{font-size:34px}
}
#liquidity[hidden]{display:none!important}
#liquidity .ls-filters button{white-space:nowrap;letter-spacing:-.035em}