.btb-wrap{
  position:relative;
  width:100%;
  min-height:420px;
  overflow:hidden;
  border-radius:22px;
  background:
    radial-gradient(circle at 50% 18%, rgba(28,80,132,.95) 0%, rgba(10,31,58,.96) 42%, #020711 100%);
  isolation:isolate;
}
/* faint wall grid */
.btb-wrap:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(86,154,235,.075) 1px, transparent 1px),
    linear-gradient(90deg, rgba(86,154,235,.075) 1px, transparent 1px);
  background-size:44px 44px,44px 44px;
  opacity:.62;
  animation:btbGridDrift 34s linear infinite;
}
/* subtle perspective floor grid */
.btb-wrap:after{
  content:"";
  position:absolute;
  left:-25%;
  right:-25%;
  bottom:-42%;
  height:70%;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(rgba(80,150,230,.11) 1px, transparent 1px),
    linear-gradient(90deg, rgba(80,150,230,.11) 1px, transparent 1px);
  background-size:54px 54px,54px 54px;
  transform:perspective(520px) rotateX(62deg);
  transform-origin:bottom center;
  opacity:.55;
  animation:btbFloorDrift 48s linear infinite;
  mask-image:linear-gradient(to top, rgba(0,0,0,.9), rgba(0,0,0,.35) 45%, transparent 100%);
  -webkit-mask-image:linear-gradient(to top, rgba(0,0,0,.9), rgba(0,0,0,.35) 45%, transparent 100%);
}
@keyframes btbGridDrift{from{background-position:0 0,0 0}to{background-position:44px 44px,44px 44px}}
@keyframes btbFloorDrift{from{background-position:0 0,0 0}to{background-position:54px 54px,54px 54px}}
.btb-chart,.btb-chart svg{width:100%;height:100%;display:block}.btb-chart{position:relative;z-index:3}
.btb-node{cursor:grab;transition:opacity .18s ease,filter .18s ease}.btb-node:active{cursor:grabbing}.btb-node.hovered{opacity:1;filter:drop-shadow(0 0 16px rgba(255,255,255,.18))}.btb-node.dimmed{opacity:.34;filter:saturate(.72) brightness(.72)}
.btb-logo{filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}.btb-halo{mix-blend-mode:screen}.btb-spotlight .btb-chart:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(0,0,0,0) 35%,rgba(0,0,0,.26) 100%);z-index:2;pointer-events:none}
.btb-tooltip{position:absolute;z-index:20;pointer-events:none;padding:10px 12px;border-radius:10px;color:#fff;background:rgba(10,14,25,.92);border:1px solid rgba(255,255,255,.16);font-size:13px;line-height:1.35;box-shadow:0 10px 30px rgba(0,0,0,.32)}
.btb-legend-toggle{position:absolute;right:14px;bottom:14px;z-index:10;background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 12px;font-size:12px;cursor:pointer}
.btb-legend{position:absolute;right:14px;bottom:52px;z-index:10;background:rgba(10,14,25,.9);border:1px solid rgba(255,255,255,.15);color:#fff;border-radius:12px;padding:10px 12px;font-size:12px}.btb-legend span{display:block;margin:4px 0}.btb-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:middle}.btb-legend .up{background:#16c784}.btb-legend .down{background:#ea3943}.btb-legend .flat{background:#9aa0aa}.btb-empty{color:#fff;padding:30px;text-align:center;font-size:16px}@media(max-width:640px){.btb-wrap{min-height:460px;border-radius:16px}.btb-legend-toggle{font-size:11px}}
