:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#eaf0fb;background:#060912;font-synthesis:none;text-rendering:optimizeLegibility;--panel: rgba(14, 20, 35, .88);--panel-2: rgba(9, 15, 28, .92);--line: rgba(139, 161, 202, .14);--text-2: #91a0b8;--text-3: #65758f;--blue: #6f9cff;--green: #4ed9aa;--amber: #f4bd61;--red: #ff7f91}*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;min-width:320px;min-height:100vh;background:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),radial-gradient(circle at 12% 5%,rgba(54,112,255,.18),transparent 30%),radial-gradient(circle at 88% 10%,rgba(0,220,168,.1),transparent 28%),radial-gradient(circle at 50% 100%,rgba(91,62,255,.09),transparent 34%),#060912;background-size:42px 42px,42px 42px,auto,auto,auto,auto}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.015),transparent 18%);z-index:-1}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}.app-shell{width:min(1680px,calc(100% - 34px));margin:0 auto;padding:26px 0 64px}.panel{background:linear-gradient(180deg,#11192beb,#0b111eeb);border:1px solid var(--line);border-radius:20px;box-shadow:0 22px 70px #00000040,inset 0 1px #ffffff06;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hero-panel{padding:22px 24px;position:relative;overflow:visible}.hero-panel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(110deg,rgba(76,130,255,.07),transparent 36%,rgba(51,210,161,.04))}.topbar{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:16px}.hero-copy,.top-actions{position:relative;z-index:1}.version-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}h1,h2,p{margin-top:0}h1{margin-bottom:5px;font-size:clamp(27px,3vw,42px);letter-spacing:-.045em;line-height:1.05}h2{margin:0;font-size:19px;letter-spacing:-.015em}.hero-subtitle{margin:0 0 12px;color:#8394af;font-size:13px;letter-spacing:.02em}.eyebrow{margin-bottom:6px;font-size:11px;letter-spacing:.18em;color:#79a5ff;font-weight:850}.research-badge{border:1px solid rgba(95,139,255,.22);background:#3e6fe61a;color:#87adff;padding:4px 8px;border-radius:999px;font-size:9px;letter-spacing:.12em;font-weight:850}.muted{color:var(--text-2)}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}button{border:0;border-radius:11px;padding:10px 14px;color:#eef4ff;background:#192944;transition:.18s ease}button:hover{transform:translateY(-1px);filter:brightness(1.12)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button.primary{width:100%;padding:12px 16px;background:linear-gradient(135deg,#3478ff,#5e59ff);font-weight:850;box-shadow:0 12px 30px #3478ff33}button.ghost{border:1px solid rgba(142,165,206,.18);background:#1622398f}button.danger{color:#ffb0ba}.toggle{display:flex;gap:7px;align-items:center;color:#97a6bd;font-size:13px}.toggle input{accent-color:#5a87ff}.alert{padding:12px 16px;border-radius:12px;margin-bottom:16px}.error{color:#ff9da8}.alert.error{background:#c62b421f;border:1px solid rgba(255,90,110,.2)}.bot-status{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:6px 10px;font-size:12px;border:1px solid transparent}.bot-status.online{color:#84e5bf;background:#2dc08c14;border-color:#49d5a424}.bot-status.offline{color:#ff9ca9;background:#d73e5214;border-color:#ff6e7f24}.bot-status small{opacity:.65}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 13px currentColor}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.stat-card{padding:18px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-42px;top:-48px;opacity:.13;filter:blur(2px)}.stat-blue:after{background:#397dff}.stat-purple:after{background:#765cff}.stat-green:after{background:#34d4a1}.stat-amber:after{background:#f4b953}.stat-card>span{display:inline-block;color:#91a0b8;font-size:11px;text-transform:uppercase;letter-spacing:.09em}.stat-card strong{display:block;font-size:33px;margin:7px 0 2px;letter-spacing:-.04em}.stat-card small{color:#687893}.status-panel{padding:18px;margin-bottom:12px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.lag-grid{display:grid;grid-template-columns:repeat(4,minmax(120px,1fr));gap:10px}.lag-item{padding:13px 14px;border-radius:13px;background:#091221;border:1px solid rgba(120,145,190,.1);position:relative;overflow:visible}.lag-item:before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:3px;border-radius:4px;background:#52627e}.lag-item.lag-good:before{background:#42d4a1}.lag-item.lag-warn:before{background:#f1bc5e}.lag-item.lag-bad:before{background:#ff7287}.lag-item span,.lag-item small{display:block;color:#74849e;font-size:11px}.lag-item strong{display:block;margin:4px 0;font-size:21px}.lag-good strong{color:#69dcb4}.lag-warn strong{color:#f0c775}.lag-bad strong{color:#ff8b9c}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.two-col>.panel,section.panel{padding:18px}.opportunity-panel{margin-bottom:12px}.table-wrap{overflow:auto;max-height:440px;border-radius:12px}.table-wrap.wide{max-height:560px}table{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}th{position:sticky;top:0;z-index:4;text-align:left;padding:10px 11px;color:#8294b0;background:#0b1220f7;border-bottom:1px solid rgba(120,145,190,.14);white-space:nowrap;font-weight:750}th:first-child{border-top-left-radius:9px}th:last-child{border-top-right-radius:9px}td{padding:10px 11px;border-bottom:1px solid rgba(120,145,190,.07);white-space:nowrap;transition:background .15s ease}tbody tr:nth-child(2n) td{background:#ffffff02}tr:hover td{background:#436db814}.stock-symbol{color:#d9e5ff;letter-spacing:.01em}.score{display:inline-flex;min-width:44px;justify-content:center;padding:4px 8px;border-radius:20px;background:linear-gradient(135deg,#4780ff2e,#6956ff1f);border:1px solid rgba(91,132,255,.13);color:#92b8ff;font-weight:850}.positive{color:#58d6a3;font-weight:700}.negative{color:#ff8e9b;font-weight:700}.positive-soft{color:#7fd9b9}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#8797b0}.empty{text-align:center;color:#64738d;padding:28px}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:27px;height:23px;padding:0 7px;border-radius:999px;color:#a6bdff;background:#4871e21f;border:1px solid rgba(91,133,241,.12);font-weight:800}.legend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#64758e;font-size:11px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:5px}.dot.realized{background:#47d2a1;box-shadow:0 0 10px #47d2a173}.dot.state{background:#7199ff}.source-badge{display:inline-flex;padding:3px 7px;border-radius:999px;font-size:10px;font-weight:750}.source-realized{background:#39c8941c;color:#74deb9;border:1px solid rgba(72,210,161,.12)}.source-state{background:#537be61c;color:#91afff;border:1px solid rgba(105,143,244,.12)}.fee-extreme{color:#ff9c72}.risk-badge{display:inline-flex;margin-left:6px;padding:2px 5px;border-radius:5px;font-size:9px;color:#ffc0a5;background:#ff6f4a1c;border:1px solid rgba(255,125,83,.18)}.pair-cell{display:flex;flex-direction:column;gap:5px;min-width:190px}.pool-actions{display:flex;align-items:center;gap:6px}.pool-link,.pool-chip{display:inline-flex;align-items:center;gap:4px;text-decoration:none;border-radius:7px;border:1px solid rgba(96,139,241,.15);background:#4069d214;color:#8fb2ff;transition:.16s ease}.pool-link{padding:4px 7px;font-size:10px;font-weight:750}.pool-link.compact{padding:3px 6px}.pool-link:hover,.pool-chip:hover{background:#4777eb29;border-color:#6f97ff47;color:#b4cbff;transform:translateY(-1px)}.pool-copy{padding:3px 6px;border-radius:7px;border:1px solid rgba(137,158,198,.11);background:#ffffff06;color:#7889a4;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9px}.pool-copy:hover{color:#b3c1d8;background:#ffffff0d}.pool-chip-row{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.pool-chip{padding:3px 6px;font-size:10px}.term{position:relative;cursor:help;border-bottom:1px dashed rgba(144,168,214,.35)}.term:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%) translateY(4px);width:max-content;max-width:310px;white-space:normal;padding:8px 10px;border-radius:9px;color:#dce7fa;background:#10192a;border:1px solid rgba(126,153,204,.22);box-shadow:0 12px 36px #00000059;font-size:11px;line-height:1.45;letter-spacing:0;text-transform:none;font-weight:500;opacity:0;visibility:hidden;pointer-events:none;transition:.14s ease;z-index:50}.term:before{content:"";position:absolute;left:50%;bottom:calc(100% + 4px);transform:translate(-50%);border:5px solid transparent;border-top-color:#10192a;opacity:0;visibility:hidden;z-index:51}.term:hover:after,.term:hover:before{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.login-wrap{min-height:calc(100vh - 88px);display:grid;place-items:center}.login-card{width:min(450px,100%);padding:34px}.brand-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#3c80ff,#17c69b);color:#fff;font-size:27px;font-weight:900;margin-bottom:20px;box-shadow:0 15px 36px #3478ff38}.login-form{display:grid;gap:14px;margin-top:22px}.login-form label span{display:block;margin-bottom:6px;color:#93a2ba;font-size:12px}.login-form input{width:100%;border-radius:11px;border:1px solid rgba(130,155,200,.18);background:#09111f;color:#eef4ff;padding:12px 13px;outline:none}.login-form input:focus{border-color:#4f83ff;box-shadow:0 0 0 3px #4f83ff1f}.api-hint{margin-top:18px;padding-top:14px;border-top:1px solid rgba(120,145,190,.1);color:#5f6f88;font-size:11px;word-break:break-all}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#07101e}::-webkit-scrollbar-thumb{background:#263753;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#344b72}@media (max-width: 1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.lag-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 700px){.app-shell{width:min(100% - 18px,1680px);padding-top:12px}.hero-panel{padding:18px}.stats-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{padding:14px}.stat-card strong{font-size:27px}.lag-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.legend{display:none}.login-card{padding:22px}.term:after{left:0;transform:none;max-width:260px}.term:hover:after{transform:none}}.term:before,.term:after{display:none!important}.global-term-tooltip{position:fixed;z-index:2147483647;width:max-content;max-width:min(360px,calc(100vw - 20px));padding:9px 11px;border-radius:10px;color:#e7efff;background:#0b1220fa;border:1px solid rgba(126,153,204,.28);box-shadow:0 18px 50px #00000085,inset 0 1px #ffffff06;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:12px;line-height:1.55;letter-spacing:0;text-transform:none;font-weight:500;white-space:normal;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(4px) scale(.985);transform-origin:center bottom;transition:opacity .12s ease,transform .12s ease,visibility .12s ease}.global-term-tooltip.visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.global-term-tooltip:after{content:"";position:absolute;left:var(--tooltip-arrow-x, 50%);width:9px;height:9px;background:#0b1220fa;border:1px solid rgba(126,153,204,.28);transform:translate(-50%) rotate(45deg)}.global-term-tooltip[data-placement=top]:after{bottom:-5px;border-left:0;border-top:0}.global-term-tooltip[data-placement=bottom]:after{top:-5px;border-right:0;border-bottom:0}.term{cursor:help;border-bottom:1px dashed rgba(144,168,214,.42)}.rpc-monitor{position:fixed;right:18px;bottom:18px;z-index:2147483000;width:190px;color:#e9f1ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;filter:drop-shadow(0 18px 40px rgba(0,0,0,.36))}.rpc-monitor.open{width:min(560px,calc(100vw - 28px))}.rpc-monitor-toggle{width:100%;display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid rgba(112,149,223,.2);border-radius:12px;background:#0a111ef5;color:#dfe9fb;font-size:11px;font-weight:800;box-shadow:inset 0 1px #ffffff06;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.rpc-monitor-toggle:hover{filter:brightness(1.08)}.rpc-monitor-dot{width:8px;height:8px;border-radius:50%;background:#4ed9aa;box-shadow:0 0 12px #4ed9aab3}.rpc-monitor-chevron{margin-left:auto;color:#8091ac}.rpc-monitor-body{margin-top:8px;padding:13px;border:1px solid rgba(112,149,223,.18);border-radius:16px;background:#080e1afa;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:inset 0 1px #ffffff06;max-height:min(78vh,720px);overflow:auto}.rpc-monitor-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}.rpc-monitor-head strong{display:block;font-size:12px}.rpc-monitor-head small{display:block;margin-top:3px;color:#71819c;font-size:10px}.rpc-monitor-error{margin-bottom:8px;color:#ff91a0;font-size:10px}.rpc-role-list{display:grid;gap:6px}.rpc-role-row{display:grid;grid-template-columns:70px minmax(120px,1fr) 64px 118px;gap:7px;align-items:center;padding:7px 8px;border-radius:9px;background:#ffffff06;border:1px solid rgba(123,150,201,.08);font-size:10px}.rpc-role-name{text-transform:uppercase;letter-spacing:.05em;color:#90a1bd;font-weight:800}.rpc-role-provider{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d6e3fa}.rpc-role-latency{text-align:right;color:#93a3bd;font-variant-numeric:tabular-nums}.rpc-role-latency.rpc-good{color:#63ddb0}.rpc-role-latency.rpc-warn{color:#f0c56f}.rpc-role-latency.rpc-bad{color:#ff8999}.rpc-role-count{text-align:right;color:#6f809a;font-variant-numeric:tabular-nums}.rpc-role-warning{grid-column:2 / -1;color:#e8bd70;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rpc-capability-block{margin-top:10px;padding-top:10px;border-top:1px solid rgba(123,150,201,.1)}.rpc-capability-title{margin-bottom:6px;color:#8092ae;font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.rpc-capability-row{display:grid;grid-template-columns:minmax(130px,1fr) 66px 66px 76px;gap:5px;align-items:center;padding:5px 6px;border-radius:7px;font-size:9px}.rpc-capability-row:nth-child(2n){background:#ffffff05}.rpc-capability-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a5b4ca}.cap-yes{color:#65d9ad}.cap-no{color:#ff8e9c}.rpc-monitor-foot{margin-top:9px;color:#5d6d86;font-size:9px;text-align:right}@media (max-width: 640px){.rpc-monitor{right:10px;bottom:10px;width:164px}.rpc-monitor.open{width:calc(100vw - 20px)}.rpc-role-row{grid-template-columns:58px minmax(90px,1fr) 58px}.rpc-role-count{display:none}.rpc-role-warning{grid-column:1 / -1}.rpc-capability-row{grid-template-columns:minmax(100px,1fr) 56px 56px 64px}}.aggregate-shell{width:min(1680px,calc(100% - 34px));margin:-40px auto 64px;padding:18px}.aggregate-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px}.aggregate-head h2{margin:0}.aggregate-error{color:#ff9da8;margin-bottom:10px}.aggregate-table-wrap{overflow:auto;max-height:520px;border-radius:12px}.aggregate-table-wrap table{min-width:1050px}.aggregate-pool-link{color:#91b4ff;text-decoration:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.aggregate-pool-link:hover{color:#c0d3ff;text-decoration:underline}.route-share{display:inline-flex;margin-left:7px;padding:2px 6px;border-radius:999px;background:#49d2a117;color:#78d9b8;border:1px solid rgba(73,210,161,.13);font-size:10px;font-weight:800}@media (max-width: 760px){.aggregate-shell{width:min(100% - 18px,1680px);margin-top:-48px}.aggregate-head{align-items:flex-start;flex-direction:column}}
