:root{color-scheme:dark;--bg:#070a0f;--panel:#0d121a;--panel2:#111925;--line:#202b3a;--line2:#34445a;--text:#f3f6fb;--muted:#8b98aa;--dim:#5d6b80;--green:#58efb0;--green2:rgba(88,239,176,.10);--amber:#ffc765;--amber2:rgba(255,199,101,.10);--red:#ff718a;--blue:#78aaff;--sidebar:220px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font:14px Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}button,input,select{font:inherit}button{color:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:20px 12px;background:#080b10;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:10px;align-items:center;padding:2px 0 26px}.brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(88,239,176,.5);background:var(--green2);color:var(--green);font-weight:900}.brand b{display:block}.brand small{display:block;color:var(--dim);font-size:9px;letter-spacing:.16em;margin-top:3px}.nav-label,.eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--dim)}.nav{display:grid;gap:5px;margin-top:8px}.nav-button{border:1px solid transparent;background:transparent;text-align:left;border-radius:8px;padding:11px;color:var(--muted);cursor:pointer;display:flex;gap:10px;align-items:center}.nav-button:hover{background:rgba(255,255,255,.025);color:var(--text)}.nav-button.active{background:var(--panel2);border-color:var(--line);color:var(--text)}.sidebar-status{margin-top:auto;padding:15px 7px;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center}.sidebar-status b,.sidebar-status small{display:block}.sidebar-status b{font-size:11px}.sidebar-status small{color:var(--dim);font-size:9px;margin-top:3px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 5px var(--green2)}.workspace{grid-column:2;min-width:0}.topbar{height:68px;position:sticky;top:0;z-index:5;border-bottom:1px solid var(--line);background:rgba(7,10,15,.94);backdrop-filter:blur(14px);padding:0 28px;display:flex;justify-content:space-between;align-items:center}.topbar h1{font-size:18px;margin:4px 0 0}.top-actions{display:flex;gap:10px;align-items:center}.last-sync{color:var(--dim);font-size:10px}main{padding:26px 28px 60px;max-width:1700px;margin:auto}.view{display:none}.view.active{display:block}.button,.control,.link-button,.filter-chip,.tab{border:1px solid var(--line2);background:var(--panel2);border-radius:7px;padding:9px 12px;cursor:pointer}.button:hover,.filter-chip:hover,.tab:hover{border-color:#52657f}.button.primary{background:var(--text);color:#080b10;border-color:var(--text);font-weight:750}.button.small{padding:6px 11px}.link-button{background:transparent;border:0;color:var(--green);padding:5px}.control{background:var(--bg);color:var(--text);outline:none;min-height:38px}.control:focus{border-color:#58708e}.grow{flex:1 1 280px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:var(--panel);margin-bottom:14px}.metric{padding:19px;border-right:1px solid var(--line);min-height:105px}.metric:last-child{border-right:0}.metric span{color:var(--dim);font-size:9px;text-transform:uppercase;letter-spacing:.13em}.metric strong{font-size:29px;display:block;margin-top:9px;letter-spacing:-.04em}.metric small{color:var(--muted);display:block;margin-top:6px}.overview-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.span-8{grid-column:span 8}.span-4{grid-column:span 4}.span-12{grid-column:span 12}.panel{border:1px solid var(--line);background:var(--panel);min-width:0}.panel-head{min-height:57px;padding:12px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.panel-head h2{font-size:12px;text-transform:uppercase;letter-spacing:.1em;margin:0}.panel-head p{font-size:10px;color:var(--dim);margin:4px 0 0}.compact-list{min-height:150px}.compact-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:13px 16px;border-bottom:1px solid var(--line);cursor:pointer}.compact-row:last-child{border-bottom:0}.compact-row:hover{background:var(--panel2)}.compact-row b,.compact-row small{display:block}.compact-row b{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-row small{color:var(--dim);font-size:9px;margin-top:4px}.compact-score{font-variant-numeric:tabular-nums;color:var(--green);font-weight:750}.jobs-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.job{padding:15px;border-right:1px solid var(--line)}.job:last-child{border:0}.job b,.job small{display:block}.job b{font-size:11px}.job strong{display:block;font-size:20px;margin-top:14px}.job small{color:var(--dim);font-size:9px;margin-top:4px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}.section-heading h2{font-size:22px;margin:0}.section-heading p{color:var(--muted);margin:6px 0 0}.counter{color:var(--dim);font-size:11px}.toolbar,.quick-filters{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;gap:9px;align-items:center;flex-wrap:wrap}.filter-chip{background:transparent;color:var(--muted);border-radius:999px;font-size:10px;padding:7px 10px}.filter-chip.active{color:var(--green);border-color:rgba(88,239,176,.45);background:var(--green2)}.table-wrap{overflow:auto;min-height:320px;max-height:calc(100vh - 310px)}table{border-collapse:collapse;width:100%;min-width:1050px}th{position:sticky;top:0;background:#0a0e14;z-index:2;color:var(--dim);text-align:left;font-size:8px;text-transform:uppercase;letter-spacing:.13em;padding:11px 13px;border-bottom:1px solid var(--line)}td{padding:11px 13px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr{cursor:pointer}tbody tr:hover{background:var(--panel2)}.wallet-cell b,.wallet-cell small{display:block}.wallet-cell b{font-size:11px}.wallet-cell small{color:var(--dim);font:9px ui-monospace,Consolas,monospace;margin-top:3px}.badge{display:inline-flex;border:1px solid var(--line2);border-radius:999px;padding:4px 7px;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.07em}.badge.good{color:var(--green);border-color:rgba(88,239,176,.4);background:var(--green2)}.badge.watch{color:var(--amber);border-color:rgba(255,199,101,.4);background:var(--amber2)}.badge.bad{color:var(--red)}.score-number{font-weight:750;font-variant-numeric:tabular-nums}.score-number.high{color:var(--green)}.score-number.mid{color:var(--amber)}.muted{color:var(--muted)}.pager{padding:12px 14px;display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:10px}.signal-list{min-height:360px}.signal-card{display:grid;grid-template-columns:110px minmax(0,1fr) 120px;gap:15px;padding:15px;border-bottom:1px solid var(--line)}.signal-card:hover{background:var(--panel2)}.signal-main b,.signal-main small{display:block}.signal-main b{font-size:12px}.signal-main small{color:var(--muted);margin-top:5px}.signal-reason{font-size:10px;color:var(--dim);margin-top:8px;line-height:1.45}.signal-score{text-align:right}.signal-score strong{font-size:22px}.signal-score small{display:block;color:var(--dim);font-size:9px;margin-top:4px}.verdict{font-size:9px;text-transform:uppercase;letter-spacing:.09em;font-weight:750}.verdict.actionable{color:var(--green)}.verdict.watch{color:var(--amber)}.verdict.discarded{color:var(--dim)}.system-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span-2{grid-column:span 2}pre{margin:0;padding:17px;color:var(--muted);white-space:pre-wrap;font-size:11px}.action-stack{padding:16px;display:grid;gap:9px}.run-list,.run-list .compact-row{min-height:0}dialog{width:min(1000px,calc(100vw - 40px));max-height:calc(100vh - 40px);padding:0;border:1px solid var(--line2);background:var(--panel);color:var(--text);border-radius:12px}dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(4px)}.dialog-shell{position:relative;padding:24px;overflow:auto;max-height:calc(100vh - 42px)}.dialog-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:var(--muted);font-size:26px;cursor:pointer}.wallet-header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-right:30px}.wallet-header h2{font-size:25px;margin:6px 0}.wallet-header code{font-size:10px;color:var(--dim)}.wallet-actions{display:flex;gap:8px}.wallet-actions a{text-decoration:none}.verdict-card{margin-top:18px;padding:15px;border:1px solid var(--line);background:var(--bg);line-height:1.5}.verdict-card.good{border-color:rgba(88,239,176,.4);background:var(--green2)}.score-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin-top:12px;border:1px solid var(--line)}.score-box{padding:14px;border-right:1px solid var(--line)}.score-box:last-child{border:0}.score-box span{display:block;color:var(--dim);font-size:8px;text-transform:uppercase;letter-spacing:.1em}.score-box strong{display:block;font-size:21px;margin-top:7px}.tabs{display:flex;gap:6px;margin-top:18px;border-bottom:1px solid var(--line);padding-bottom:8px}.tab{background:transparent;color:var(--muted);border-color:transparent}.tab.active{background:var(--panel2);border-color:var(--line2);color:var(--text)}.tab b{font-size:9px;margin-left:4px}.tab-panel{display:none;padding-top:16px}.tab-panel.active{display:block}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail-grid h3{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.key-values{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line)}.kv{padding:12px;border-bottom:1px solid var(--line)}.kv:nth-child(odd){border-right:1px solid var(--line)}.kv span,.kv b{display:block}.kv span{color:var(--dim);font-size:9px}.kv b{font-size:13px;margin-top:5px}.reason{padding:11px;border-left:2px solid var(--amber);background:var(--amber2);margin-bottom:8px;font-size:11px;line-height:1.45}.reason.good{border-color:var(--green);background:var(--green2)}.position-status{display:flex;justify-content:space-between;color:var(--dim);font-size:10px;margin-bottom:10px}.position-card{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(4,minmax(90px,.6fr));gap:12px;padding:13px;border:1px solid var(--line);border-bottom:0}.position-card:last-child{border-bottom:1px solid var(--line)}.position-card b,.position-card small{display:block}.position-card small{font-size:9px;color:var(--dim);margin-top:4px}.position-card .value{text-align:right}.positive{color:var(--green)}.negative{color:var(--red)}.empty,.loading{padding:38px;text-align:center;color:var(--dim)}.toast{position:fixed;right:20px;bottom:20px;z-index:50;padding:12px 15px;border:1px solid var(--line2);background:var(--panel2);border-radius:8px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.skeleton-block:empty:after,.loading:after{content:"";display:block;height:80px;background:linear-gradient(90deg,var(--panel),var(--panel2),var(--panel));background-size:200% 100%;animation:shine 1.2s infinite}@keyframes shine{to{background-position:-200% 0}}@media(max-width:980px){:root{--sidebar:72px}.brand div:last-child,.nav-label,.nav-button:not(.active){font-size:0}.nav-button{justify-content:center}.nav-button span{font-size:16px}.sidebar-status div{display:none}.metrics{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.span-8,.span-4{grid-column:span 12}.jobs-grid{grid-template-columns:repeat(2,1fr)}.score-grid{grid-template-columns:repeat(3,1fr)}.detail-grid{grid-template-columns:1fr}.signal-card{grid-template-columns:90px 1fr}.signal-score{grid-column:2}.wallet-header{align-items:flex-start;flex-direction:column}}@media(max-width:640px){main{padding:18px 12px 40px}.topbar{padding:0 14px}.last-sync{display:none}.metrics{grid-template-columns:1fr}.metric{border-right:0;border-bottom:1px solid var(--line)}.jobs-grid,.system-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.wallet-actions{flex-wrap:wrap}.score-grid{grid-template-columns:repeat(2,1fr)}.position-card{grid-template-columns:1fr 1fr}.position-card .title{grid-column:span 2}.dialog-shell{padding:18px 13px}.tabs{overflow:auto}}
.profile-meta{display:block;color:var(--dim);font-size:9px;margin-top:7px}.row-reason{display:block;color:var(--dim);font-size:8px;line-height:1.25;margin-top:5px;max-width:180px}.verdict-card.watch{border-color:rgba(255,199,101,.42);background:var(--amber2)}.market-link{color:var(--text);font-weight:700;text-decoration:none}.market-link:hover{color:var(--green);text-decoration:underline}.position-card .title{min-width:0}.position-card .title>a{display:block;white-space:normal;line-height:1.35}.wallet-actions{align-items:center}

/* Metric v3 */
.metrics{grid-template-columns:repeat(6,minmax(0,1fr))}.metric:nth-child(6){border-right:0}.score-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.reason b,.reason small{display:block}.reason small{margin-top:5px;color:var(--muted);line-height:1.45}.reason.blocking{border-color:var(--red);background:rgba(255,92,117,.08)}.explain-title{margin-top:18px!important}.explain-title:first-child{margin-top:0!important}
@media(max-width:1200px){.metrics{grid-template-columns:repeat(3,1fr)}.metric:nth-child(3),.metric:nth-child(6){border-right:0}.score-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.metrics{grid-template-columns:1fr}.score-grid{grid-template-columns:repeat(2,1fr)}}

.score-bar{height:6px;background:var(--line);margin-top:10px;overflow:hidden}.score-bar i{display:block;height:100%;background:var(--green)}

/* Signal deep links */
.signal-title-link{display:inline-block;color:var(--text);font-size:12px;font-weight:750;text-decoration:none;line-height:1.35}
.signal-title-link:hover{color:var(--green);text-decoration:underline}
.signal-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:11px}
.signal-link{display:inline-flex;align-items:center;min-height:28px;padding:5px 9px;border:1px solid var(--line2);border-radius:6px;color:var(--muted);background:var(--bg);font-size:9px;font-weight:700;text-decoration:none;letter-spacing:.02em}
.signal-link:hover{color:var(--text);border-color:var(--muted);background:var(--panel2)}
.signal-link.primary{color:var(--green);border-color:rgba(88,239,176,.42);background:var(--green2)}
.signal-link.primary:hover{border-color:var(--green)}
.signal-actions.compact{margin-top:7px;gap:5px}
.signal-actions.compact .signal-link{min-height:24px;padding:3px 7px;font-size:8px}
.signal-compact{cursor:default}

.system-table{min-height:0;max-height:360px}.system-table table{min-width:900px}.system-table code{color:var(--green);font-size:10px}
