:root{
  --bg:#050911;--surface:#0d1523;--surface2:#111c2d;--surface3:#0a111d;
  --line:#26354c;--line-soft:#1b283b;--text:#f4f7ff;--muted:#7e8eac;
  --green:#00d89a;--red:#ff4056;--yellow:#ffb000;--blue:#4d8dff;
  --coin-name-scale:1;--base-font:clamp(11px,.48vw,15px);
  --gap:clamp(7px,.55vw,16px);--panel-w:clamp(350px,19vw,440px);
  --card-min:clamp(470px,calc(370px + 210px * var(--coin-name-scale)),820px);
  color-scheme:dark;
}

*{box-sizing:border-box}
html{font-size:var(--base-font);background:var(--bg);scrollbar-color:#33445f #08101b}
body{min-width:320px;max-width:100%;margin:0;overflow-x:hidden;background:var(--bg);color:var(--text);font-family:Consolas,Menlo,Monaco,'Courier New',monospace;letter-spacing:.02em}
button,input{font:inherit}
.hidden,.market-hidden,.hidden-by-exchange{display:none!important}
.green{color:var(--green)}.red{color:var(--red)}

/* Application layout */
.app-shell{display:grid;grid-template-columns:minmax(0,1fr) var(--panel-w);width:100%;min-height:100vh;background:var(--bg)}
.app-shell.filters-closed{grid-template-columns:minmax(0,1fr) 0}
.main-area,.wrap,.grid,.exchange,.cols,.col{min-width:0}
.wrap{padding:var(--gap)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--card-min)),1fr));align-items:start;gap:var(--gap)}

