:root{color-scheme:dark;--bg:#070707;--panel:#0d0d0d;--panel2:#141414;--text:#f1efe8;--muted:#747474;--line:#292929;--orange:#ff9f1a;--green:#5fe3a4;--red:#ff667e}*{box-sizing:border-box;border-radius:0!important}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:Manrope,Arial,sans-serif}.is-loading{overflow:hidden}button,a{font:inherit;color:inherit}.preloader{position:fixed;inset:0;z-index:100;background:#000;display:grid;place-items:center;overflow:hidden;transition:opacity .6s cubic-bezier(.7,0,.2,1),visibility .6s}.preloader.done{opacity:0;visibility:hidden}.matrix-grid{position:absolute;inset:0;opacity:.7;background-image:linear-gradient(#0c2d16 1px,transparent 1px),linear-gradient(90deg,#0c2d16 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at center,#000,transparent 72%);animation:gridMove 2.4s linear infinite}.preloader-art{position:absolute;z-index:2;bottom:7%;height:min(78vh,760px);filter:drop-shadow(0 0 42px #ff00a438);animation:artFloat 2.4s ease-in-out infinite}.load-track{position:absolute;z-index:3;left:10vw;right:10vw;bottom:7vh;height:2px;background:#17351f}.load-track i{display:block;width:0;height:100%;background:#55f08d;box-shadow:0 0 16px #55f08d}.load-meta{position:absolute;z-index:3;left:10vw;right:10vw;bottom:3.5vh;display:flex;justify-content:space-between;color:#70f49c;font:10px 'DM Mono';letter-spacing:.2em}@keyframes gridMove{to{background-position:0 44px,44px 0}}@keyframes artFloat{50%{transform:translateY(-8px)}}
.global-menu{height:64px;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1420px)/2));border-bottom:1px solid var(--line);background:#070707ed;backdrop-filter:blur(14px)}.brand{text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.15em}.brand b{color:var(--orange)}.brand span{color:#565656;margin-left:10px;font:9px 'DM Mono'}.menu-right{display:flex;align-items:center;gap:8px}.status-pill,.sync-pill{height:30px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);color:#929292;font:9px 'DM Mono';letter-spacing:.08em}.dot{width:8px;height:3px;background:var(--orange)}.dot-live{background:var(--green);animation:blink 1.5s steps(2,end) infinite}.dot-error{background:var(--red)}@keyframes blink{50%{opacity:.25}}
.shell{width:min(1420px,calc(100% - 44px));margin:auto;padding:46px 0}.hero{display:grid;grid-template-columns:1fr auto auto;align-items:end;gap:46px;padding:0 0 42px}.hero-title>span{color:var(--orange);font:9px 'DM Mono';letter-spacing:.14em}.hero-title h1{margin:22px 0 0;font-size:clamp(48px,6vw,92px);line-height:.8;letter-spacing:-.075em}.hero-title em{font-style:normal;color:#505050}.exchange-filters{margin:0;padding:0 0 4px;border:0;display:grid;gap:12px;min-width:235px}.exchange-filters label{display:flex;align-items:center;gap:9px;color:#aaa;font:9px 'DM Mono';letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.exchange-filters input{position:absolute;opacity:0;width:1px;height:1px}.exchange-check{position:relative;width:15px;height:15px;border:1px solid #555;background:#111}.exchange-filters input:checked+.exchange-check{background:var(--orange);border-color:var(--orange)}.exchange-filters input:checked+.exchange-check:after{content:'✓';position:absolute;inset:-1px;display:grid;place-items:center;color:#000;font:bold 10px Arial}.exchange-filters input:focus-visible+.exchange-check{outline:2px solid #fff;outline-offset:2px}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.hero-stats div{min-width:128px;padding:15px;border-right:1px solid var(--line)}.hero-stats div:last-child{border:0}.hero-stats span{display:block;color:#666;font:8px 'DM Mono';letter-spacing:.08em;text-transform:uppercase}.hero-stats strong{display:block;margin-top:8px;font:11px 'DM Mono';white-space:nowrap}
.panel{border:1px solid var(--line);background:var(--panel);overflow:hidden;container-type:inline-size}.panel-head{height:88px;padding:18px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-head h2{margin:0;font-size:17px;text-transform:uppercase;letter-spacing:.04em}.panel-head h2:before{content:'01';display:inline-block;margin-right:13px;padding:6px;border:1px solid #444;color:var(--orange);font:9px 'DM Mono'}.panel-head p{margin:6px 0 0 43px;color:#6c6c6c;font:9px 'DM Mono'}.window-tabs{display:flex}.window-tabs button{height:32px;padding:0 11px;border:1px solid #333;background:#141414;color:#777;font:9px 'DM Mono';cursor:pointer}.window-tabs button+button{border-left:0}.window-tabs button[aria-selected=true]{background:var(--orange);border-color:var(--orange);color:#050505}.window-tabs button:focus-visible,.chart-button:focus-visible,.chart-actions button:focus-visible{outline:2px solid #fff;outline-offset:2px}.table-head,.trade-row{display:grid;grid-template-columns:42px minmax(150px,1.2fr) minmax(85px,.7fr) minmax(90px,.7fr) minmax(115px,.85fr) minmax(155px,1fr);gap:10px;align-items:center}.table-head{height:34px;padding:0 18px;border-bottom:1px solid var(--line);color:#585858;font:8px 'DM Mono';text-transform:uppercase}.trade-row{min-height:68px;padding:10px 18px;border-bottom:1px solid #222;transition:background .2s,transform .5s,opacity .5s;transform-origin:left center}.trade-row:hover{background:#151515}.rank{color:#555;font:9px 'DM Mono'}.market-cell{display:flex;align-items:center;gap:12px;min-width:0}.market-link{text-decoration:none}.market-link>span{display:grid;gap:4px}.market-link strong{font:12px 'DM Mono'}.exchange-name,.metric-cell span{color:#666;font:8px 'DM Mono';text-transform:uppercase}.chart-button{height:25px;padding:0 7px;border:0;border-bottom:1px solid #555;background:transparent;color:#aaa;font:8px 'DM Mono';cursor:pointer}.chart-button:hover,.chart-button.active{color:var(--orange);border-color:var(--orange)}.trade-count{font:500 15px 'DM Mono'}.metric-cell strong,.imbalance-cell strong{font:10px 'DM Mono'}.metric-cell span{display:block;margin-top:5px}.positive{color:var(--green)}.negative{color:var(--red)}.imbalance-bar{width:100%;height:3px;margin-top:8px;background:#292929}.imbalance-bar span{display:block;height:100%}.bar-positive{background:var(--green)}.bar-negative{background:var(--red)}.empty{padding:50px 20px;color:#777;text-align:center;font:10px 'DM Mono'}.chart-panel{border-bottom:1px solid var(--line);background:#090909}.chart-head{height:48px;padding:0 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.chart-head>div:first-child{display:flex;gap:14px;align-items:center}.chart-head strong{color:var(--orange);font:11px 'DM Mono'}.chart-head span,.chart-status{color:#666;font:8px 'DM Mono'}.chart-actions button{border:0;background:transparent;color:#777;font:9px 'DM Mono';cursor:pointer;margin-left:12px}.chart-status{padding:9px 18px;border-bottom:1px solid #1c1c1c}.market-chart{height:320px}
.reveal{opacity:0;transform:translate3d(38px,0,0)}.reveal.in-view{opacity:1;transform:none}.trade-row.reveal{transition-delay:calc(var(--row-index,0)*35ms)}
@media(max-width:900px){.hero{grid-template-columns:1fr 1fr}.hero-title{grid-column:1/-1}.hero-stats{grid-column:1/-1}.shell{width:min(100% - 24px,1420px)}}
@media(max-width:700px){.global-menu{height:58px;padding:0 12px}.brand span,.sync-pill{display:none}.shell{padding:28px 0 34px}.hero{display:block}.hero-title h1{font-size:58px}.exchange-filters{margin:30px 0 20px}.hero-stats{display:flex;overflow:auto}.hero-stats div{min-width:125px}.panel-head{height:auto;display:grid;gap:16px}.window-tabs{width:100%}.window-tabs button{flex:1}.table-head{display:none}.trade-row{grid-template-columns:32px minmax(120px,1fr) 68px 78px;gap:6px;padding:11px 10px}.trade-row>.funding-cell,.trade-row>.imbalance-cell{display:none}.trade-count{font-size:12px}.chart-panel{grid-column:1/-1}.market-chart{height:250px}.preloader-art{width:94vw;height:auto;bottom:12%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.matrix-grid,.preloader-art,.dot-live{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* Dense monochrome terminal pass. */
:root{--bg:#000;--panel:#000;--panel2:#090909;--text:#fff;--muted:#8a8a8a;--line:#303030;--orange:#fff;--green:#fff;--red:#888}.preloader-art{filter:grayscale(1) contrast(1.08) drop-shadow(0 0 30px #ffffff22)}
body{background:#000}.global-menu{height:48px;padding:0 14px;background:#000;border-color:#3a3a3a}.brand b,.hero-title>span,.panel-head h2:before,.chart-head strong{color:#fff}.brand span{color:#777}.status-pill,.sync-pill{height:26px;background:#000;border-color:#444}.dot,.dot-live,.dot-error{background:#fff;box-shadow:none}.shell{width:calc(100% - 20px);max-width:none;padding:10px 0}.hero{grid-template-columns:minmax(260px,.75fr) auto 1fr;align-items:stretch;gap:0;padding:0;border:1px solid #383838}.hero-title{padding:14px 16px;border-right:1px solid #383838;display:flex;justify-content:space-between;align-items:center}.hero-title>span{font-size:8px;color:#777;max-width:130px}.hero-title h1{font-size:25px;line-height:.88;margin:0;letter-spacing:-.05em;text-align:right}.hero-title h1 br{display:none}.hero-title em{color:#777;margin-left:5px}.exchange-filters{min-width:245px;padding:13px 16px;border-right:1px solid #383838;justify-content:center}.exchange-filters label{color:#c8c8c8;font-size:8px}.exchange-check{width:13px;height:13px;background:#000;border-color:#777}.exchange-filters input:checked+.exchange-check{background:#fff;border-color:#fff}.hero-stats{border:0;grid-template-columns:repeat(3,1fr)}.hero-stats div{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:12px 16px}.hero-stats strong{font-size:12px}.panel{margin-top:8px;border-color:#383838}.panel-head{height:60px;padding:10px 14px}.panel-head h2{font-size:14px}.panel-head h2:before{color:#fff;border-color:#666;padding:4px}.panel-head p{margin:4px 0 0 37px;font-size:8px}.window-tabs button{height:28px;background:#000;border-color:#555;color:#aaa}.window-tabs button[aria-selected=true]{background:#fff;border-color:#fff;color:#000}.table-head{height:28px;padding:0 12px;color:#888;background:#050505}.table-head,.trade-row{grid-template-columns:36px minmax(165px,1.15fr) minmax(80px,.58fr) minmax(90px,.62fr) minmax(120px,.75fr) minmax(150px,.95fr)}.trade-row{min-height:51px;padding:6px 12px}.trade-row:hover{background:#0c0c0c}.market-cell{gap:8px}.market-link{display:flex;align-items:center;gap:9px}.coin-logo{width:22px;height:22px;object-fit:contain;filter:grayscale(1) contrast(1.25)}.logo-fallback:before{content:'□';display:grid;place-items:center;width:22px;height:22px;border:1px solid #777;color:#aaa;font:9px 'DM Mono'}.market-link strong{font-size:11px}.trade-count{font-size:13px}.positive,.negative{color:#fff}.negative:before{color:#888}.bar-positive,.bar-negative{background:#fff}.chart-button{color:#aaa}.chart-button:hover,.chart-button.active{color:#fff;border-color:#fff}.chart-head{height:38px}.chart-status{padding:6px 12px}.market-chart{height:280px}.preloader{background:#000}.matrix-grid{opacity:.35;filter:grayscale(1)}.load-track{background:#292929}.load-track i{background:#fff;box-shadow:0 0 12px #fff}.load-meta{color:#fff}
@media(max-width:900px){.hero{grid-template-columns:1fr 1fr}.hero-title{grid-column:1/-1}.hero-stats{grid-column:1/-1;border-top:1px solid #383838}.shell{width:calc(100% - 12px)}}
@media(max-width:700px){.shell{padding-top:6px}.hero{display:grid}.hero-title h1{font-size:22px}.exchange-filters{margin:0;border-right:0}.hero-stats{margin:0}.panel-head{height:auto}.trade-row{min-height:56px}.coin-logo,.logo-fallback:before{width:20px;height:20px}}
.logo-fallback:before{content:var(--ticker-initial,'·')}

/* Instrument-style imbalance activity, kept monochrome. */
.imbalance-bar{position:relative;height:8px;overflow:hidden;border:1px solid #3b3b3b;background:repeating-linear-gradient(90deg,#171717 0 8px,#080808 8px 10px)}
.imbalance-bar:after{content:'';position:absolute;z-index:2;top:0;bottom:0;left:50%;width:1px;background:#777;opacity:.65}
.imbalance-bar span{position:relative;min-width:4px;background:repeating-linear-gradient(90deg,#ddd 0 6px,#777 6px 8px);box-shadow:0 0 10px #ffffff45;transition:width .55s cubic-bezier(.2,.8,.2,1)}
.imbalance-bar span:before{content:'';position:absolute;inset:0;background:linear-gradient(105deg,transparent 0 38%,#fff 48%,transparent 58%);transform:translateX(-130%);animation:imbalanceScan 2.4s ease-in-out infinite}
.imbalance-bar span:after{content:'';position:absolute;right:-2px;top:-3px;width:2px;height:12px;background:#fff;box-shadow:0 0 7px #fff}
.imbalance-bar .bar-negative{filter:brightness(.58)}
@keyframes imbalanceScan{55%,100%{transform:translateX(150%)}}
@media(prefers-reduced-motion:reduce){.imbalance-bar span:before{animation:none}.imbalance-bar span{transition:none}}
.ranking:not(:has(.empty)) .trade-row{min-height:max(51px,calc((100vh - 276px)/10))}

/* Color is reserved for market meaning and connection state. */
:root{--green:#46d99a;--red:#ff5f75}
.positive{color:var(--green)}.negative{color:var(--red)}
.dot-live{background:var(--green);box-shadow:0 0 8px #46d99a88}.dot-error{background:var(--red);box-shadow:0 0 8px #ff5f7588}
.imbalance-bar span.bar-positive{background:repeating-linear-gradient(90deg,#46d99a 0 6px,#18734d 6px 8px);box-shadow:0 0 10px #46d99a66;filter:none}
.imbalance-bar span.bar-negative{background:repeating-linear-gradient(90deg,#ff5f75 0 6px,#7f2635 6px 8px);box-shadow:0 0 10px #ff5f7566;filter:none}
.imbalance-bar span.bar-positive:after{background:var(--green);box-shadow:0 0 8px var(--green)}
.imbalance-bar span.bar-negative:after{background:var(--red);box-shadow:0 0 8px var(--red)}

/* Feed initialization: segmented rail, traveling packet, completion flare. */
.load-track{height:6px;border:1px solid #2f2f2f;background:repeating-linear-gradient(90deg,#151515 0 18px,#000 18px 20px);overflow:visible}
.load-track i{position:relative;background:repeating-linear-gradient(90deg,#46d99a 0 18px,#1b704d 18px 20px);box-shadow:0 0 14px #46d99a77;transition:width .16s cubic-bezier(.2,.8,.2,1)}
.load-track i:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 72%,#baffdf 88%,transparent 100%);animation:loadPacket 1.15s linear infinite}
.load-track i:after{content:'';position:absolute;right:-3px;top:-7px;width:5px;height:18px;background:#e9fff5;box-shadow:0 0 6px #fff,0 0 18px var(--green),0 0 34px var(--green);animation:loadHead .72s ease-in-out infinite alternate}
.load-meta{color:var(--green);text-shadow:0 0 12px #46d99a66}
.preloader.done .load-track{animation:completeSurge .32s ease-out}
@keyframes loadPacket{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
@keyframes loadHead{to{opacity:.58;transform:scaleY(.72)}}
@keyframes completeSurge{50%{box-shadow:0 0 0 1px #fff,0 0 42px var(--green);transform:scaleY(1.8)}}
@media(prefers-reduced-motion:reduce){.load-track i:before,.load-track i:after,.preloader.done .load-track{animation:none}}

/* Bloomberg-inspired terminal palette and dense custom-font substitute. */
:root{--amber:#ff9d00;--terminal-green:#27d17f;--terminal-red:#ff4057;--terminal-blue:#4aa8ff;--terminal-cyan:#45d7e8;--terminal-magenta:#e66bff;--terminal-yellow:#ffe158}
body{font-family:"Lucida Console",Monaco,"Courier New",ui-monospace,monospace;color:#f2b84b}
.brand{color:#fff}.brand b,.brand span,.hero-title>span,.panel-head h2,.panel-head h2:before{color:var(--amber)}
.hero-title h1{color:#fff}.hero-title em{color:var(--amber)}
.exchange-filters label,.exchange-name{color:var(--terminal-cyan)}
.hero-stats span,.table-head{color:#bb8b3a}.hero-stats strong,.market-link strong,.trade-count{color:#fff}
.window-tabs button{color:#d8a248}.window-tabs button[aria-selected=true]{background:var(--amber);border-color:var(--amber);color:#000}
.chart-button{color:var(--terminal-blue);border-color:#2c6495}.chart-button:hover,.chart-button.active{color:#9bd2ff;border-color:var(--terminal-blue)}
.positive{color:var(--terminal-green)}.negative{color:var(--terminal-red)}
.funding-cell span,.return-cell span{color:#8d713d}.funding-rate.positive{color:var(--terminal-yellow)}.funding-rate.negative{color:var(--terminal-magenta)}
.chart-head strong{color:var(--terminal-cyan)}

/* Zero-centered pressure meter: sellers pull left, buyers push right. */
.imbalance-bar{position:relative;height:11px;border:1px solid #594318;background:repeating-linear-gradient(90deg,#17130b 0 9px,#050505 9px 10px);overflow:hidden}
.imbalance-bar:before{content:'S';position:absolute;z-index:4;left:3px;top:-1px;color:#7f2936;font:7px "Lucida Console",monospace}
.imbalance-bar:after{content:'';position:absolute;z-index:4;left:50%;top:0;bottom:0;width:1px;background:#ffe7a1;box-shadow:0 0 6px var(--amber)}
.imbalance-bar span{position:absolute;top:1px;bottom:1px;height:auto;min-width:2px;transition:width .86s cubic-bezier(.2,.8,.2,1);overflow:hidden}
.imbalance-bar span.bar-positive{left:50%;background:linear-gradient(90deg,#12623e,var(--terminal-green));box-shadow:0 0 9px #27d17f88;filter:none}
.imbalance-bar span.bar-negative{right:50%;background:linear-gradient(270deg,#7c1d2d,var(--terminal-red));box-shadow:0 0 9px #ff405788;filter:none}
.imbalance-bar span:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 7px,#ffffff55 7px 8px);animation:pressureTicks 1.4s linear infinite}
.imbalance-bar span:after{content:'';position:absolute;top:-2px;bottom:-2px;width:2px;background:#fff;box-shadow:0 0 8px currentColor}
.imbalance-bar span.bar-positive:after{right:0;color:var(--terminal-green)}.imbalance-bar span.bar-negative:after{left:0;color:var(--terminal-red)}
@keyframes pressureTicks{to{transform:translateX(8px)}}

/* Full-color loader: artwork leads, terminal colors report feed progress. */
.preloader-art{filter:saturate(1.18) contrast(1.05) drop-shadow(0 0 24px #e600a766) drop-shadow(0 0 52px #ff9d0033)}
.matrix-grid{opacity:.62;filter:none;background-image:linear-gradient(#123d25 1px,transparent 1px),linear-gradient(90deg,#202c55 1px,transparent 1px)}
.load-track{border-color:#6e4b12;background:repeating-linear-gradient(90deg,#211707 0 18px,#000 18px 20px)}
.load-track i{background:repeating-linear-gradient(90deg,var(--amber) 0 18px,#7c4b00 18px 20px);box-shadow:0 0 14px #ff9d0099}
.load-track i:after{background:#fff5cf;box-shadow:0 0 6px #fff,0 0 18px var(--amber),0 0 36px var(--terminal-magenta)}
.load-meta{color:var(--amber);text-shadow:0 0 12px #ff9d0088}
@media(prefers-reduced-motion:reduce){.imbalance-bar span:before{animation:none}}

/* Uniform market action rail. */
.market-cell{display:grid;grid-template-columns:minmax(0,1fr) 74px;align-items:center;gap:12px;width:100%}
.market-link{min-width:0;overflow:hidden}.market-link strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chart-button{position:relative;width:74px;height:28px;padding:0 8px;overflow:hidden;display:flex;align-items:center;justify-content:space-between;border:1px solid #255a83;background:#06111a;color:#65bdff;font:9px "Lucida Console",Monaco,monospace;letter-spacing:.05em;line-height:1;transition:color .18s,border-color .18s,background .18s,box-shadow .18s;isolation:isolate}
.chart-button:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,transparent 0 38%,#4aa8ff44 48%,transparent 58%);transform:translateX(-135%);transition:transform .45s ease}
.chart-button:after{content:'';position:absolute;left:0;top:0;width:3px;height:3px;border-left:1px solid #9bd2ff;border-top:1px solid #9bd2ff}
.chart-button b{font-size:12px;font-weight:400;color:#a9dbff;transition:transform .18s}
.chart-button:hover{color:#d9efff;border-color:#65bdff;background:#0a1c2a;box-shadow:inset 0 0 12px #4aa8ff22,0 0 10px #4aa8ff22}
.chart-button:hover:before{transform:translateX(135%)}.chart-button:hover b{transform:translate(2px,-2px)}
.chart-button.active{color:#000;border-color:var(--amber);background:var(--amber);box-shadow:0 0 12px #ff9d0055}.chart-button.active b{color:#000;transform:rotate(90deg)}
@media(max-width:700px){.market-cell{grid-template-columns:minmax(0,1fr) 68px;gap:8px}.chart-button{width:68px;height:27px;padding:0 7px}}

/* Unified Bloomberg-terminal-inspired typography. The licensed face is proprietary; Monaco is the native screen-font substitute. */
:root{--terminal-font:Monaco,"Courier New",Courier,ui-monospace,monospace}
html{font-size:13px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body,body *,body *:before,body *:after{font-family:var(--terminal-font)!important;font-variant-numeric:tabular-nums slashed-zero}
body{font-size:11px;font-weight:400;line-height:1.25;letter-spacing:0}
.brand{font-size:12px;font-weight:400;letter-spacing:.12em}.brand b{font-weight:400}.brand span{font-size:9px;letter-spacing:.14em}
.status-pill,.sync-pill{font-size:9px;font-weight:400;letter-spacing:.02em;text-transform:uppercase}
.hero-title>span{font-size:8px;line-height:1.2;letter-spacing:.05em;text-transform:uppercase}
.hero-title h1{font-size:24px;font-weight:400;line-height:.9;letter-spacing:-.065em}.hero-title em{font-style:normal}
.exchange-filters label{font-size:8px;font-weight:400;line-height:1.15;letter-spacing:0}
.hero-stats span{font-size:8px;font-weight:400;letter-spacing:.02em}.hero-stats strong{font-size:11px;font-weight:400;letter-spacing:-.02em}
.panel-head h2{font-size:13px;font-weight:400;letter-spacing:.015em}.panel-head h2:before{font-size:8px;font-weight:400}.panel-head p{font-size:8px;line-height:1.2;letter-spacing:0}
.window-tabs button{font-size:9px;font-weight:400;letter-spacing:0;text-transform:uppercase}
.table-head{font-size:8px;font-weight:400;letter-spacing:.015em}
.rank{font-size:9px;font-weight:400}.market-link strong{font-size:11px;font-weight:400;letter-spacing:-.025em}.exchange-name{font-size:8px;font-weight:400;letter-spacing:.015em}
.trade-count{font-size:13px;font-weight:400;letter-spacing:-.035em}.metric-cell strong,.imbalance-cell strong{font-size:10px;font-weight:400;letter-spacing:-.025em}.metric-cell span{font-size:8px;font-weight:400;letter-spacing:0}
.chart-button{font-size:8px;font-weight:400;letter-spacing:.04em}.chart-button b{font-size:11px;font-weight:400}
.chart-head strong{font-size:10px;font-weight:400}.chart-head span,.chart-status,.chart-actions button{font-size:8px;font-weight:400;letter-spacing:0}
.load-meta{font-size:9px;font-weight:400;letter-spacing:.16em}
@media(max-width:700px){.hero-title h1{font-size:21px}.market-link strong{font-size:10px}.trade-count{font-size:12px}}

/* Flatten nested boxes into Bloomberg-style rules and aligned data bands. */
.global-menu{border-bottom:1px solid #1a1a1a;background:#0a0a0a}.status-pill,.sync-pill{border:0;background:transparent;padding:0 4px}.sync-pill{padding-left:12px;border-left:1px solid #1a1a1a}
.hero{border:0;border-bottom:1px solid #1a1a1a}.hero-title{border-right:0;padding-left:4px}.exchange-filters{border-right:0;border-left:1px solid #1a1a1a;padding-left:22px}
.hero-stats{border:0}.hero-stats div{border-right:0;border-left:1px solid #1a1a1a;padding-left:20px}
.panel{border:0;background:#0a0a0a}.panel-head{border-bottom:1px solid #1a1a1a;padding-left:4px;padding-right:4px;background:#0a0a0a}.panel-head h2:before{border:0;padding:0;margin-right:10px}
.window-tabs{gap:16px}.window-tabs button,.window-tabs button+button{border:0;border-bottom:1px solid #5b4728;background:transparent;padding:0 2px}.window-tabs button[aria-selected=true]{border:0;border-bottom:2px solid var(--amber);background:transparent;color:var(--amber)}
.table-head{border-bottom:1px solid #1a1a1a;background:#0a0a0a}.trade-row{border-bottom:1px solid #1a1a1a}.chart-panel{border:0;border-top:1px solid #1a1a1a;border-bottom:1px solid #1a1a1a}.chart-head{border-bottom:1px solid #1a1a1a}.chart-status{border-bottom:1px solid #1a1a1a}
@media(max-width:900px){.hero-title{border-bottom:1px solid #302719}.hero-stats{border-top:1px solid #302719}}
.return-window{display:none!important}.hero-title{justify-content:flex-start}.hero-title h1{font-size:19px;letter-spacing:.02em}.panel-head{height:48px}.panel-head p{display:none}.exchange-name{letter-spacing:.08em}

/* Chart action gets its own data column; pressure meter has no stray side label. */
.table-head,.trade-row{grid-template-columns:36px minmax(130px,1fr) 74px minmax(80px,.58fr) minmax(90px,.62fr) minmax(120px,.75fr) minmax(150px,.95fr)}
.market-cell{display:flex;min-width:0;width:100%}.market-link{width:100%}
.imbalance-bar:before{content:none}
@media(max-width:700px){.trade-row{grid-template-columns:28px minmax(100px,1fr) 68px 70px}.trade-row>.return-cell{display:none}.chart-button{grid-column:auto}.table-head{display:none}}

/* Seven-column market grid. */
.table-head,.trade-row{grid-template-columns:32px minmax(150px,1fr) 86px minmax(92px,.62fr) minmax(96px,.64fr) minmax(126px,.78fr) minmax(170px,1fr);column-gap:18px}
.table-head span:nth-child(3){text-align:center}.chart-button{justify-self:stretch;width:86px}
@media(max-width:900px){.table-head,.trade-row{column-gap:12px;grid-template-columns:30px minmax(125px,1fr) 72px minmax(82px,.62fr) minmax(88px,.64fr) minmax(112px,.78fr) minmax(150px,1fr)}.chart-button{width:72px}}
@media(max-width:700px){.trade-row{grid-template-columns:28px minmax(112px,1fr) 68px 76px;column-gap:10px}.chart-button{width:64px}}

/* Compact power-user scale. */
.global-menu{height:42px}.shell{padding-top:7px;padding-bottom:20px}.hero-title,.exchange-filters,.hero-stats div{padding-top:10px;padding-bottom:10px}
.panel-head{height:44px}.table-head{height:25px}
.ranking:not(:has(.empty)) .trade-row{min-height:clamp(54px,calc((100vh - 248px)/10),64px);padding-top:5px;padding-bottom:5px}
.table-head,.trade-row{grid-template-columns:30px minmax(145px,240px) 78px minmax(88px,1fr) minmax(92px,1fr) minmax(120px,1fr) minmax(165px,1.3fr);column-gap:16px}
.chart-button{width:78px;height:24px;padding-left:7px;padding-right:7px}
@media(max-width:900px){.table-head,.trade-row{grid-template-columns:28px minmax(120px,1fr) 68px minmax(78px,.62fr) minmax(84px,.64fr) minmax(106px,.78fr) minmax(145px,1fr);column-gap:11px}.chart-button{width:68px}}
@media(max-width:700px){.trade-row{grid-template-columns:26px minmax(108px,1fr) 62px 72px;column-gap:9px}.chart-button{width:62px;height:24px}}

/* Controlled terminal depth without adding boxes or copy. */
body{position:relative;background-color:#0a0a0a;background-image:none}
body:before{content:'';position:fixed;z-index:-1;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#ffffff07 3px 4px);opacity:.34}
.global-menu:after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:1px;background:linear-gradient(90deg,var(--amber),var(--terminal-magenta) 28%,var(--terminal-blue) 58%,var(--terminal-green));opacity:.72}
.brand b{text-shadow:0 0 12px #ff9d0066}.status-pill .dot{position:relative}.status-pill .dot:after{content:'';position:absolute;inset:-4px;background:inherit;opacity:.25;animation:statusEcho 1.8s steps(3,end) infinite}
.hero{position:relative}.hero:after{content:'';position:absolute;left:0;bottom:-1px;width:18%;height:1px;background:var(--amber);box-shadow:0 0 10px #ff9d0066;animation:signalRail 5s ease-in-out infinite alternate}
.hero-title h1{position:relative;text-shadow:0 0 18px #ffffff18}.hero-title h1:after{content:'//';margin-left:12px;color:var(--amber);opacity:.8;font-size:11px;letter-spacing:-.1em}
.hero-stats div{position:relative}.hero-stats div:before{content:'';position:absolute;left:-1px;top:10px;width:2px;height:14px;background:var(--terminal-blue);box-shadow:0 0 7px #4aa8ff66}.hero-stats div:nth-child(2):before{background:var(--terminal-yellow);box-shadow:0 0 7px #ffe15866}.hero-stats div:nth-child(3):before{background:var(--terminal-green);box-shadow:0 0 7px #27d17f66}
.hero-stats strong{font-size:12px;color:#fff;text-shadow:0 0 12px #ffffff22}.panel-head h2{text-shadow:0 0 12px #ff9d0044}.table-head{background:linear-gradient(90deg,#ff9d0009,transparent 65%)}
.trade-row:hover{background:linear-gradient(90deg,#ff9d0009,#4aa8ff07 55%,transparent);box-shadow:inset 2px 0 var(--amber)}
@keyframes statusEcho{50%{transform:scale(1.8);opacity:0}}@keyframes signalRail{to{width:44%;background:var(--terminal-cyan)}}
@media(prefers-reduced-motion:reduce){.status-pill .dot:after,.hero:after{animation:none}}

/* Original linear imbalance model: exact percentage of the full rail. */
.imbalance-bar:after{content:none}
.imbalance-bar span.bar-positive,.imbalance-bar span.bar-negative{left:0;right:auto}
.imbalance-bar span.bar-positive:after,.imbalance-bar span.bar-negative:after{left:auto;right:0}

/* Directional center restored while retaining the original full-rail scale. */
.imbalance-bar:after{content:'';position:absolute;z-index:4;left:50%;top:0;bottom:0;width:1px;background:#ffe7a1;box-shadow:0 0 6px var(--amber)}
.imbalance-bar span.bar-positive{left:50%;right:auto}
.imbalance-bar span.bar-negative{left:auto;right:50%}
.imbalance-bar span.bar-positive:after{left:auto;right:0}.imbalance-bar span.bar-negative:after{left:0;right:auto}

/* Remove decorative rails around the Markets header. */
.global-menu:after,.hero:after{content:none;display:none}

/* Funding follows the same directional color semantics as returns. */
.funding-rate.positive{color:var(--terminal-green)}.funding-rate.negative{color:var(--terminal-red)}

/* Stat labels and values share a fixed top-aligned baseline grid. */
.hero-stats div{display:grid;grid-template-columns:minmax(70px,auto) 1fr;align-items:start;column-gap:14px}
.hero-stats span{line-height:1.35}.hero-stats strong{line-height:1.1;padding-top:0}

/* Chart actions follow the primary amber interface accent. */
.chart-button{border-color:#755014;background:#171006;color:#ffc45f}
.chart-button:before{background:linear-gradient(105deg,transparent 0 38%,#ff9d0055 48%,transparent 58%)}
.chart-button:after{border-color:#ffd58c}.chart-button b{color:#ffd58c}
.chart-button:hover{color:#fff1d3;border-color:var(--amber);background:#241704;box-shadow:inset 0 0 12px #ff9d0028,0 0 10px #ff9d0030}

/* Chart is a live-data action, so it uses terminal green. */
.chart-button{border-color:#176b46;background:#06150e;color:#62e5aa}
.chart-button:before{background:linear-gradient(105deg,transparent 0 38%,#27d17f55 48%,transparent 58%)}
.chart-button:after{border-color:#9af0ca}.chart-button b{color:#9af0ca}
.chart-button:hover{color:#e2fff1;border-color:var(--terminal-green);background:#092217;box-shadow:inset 0 0 12px #27d17f28,0 0 10px #27d17f35}
.chart-button.active{color:#00150b;border-color:var(--terminal-green);background:var(--terminal-green);box-shadow:0 0 12px #27d17f66}.chart-button.active b{color:#00150b}

/* Unified palette: green interface accent, red negative state, neutral white/gray. */
:root{--amber:var(--terminal-green);--terminal-blue:var(--terminal-green);--terminal-cyan:var(--terminal-green);--terminal-yellow:var(--terminal-green);--terminal-magenta:var(--terminal-red)}
body{color:#d8d8d8;background-image:radial-gradient(circle at 28% 0,#27d17f0a,transparent 30%),radial-gradient(circle at 85% 18%,#27d17f06,transparent 27%)}
.brand b,.brand span,.panel-head h2,.panel-head h2:before,.hero-title h1:after{color:var(--terminal-green);text-shadow:0 0 12px #27d17f55}
.exchange-filters label,.exchange-name{color:#66dba5}.exchange-filters input:checked+.exchange-check{border-color:var(--terminal-green);background:var(--terminal-green)}
.hero-stats span,.table-head{color:#759b87}.hero-stats div:before,.hero-stats div:nth-child(2):before,.hero-stats div:nth-child(3):before{background:var(--terminal-green);box-shadow:0 0 7px #27d17f66}
.panel-head h2{text-shadow:0 0 12px #27d17f44}.table-head{background:linear-gradient(90deg,#27d17f0a,transparent 65%)}
.window-tabs button{color:#769786;border-bottom-color:#315943}.window-tabs button[aria-selected=true]{color:var(--terminal-green);border-bottom-color:var(--terminal-green)}
.funding-rate.positive,.positive{color:var(--terminal-green)}.funding-rate.negative,.negative{color:var(--terminal-red)}
.funding-cell span,.return-cell span{color:#6f7e76}.chart-head strong{color:var(--terminal-green)}
.imbalance-bar{border-color:#294b39;background:repeating-linear-gradient(90deg,#0d1b14 0 9px,#030705 9px 10px)}.imbalance-bar:after{background:#9af0ca;box-shadow:0 0 6px var(--terminal-green)}
.load-track{border-color:#176b46;background:repeating-linear-gradient(90deg,#081a11 0 18px,#000 18px 20px)}.load-track i{background:repeating-linear-gradient(90deg,var(--terminal-green) 0 18px,#12623e 18px 20px);box-shadow:0 0 14px #27d17f99}.load-track i:after{box-shadow:0 0 6px #fff,0 0 18px var(--terminal-green),0 0 36px var(--terminal-green)}.load-meta{color:var(--terminal-green);text-shadow:0 0 12px #27d17f88}
.trade-row:hover{background:linear-gradient(90deg,#27d17f0a,#27d17f05 55%,transparent);box-shadow:inset 2px 0 var(--terminal-green)}

/* Shared baseline alignment. */
.hero-stats strong{margin:0;padding:0;align-self:start}.hero-stats span{margin:0;padding:0;align-self:start}
.hero-stats div{align-items:start}.hero-stats div:before{top:10px}
.trade-row{align-items:start;padding-top:10px;padding-bottom:8px}
.trade-row>.rank,.trade-row>.trade-count,.trade-row>.metric-cell,.trade-row>.imbalance-cell,.trade-row>.chart-button,.trade-row>.market-cell{align-self:start;margin-top:0}
.market-link>span{display:grid;grid-template-rows:13px 11px;align-content:start}.market-link strong{line-height:13px}.exchange-name{line-height:11px}
.trade-count{line-height:13px}.metric-cell strong,.imbalance-cell strong{display:block;line-height:13px}.metric-cell span{line-height:11px;margin-top:3px}
.chart-button{margin-top:0}.imbalance-bar{margin-top:4px}
.table-head{align-items:center}.panel-head{align-items:center}

/* Amber owns the interface; red/green are reserved for market direction. */
:root{--ui-accent:#ffb12b;--amber:#ffb12b}
body{background-image:none}
.brand b,.brand span,.panel-head h2,.panel-head h2:before,.hero-title h1:after{color:var(--ui-accent);text-shadow:0 0 12px #ff9d0055}

/* Primary navigation. Labels stay hidden on compact screens by design. */
.menu-primary{display:flex;align-items:center;gap:18px;height:100%}.menu-tabs{display:flex;align-items:center;gap:16px;height:100%}.menu-tab{position:relative;display:flex;align-items:center;height:100%;color:#756a57;text-decoration:none;font:9px 'DM Mono';letter-spacing:.14em}.menu-tab:hover,.menu-tab.active{color:var(--ui-accent)}.menu-tab.active:after{content:'';position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--ui-accent);box-shadow:0 0 8px #ff9d0066}
@media(max-width:700px){.menu-primary{gap:10px}.menu-tabs{display:flex;gap:10px}.menu-tab{font-size:8px;letter-spacing:.08em}}
.exchange-filters label,.exchange-name{color:#b7b9bb}.exchange-filters input:checked+.exchange-check{border-color:var(--ui-accent);background:var(--ui-accent)}
.hero-stats span,.table-head{color:#909397}.hero-stats div:before,.hero-stats div:nth-child(2):before,.hero-stats div:nth-child(3):before{background:var(--ui-accent);box-shadow:0 0 7px #ff9d0066}
.panel-head h2{text-shadow:none}.table-head{background:#0a0a0a}
.window-tabs button{color:#96999c;border-bottom-color:#343638}.window-tabs button[aria-selected=true]{color:var(--ui-accent);border-bottom-color:var(--ui-accent)}
.chart-button{border-color:#755014;background:#171006;color:#ffc45f}.chart-button:before{background:linear-gradient(105deg,transparent 0 38%,#ff9d0055 48%,transparent 58%)}.chart-button:after{border-color:#ffd58c}.chart-button b{color:#ffd58c}.chart-button:hover{color:#fff1d3;border-color:var(--ui-accent);background:#241704;box-shadow:inset 0 0 12px #ff9d0028,0 0 10px #ff9d0030}.chart-button.active{color:#160d00;border-color:var(--ui-accent);background:var(--ui-accent);box-shadow:0 0 12px #ff9d0066}.chart-button.active b{color:#160d00}
.chart-head strong{color:var(--ui-accent)}.imbalance-bar:after{background:#ffe0a8;box-shadow:0 0 6px var(--ui-accent)}
.load-track{border-color:#6e4b12;background:repeating-linear-gradient(90deg,#211707 0 18px,#000 18px 20px)}.load-track i{background:repeating-linear-gradient(90deg,var(--ui-accent) 0 18px,#7c4b00 18px 20px);box-shadow:0 0 14px #ff9d0099}.load-track i:after{box-shadow:0 0 6px #fff,0 0 18px var(--ui-accent),0 0 36px var(--ui-accent)}.load-meta{color:var(--ui-accent);text-shadow:0 0 12px #ff9d0088}
.trade-row:hover{background:#121212;box-shadow:inset 2px 0 #333}
.dot-live,.dot-error{background:var(--ui-accent);box-shadow:0 0 8px #ff9d0088}

/* Header stats: fixed label/value tracks prevent collisions. */
.hero-stats div{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:baseline;column-gap:10px;overflow:hidden}
.hero-stats span{white-space:nowrap;line-height:1}.hero-stats strong{min-width:0;white-space:nowrap;line-height:1;text-align:right}

/* Responsive page geometry. */
.shell{width:100%;max-width:none;margin:0;padding-left:0;padding-right:0}
.hero{grid-template-columns:minmax(260px,1.05fr) minmax(320px,.85fr) minmax(570px,1.3fr);padding-left:14px;padding-right:14px}
.hero-title{padding-left:0;padding-right:20px}.exchange-filters{min-width:0;padding-left:20px;padding-right:20px}
.hero-stats{grid-template-columns:1fr 1fr .72fr;min-width:570px}
.hero-stats div{grid-template-columns:64px minmax(max-content,1fr);column-gap:10px;padding:10px 12px;overflow:visible;border-left:1px solid #3a301f}
.hero-stats div:before,.hero-stats div:nth-child(2):before,.hero-stats div:nth-child(3):before{content:none;display:none}
.hero-stats strong{text-align:left;overflow:visible}
.panel-head,.table-head,.trade-row{padding-left:14px;padding-right:14px}
.trade-row{align-items:center;padding-top:0;padding-bottom:0}
.trade-row>.rank,.trade-row>.trade-count,.trade-row>.metric-cell,.trade-row>.imbalance-cell,.trade-row>.chart-button,.trade-row>.market-cell{align-self:center;margin-top:0}
.market-link>span{align-content:center}.chart-button{align-self:center}.imbalance-bar{margin-top:4px}
@media(max-width:1100px){.hero{grid-template-columns:1fr 330px}.hero-title{grid-column:1/2}.exchange-filters{grid-column:2/3}.hero-stats{grid-column:1/-1;min-width:0;border-top:1px solid #302719}.hero-stats div{min-height:48px}}
@media(max-width:700px){.hero{display:block;padding-left:10px;padding-right:10px}.exchange-filters{padding-left:0;padding-right:0}.hero-stats{display:grid;grid-template-columns:1fr}.hero-stats div{grid-template-columns:72px 1fr;border-left:0;border-top:1px solid #242018}.panel-head,.table-head,.trade-row{padding-left:10px;padding-right:10px}}

/* Screener is the page identity; filters and stats stay in one compact rail. */
.hero{grid-template-columns:minmax(300px,.72fr) minmax(560px,1.45fr)}
.exchange-filters{grid-column:1;padding-left:20px}.hero-stats{grid-column:2;min-width:0}
@media(max-width:1100px){.hero{grid-template-columns:330px minmax(0,1fr)}.exchange-filters{grid-column:1}.hero-stats{grid-column:2;border-top:0}.hero-stats div{min-height:0}}
@media(max-width:760px){.hero{display:block}.exchange-filters{padding:10px 0}.hero-stats{display:grid;grid-template-columns:1fr;border-top:1px solid #302719}.hero-stats div{grid-template-columns:72px 1fr;border-left:0;border-top:1px solid #242018}}
.exchange-filters{border-left:0}

/* Header rail occupies one continuous vertical track. */
.shell{padding-top:0}
.hero{align-items:stretch;padding-top:0;padding-bottom:0}
.exchange-filters{align-self:stretch;align-content:center}
.hero-stats{align-self:stretch}.hero-stats div{align-self:stretch;height:auto;align-content:center}

/* Mobile panel header must contain both its title and window tabs. */
@media(max-width:760px){
  .panel-head{height:auto;min-height:88px;display:grid;grid-template-columns:1fr;align-content:center;gap:10px;padding-top:12px;padding-bottom:10px}
  .window-tabs{width:100%;align-self:end;gap:20px}
  .window-tabs button{flex:0 0 auto}

  .exchange-filters{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:0;min-height:46px;padding:0;border-bottom:1px solid #3a301f}
  .exchange-filters label{min-width:0;justify-content:center;gap:7px;padding:0 8px;white-space:nowrap;border-right:1px solid #3a301f}
  .exchange-filters label:last-child{border-right:0}
  .exchange-check{flex:0 0 auto;width:12px;height:12px}
}

/* One consistent exchange selector across desktop and mobile. */
.exchange-filters{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:0;min-height:46px;padding:0;border-bottom:1px solid #3a301f}
.exchange-filters label{min-width:0;justify-content:center;gap:7px;padding:0 8px;white-space:nowrap;border-right:1px solid #3a301f}
.exchange-filters label:last-child{border-right:0}
.exchange-check{flex:0 0 auto;width:12px;height:12px}

@media(min-width:761px){
  .exchange-filters{display:flex;align-items:center;justify-content:center;gap:32px;min-height:0;padding:0 20px;border-bottom:0}
  .exchange-filters label{flex:0 0 auto;justify-content:flex-start;padding:0;border-right:0}
}

@media(max-width:760px){
  .hero{padding-left:0;padding-right:0}
  .exchange-filters{display:flex;align-items:center;justify-content:flex-start;gap:24px;min-height:48px;padding:0 12px 0 94px;border-bottom:0}
  .exchange-filters label{flex:0 0 auto;align-items:center;justify-content:flex-start;padding:0;border-right:0}
  .exchange-filter-name{font-size:0}
  .exchange-filter-name:after{content:attr(data-mobile);font-size:8px;line-height:1.15}
  .preloader-art{position:relative;bottom:auto;width:min(92vw,480px);height:auto;max-height:68vh;object-fit:contain}
}

/* Readable dense-terminal type scale. */
.brand{font-size:13px}.brand span{font-size:10px}
.status-pill,.sync-pill{font-size:10px}
.exchange-filters label{font-size:10px;line-height:1.25}
.hero-stats span{font-size:10px;line-height:1.25}.hero-stats strong{font-size:14px}
.panel-head h2{font-size:15px}.panel-head h2:before{font-size:10px}
.window-tabs button{font-size:11px;line-height:1.25}
.table-head{font-size:10px;line-height:1.25}
.rank{font-size:10px}
.market-link strong{font-size:13px;line-height:16px}
.exchange-name{font-size:10px;line-height:13px}
.market-link>span{grid-template-rows:16px 13px}
.trade-count{font-size:15px;line-height:16px}
.metric-cell strong,.imbalance-cell strong{font-size:12px;line-height:16px}
.metric-cell span{font-size:9px;line-height:12px;margin-top:3px}
.chart-button{font-size:10px}.chart-button b{font-size:12px}
.chart-head strong{font-size:12px}.chart-head span,.chart-status,.chart-actions button{font-size:10px}
@media(min-width:761px) and (max-width:1100px){.exchange-filters{gap:16px;padding-left:8px;padding-right:8px}.exchange-filters label{font-size:9px}}
@media(max-width:760px){.exchange-filter-name:after{font-size:10px}}

/* Ten desktop rows consume the remaining first-screen height. */
@media(min-width:761px){.ranking:not(:has(.empty)) .trade-row{min-height:max(58px,calc((100dvh - 180px)/10))}}

/* Give market symbols more presence when the table has enough horizontal room. */
@media(min-width:1101px){
  .market-link strong{font-size:15px;line-height:18px}
  .market-link>span{grid-template-rows:18px 13px}
}

.preloader-art{filter:none}

/* Light visual refinement: clearer hierarchy without reducing dashboard density. */
:root{
  --surface:#080a09;
  --surface-raised:#0d100f;
  --line-soft:#242925;
  --amber-soft:#d9a044;
}
body{background:#050606}
.global-menu{
  height:54px;
  padding-left:max(18px,calc((100vw - 1600px)/2));
  padding-right:max(18px,calc((100vw - 1600px)/2));
  background:#070908f5;
  border-bottom-color:#3a2d1d;
}
.brand{letter-spacing:.12em}.brand b{color:var(--amber-soft)}.brand span{color:#a97c39}
.status-pill{height:30px;padding:0 12px;border-color:#303731;background:#0b0e0d;color:#c1c6c2}
.shell{width:min(1600px,calc(100% - 32px));padding-top:16px;padding-bottom:24px}
.hero{min-height:66px;background:var(--surface);border-color:#30352f}
.exchange-filters{border-right:1px solid #30352f}
.exchange-filters label{color:#d1d5d2}
.exchange-check{background:#050606;border-color:#685335}
.exchange-filters input:checked+.exchange-check{background:var(--amber-soft);border-color:var(--amber-soft)}
.hero-stats{background:#070908}
.hero-stats div{padding:12px 18px;border-left-color:#30291f}
.hero-stats span{color:#8e968f}.hero-stats strong{margin-top:0;color:#f5f4ef}
.panel{margin-top:12px;background:var(--surface);border-color:#30352f}
.panel-head{height:62px;padding-left:18px;padding-right:18px;background:var(--surface-raised);border-bottom-color:#30352f}
.panel-head h2{letter-spacing:.06em}.panel-head h2:before{border-color:#6e5532;color:var(--amber-soft)}
.window-tabs{gap:6px}
.window-tabs button{height:32px;padding:0 14px;border:1px solid #353b36;background:#080a09;color:#a9afaa}
.window-tabs button+button{border-left:1px solid #353b36}
.window-tabs button:hover{border-color:#80633b;color:#fff}
.window-tabs button[aria-selected=true]{background:#d9a044;border-color:#d9a044;color:#080806}
.table-head{height:36px;padding-left:18px;padding-right:18px;background:#0a0d0c;border-bottom-color:#30352f;color:#89918b}
.trade-row{padding-left:18px;padding-right:18px;background:#070908;border-bottom-color:var(--line-soft)}
.trade-row:nth-of-type(even){background:#090b0a}
.trade-row:hover{background:#101411;box-shadow:inset 3px 0 0 var(--amber-soft)}
.rank{color:#747c76}
.exchange-name{color:#929a94}
.chart-button{height:29px;border-color:#665035;background:#0d0d0a;color:#e0b36e}
.chart-button:hover,.chart-button.active{border-color:var(--amber-soft);color:#fff;background:#19130b;box-shadow:none}
.trade-count{color:#f7f6f1}
.metric-cell span{color:#8d958f}
.imbalance-bar{height:5px;background:#17201b;border:1px solid #26342b}
.chart-panel{background:#070908}.chart-head{height:48px;background:#0c0f0e}

@media(min-width:761px){
  .ranking:not(:has(.empty)) .trade-row{min-height:max(60px,calc((100dvh - 250px)/10))}
}

@media(max-width:760px){
  .global-menu{height:54px;padding-left:12px;padding-right:12px}
  .shell{width:100%;padding-top:8px;padding-bottom:18px}
  .hero,.panel{border-left:0;border-right:0}
  .hero{min-height:0}
  .exchange-filters{border-right:0}
  .panel{margin-top:8px}
  .panel-head{padding-left:12px;padding-right:12px}
  .trade-row{padding-left:12px;padding-right:12px}
}

/* Keep the dashboard canvas continuous from edge to edge. */
body{background:var(--surface)}
.shell{width:100%;max-width:none;padding-top:0;padding-bottom:0}
.hero{border-left:0;border-right:0}
.panel{margin-top:0;border-left:0;border-right:0}

@media(max-width:760px){
  .shell{padding-top:0;padding-bottom:0}
  .panel{margin-top:0}
}

/* Restore the original segmented imbalance rail. */
.imbalance-bar{
  height:11px;
  border-color:#294b39;
  background:repeating-linear-gradient(90deg,#0d1b14 0 9px,#030705 9px 10px);
}

/* Restore the original understated rolling-window tabs. */
.window-tabs{gap:16px}
.window-tabs button,.window-tabs button+button{
  height:28px;
  padding:0 2px;
  border:0;
  border-bottom:1px solid #343638;
  background:transparent;
  color:#96999c;
}
.window-tabs button:hover{border-color:#80633b;color:#fff}
.window-tabs button[aria-selected=true]{
  border:0;
  border-bottom:2px solid var(--ui-accent);
  background:transparent;
  color:var(--ui-accent);
}
@media(max-width:760px){.window-tabs{gap:20px}}
.ema-unified .panel-head{min-height:74px}
.ema-control-groups{display:flex;align-items:stretch;justify-content:flex-end;gap:0;min-width:0}
.ema-control-group{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;min-width:0}
.ema-control-group+.ema-control-group{margin-left:24px;padding-left:24px;border-left:1px solid #343638}
.ema-control-label{color:#858b87;font-size:8px;line-height:12px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
.ema-control-groups .window-tabs{display:flex;align-items:center;white-space:nowrap}
.ema-control-groups .window-tabs button{min-width:48px}
@media(max-width:900px){
  .ema-unified .panel-head{min-height:154px}
  .ema-control-groups{display:grid;grid-template-columns:1fr;justify-items:stretch;gap:12px;width:100%}
  .ema-control-group{width:100%;gap:4px}
  .ema-control-group+.ema-control-group{margin-left:0;padding-top:10px;padding-left:0;border-top:1px solid #282b29;border-left:0}
  .ema-control-label{font-size:9px;line-height:13px}
  .ema-control-groups .window-tabs{width:100%;gap:16px}
}
@media(max-width:430px){
  .ema-control-groups .window-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .ema-control-groups .window-tabs button{width:100%;padding-left:0;padding-right:0;text-align:center}
}
.exchange-name.data-gap{color:var(--terminal-red);font-weight:700}
.exchange-name.syncing{color:var(--orange);font-weight:700}

/* Primary screen groups. Only one category is visible at a time. */
.category-accordion{
  margin-top:8px;
  border-top:1px solid #2a261e;
  border-bottom:1px solid #2a261e;
  background:#090a09;
}
.category-head{min-height:58px;display:flex;align-items:stretch;padding:0}
.category-toggle{
  width:100%;
  min-height:58px;
  min-width:0;
  display:grid;
  grid-template-columns:36px minmax(90px,auto) 1fr auto;
  align-items:center;
  gap:14px;
  padding:0 22px;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.category-index,.category-count{font-size:10px;color:var(--muted);letter-spacing:0}
.category-toggle strong{font-size:15px;color:var(--ui-accent);letter-spacing:0}
.category-count{justify-self:end}
.category-toggle:focus-visible{outline:1px solid var(--ui-accent);outline-offset:6px}
.category-toggle[aria-expanded="false"] .accordion-chevron{transform:rotate(-45deg)}
.category-content{border-top:1px solid #2a261e}
.category-content[hidden]{display:none}
.category-content>.panel{margin-top:0;border-left:0;border-right:0;border-bottom:0}
.category-content>.panel+.panel{border-top:1px solid #2a261e}
.category-empty{margin:0;padding:34px 22px;color:var(--muted);font-size:11px}

/* Reusable section accordion; rolling controls remain independently clickable. */
.accordion-head{cursor:pointer}
.accordion-toggle{
  min-width:0;
  flex:1;
  display:flex;
  align-items:center;
  gap:14px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
}
.accordion-toggle h2{pointer-events:none}
.accordion-chevron{
  width:8px;
  height:8px;
  flex:0 0 auto;
  border-right:1px solid var(--ui-accent);
  border-bottom:1px solid var(--ui-accent);
  transform:rotate(45deg);
  transition:transform .18s ease;
}
.accordion-toggle[aria-expanded="false"] .accordion-chevron{transform:rotate(-45deg)}
.accordion-toggle:focus-visible{outline:1px solid var(--ui-accent);outline-offset:6px}
.accordion-content[hidden]{display:none}
.accordion.is-collapsed .panel-head{border-bottom:0}
.accordion .panel-head h2[data-index]:before{content:attr(data-index)}

/* Final table system: every visible field owns an explicit, balanced track. */
.table-head,.trade-row,.return-table-grid{
  grid-template-columns:40px 180px repeat(5,minmax(0,1fr));
  column-gap:clamp(10px,1.2vw,18px);
}
.funding-table-grid{
  grid-template-columns:40px 180px repeat(3,minmax(0,1fr));
  column-gap:clamp(10px,1.2vw,18px);
}
.ema-table-grid{
  grid-template-columns:40px 180px repeat(4,minmax(0,1fr));
  column-gap:clamp(10px,1.2vw,18px);
}
.orderbook-table-grid{
  grid-template-columns:40px 180px repeat(4,minmax(0,1fr));
  column-gap:clamp(10px,1.2vw,18px);
}
.orderbook-table-grid>.imbalance-cell,
.orderbook-table-grid>.metric-cell{width:100%;text-align:center}
.orderbook-table-grid .bid-share{color:var(--terminal-green)}
.orderbook-table-grid .ask-share{color:var(--terminal-red)}
.trade-row .chart-button{width:78px;justify-self:center}
.table-head>span:first-child{text-align:left}
.table-head>span:nth-child(n+3){text-align:center}
.table-head>span:nth-child(2){text-align:left}
.trade-row>.market-cell{display:flex;justify-content:flex-start}
.trade-row>.market-cell .market-link{display:block;width:100%;text-align:left}
.trade-row>.trade-count{width:100%;justify-self:stretch;text-align:center}
.trade-row>.return-cell,
.trade-row>.funding-cell,
.trade-row>.hourly-funding-cell,
.trade-row>.ema-distance-cell,
.trade-row>.ema-value-cell,
.trade-row>.ema-price-cell{width:100%;justify-self:stretch;text-align:center}
.trade-row>.imbalance-cell{width:100%;justify-self:stretch;text-align:center}
.ranking:not(:has(.empty)) .trade-row{min-height:62px}
.funding-table-grid>*{grid-row:1}
.funding-table-grid>:nth-child(1){grid-column:1}
.funding-table-grid>:nth-child(2){grid-column:2}
.funding-table-grid>:nth-child(3){grid-column:3}
.funding-table-grid>.funding-raw-heading,.funding-table-grid>.funding-cell{grid-column:4}
.funding-table-grid>.funding-hourly-heading,.funding-table-grid>.hourly-funding-cell{grid-column:5}
.is-hourly-primary .funding-table-grid>.funding-raw-heading,.is-hourly-primary .funding-table-grid>.funding-cell{grid-column:5}
.is-hourly-primary .funding-table-grid>.funding-hourly-heading,.is-hourly-primary .funding-table-grid>.hourly-funding-cell{grid-column:4}

@media(max-width:900px){
  .category-head{min-height:54px}
  .category-toggle{min-height:54px;grid-template-columns:28px minmax(78px,auto) 1fr auto;gap:10px;padding:0 16px}
  .category-toggle strong{font-size:13px}
  .category-count{font-size:9px}
  .panel-head{height:auto;min-height:88px;display:grid;grid-template-columns:1fr;align-content:center;gap:10px;padding-top:12px;padding-bottom:10px}
  .window-tabs{width:100%;align-self:end;gap:20px}
  .window-tabs button{flex:0 0 auto}
  .table-head{display:none}
  .trade-row:not(.return-table-grid):not(.funding-table-grid),
  .return-table-grid,
  .funding-table-grid{
    grid-template-columns:32px 118px repeat(2,minmax(0,1fr));
    column-gap:clamp(8px,2vw,16px);
  }
  .trade-row:not(.return-table-grid):not(.funding-table-grid)>.return-cell,
  .trade-row:not(.return-table-grid):not(.funding-table-grid)>.funding-cell,
  .trade-row:not(.return-table-grid):not(.funding-table-grid)>.imbalance-cell{display:none}
  .accordion-toggle{width:100%;gap:10px}
  .return-table-grid>.return-cell{display:block}
  .return-table-grid>.trade-count,.return-table-grid>.funding-cell,.return-table-grid>.imbalance-cell{display:none}
  .return-table-grid .chart-button{width:62px}
  .funding-table-grid>.funding-cell{display:block}
  .funding-table-grid>.hourly-funding-cell{display:none}
  .is-hourly-primary .funding-table-grid>.funding-cell{display:none}
  .is-hourly-primary .funding-table-grid>.hourly-funding-cell{display:block}
  .funding-table-grid .chart-button{width:62px}
  .ema-table-grid{
    grid-template-columns:32px 118px repeat(2,minmax(0,1fr));
    column-gap:clamp(8px,2vw,16px);
  }
  .ema-table-grid>.ema-value-cell,
  .ema-table-grid>.ema-price-cell{display:none}
  .ema-table-grid .chart-button{width:62px}
  .orderbook-table-grid{
    grid-template-columns:32px minmax(118px,1fr) 62px repeat(3,minmax(78px,1fr));
    column-gap:clamp(8px,2vw,16px);
  }
  .ranking .trade-row.orderbook-table-grid>.imbalance-cell{display:block}
  .ranking:not(:has(.empty)) .trade-row{min-height:60px}
}

@media(max-width:600px){
  .orderbook-table-grid{grid-template-columns:32px minmax(112px,1fr) 62px minmax(90px,1fr)}
  .orderbook-table-grid>.bid-share-cell,
  .orderbook-table-grid>.ask-share-cell{display:none}
}

.depth-chart{height:320px;padding:14px 18px 10px;background:#070908}
.depth-chart canvas{display:block;width:100%;height:258px}
.depth-chart-legend{height:34px;display:flex;align-items:center;gap:22px;color:#858d87;font:10px 'DM Mono'}
.depth-chart-legend span:before{content:'';display:inline-block;width:18px;height:4px;margin-right:8px;vertical-align:middle}
.depth-chart-legend .depth-bid-key:before{background:#29b8aa}
.depth-chart-legend .depth-ask-key:before{background:#e8565e}
.depth-chart-legend small{margin-left:auto;color:#69716c;font:9px 'DM Mono'}
@media(max-width:600px){
  .depth-chart{height:278px;padding:10px 8px 8px}
  .depth-chart canvas{height:220px}
  .depth-chart-legend{gap:14px;padding:0 4px;font-size:9px}
  .depth-chart-legend small{display:none}
}

@media(min-width:601px) and (max-width:900px){
  .funding-table-grid{
    grid-template-columns:32px 140px repeat(3,minmax(0,1fr));
    column-gap:clamp(8px,1.6vw,16px);
  }
  .funding-table-grid.table-head{display:grid}
  .funding-table-grid>.funding-cell,
  .funding-table-grid>.hourly-funding-cell,
  .is-hourly-primary .funding-table-grid>.funding-cell,
  .is-hourly-primary .funding-table-grid>.hourly-funding-cell{display:block}
}

/* Visually separate the four primary rankings without turning them into cards. */
.shell>.panel.accordion{
  position:relative;
  isolation:isolate;
  border-top:1px solid #3c4038;
  border-bottom:1px solid #30342d;
  background:#111413;
}
.shell>.panel.accordion:nth-of-type(even){background:#090b0b}
.shell>.panel.accordion::before{
  content:"";
  position:absolute;
  z-index:2;
  top:5px;
  bottom:5px;
  left:0;
  width:3px;
  background:var(--ui-accent);
}
.shell>.panel.accordion+.panel.accordion{border-top-color:#454a40}
.shell>.panel.accordion>.panel-head{
  min-height:82px;
  padding-left:24px;
  padding-right:24px;
  background:transparent;
}
.shell>.panel.accordion:not(.is-collapsed)>.panel-head{
  border-bottom:1px solid #30332e;
}
.shell>.panel.accordion>.accordion-content{background:#080a09}

@media(max-width:900px){
  .shell>.panel.accordion>.panel-head{
    min-height:104px;
    padding:16px 18px 14px 20px;
  }
}
