:root{--bg: #f7f8fa;--surface: #ffffff;--surface-2: #fbfcfd;--surface-3: #f2f4f7;--surface-hover: #f4f6f9;--line: #e7eaf0;--line-strong: #d5dae3;--line-soft: #eef1f5;--ink: #0e1422;--ink-2: #2a3142;--ink-3: #5b6577;--ink-4: #8a93a6;--ink-5: #b6bec9;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-soft: #eaf1ff;--accent-softer: #f4f8ff;--accent-ink: #1e40af;--gain: #079669;--gain-soft: #e6f6ee;--loss: #dc2a3a;--loss-soft: #FCEBEC;--warn: #b7791f;--warn-soft: #fbf0da;--row-h: 44px;--gap: 16px;--pad: 18px;--radius: 10px;--radius-sm: 6px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .04), 0 0 0 1px rgba(15, 23, 42, .04);--shadow-md: 0 4px 14px rgba(15, 23, 42, .06), 0 0 0 1px rgba(15, 23, 42, .04);--shadow-lg: 0 24px 60px -20px rgba(15, 23, 42, .25), 0 0 0 1px rgba(15, 23, 42, .06);--font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Monaco, Consolas, monospace}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"ss01","cv11"}::selection{background:color-mix(in oklab,var(--accent),white 70%)}button,input,select{font:inherit}button,select{cursor:pointer}.mono,.addr,.num,.feed-num,.feed-time{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum","zero"}.muted{color:var(--ink-3)}.gain{color:var(--gain)}.loss{color:var(--loss)}.app{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:100vh}.sb{position:sticky;top:0;z-index:10;display:flex;flex-direction:column;height:100vh;background:var(--surface);border-right:1px solid var(--line)}.sb-brand{display:flex;align-items:center;gap:10px;padding:18px 20px 16px;border-bottom:1px solid var(--line-soft)}.sb-mark{position:relative;width:28px;height:28px;flex:none;border-radius:8px;background:radial-gradient(120% 120% at 0% 0%,#78a5ff,var(--accent) 62%,#143477);box-shadow:0 1px 2px #0000002e,inset 0 1px #ffffff47}.sb-mark:before,.sb-mark:after,.sb-mark i{position:absolute;right:4px;left:4px;height:2px;content:"";background:#ffffffd9;border-radius:2px}.sb-mark:before{top:9px}.sb-mark:after{top:14px;opacity:.65}.sb-mark i{top:19px;opacity:.4}.sb-name{font-size:14px;font-weight:600;letter-spacing:-.01em}.sb-tag{font-family:var(--font-mono);font-size:9.5px;line-height:1.2;color:var(--ink-4);letter-spacing:.04em;text-transform:uppercase}.sb-section{padding:18px 22px 8px;font-size:10px;font-weight:600;color:var(--ink-4);letter-spacing:.08em;text-transform:uppercase}.sb-nav{display:flex;flex-direction:column;gap:1px;padding:0 10px}.nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:7px 12px;color:var(--ink-2);background:transparent;border:0;border-radius:7px;font-size:13px;font-weight:500;text-align:left}.nav-item:hover{color:var(--ink);background:var(--surface-hover)}.nav-item.active{color:var(--accent-ink);background:var(--accent-soft)}.nav-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;color:var(--ink-3)}.nav-item.active .nav-icon{color:var(--accent)}.nav-label{flex:1}.nav-badge{padding:2px 6px;font-family:var(--font-mono);font-size:10px;color:var(--ink-4);background:var(--surface-3);border-radius:5px}.nav-item.active .nav-badge{background:#fff;color:var(--accent-ink)}.sb-foot{padding:14px 16px;margin-top:auto;border-top:1px solid var(--line-soft)}.sb-status{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--line);border-radius:8px}.sb-status-row{display:flex;align-items:center;gap:8px;font-size:11.5px;color:var(--ink-3)}.sb-status-row b{color:var(--ink);font-weight:600}.main{display:flex;min-width:0;flex-direction:column}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:12px;padding:12px 28px;background:var(--surface);border-bottom:1px solid var(--line)}.crumbs{display:flex;align-items:center;gap:8px;color:var(--ink-3);font-size:12.5px;white-space:nowrap}.crumbs b{color:var(--ink);font-weight:600}.search{display:flex;flex:1;align-items:center;max-width:520px;padding:7px 12px;margin-left:auto;color:var(--ink-3);background:var(--surface-2);border:1px solid var(--line);border-radius:8px}.search input{width:100%;min-width:0;color:var(--ink);background:transparent;border:0;outline:0;font-family:var(--font-mono);font-size:12.5px}.search input::placeholder{color:var(--ink-4);font-family:var(--font-sans)}.search-kbd{font-family:var(--font-mono);font-size:10px;padding:2px 5px;border-radius:4px;background:var(--surface-3);color:var(--ink-4);border:1px solid var(--line);white-space:nowrap}.tb-actions{display:flex;align-items:center;gap:8px}.icon-btn{width:32px;height:32px;border:1px solid var(--line);background:var(--surface);border-radius:8px;color:var(--ink-2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative}.icon-btn:hover{background:var(--surface-hover);color:var(--ink)}.icon-btn svg{width:14px;height:14px}.tb-net,.currency-select{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:5px 9px;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:11.5px}.currency-select select{color:var(--ink);background:transparent;border:0;outline:0;font-family:var(--font-mono);font-size:11.5px;font-weight:600}.content{width:100%;max-width:1600px;padding:24px 28px 40px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.page-title{margin:0;color:var(--ink);font-size:22px;font-weight:600;letter-spacing:-.02em}.page-sub{margin-top:4px;color:var(--ink-3);font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:7px 12px;color:var(--ink-2);background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:12.5px;font-weight:500}.btn:hover{background:var(--surface-hover)}.btn:disabled{cursor:not-allowed;opacity:.55}.btn-primary{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 1px 2px #2563eb40,inset 0 1px #ffffff2e}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:transparent;border-color:transparent}.btn-danger{color:var(--loss);background:transparent;border-color:#f2c4c9}.input{width:100%;min-height:34px;padding:8px 11px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;outline:0}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.card-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px var(--pad);border-bottom:1px solid var(--line-soft)}.card-h h3{margin:0;font-size:13.5px;font-weight:600;letter-spacing:-.005em}.card-h .muted{font-size:12px;font-weight:400}.card-b{padding:var(--pad)}.col-2{display:grid;grid-template-columns:2fr 1fr;gap:var(--gap);align-items:start}.stack{display:flex;flex-direction:column;gap:var(--gap)}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.stat{display:flex;flex-direction:column;gap:6px;min-width:0;padding:16px 20px;border-right:1px solid var(--line-soft)}.stat:last-child{border-right:0}.stat-label{color:var(--ink-4);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.stat-val{display:flex;align-items:baseline;gap:8px;min-width:0;color:var(--ink);font-size:22px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-val small{font-size:12px;font-weight:500}.stat-sub{color:var(--ink-3);font-size:12px}.chip{display:inline-flex;align-items:center;gap:5px;width:fit-content;padding:2px 7px;color:var(--ink-2);background:var(--surface-3);border:1px solid transparent;border-radius:999px;font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.chip.gain,.chip.buy{color:var(--gain);background:var(--gain-soft)}.chip.loss,.chip.sell{color:var(--loss);background:var(--loss-soft)}.chip.accent{color:var(--accent-ink);background:var(--accent-soft)}.chip.warn{color:var(--warn);background:var(--warn-soft)}.chip.live{background:color-mix(in oklab,var(--gain),white 88%);color:var(--gain)}.chip.live:before{width:6px;height:6px;content:"";background:var(--gain);border-radius:50%;animation:pulse 1.8s infinite;box-shadow:0 0 color-mix(in oklab,var(--gain),transparent 40%)}.live-dot{display:inline-block;width:7px;height:7px;flex:none;background:var(--gain);border-radius:50%;animation:pulse 1.8s infinite}.live-dot.off{background:var(--ink-4);animation:none}@keyframes pulse{0%{box-shadow:0 0 #07966940}70%{box-shadow:0 0 0 6px #07966900}to{box-shadow:0 0 #07966900}}.tbl-wrap{overflow-x:auto}.tbl{width:100%;border-collapse:collapse;font-size:12.5px}.tbl thead th{padding:10px var(--pad);color:var(--ink-4);background:var(--surface-2);border-bottom:1px solid var(--line);font-size:11px;font-weight:500;letter-spacing:.04em;text-align:left;text-transform:uppercase;white-space:nowrap}.tbl tbody td{height:var(--row-h);padding:0 var(--pad);border-bottom:1px solid var(--line-soft);vertical-align:middle;white-space:nowrap}.tbl tbody tr{transition:background 60ms ease}.tbl tbody tr:hover{background:var(--surface-hover)}.tbl .num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.addr{color:var(--ink-3);font-size:11.5px}.addr-pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 8px;color:var(--accent-ink);background:var(--accent-soft);border:1px solid transparent;border-radius:999px;font-family:var(--font-mono);font-size:11.5px;font-weight:600}.addr-inline{display:inline-flex;align-items:center;gap:4px;max-width:100%;color:var(--ink-3);font-family:var(--font-mono);font-size:11.5px}.addr-copy-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;padding:0;width:14px;height:14px;color:var(--ink-4);background:transparent;border:0;border-radius:3px;cursor:pointer;transition:color .1s ease}.addr-copy-btn:hover{color:var(--ink-2)}.addr-inline.copied .addr-copy-btn,.addr-pill.copied .addr-copy-btn{color:var(--gain)}.addr-full{overflow:hidden;text-overflow:ellipsis}.av{display:inline-flex;flex:none;align-items:center;justify-content:center;width:26px;height:26px;color:#fff;background:linear-gradient(135deg,#3d7bff,#0e2a6b);border-radius:7px;box-shadow:inset 0 1px #ffffff40,inset 0 0 0 1px #0000000f;font-family:var(--font-mono);font-size:10.5px;font-weight:600}.av-sm{width:22px;height:22px;font-size:9.5px;border-radius:6px}.av-lg{width:40px;height:40px;font-size:14px;border-radius:10px}.feed{display:flex;flex-direction:column}.feed-row{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(110px,auto) 78px;gap:14px;align-items:center;padding:12px var(--pad);border-bottom:1px solid var(--line-soft);background-color:transparent;transition:background-color .7s ease-out}.feed-row.whale{box-shadow:inset 3px 0 0 var(--warn)}.feed-row:last-child{border-bottom:0}.feed-row:hover{background-color:var(--surface-hover)}.feed-row.fresh{background-color:color-mix(in oklab,var(--accent),white 88%)}.feed-row.fresh:hover{background-color:color-mix(in oklab,var(--accent),white 80%)}.feed-side{display:flex;align-items:center;justify-content:center;width:32px;height:32px;flex:none;border-radius:8px;font-family:var(--font-mono);font-size:14px;font-weight:750}.feed-side.buy{color:var(--gain);background:var(--gain-soft)}.feed-side.sell{color:var(--loss);background:var(--loss-soft)}.feed-mid{display:flex;min-width:0;flex-direction:column;gap:3px}.feed-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:12.5px}.feed-actor{flex:none;max-width:180px;overflow:hidden;color:var(--ink);font-weight:600;white-space:nowrap;text-overflow:ellipsis}.feed-verb{flex:none;color:var(--ink-3);font-size:12px;font-weight:400}.feed-outcome{flex:none;padding:1px 7px;font-size:10.5px;font-weight:600;letter-spacing:.04em}.feed-market{flex:1 1 auto;min-width:0;overflow:hidden;color:var(--ink-2);font-size:12.5px;font-weight:400;text-overflow:ellipsis;white-space:nowrap}.feed-sub{display:flex;gap:10px;align-items:center;min-width:0;color:var(--ink-3);font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum","zero";font-size:11.5px;font-weight:400}.feed-detail{display:inline-flex;align-items:center;gap:6px}.feed-num{color:var(--ink);font-family:var(--font-mono);font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em;text-align:right;white-space:nowrap}.feed-num.gain{color:var(--gain)}.feed-num.loss{color:var(--loss)}.feed-time{color:var(--ink-4);font-size:11px;text-align:right;white-space:nowrap}.wallet-form{display:flex;flex-direction:column;gap:8px}.wallet-form-row{display:flex;gap:8px}.wallet-list{display:flex;flex-direction:column}.wallet-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px var(--pad);color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line-soft);text-align:left}.wallet-row:last-child{border-bottom:0}.wallet-row:hover,.wallet-row.active{background:var(--accent-softer)}.wallet-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:1px}.wallet-name{font-size:13px;font-weight:600;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wallet-label{color:var(--ink-3);font-size:11.5px}.icon-remove{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--ink-4);background:transparent;border:0;border-radius:7px;font-size:18px;line-height:1}.icon-remove:hover{color:var(--loss);background:var(--loss-soft)}.notice{padding:11px 14px;margin-bottom:var(--gap);border-radius:8px;font-size:12.5px}.notice.accent{color:var(--accent-ink);background:var(--accent-soft);border:1px solid #c9dcff}.notice.error{color:var(--loss);background:var(--loss-soft);border:1px solid #f1c7cc}.progress{height:6px;overflow:hidden;background:var(--surface);border-radius:999px}.progress>span{display:block;height:100%;background:var(--accent);transition:width .4s ease}.empty-state{padding:36px 18px;color:var(--ink-3);font-size:13px;text-align:center}.chart-card{height:220px;padding:14px 12px 8px}.tabs{display:flex;gap:2px;padding:3px;background:var(--surface-3);border-radius:8px}.tab{padding:5px 11px;border-radius:6px;font-size:12px;font-weight:500;color:var(--ink-3);cursor:pointer;border:0;background:transparent}.tab.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.tab:hover:not(.active){color:var(--ink-2)}.range-pills{display:inline-flex;gap:0;padding:2px;background:var(--surface-3);border-radius:7px}.range-pill{padding:3px 9px;font-family:var(--font-mono);font-size:11px;color:var(--ink-3);border-radius:5px;cursor:pointer;border:0;background:transparent}.range-pill.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.mkt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}.mkt-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;display:flex;flex-direction:column;gap:10px;transition:border-color .1s ease}.mkt-card:hover{border-color:var(--line-strong)}.mkt-q{font-size:13.5px;font-weight:600;color:var(--ink);line-height:1.35;letter-spacing:-.005em}.mkt-cat{font-size:11px;color:var(--ink-4);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.mkt-bar{display:flex;height:6px;border-radius:4px;overflow:hidden;background:var(--surface-3)}.mkt-bar>i{display:block;height:100%}.mkt-yes{background:linear-gradient(90deg,var(--gain),color-mix(in oklab,var(--gain),white 25%))}.mkt-no{background:linear-gradient(90deg,color-mix(in oklab,var(--loss),white 30%),var(--loss))}.mkt-yes-t{color:var(--gain);font-weight:600}.mkt-no-t{color:var(--loss);font-weight:600}.mkt-foot{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--ink-3)}.mkt-pcts{display:flex;gap:12px;font-family:var(--font-mono)}.alloc-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--line-soft)}.alloc-row:last-child{border-bottom:0}.alloc-name{flex:1;font-size:12.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alloc-bar-track{width:140px;height:6px;border-radius:4px;background:var(--surface-3);overflow:hidden}.alloc-bar-fill{height:100%;background:var(--accent)}.alloc-pct{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-2);width:48px;text-align:right}.divider{height:1px;background:var(--line-soft);margin:12px 0}.kbd{font-family:var(--font-mono);font-size:10.5px;padding:1px 5px;border-radius:4px;background:var(--surface-3);color:var(--ink-3);border:1px solid var(--line)}.gain-bg{background:var(--gain-soft)}.loss-bg{background:var(--loss-soft)}@media (max-width: 1100px){.app{grid-template-columns:1fr}.sb{position:static;height:auto}.sb-nav{flex-direction:row;overflow-x:auto;padding-bottom:10px}.sb-section,.sb-foot,.nav-badge{display:none}.topbar{top:0}.col-2{grid-template-columns:1fr}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(2){border-right:0}}@media (max-width: 760px){.topbar{align-items:stretch;flex-wrap:wrap;padding:12px 16px}.search{order:3;max-width:none;margin-left:0;flex-basis:100%}.content{padding:18px 16px 28px}.page-head{align-items:flex-start;flex-direction:column}.stat-grid{grid-template-columns:1fr}.stat{border-right:0;border-bottom:1px solid var(--line-soft)}.stat:last-child{border-bottom:0}.feed-row{grid-template-columns:auto minmax(0,1fr)}.feed-num,.feed-time{text-align:left}.wallet-form-row{flex-direction:column}}
