:root{--bg:#070b10;--panel:#121a24;--panel2:#0e1520;--text:#edf4ff;--muted:#93a4bb;--line:#253246;--accent:#43d5ff;--eco:#38bdf8;--stable:#4ade80;--bridge:#fbbf24;--external:#8b9df6;--good:#64ff9f;--warn:#ffd36a;--bad:#ff7c8a}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 12% 0,#1b2a3a 0,#0b1119 38%,#05080d 100%);color:var(--text);font:14px/1.35 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.radar-wrap{max-width:1510px;margin:0 auto;padding:14px 18px}.topbar{display:grid;grid-template-columns:1fr auto auto;gap:18px;align-items:center;margin-bottom:10px}.eyebrow{color:var(--accent);text-transform:uppercase;letter-spacing:.13em;font-size:10px;font-weight:900}.brand h1{font-size:33px;line-height:1;margin:4px 0 3px}.brand p{margin:0;color:var(--muted);font-size:13px}.head-status{color:var(--muted);font-size:13px;white-space:nowrap}.head-status b{color:var(--good)}.head-status i{display:inline-block;width:10px;height:10px;border-radius:50%;background:#22c55e;margin-left:8px;box-shadow:0 0 12px #22c55e}h2{font-size:15px;margin:0 0 9px}.actions{display:flex;gap:8px}.btn{border:1px solid #334155;background:#101827;color:var(--text);padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:900}.btn:hover{border-color:var(--accent)}.btn.primary{background:linear-gradient(135deg,#16b8e2,#21c76e);border:0;color:#061018}.btn.wide{width:100%}.panel,.alert{background:rgba(18,26,36,.94);border:1px solid rgba(148,163,184,.16);border-radius:14px;box-shadow:0 16px 38px rgba(0,0,0,.22)}.alert{padding:10px 12px;margin-bottom:10px}.alert.error{border-color:rgba(255,124,138,.55);color:#ffd2d8}.main-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:12px;align-items:start}.graph-panel{padding:14px;min-height:calc(100vh - 194px)}.graph-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.graph-head span{color:var(--muted);font-size:12px}.modes{display:flex;gap:4px;padding:4px;background:rgba(2,6,23,.42);border:1px solid rgba(148,163,184,.12);border-radius:12px}.mode{border:0;background:transparent;color:var(--muted);border-radius:9px;padding:8px 13px;font-weight:900;cursor:pointer}.mode.active{background:#1e293b;color:var(--text)}#graphSvg{width:100%;height:calc(100vh - 250px);min-height:600px;background:radial-gradient(circle at 50% 52%,rgba(30,64,175,.16),rgba(2,6,23,.28) 42%,rgba(2,6,23,.45));border-radius:14px;border:1px solid rgba(148,163,184,.12)}.side{display:flex;flex-direction:column;gap:10px}.side .panel{padding:12px}.scan-status{margin-top:9px;color:var(--good);font-size:12px}.hidden{display:none}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.metrics div,.updated{background:rgba(15,23,42,.5);border:1px solid rgba(148,163,184,.1);border-radius:10px;padding:8px}.metrics span{display:block;color:var(--muted);font-size:11px}.metrics b{display:block;font-size:21px;line-height:1.1;margin-top:2px}.list,.routes{display:flex;flex-direction:column;gap:6px}.row,.route,.info-row{padding:7px 9px;border:1px solid rgba(148,163,184,.12);border-radius:9px;background:rgba(15,23,42,.53)}.row,.info-row{display:flex;justify-content:space-between;gap:10px}.row b,.route b,.info-row b{color:var(--good);text-align:right}.info-row span{color:var(--muted)}.route{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.route .sub{display:block;color:var(--muted);font-size:12px;margin-top:2px}.route .money{color:var(--good);font-weight:900;text-align:right}.muted{color:var(--muted)}.bottom-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr 1.05fr;gap:12px;margin-top:12px}.panel.compact{padding:13px;min-height:104px}.edge{stroke:#53677f;stroke-opacity:.62;cursor:pointer}.edge.core{stroke:#38bdf8}.edge.hot{stroke:#64ff9f;stroke-opacity:.96}.edge:hover{stroke:#7cffb2;stroke-opacity:1}.node{cursor:pointer}.node circle{stroke:#07101a;stroke-width:3}.node.eco circle{fill:var(--eco);filter:drop-shadow(0 0 12px rgba(56,189,248,.35))}.node.stable circle{fill:var(--stable);filter:drop-shadow(0 0 10px rgba(74,222,128,.27))}.node.bridge circle{fill:var(--bridge)}.node.external circle{fill:var(--external)}.node text{fill:#f8fafc;font-weight:950;font-size:12px;text-anchor:middle;paint-order:stroke;stroke:#07101a;stroke-width:4px}.legend text{fill:var(--muted);font-size:12px}.legend circle{stroke:#08111b;stroke-width:2}.edge-legend text{fill:var(--muted);font-size:12px}.empty-text{fill:#8fa0b8;text-anchor:middle}.route-dot{fill:#7cffb2;filter:drop-shadow(0 0 8px #7cffb2)}.side-note{color:var(--muted);font-size:12px;margin:8px 0 5px}.asset-title{display:flex;align-items:center;gap:10px;margin-bottom:9px}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:rgba(56,189,248,.18);color:#7dd3fc;font-size:11px;font-weight:900}.mini-table{width:100%;border-collapse:collapse;margin-top:6px;font-size:12px}.mini-table th,.mini-table td{border-bottom:1px solid rgba(148,163,184,.12);padding:6px 5px;text-align:left}.mini-table th{color:var(--muted);font-weight:700}.mini-table td:last-child,.mini-table th:last-child{text-align:right;color:var(--good)}@media (min-width:1540px){.main-grid{grid-template-columns:minmax(0,1fr) 340px}}@media (max-width:1120px){.topbar{grid-template-columns:1fr}.head-status{display:none}.main-grid{grid-template-columns:1fr}.side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.graph-panel{min-height:auto}.bottom-grid{grid-template-columns:1fr 1fr}}@media (max-width:720px){.radar-wrap{padding:12px}.topbar{display:block}.actions{margin-top:10px;flex-wrap:wrap}.brand h1{font-size:30px}.graph-head{display:block}.modes{margin-top:8px;display:inline-flex}#graphSvg{height:560px;min-height:560px}.side{display:flex}.bottom-grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(3,1fr)}}
.health-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.health-head b{font-size:34px;line-height:1;color:var(--good)}.health-head span{color:var(--muted);font-weight:900}.bar{height:9px;background:rgba(148,163,184,.16);border-radius:999px;overflow:hidden;margin:10px 0}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--warn),var(--good));border-radius:999px}.health-details{display:grid;gap:5px;font-size:12px}.health-details b{color:var(--text)}.route-form{display:grid;grid-template-columns:1fr 1fr auto;gap:6px}.route-form input{min-width:0;border:1px solid rgba(148,163,184,.2);background:rgba(2,6,23,.45);color:var(--text);border-radius:9px;padding:9px 8px;font-weight:800}.smart-route{margin-top:8px}.path{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:8px}.path span{background:rgba(67,213,255,.13);border:1px solid rgba(67,213,255,.28);border-radius:999px;padding:5px 9px;font-weight:900}.path i{color:var(--accent);font-style:normal}.score-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:8px 9px;border:1px solid rgba(148,163,184,.12);border-radius:10px;background:rgba(15,23,42,.53)}.score-row b{display:block}.score-row span{display:block;color:var(--muted);font-size:12px;margin-top:2px}.score-row strong{font-size:22px;color:var(--good)}.heat{display:block;height:6px;border-radius:999px;background:rgba(148,163,184,.14);margin-top:7px;overflow:hidden}.heat i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1d4ed8,#38bdf8,#64ff9f)}.bridge-heat i{background:linear-gradient(90deg,#7c3aed,#8b9df6,#43d5ff)}.warn-line{color:var(--warn);font-size:12px;padding:5px 0}.chips{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.chips span{border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.6);border-radius:999px;padding:4px 8px;color:var(--muted);font-weight:800;font-size:12px}@media(max-width:1200px){.bottom-grid{grid-template-columns:1fr 1fr}.route-form{grid-template-columns:1fr 1fr}.route-form button{grid-column:1/-1}}@media(max-width:760px){.bottom-grid{grid-template-columns:1fr}.route-form{grid-template-columns:1fr}.health-head b{font-size:28px}}