/* Exchange cards */
.exchange{width:100%;overflow:hidden;border:1px solid var(--line);background:linear-gradient(180deg,var(--surface2),var(--surface));box-shadow:0 10px 30px rgba(0,0,0,.1)}
.head{height:clamp(56px,3.5vw,82px);display:flex;align-items:center;gap:clamp(10px,.8vw,18px);padding:0 clamp(13px,1vw,24px);border-bottom:1px solid var(--line)}
.logo{width:clamp(30px,1.9vw,46px);height:clamp(30px,1.9vw,46px);flex:0 0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:rgba(255,255,255,.035);box-shadow:0 0 0 1px rgba(255,255,255,.075),0 8px 20px rgba(0,0,0,.28)}
.logo img{display:block;width:100%;height:100%;object-fit:contain}.bybit .logo img,.hyperliquid .logo img,.aster .logo img{border-radius:50%}
.title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(14px,calc(14px * var(--coin-name-scale)),24px);font-weight:950;letter-spacing:clamp(.2em,calc(.38em / var(--coin-name-scale)),.38em)}
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(18px,calc(24px * var(--coin-name-scale)),52px);padding:clamp(14px,calc(17px * var(--coin-name-scale)),30px)}
.col{width:100%;overflow:hidden}.col:first-child{padding-right:clamp(16px,calc(22px * var(--coin-name-scale)),44px);border-right:1px solid var(--line)}
.exchange.single-market .cols{grid-template-columns:minmax(0,1fr)}
.exchange.single-market .col:not(.market-hidden){padding:0;border:0}
.market{max-width:100%;margin:0 0 1.1em;padding:0 0 .82em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid var(--line);font-size:calc(.98rem * var(--coin-name-scale));font-weight:800;letter-spacing:clamp(.16em,calc(.34em / var(--coin-name-scale)),.36em)}
.market b{color:var(--yellow);letter-spacing:.22em}
.section{margin:1.08em 0 .66em;font-size:calc(.9rem * var(--coin-name-scale));line-height:1.35;font-weight:950}
.row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(2.9em,max-content) minmax(5.55em,max-content);align-items:center;column-gap:clamp(.45em,calc(.72em * var(--coin-name-scale)),1.05em);width:100%;min-height:1.78em;padding:0 .25em;font-size:calc(.92rem * var(--coin-name-scale));line-height:1.78em;font-weight:850;cursor:pointer}
.row:hover{background:rgba(255,255,255,.038)}
.sym{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pct{min-width:5.55em;text-align:right;white-space:nowrap}.new-slot{display:flex;align-items:center;justify-content:center;min-width:2.9em}
.new{display:none;align-items:center;justify-content:center;min-width:2.75em;height:1.35em;padding:0 .3em;border:1px solid #d98b00;border-radius:2px;background:rgba(255,176,0,.09);color:var(--yellow);font-size:.61em;font-weight:950;line-height:1}
.row.isnew{padding-inline:.3em;box-shadow:inset 0 0 0 2px rgba(0,216,154,.92),0 0 10px rgba(0,216,154,.07)}
.row.isnew.down{box-shadow:inset 0 0 0 2px rgba(255,64,86,.92),0 0 10px rgba(255,64,86,.07)}.row.isnew .new{display:inline-flex}
.disabled{margin:2.2em 0;padding:2em .8em;border:1px dashed rgba(115,131,162,.24);background:rgba(255,255,255,.017);color:#657694;text-align:center;text-transform:uppercase;font-size:.76rem;line-height:1.55;letter-spacing:.11em}

/* Filters */
.filter-panel{position:sticky;top:0;width:var(--panel-w);min-width:0;height:100vh;overflow-x:hidden;overflow-y:auto;border-left:1px solid var(--line);background:#0a101b;z-index:30;transition:transform .22s ease,width .22s ease}
.app-shell.filters-closed .filter-panel{width:0;border:0;transform:translateX(100%);pointer-events:none}
.filter-inner{width:var(--panel-w);min-height:100%;padding:clamp(22px,1.45vw,35px) clamp(16px,1.2vw,28px) 30px}
.filter-toggle{position:absolute;right:14px;top:20px;width:28px;height:28px;padding:0;border:0;background:transparent;color:#8393b0;font-size:22px;cursor:pointer}.filter-toggle:hover{color:#fff}
.filter-head{margin:0 0 30px;color:#a5b7d7;font-size:.9rem;font-weight:950;letter-spacing:.34em}
.refresh-timer,.filter-summary,.font-control{border:1px solid var(--line);background:#101827}
.refresh-timer{margin:0 0 20px;padding:11px 12px}.refresh-timer>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;color:#91a2c2;font-size:.72rem;font-weight:900;letter-spacing:.18em}.refresh-timer b{color:var(--yellow);white-space:nowrap}.timer-bar{height:5px;overflow:hidden;border:1px solid rgba(255,176,0,.22);background:#1b2638}.timer-bar i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#ffb000,#ffd76a);transition:width .22s linear}
.filter-summary{height:48px;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:22px;padding:0 12px;color:#a9b9d8}.filter-summary b{color:#fff;font-size:.85rem;white-space:nowrap}
.filter-section{margin-bottom:22px}.filter-title{display:flex;align-items:center;gap:11px;margin-bottom:12px;color:#91a2c2;font-size:.76rem;font-weight:950;letter-spacing:.3em}.filter-title:after,.filter-section:has(#newCoinsSeg) .filter-title:before{content:"";height:1px;flex:1;background:var(--line-soft)}
.font-control{height:44px;display:grid;grid-template-columns:auto minmax(90px,1fr) auto 48px;align-items:center;gap:9px;padding:0 11px;color:#8ea0c0}.font-control span{font-size:12px;font-weight:900}.font-control b{text-align:right;color:var(--yellow);font-size:11px}.font-control input{appearance:none;width:100%;height:4px;border:0;border-radius:99px;background:#2a3850;cursor:pointer}.font-control input::-webkit-slider-thumb{appearance:none;width:17px;height:17px;border:2px solid #fff;border-radius:50%;background:var(--yellow);box-shadow:0 0 12px rgba(255,176,0,.4)}
.ex-switch-table{overflow:hidden;border:1px solid var(--line);background:rgba(8,14,24,.6)}
.ex-table-head,.ex-switch-row{display:grid;grid-template-columns:minmax(0,1fr) 61px 72px;align-items:center;column-gap:6px;padding:0 10px}.ex-table-head{height:34px;border-bottom:1px solid var(--line-soft);color:#8292ae;font-size:9px;font-weight:950;letter-spacing:.1em}.ex-table-head span:not(:first-child){text-align:center}.ex-switch-row{height:40px;border-bottom:1px solid rgba(38,51,72,.45)}.ex-switch-row:last-child{border:0}
.ex-name{min-width:0;display:flex;align-items:center;gap:8px;font-family:Arial,sans-serif;font-size:12px;font-weight:700}.ex-name span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-logo{width:24px;height:24px;flex:0 0 auto;display:flex;overflow:hidden;border-radius:6px;background:rgba(255,255,255,.035);box-shadow:0 0 0 1px rgba(255,255,255,.075)}.filter-logo img{width:100%;height:100%;object-fit:contain}.filter-logo-bybit img,.filter-logo-hyperliquid img,.filter-logo-aster img{border-radius:50%}
.switch{position:relative;justify-self:center;width:42px;height:23px;padding:0;border:0;border-radius:99px;background:#263142;cursor:pointer}.switch:before{content:"";position:absolute;left:2px;top:2px;width:19px;height:19px;border-radius:50%;background:#f5f7fb;box-shadow:0 2px 8px rgba(0,0,0,.35);transition:left .16s}.switch.on{background:linear-gradient(180deg,#ffc235,#f29c00)}.switch.on:before{left:21px}
.seg{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.seg button{height:29px;min-width:42px;padding:0 9px;border:1px solid var(--line);background:#101827;color:#8190ae;font-size:.75rem;font-weight:950;letter-spacing:.1em;cursor:pointer}.seg button.active{border-color:#d98b00;background:rgba(255,176,0,.08);color:var(--yellow)}
.reset-btn{width:100%;height:40px;border:1px solid #182338;background:#151d2c;color:#a9b9d8;font-weight:950;letter-spacing:.16em;cursor:pointer}.reset-btn:hover{border-color:var(--line);color:#fff}
.filter-open-btn{display:none;position:fixed;right:10px;top:10px;z-index:45;height:32px;padding:0 12px;border:1px solid var(--line);background:#101827;color:#afc0dd;font-weight:950;letter-spacing:.16em;box-shadow:0 8px 24px rgba(0,0,0,.4);cursor:pointer}body.filters-closed .filter-open-btn{display:block}

/* Coin tooltip */
.coin-tooltip{position:fixed;z-index:10000;width:280px;max-height:none;overflow:visible;padding:13px;border:1px solid rgba(83,113,164,.55);border-radius:7px;background:rgba(8,17,32,.985);box-shadow:0 18px 48px rgba(0,0,0,.58);color:#dbe7ff;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(4px);transition:opacity .1s,transform .1s,visibility .1s}.coin-tooltip.show{opacity:1;visibility:visible;transform:none}
.coin-tip-symbol{margin-bottom:8px;color:#fff;font-size:1rem;font-weight:950;letter-spacing:.07em}.coin-tip-current{margin:-3px 0 7px;color:#71809c;font-size:.57rem;font-weight:900;letter-spacing:.13em}.coin-tip-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:8px 10px;border:1px solid rgba(255,176,0,.25);border-radius:4px;background:rgba(255,176,0,.055)}.coin-tip-stats>div{min-width:0;display:flex;flex-direction:column;gap:4px}.coin-tip-stats span,.coin-tip-title{color:#71809c;font-size:.55rem;font-weight:950;letter-spacing:.1em;white-space:nowrap}.coin-tip-stats b{color:var(--yellow);font-size:.9rem;white-space:nowrap}.coin-tip-stats b.up{color:var(--green)}.coin-tip-stats b.down{color:var(--red)}.coin-tip-title{margin:10px 0 5px}.coin-tip-list{display:flex;flex-direction:column;gap:3px}.coin-tip-market{min-height:27px;display:grid;grid-template-columns:20px minmax(0,1fr) 105px;align-items:center;gap:7px;padding:3px 6px;border:1px solid rgba(255,255,255,.035);border-radius:4px;background:rgba(255,255,255,.025)}.coin-tip-market img{width:19px;height:19px;object-fit:contain;border-radius:4px}.coin-tip-market b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.69rem}.coin-tip-badges{width:105px;display:grid;grid-template-columns:43px 57px;align-items:center;gap:5px}.coin-tip-badge-slot{display:flex;justify-content:center}.coin-tip-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 4px;border:1px solid;border-radius:3px;font-size:.5rem;font-weight:950;letter-spacing:.07em;white-space:nowrap}.coin-tip-badge.spot{border-color:rgba(0,216,154,.42);background:rgba(0,216,154,.07);color:var(--green)}.coin-tip-badge.futures{border-color:rgba(255,176,0,.42);background:rgba(255,176,0,.07);color:var(--yellow)}

/* Charts and loading */
.chart-modal{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:12px;background:rgba(0,0,0,.76)}.chart-box{width:min(1280px,98vw);height:min(840px,96dvh);overflow:hidden;border:1px solid var(--line);background:#090e18;box-shadow:0 24px 90px rgba(0,0,0,.6)}.chart-head{height:52px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 15px;border-bottom:1px solid var(--line);background:#101827;letter-spacing:.12em}.chart-head b{font-size:20px}.chart-head span{margin-left:10px;color:#8ea0c0;font-size:11px}.chart-head>div:last-child{display:flex;align-items:center}.hint{letter-spacing:0!important}#chartClose{padding:0 4px;border:0;background:transparent;color:#9aa8c2;font-size:28px;cursor:pointer}.chart-grid{height:calc(100% - 52px);display:grid;grid-template:1fr 1fr/1fr 1fr}.chart-cell{position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.chart-cell:nth-child(2n){border-right:0}.chart-cell:nth-child(n+3){border-bottom:0}.chart-cell iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.tf-label{position:absolute;left:12px;top:10px;z-index:2;color:#8fb0ff;font-weight:950}.chart-grid.external-chart-grid{display:block}.external-chart{position:relative;width:100%;height:100%}.external-chart iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.external-fallback{position:absolute;right:12px;bottom:12px;display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--line);background:rgba(7,11,18,.9);color:#91a4c3;font-size:11px}.external-fallback a{padding:6px 9px;border:1px solid var(--yellow);color:var(--yellow);text-decoration:none;font-weight:950}
.load-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at center,rgba(19,33,55,.93),rgba(5,9,16,.98));backdrop-filter:blur(4px);transition:opacity .3s,visibility .3s}.load-overlay.done{opacity:0;visibility:hidden;pointer-events:none}.load-card{width:min(500px,calc(100vw - 32px));padding:26px;border:1px solid rgba(125,147,184,.28);background:linear-gradient(180deg,rgba(19,31,51,.96),rgba(10,17,29,.96));box-shadow:0 22px 70px rgba(0,0,0,.45)}.load-title{margin-bottom:10px;font-size:clamp(13px,1vw,18px);font-weight:950;letter-spacing:.28em}.load-sub{min-height:18px;margin-bottom:16px;color:#8fa3c2;font-size:11px;font-weight:800}.progress{height:9px;overflow:hidden;border:1px solid rgba(255,176,0,.35);background:#0a1220}.progress>div{height:100%;background:linear-gradient(90deg,#f6a800,#ffd35c);transition:width .2s}.load-percent{margin-top:10px;text-align:right;color:var(--yellow);font-weight:950}.status{position:fixed;left:50%;bottom:6px;z-index:20;max-width:calc(100% - 20px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transform:translateX(-50%);color:var(--yellow);font-size:.78rem;font-weight:950}.live{color:var(--green)}.loading{opacity:.72}

/* Short viewports: complete tooltip stays visible without a scrollbar */
@media(max-height:680px) and (min-width:701px){.coin-tooltip{width:266px;padding:9px}.coin-tip-symbol{margin-bottom:5px;font-size:.87rem}.coin-tip-current{margin-bottom:5px}.coin-tip-stats{padding:5px 7px}.coin-tip-title{margin:6px 0 4px}.coin-tip-list{gap:2px}.coin-tip-market{min-height:22px;padding:1px 5px}.coin-tip-market img{width:16px;height:16px}.coin-tip-market b{font-size:.61rem}.coin-tip-badge{font-size:.46rem;padding:1px 3px}}

/* Filters become a drawer before they can squeeze the screener. */
@media(max-width:1279px){
  .app-shell{grid-template-columns:minmax(0,1fr)}
  .filter-panel{position:fixed;right:0;top:0;width:min(390px,94vw);height:100dvh;box-shadow:-22px 0 60px rgba(0,0,0,.58)}
  .filter-inner{width:min(390px,94vw)}
  .app-shell.filters-closed .filter-panel{width:min(390px,94vw)}
}
@media(max-width:900px){:root{--card-min:420px}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}}
@media(max-width:680px){
  :root{--base-font:12px;--card-min:100%;--gap:6px}
  .grid{grid-template-columns:minmax(0,1fr)}.head{height:56px;padding:0 12px}.logo{width:31px;height:31px}.title{font-size:14px;letter-spacing:.23em}
  .cols{grid-template-columns:minmax(0,1fr);gap:13px;padding:12px 10px}.col:first-child{padding:0 0 14px;border-right:0;border-bottom:1px solid var(--line)}.exchange.single-market .col:not(.market-hidden){padding:0;border:0}
  .market{font-size:calc(.92rem * var(--coin-name-scale));letter-spacing:.19em}.section{font-size:calc(.87rem * var(--coin-name-scale))}.row{grid-template-columns:minmax(0,1fr) minmax(2.7em,max-content) minmax(5.15em,max-content);font-size:calc(.9rem * var(--coin-name-scale));column-gap:.42em}.new-slot{min-width:2.7em}.pct{min-width:5.15em}
  .coin-tooltip{display:none}.chart-modal{padding:5px}.chart-box{width:100%;height:98dvh}.chart-head{height:46px;padding:0 10px}.chart-head b{font-size:15px}.hint{display:none}.chart-grid{height:calc(100% - 46px);grid-template:repeat(4,1fr)/1fr}.chart-cell{border-right:0!important;border-bottom:1px solid var(--line)!important}.chart-cell:last-child{border-bottom:0!important}
  .filter-open-btn{right:7px;top:7px;height:30px;padding:0 9px;font-size:10px}.status{bottom:3px;width:calc(100% - 10px);text-align:center;font-size:9px}
}
@media(max-width:420px){
  :root{--base-font:11px}.title{font-size:13px;letter-spacing:.18em}.head{gap:9px}.market{letter-spacing:.14em}.row{font-size:calc(.87rem * var(--coin-name-scale))}.filter-panel,.filter-inner{width:100vw}.filter-inner{padding:20px 10px 24px}.ex-table-head,.ex-switch-row{grid-template-columns:minmax(0,1fr) 54px 64px;padding-inline:7px}.font-control{grid-template-columns:auto minmax(70px,1fr) auto 43px}
}
@media(min-width:2560px){:root{--base-font:clamp(14px,.4vw,17px);--panel-w:clamp(420px,16vw,540px);--card-min:clamp(650px,calc(520px + 230px * var(--coin-name-scale)),980px)}.filter-inner{max-width:540px;margin:auto}.coin-tooltip{width:320px}.coin-tip-market{min-height:31px}}
@media(min-width:3840px){:root{--base-font:17px;--gap:18px;--panel-w:560px;--card-min:920px}.filter-inner{width:560px;max-width:560px}.head{height:90px}.logo{width:50px;height:50px}}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* v43: compact symbol / NEW / percentage rhythm on wide cards */
.row{
  grid-template-columns:minmax(8.5rem,clamp(10rem,48%,20rem)) minmax(2.9em,max-content) minmax(5.55em,max-content);
  justify-content:start;
}
.row .sym{width:100%}
@media(min-width:2560px){
  .row{grid-template-columns:minmax(10rem,clamp(12rem,44%,22rem)) minmax(2.9em,max-content) minmax(5.55em,max-content)}
}
@media(max-width:1100px){
  .row{grid-template-columns:minmax(8rem,clamp(9.5rem,50%,18rem)) minmax(2.8em,max-content) minmax(5.4em,max-content)}
}
@media(max-width:680px){
  .row{grid-template-columns:minmax(7.5rem,clamp(8.5rem,48%,15rem)) minmax(2.7em,max-content) minmax(5.15em,max-content)}
}
@media(max-width:390px){
  .row{grid-template-columns:minmax(7rem,clamp(7.8rem,46%,13rem)) minmax(2.55em,max-content) minmax(5em,max-content);column-gap:.35em}
}

/* v44: fluid card density — cards shrink together with the user font scale */
:root{--card-min:clamp(340px,calc(240px + 200px * var(--coin-name-scale)),560px)}
.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--card-min)),1fr))}
.exchange{container-type:inline-size}
.cols{gap:clamp(12px,calc(16px * var(--coin-name-scale)),30px);padding:clamp(11px,calc(13px * var(--coin-name-scale)),22px)}
.col:first-child{padding-right:clamp(11px,calc(15px * var(--coin-name-scale)),28px)}
.row{
  grid-template-columns:minmax(0,1fr) minmax(2.65em,max-content) minmax(5.25em,max-content);
  width:100%;
  max-width:420px;
  justify-content:initial;
}
.row .pct{min-width:5.25em}
.row .new-slot{min-width:2.65em}
@container(max-width:520px){
  .cols{gap:11px;padding:11px}
  .col:first-child{padding-right:11px}
  .market{letter-spacing:clamp(.12em,calc(.26em / var(--coin-name-scale)),.28em)}
  .row{column-gap:.38em}
}
@media(min-width:2560px){
  :root{--card-min:clamp(500px,calc(350px + 200px * var(--coin-name-scale)),720px)}
  .row{max-width:480px}
}
@media(min-width:3840px){
  :root{--card-min:clamp(560px,calc(390px + 210px * var(--coin-name-scale)),760px)}
  .row{max-width:520px}
}
@media(max-width:900px){
  :root{--card-min:clamp(330px,calc(235px + 190px * var(--coin-name-scale)),520px)}
}
@media(max-width:680px){
  :root{--card-min:100%}
  .row{max-width:100%}
}

/* v45: native Scalpy candlestick charts for exchanges without TradingView symbols */
.native-chart-cell{overflow:hidden;background:#090e18}
.native-chart-host{position:absolute;inset:0;z-index:1}
.native-chart-cell .tf-label{z-index:4;left:9px;top:8px;padding:3px 6px;border:1px solid rgba(77,141,255,.24);border-radius:3px;background:rgba(9,14,24,.88);color:#8fb0ff;font-size:10px;letter-spacing:.1em;pointer-events:none}
.native-chart-legend{position:absolute;z-index:4;left:52px;top:9px;display:flex;gap:8px;max-width:calc(100% - 64px);overflow:hidden;color:#72839f;font-size:9px;font-weight:900;line-height:20px;white-space:nowrap;pointer-events:none}
.native-chart-legend span{display:inline-flex;gap:3px}.native-chart-legend b{color:#d8e3f5}.native-chart-legend b.up{color:var(--green)}.native-chart-legend b.down{color:var(--red)}
.native-chart-loading,.native-chart-error{position:absolute;inset:0;z-index:5;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:#090e18;color:#71829f;font-size:9px;font-weight:950;letter-spacing:.13em;text-align:center}
.native-chart-loading i{width:25px;height:25px;border:2px solid #26354c;border-top-color:var(--yellow);border-radius:50%;animation:native-chart-spin .8s linear infinite}
.native-chart-error{z-index:6;padding:18px;background:linear-gradient(180deg,rgba(9,14,24,.97),rgba(7,11,18,.98))}.native-chart-error a{padding:7px 10px;border:1px solid rgba(255,176,0,.6);border-radius:3px;color:var(--yellow);text-decoration:none;letter-spacing:.1em}.native-chart-error a:hover{background:rgba(255,176,0,.08)}
@keyframes native-chart-spin{to{transform:rotate(360deg)}}
@media(max-width:680px){
  .native-chart-legend{left:49px;gap:5px;font-size:8px}.native-chart-cell .tf-label{left:7px;top:7px;font-size:9px}
}

/* v46: one eager TradingView frame instead of four heavy simultaneous widgets */
.chart-grid.tv-fast-grid{display:grid;grid-template:42px minmax(0,1fr)/minmax(0,1fr);background:#090e18}
.tv-fast-tabs{display:flex;align-items:center;gap:7px;padding:6px 10px;border-bottom:1px solid var(--line);background:#0e1726}
.tv-fast-tabs button{height:28px;min-width:48px;padding:0 10px;border:1px solid #2a3951;border-radius:3px;background:#101a2b;color:#8295b6;font-size:10px;font-weight:950;letter-spacing:.08em;cursor:pointer}.tv-fast-tabs button:hover{border-color:#49617f;color:#fff}.tv-fast-tabs button.active{border-color:rgba(255,176,0,.75);background:rgba(255,176,0,.09);color:var(--yellow)}
.tv-fast-tabs span{margin-left:auto;color:#54637d;font-size:8px;font-weight:900;letter-spacing:.12em}
.tv-fast-stage{position:relative;min-width:0;min-height:0;overflow:hidden;background:#090e18}.tv-fast-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#090e18}
.tv-fast-loading{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:#090e18;color:#71829f;font-size:9px;font-weight:950;letter-spacing:.13em}.tv-fast-loading i{width:25px;height:25px;border:2px solid #26354c;border-top-color:var(--yellow);border-radius:50%;animation:native-chart-spin .8s linear infinite}
@media(max-width:680px){
  .chart-grid.tv-fast-grid{grid-template-rows:39px minmax(0,1fr)}.tv-fast-tabs{gap:5px;padding:5px 6px}.tv-fast-tabs button{height:27px;min-width:43px;padding-inline:7px;font-size:9px}.tv-fast-tabs span{display:none}
}

/* Colibri prototype: one compact launcher beside every Top Ranked percentage. */
.row{grid-template-columns:minmax(0,1fr) minmax(2.9em,max-content) minmax(5.55em,max-content) 1.5em!important}
.colibri-launch{width:1.45em;height:1.45em;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:rgba(39,112,255,.13);box-shadow:inset 0 0 0 1px rgba(78,144,255,.3);cursor:pointer;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;line-height:1}
.colibri-launch:hover,.colibri-launch:focus-visible{outline:0;transform:translateY(-1px) scale(1.09);background:rgba(45,126,255,.26);box-shadow:0 0 10px rgba(45,126,255,.34),inset 0 0 0 1px rgba(121,173,255,.8)}
.colibri-launch img{display:block;width:1.08em;height:1.08em;object-fit:contain}
.colibri-picker{position:fixed;z-index:9999;width:218px;overflow:hidden;border:1px solid rgba(86,139,231,.58);border-radius:8px;background:#0b1424;box-shadow:0 14px 38px rgba(0,0,0,.52),0 0 0 1px rgba(0,0,0,.26)}
.colibri-picker button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:9px 10px;border:0;border-bottom:1px solid rgba(53,75,112,.72);background:transparent;color:#eff5ff;font:inherit;text-align:left;cursor:pointer}.colibri-picker button:last-child{border-bottom:0}.colibri-picker button:hover,.colibri-picker button:focus-visible{outline:0;background:rgba(43,112,229,.18)}
.colibri-picker span{color:#75adff;font-size:.75rem;font-weight:950;letter-spacing:.14em}.colibri-picker small{color:#a8b5cc;font-size:.64rem;font-weight:850;letter-spacing:.05em;white-space:nowrap}
.colibri-status{min-height:0;padding:0;color:#7f94b4;font-size:.61rem;font-weight:900;letter-spacing:.08em;text-align:center;transition:padding .15s}.colibri-status:not(:empty){padding:7px 8px;border-top:1px solid rgba(53,75,112,.72)}.colibri-status.busy{color:#8caeff}.colibri-status.success{color:#00d89a}.colibri-status.error{color:#ff7182}.colibri-setup{display:block!important;width:100%;padding:8px 10px;border:0;border-top:1px solid rgba(53,75,112,.72);background:#13213a;color:#ffb000;font:900 .62rem/1 Arial,sans-serif;letter-spacing:.08em;cursor:pointer}.colibri-setup:hover{background:#1b2e50}
@media(max-width:900px){.row{grid-template-columns:minmax(0,1fr) minmax(2.7em,max-content) minmax(5.15em,max-content) 1.45em!important}.colibri-launch{width:1.4em;height:1.4em}}