/* MIXT Radar premium graph UI patch 3.6.0 — no DB changes */
body{background:radial-gradient(circle at 18% -8%,rgba(27,55,92,.7) 0,rgba(9,18,31,.88) 34%,#03070d 100%)}
.radar-wrap{max-width:1540px;padding:18px 28px 24px}.brand h1{font-size:38px;letter-spacing:-.035em}.panel,.alert{background:linear-gradient(180deg,rgba(13,24,39,.86),rgba(8,15,26,.92));border-color:rgba(118,164,215,.18);box-shadow:0 22px 70px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.035)}.graph-panel{padding:18px;min-height:calc(100vh - 150px)}#graphSvg{height:calc(100vh - 214px);min-height:650px;border-color:rgba(107,168,255,.18);background:radial-gradient(circle at 48% 43%,rgba(42,119,214,.19),rgba(8,17,31,.38) 30%,rgba(2,7,15,.68) 62%,rgba(1,4,10,.88) 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),inset 0 0 86px rgba(11,105,255,.08)}#graphSvg:focus{outline:none}.graph-head{margin-bottom:12px}.graph-head h2{font-size:18px}.modes{background:rgba(8,18,34,.68);backdrop-filter:blur(10px)}.mode.active{background:linear-gradient(180deg,rgba(83,118,169,.75),rgba(34,50,78,.95));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 8px 22px rgba(0,0,0,.28)}
.edge{stroke:#38506b;stroke-opacity:.30;stroke-linecap:round;cursor:pointer;filter:drop-shadow(0 0 2px rgba(79,166,255,.16))}.edge.core{stroke:url(#edgeCoreLine);stroke-opacity:.58}.edge.hot{stroke:url(#edgeHotLine);stroke-opacity:.72;filter:drop-shadow(0 0 4px rgba(100,255,190,.22))}.edge:hover{stroke:#b8fbff;stroke-opacity:.95;filter:drop-shadow(0 0 8px rgba(112,230,255,.65))}.node3d{cursor:pointer}.node3d .node-glow{opacity:.26;filter:url(#softGlow);stroke:none}.node3d.eco .node-glow{fill:#1f9dff}.node3d.stable .node-glow{fill:#3cffae}.node3d.bridge .node-glow{fill:#ffd44d}.node3d.external .node-glow{fill:#9a82ff}.node3d .node-sphere{stroke:rgba(232,246,255,.35);stroke-width:1.15;filter:url(#sphereShadow)}.node3d.hero .node-sphere{stroke:rgba(210,238,255,.58);stroke-width:1.6}.node3d .node-shine{fill:rgba(255,255,255,.45);stroke:none;filter:blur(.2px);pointer-events:none}.node3d text{fill:#f8fbff;font-weight:950;font-size:12px;letter-spacing:-.02em;text-anchor:middle;paint-order:stroke;stroke:#020712;stroke-width:5px;stroke-linejoin:round}.node3d.hero text{font-size:19px;letter-spacing:.01em}.legend text,.edge-legend text{fill:#a9bdd6}.legend .node-sphere,.legend circle{filter:none}.route-dot{fill:#c9fff0;filter:drop-shadow(0 0 10px #62ffd0)}.empty-text{fill:#9fb5ce}.metrics div,.updated,.row,.route,.info-row,.score-row{background:linear-gradient(180deg,rgba(11,22,39,.78),rgba(7,14,26,.82));border-color:rgba(119,165,214,.14)}.btn.primary{background:linear-gradient(135deg,#28d7ff,#27e184);box-shadow:0 12px 28px rgba(21,208,192,.18)}
@media (max-width:1120px){.radar-wrap{padding:14px}.graph-panel{min-height:auto}#graphSvg{height:640px;min-height:640px}}

/* v3.7.0 layout: graph first, service/status block below */
.main-grid.single-stage{display:block;width:100%;}
.main-grid.single-stage .graph-panel{min-height:auto;padding:18px;}
.main-grid.single-stage #graphSvg{height:min(74vh,820px);min-height:660px;view-transition-name:radar-graph;}
.control-panel{margin-top:12px;padding:16px;display:grid;grid-template-columns:minmax(260px,.72fr) minmax(520px,1.28fr);gap:18px;align-items:stretch;background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(8,15,26,.96));}
.control-main{display:flex;flex-direction:column;gap:10px;justify-content:center;border-right:1px solid rgba(148,163,184,.13);padding-right:18px;}
.control-main .btn{width:100%;max-width:360px;}
.control-ready{color:var(--muted);font-size:13px;line-height:1.45;}
.control-ready span{color:var(--text);font-weight:900;}
.control-ready b{color:var(--good);}
.control-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px;}
.control-metrics div{background:radial-gradient(circle at 25% 0,rgba(67,213,255,.1),rgba(15,23,42,.55) 55%);border:1px solid rgba(148,163,184,.12);border-radius:12px;padding:10px 11px;min-height:70px;}
.control-metrics span{display:block;color:var(--muted);font-size:11px;margin-bottom:6px;}
.control-metrics b{display:block;font-size:24px;line-height:1;color:var(--text);}
.insight-grid{display:grid;grid-template-columns:1fr 1.1fr 1.2fr 1.1fr;gap:12px;margin-top:12px;align-items:stretch;}
.insight-grid .panel{padding:14px;min-height:132px;}
.bottom-grid{grid-template-columns:1.15fr 1fr 1fr 1fr 1fr;}
.topbar{margin-bottom:14px;}
.scan-status{margin-top:0;}
@media (max-width:1280px){.control-panel{grid-template-columns:1fr}.control-main{border-right:0;border-bottom:1px solid rgba(148,163,184,.13);padding-right:0;padding-bottom:14px}.control-metrics{grid-template-columns:repeat(3,1fr)}.insight-grid{grid-template-columns:1fr 1fr}.bottom-grid{grid-template-columns:1fr 1fr}.main-grid.single-stage #graphSvg{height:700px;min-height:620px}}
@media (max-width:760px){.main-grid.single-stage .graph-panel{padding:12px}.main-grid.single-stage #graphSvg{height:560px;min-height:560px}.control-panel{padding:12px}.control-metrics{grid-template-columns:repeat(2,1fr)}.insight-grid,.bottom-grid{grid-template-columns:1fr}.control-main .btn{max-width:none}}


/* MIXT Radar 3.8.0: data-safe map cleanup */
#graphSvg{
  background:#030813 !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025), inset 0 0 46px rgba(4,18,36,.55) !important;
}
.star-field{pointer-events:none;opacity:.82}
.star{fill:#d8efff;opacity:.28;filter:drop-shadow(0 0 3px rgba(117,214,255,.55));animation:radarStarTwinkle 3.6s ease-in-out infinite;}
@keyframes radarStarTwinkle{0%,100%{opacity:.16;transform:scale(.72)}45%{opacity:.78;transform:scale(1.18)}70%{opacity:.34;transform:scale(.9)}}
.edge{stroke-opacity:.24;}
.edge.core{stroke-opacity:.46;}
.edge.hot{stroke-opacity:.62;}

/* MIXT Radar 3.9.0 — top toolbar + right sidebar layout, no DB changes */
.top-control-panel{
  display:grid;
  grid-template-columns:minmax(260px,.95fr) minmax(560px,1.55fr);
  gap:14px;
  align-items:stretch;
  padding:13px;
  margin:0 0 12px;
}
.top-control-panel .control-main{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}
.top-control-panel .control-ready{
  color:var(--muted);
  font-size:13px;
  line-height:1.35;
}
.top-control-panel .control-ready b{color:var(--good)}
.top-control-panel .scan-status{
  margin:0;
  max-width:360px;
  line-height:1.35;
}
.control-metrics{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}
.control-metrics div{
  min-width:0;
  padding:9px 10px;
  border-radius:12px;
  background:rgba(15,23,42,.56);
  border:1px solid rgba(148,163,184,.12);
}
.control-metrics span{
  display:block;
  color:var(--muted);
  font-size:11px;
  white-space:nowrap;
}
.control-metrics b{
  display:block;
  margin-top:2px;
  font-size:22px;
  line-height:1.05;
  color:var(--text);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.graph-with-sidebar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 338px;
  gap:12px;
  align-items:stretch;
}
.graph-with-sidebar .graph-panel{
  min-height:calc(100vh - 226px);
}
.graph-with-sidebar #graphSvg{
  height:calc(100vh - 310px);
  min-height:620px;
}
.right-sidebar{
  display:flex;
  flex-direction:column;
  gap:12px;
  min-height:calc(100vh - 226px);
}
.right-sidebar .panel{
  padding:13px;
}
.right-sidebar .route-panel,
.right-sidebar .top-bridges-panel{
  flex:0 0 auto;
}
.right-sidebar .selected-panel{
  flex:1 1 auto;
  min-height:260px;
}
.below-map-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:12px;
}
.below-map-grid .health-panel{
  padding:13px;
}
.bottom-grid{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
.route-form{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
}
.route-form input{
  width:100%;
  min-width:0;
  border:1px solid rgba(148,163,184,.17);
  background:rgba(2,6,23,.46);
  color:var(--text);
  border-radius:10px;
  padding:9px 10px;
  outline:none;
}
.route-form input:focus{border-color:rgba(67,213,255,.55)}
.smart-route{margin-top:9px}
@media (min-width:1680px){
  .graph-with-sidebar{grid-template-columns:minmax(0,1fr) 360px}
  .graph-with-sidebar #graphSvg{min-height:680px}
}
@media (max-width:1280px){
  .top-control-panel{grid-template-columns:1fr}
  .control-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
  .graph-with-sidebar{grid-template-columns:minmax(0,1fr) 310px}
  .bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:980px){
  .graph-with-sidebar{grid-template-columns:1fr}
  .graph-with-sidebar .graph-panel,.right-sidebar{min-height:0}
  .graph-with-sidebar #graphSvg{height:640px;min-height:640px}
  .right-sidebar{display:grid;grid-template-columns:1fr;gap:10px}
  .right-sidebar .selected-panel{min-height:0}
}
@media (max-width:720px){
  .top-control-panel .control-main{display:block}
  .top-control-panel .control-ready,.top-control-panel .scan-status{margin-top:8px}
  .control-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bottom-grid{grid-template-columns:1fr}
}

/* MIXT Radar 4.0.0 — graph width, metallic spheres, clickable LP lines, sidebar Top LP; no DB changes */
.graph-panel{overflow:hidden;}
.graph-with-sidebar .graph-panel{padding:14px;}
.graph-with-sidebar #graphSvg{
  width:100%;
  aspect-ratio:1180/720;
  height:auto;
  min-height:min(720px,calc(100vh - 306px));
  max-height:820px;
  display:block;
}
.edge-hit{
  stroke:transparent;
  stroke-width:15px;
  stroke-linecap:round;
  pointer-events:stroke;
  cursor:pointer;
}
.edge-wrap{cursor:pointer;}
.edge-wrap:hover .edge{
  stroke:#d5fbff !important;
  stroke-opacity:.96 !important;
  filter:drop-shadow(0 0 9px rgba(125,231,255,.78));
}
.edge-wrap:hover .edge-info-dot{
  opacity:1;
  r:4.6px;
}
.edge-info-dot{
  fill:#d9fbff;
  stroke:#05101d;
  stroke-width:1.1;
  opacity:.66;
  filter:drop-shadow(0 0 6px rgba(90,221,255,.72));
  pointer-events:none;
}
.edge{stroke-opacity:.28;}
.edge.core{stroke-opacity:.50;}
.edge.hot{stroke-opacity:.60;}
.node3d .node-sphere{
  stroke:rgba(255,255,255,.28);
  stroke-width:1.15;
  filter:url(#sphereShadow);
}
.node3d .node-rim{
  fill:none;
  stroke:url(#sphereRim);
  stroke-width:1.25;
  opacity:.72;
  pointer-events:none;
}
.node3d.hero .node-rim{stroke-width:1.8;opacity:.9;}
.node3d .node-shine{
  fill:rgba(255,255,255,.52);
  opacity:.82;
  stroke:none;
  filter:blur(.25px);
  pointer-events:none;
  transform-box:fill-box;
  transform-origin:center;
  transform:rotate(-18deg);
}
.node3d .node-glint{
  fill:rgba(255,255,255,.78);
  opacity:.75;
  stroke:none;
  filter:drop-shadow(0 0 4px rgba(255,255,255,.55));
  pointer-events:none;
  transform-box:fill-box;
  transform-origin:center;
  transform:rotate(-20deg);
}
.node3d:hover .node-sphere{filter:url(#sphereShadow) drop-shadow(0 0 9px rgba(170,239,255,.56));}
.node3d:hover .node-rim{opacity:1;}
.graph-head span::before{
  content:'ⓘ ';
  color:#7dd3fc;
}
.top-lp-panel{flex:0 0 auto;}
.top-lp-list{gap:6px;}
.top-lp-list .lp-route{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  min-height:auto;
}
.lp-main{
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  column-gap:7px;
  row-gap:1px;
  align-items:center;
  min-width:0;
}
.lp-rank{
  grid-row:1/3;
  width:22px;height:22px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:7px;
  background:rgba(59,130,246,.14);
  color:#cfe8ff;
  font-weight:900;
  font-size:12px;
}
.lp-pair{
  color:#eef7ff;
  font-weight:900;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.lp-sub{
  color:var(--muted);
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.top-lp-list .money{
  max-width:112px;
  white-space:normal;
  line-height:1.2;
  font-size:12px;
}
.bottom-grid{grid-template-columns:1.15fr 1fr 1fr 1fr;}
@media (min-width:1680px){
  .graph-with-sidebar{grid-template-columns:minmax(0,1fr) 380px;}
  .graph-with-sidebar #graphSvg{max-height:880px;}
}
@media (max-width:1280px){.bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:980px){.graph-with-sidebar #graphSvg{height:auto;min-height:560px;}.top-lp-list .money{max-width:none;}}

/* MIXT Radar 4.1.0 — sidebar order + static twinkle stars, no DB changes */
.right-sidebar{
  align-self:start;
  min-height:0 !important;
}
.right-sidebar .route-panel,
.right-sidebar .selected-panel,
.right-sidebar .top-lp-panel{
  flex:0 0 auto !important;
}
.right-sidebar .selected-panel{
  min-height:0 !important;
  max-height:none;
}
.right-sidebar .top-bridges-panel{display:none !important;}
.bottom-grid{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  align-items:start;
}
.bottom-grid .panel.compact{
  height:auto;
  min-height:104px;
}
.star{
  transform:none !important;
  transform-box:fill-box;
  transform-origin:center;
  animation-name:radarStarTwinkleStatic !important;
}
@keyframes radarStarTwinkleStatic{
  0%,100%{opacity:.16;filter:drop-shadow(0 0 2px rgba(117,214,255,.28));}
  45%{opacity:.82;filter:drop-shadow(0 0 5px rgba(117,214,255,.72));}
  70%{opacity:.34;filter:drop-shadow(0 0 3px rgba(117,214,255,.42));}
}
@media (max-width:1280px){.bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}}
@media (max-width:760px){.bottom-grid{grid-template-columns:1fr !important;}}

/* MIXT Radar 4.2.0 — premium graph layout, full-height sidebar, permanent LP markers; no DB changes */
.graph-with-sidebar{
  grid-template-columns:minmax(0,1fr) 360px;
  gap:12px;
  align-items:stretch;
  min-height:calc(100vh - 190px);
}
.graph-with-sidebar .graph-panel{
  display:flex;
  flex-direction:column;
  min-height:calc(100vh - 190px);
  padding:12px;
}
.graph-with-sidebar .graph-head{flex:0 0 auto;}
.graph-with-sidebar #graphSvg{
  flex:1 1 auto;
  aspect-ratio:auto;
  height:auto;
  min-height:700px;
  max-height:none;
}
.right-sidebar{
  position:sticky;
  top:12px;
  align-self:stretch !important;
  height:calc(100vh - 24px);
  min-height:700px !important;
  max-height:calc(100vh - 24px);
  display:flex !important;
  flex-direction:column;
  gap:10px;
  overflow:hidden;
}
.right-sidebar .route-panel,
.right-sidebar .selected-panel{
  flex:0 0 auto !important;
}
.right-sidebar .selected-panel{
  max-height:46vh;
  overflow:auto;
}
.right-sidebar .top-lp-panel{
  flex:1 1 auto !important;
  min-height:190px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.right-sidebar .top-lp-panel h2{flex:0 0 auto;}
.top-lp-list{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding-right:2px;
}
.edge-info-dot{
  opacity:.86;
  fill:#c9fbff;
  stroke:#02101d;
  stroke-width:1.15;
  animation:radarLpMarkerPulse 2.4s ease-in-out infinite;
}
.edge-wrap:hover .edge-info-dot,
.edge-wrap.selected .edge-info-dot{
  opacity:1;
  filter:drop-shadow(0 0 8px rgba(146,242,255,.92));
}
.edge-wrap.dimmed{opacity:.18;}
.node3d.dimmed{opacity:.32;}
.edge-wrap.selected .edge{
  stroke:#d9ffff !important;
  stroke-opacity:1 !important;
  filter:drop-shadow(0 0 11px rgba(113,237,255,.82));
}
.node3d.selected .node-sphere{
  filter:url(#sphereShadow) drop-shadow(0 0 13px rgba(166,239,255,.76));
}
.node3d.selected .node-rim{opacity:1;stroke-width:2;}
@keyframes radarLpMarkerPulse{
  0%,100%{opacity:.62;filter:drop-shadow(0 0 3px rgba(90,221,255,.42));}
  45%{opacity:1;filter:drop-shadow(0 0 8px rgba(148,242,255,.95));}
  70%{opacity:.82;filter:drop-shadow(0 0 5px rgba(90,221,255,.66));}
}
.node3d .node-sphere{
  stroke:rgba(255,255,255,.34);
  stroke-width:1.25;
}
.node3d .node-rim{
  stroke-width:1.4;
  opacity:.82;
}
.node3d .node-shine{opacity:.88;}
.node3d .node-glint{opacity:.86;}
@media (min-width:1680px){
  .graph-with-sidebar{grid-template-columns:minmax(0,1fr) 385px;}
  .graph-with-sidebar #graphSvg{min-height:760px;}
}
@media (max-width:1180px){
  .graph-with-sidebar{grid-template-columns:1fr;min-height:auto;}
  .graph-with-sidebar .graph-panel{min-height:auto;}
  .graph-with-sidebar #graphSvg{height:auto;min-height:620px;}
  .right-sidebar{position:static;height:auto;max-height:none;min-height:0 !important;overflow:visible;}
  .right-sidebar .selected-panel{max-height:none;}
  .right-sidebar .top-lp-panel{min-height:0;}
  .top-lp-list{overflow:visible;}
}

/* MIXT Radar 4.3.0 — fixed two-column Bootstrap-like layout: main field + full-height right sidebar, no DB changes */
.radar-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) 360px;
  gap:12px;
  align-items:start;
}
.radar-main-col{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}
.radar-main-col .top-control-panel{
  margin:0;
  width:100%;
}
.radar-main-col .graph-panel{
  width:100%;
  min-height:0 !important;
  padding:12px;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.radar-main-col .graph-panel #graphSvg{
  width:100%;
  height:clamp(660px, calc(100vh - 290px), 860px) !important;
  min-height:660px !important;
  max-height:860px !important;
  aspect-ratio:auto !important;
  display:block;
}
.radar-main-col .below-map-grid,
.radar-main-col .bottom-grid{
  width:100%;
  margin-top:0;
}
.radar-main-col .bottom-grid{
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  align-items:start;
}
.right-sidebar{
  position:sticky !important;
  top:12px !important;
  height:calc(100vh - 24px) !important;
  max-height:calc(100vh - 24px) !important;
  min-height:680px !important;
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  overflow:hidden !important;
  align-self:start !important;
}
.right-sidebar .route-panel{
  flex:0 0 auto !important;
}
.right-sidebar .selected-panel{
  flex:0 1 auto !important;
  min-height:190px !important;
  max-height:44vh !important;
  overflow:auto !important;
}
.right-sidebar .top-lp-panel{
  flex:1 1 0 !important;
  min-height:220px !important;
  display:flex !important;
  flex-direction:column !important;
  overflow:hidden !important;
}
.right-sidebar .top-lp-panel h2{
  flex:0 0 auto;
}
.right-sidebar .top-lp-list{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:auto !important;
  padding-right:3px;
}
.top-lp-list .lp-route{
  grid-template-columns:minmax(0,1fr) minmax(94px,auto) !important;
  padding:8px 9px !important;
  gap:8px !important;
}
.top-lp-list .money{
  max-width:122px !important;
  white-space:normal !important;
  line-height:1.15 !important;
  font-size:12px !important;
}
.route-form{
  grid-template-columns:1fr 1fr auto !important;
  gap:7px !important;
}
.route-form .btn{padding-left:12px;padding-right:12px;}
/* old layout containers must not affect the new shell */
.graph-with-sidebar{display:contents !important;}
.main-grid.graph-with-sidebar{display:contents !important;}
@media (min-width:1680px){
  .radar-shell{grid-template-columns:minmax(0,1fr) 385px;}
  .radar-main-col .graph-panel #graphSvg{height:clamp(720px, calc(100vh - 290px), 920px) !important;max-height:920px !important;}
}
@media (max-width:1320px){
  .radar-shell{grid-template-columns:minmax(0,1fr) 330px;}
  .route-form{grid-template-columns:1fr !important;}
  .radar-main-col .bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:980px){
  .radar-shell{grid-template-columns:1fr;}
  .right-sidebar{position:static !important;height:auto !important;max-height:none !important;min-height:0 !important;overflow:visible !important;}
  .right-sidebar .selected-panel,.right-sidebar .top-lp-panel{max-height:none !important;overflow:visible !important;}
  .right-sidebar .top-lp-list{overflow:visible !important;}
  .radar-main-col .graph-panel #graphSvg{height:640px !important;min-height:640px !important;}
}
@media (max-width:720px){
  .radar-main-col .bottom-grid{grid-template-columns:1fr !important;}
}

/* MIXT Radar 4.4.0 — right sidebar without local scrollbars; all sidebar data visible, no DB changes */
.right-sidebar{
  min-height:calc(100vh - 24px) !important;
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:stretch !important;
}
.right-sidebar .panel,
.right-sidebar .route-panel,
.right-sidebar .selected-panel,
.right-sidebar .top-lp-panel,
.right-sidebar .top-lp-list{
  max-height:none !important;
  overflow:visible !important;
}
.right-sidebar .selected-panel,
.right-sidebar .top-lp-panel{
  flex:0 0 auto !important;
}
.right-sidebar .top-lp-list{
  min-height:auto !important;
  padding-right:0 !important;
}
.right-sidebar .top-lp-panel{
  display:block !important;
  min-height:0 !important;
}

/* 4.5.0 live route/swap events block */
.live-status{
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  border:1px solid rgba(67,213,255,.16);
  background:rgba(6,18,32,.68);
  border-radius:10px;
  color:#b9d6ef;
  font-size:12px;
  font-weight:800;
}
.live-status i{
  width:8px;
  height:8px;
  border-radius:999px;
  background:#64ff9f;
  box-shadow:0 0 10px rgba(100,255,159,.85);
  animation:livePulse 1.6s ease-in-out infinite;
  flex:0 0 auto;
}
.live-status.muted i{background:#718096;box-shadow:none;animation:none;}
.live-route{
  position:relative;
  border-color:rgba(67,213,255,.17);
  background:linear-gradient(180deg,rgba(8,22,40,.86),rgba(5,12,24,.92));
}
.live-route.fresh{
  animation:liveFresh 1.65s ease-out 1;
}
.live-route b{
  color:#64ff9f;
  text-transform:uppercase;
  font-size:11px;
  letter-spacing:.08em;
}
.live-path{
  display:flex;
  align-items:center;
  gap:6px;
  font-weight:950;
  color:#eef7ff;
}
.live-path span{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:2px 8px;
  border-radius:999px;
  background:rgba(56,189,248,.13);
  border:1px solid rgba(56,189,248,.23);
}
.live-path i{
  color:#64ff9f;
  font-style:normal;
  text-shadow:0 0 8px rgba(100,255,159,.45);
}
@keyframes livePulse{0%,100%{opacity:.45;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
@keyframes liveFresh{0%{box-shadow:0 0 0 rgba(100,255,159,0);border-color:rgba(100,255,159,.75)}45%{box-shadow:0 0 22px rgba(100,255,159,.28)}100%{box-shadow:0 0 0 rgba(100,255,159,0)}}

/* MIXT Radar 4.6.0 — move Ecosystem Health and Graph Diagnostics into right sidebar; keep existing sidebar order */
.right-sidebar .sidebar-health-panel,
.right-sidebar .sidebar-diag-panel{
  flex:0 0 auto !important;
  padding:13px !important;
}
.right-sidebar .sidebar-health-panel .health-head b{
  font-size:30px;
}
.right-sidebar .sidebar-health-panel .health-details{
  font-size:12px;
}
.right-sidebar .sidebar-diag-panel .routes{
  gap:6px;
}
.radar-main-col .bottom-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
@media (max-width:1320px){
  .radar-main-col .bottom-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media (max-width:720px){
  .radar-main-col .bottom-grid{grid-template-columns:1fr !important;}
}
