@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap";:root{--color-bg: #f4f4f6;--color-surface: #ffffff;--color-surface-subtle: #fbfbfc;--color-surface-inset: #fafafb;--color-surface-inset-2: #fcfcfd;--color-border: #ececef;--color-border-light: #f0f0f2;--color-border-light-2: #f3f3f5;--color-field-border: #e2e2e8;--color-text: #1a1a1f;--color-text-body: #3a3a42;--color-text-secondary: #6b6b76;--color-text-tertiary: #9a9aa5;--color-accent-soft: #eef2ff;--color-accent-soft-border: #e0e3ff;--color-accent-soft-border-2: #d6dcff;--color-accent: #4f46e5;--color-accent-hover: #4338ca;--color-profit: #15803d;--color-profit-bg: #f0fdf4;--color-profit-border: #c8f0d6;--color-loss: #b91c1c;--color-loss-bg: #fef2f2;--color-loss-border: #fdd3d3;--color-destructive: #dc2626;--color-destructive-hover: #b91c1c;--color-warn: #b45309;--color-warn-strong: #92400e;--color-warn-bg: #fffbeb;--color-warn-border: #fde68a;--color-ok: #15803d;--evt-buy: #15803d;--evt-buy-bg: #f0fdf4;--evt-buy-border: #c8f0d6;--evt-sell: #b91c1c;--evt-sell-bg: #fef2f2;--evt-sell-border: #fdd3d3;--evt-swap: #6d28d9;--evt-swap-bg: #f5f3ff;--evt-swap-border: #ddd6fe;--evt-transfer: #1d4ed8;--evt-transfer-bg: #eff6ff;--evt-transfer-border: #c7ddfd;--evt-program: #475569;--evt-program-bg: #f8fafc;--evt-program-border: #e2e8f0;--smart-text: #6d28d9;--smart-bg: #f5f3ff;--smart-border: #ddd6fe;--font-sans: "Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "Geist Mono", "SF Mono", ui-monospace, Menlo, monospace;--fs-xs: 11px;--fs-sm: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-display: 30px;--lh-tight: 1.25;--lh-normal: 1.5;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--radius-sm: 6px;--radius-md: 9px;--radius-lg: 12px;--radius-xl: 16px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(20, 20, 40, .03);--shadow-drawer: -10px 0 30px -14px rgba(20, 20, 40, .22);--shadow-modal: 0 20px 60px -16px rgba(20, 20, 40, .3);--zone-sidebar: 264px;--zone-context: 384px;--bp-narrow: 1024px}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes blink{0%,to{opacity:1}50%{opacity:.25}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--fs-md);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num-right{text-align:right;font-variant-numeric:tabular-nums}.pnl-pos{color:var(--color-profit)}.pnl-neg{color:var(--color-loss)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);font-family:var(--font-sans);font-size:var(--fs-sm);font-weight:600;line-height:1;padding:0 14px;height:36px;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease,color .12s ease}.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.btn:disabled{cursor:not-allowed;opacity:.65}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-soft{background:var(--color-accent-soft);color:var(--color-accent);border-color:var(--color-accent-soft-border)}.btn-soft:hover:not(:disabled){border-color:var(--color-accent-soft-border-2)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border-color:var(--color-border)}.btn-ghost:hover:not(:disabled){background:var(--color-border-light-2);color:var(--color-text)}.btn-danger{background:var(--color-destructive);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-destructive-hover)}.btn-block{width:100%;height:44px;font-size:var(--fs-md)}.btn-sm{height:30px;padding:0 10px;font-size:var(--fs-sm)}.btn-spinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .75s linear infinite}.field{display:flex;flex-direction:column;gap:6px}.field>label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.field input,.field textarea,.input{width:100%;height:42px;padding:0 12px;background:var(--color-surface-inset);border:1px solid var(--color-field-border);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--fs-md);color:var(--color-text);transition:border-color .12s ease,background .12s ease}.field textarea{height:auto;padding:10px 12px;resize:vertical;line-height:var(--lh-normal)}.field input.mono,.input.mono{font-family:var(--font-mono)}.field input::placeholder,.field textarea::placeholder,.input::placeholder{color:var(--color-text-tertiary)}.field input:focus,.field textarea:focus,.input:focus{outline:none;border-color:var(--color-accent);background:#fff}.field input[aria-invalid=true],.input[aria-invalid=true]{border-color:var(--color-loss-border)}.field-error,.form-error{color:var(--color-loss);font-size:var(--fs-sm);margin:0}.validation{font-size:var(--fs-sm);font-family:var(--font-mono);min-height:18px}.validation-valid{color:var(--color-profit)}.validation-invalid{color:var(--color-loss)}.validation-neutral{color:var(--color-text-tertiary)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--sp-4)}.card-title{margin:0 0 var(--sp-3);font-size:var(--fs-lg);font-weight:700;letter-spacing:-.01em}.avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;color:#fff;font-weight:600;font-size:12px;border-radius:var(--radius-md);-webkit-user-select:none;user-select:none}.avatar-round{border-radius:var(--radius-pill)}.avatar-user{background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:var(--radius-pill)}.badge{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-sans);font-size:var(--fs-xs);font-weight:600;line-height:1;padding:4px 8px;border-radius:var(--radius-pill);border:1px solid transparent;white-space:nowrap}.badge-active{color:var(--color-ok);background:var(--color-profit-bg);border-color:var(--color-profit-border)}.badge-active:before{content:"●";font-size:8px}.badge-analyzing:before,.badge-backfilling:before{content:"◌";font-size:10px}.badge-analyzing,.badge-backfilling{color:var(--color-warn-strong);background:var(--color-warn-bg);border-color:var(--color-warn-border)}.badge-neutral{color:var(--color-text-secondary);background:var(--color-border-light-2);border-color:var(--color-border)}.badge-smart{color:var(--smart-text);background:var(--smart-bg);border-color:var(--smart-border)}.badge-pnl{display:inline-flex;align-items:center;font-family:var(--font-mono);font-weight:600;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.evt-badge{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-xs);font-weight:600;padding:3px 8px;border-radius:var(--radius-pill);border:1px solid transparent;white-space:nowrap}.evt-badge .evt-glyph{font-size:12px;line-height:1}.evt-buy{color:var(--evt-buy);background:var(--evt-buy-bg);border-color:var(--evt-buy-border)}.evt-sell{color:var(--evt-sell);background:var(--evt-sell-bg);border-color:var(--evt-sell-border)}.evt-swap{color:var(--evt-swap);background:var(--evt-swap-bg);border-color:var(--evt-swap-border)}.evt-transfer{color:var(--evt-transfer);background:var(--evt-transfer-bg);border-color:var(--evt-transfer-border)}.evt-program{color:var(--evt-program);background:var(--evt-program-bg);border-color:var(--evt-program-border)}.skeleton{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-2) 0}.skeleton-line{height:12px;border-radius:var(--radius-sm);background:linear-gradient(90deg,#eee,#f6f6f6,#eee);background-size:800px 100%;animation:shimmer 1.4s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);text-align:center;padding:var(--sp-6) var(--sp-4);color:var(--color-text-tertiary);margin:auto;max-width:320px}.empty-state-icon{font-size:28px;opacity:.7}.empty-state-title{margin:0;font-size:var(--fs-lg);font-weight:700;color:var(--color-text)}.empty-state-desc{margin:0;font-size:var(--fs-sm);color:var(--color-text-tertiary)}.empty-state-action{margin-top:var(--sp-2)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:#14142366;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:up .2s ease}.modal{width:100%;max-width:440px;max-height:88vh;overflow:auto;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.modal-sm{max-width:380px}.modal-md{max-width:400px}.modal-lg{max-width:560px}.modal-title{margin:0;font-size:18px;font-weight:700;letter-spacing:-.02em}.modal-sub{margin:-8px 0 0;font-size:var(--fs-sm);color:var(--color-text-secondary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--sp-2)}.auth-page{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);background:radial-gradient(120% 120% at 50% 0%,#fff,#f1f1f4 70%)}.brand-lockup{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:700;font-size:var(--fs-md);letter-spacing:-.01em;color:var(--color-text)}.brand-mark{width:22px;height:22px;border-radius:7px;background:var(--color-accent);display:inline-flex;align-items:center;justify-content:center;flex:none}.brand-mark:after{content:"";width:7px;height:7px;border-radius:50%;background:#fff}.auth-brand{position:absolute;top:32px;left:32px}.auth-card{width:380px;max-width:100%;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-modal);padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-4)}.auth-head{display:flex;flex-direction:column;gap:4px}.auth-title{margin:0;font-size:22px;font-weight:700;letter-spacing:-.02em}.auth-sub{margin:0;font-size:13.5px;color:var(--color-text-secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--sp-3)}.auth-switch{text-align:center;font-size:var(--fs-sm);color:var(--color-text-secondary)}.auth-switch a,.link{color:var(--color-accent);font-weight:600;text-decoration:none;cursor:pointer;display:inline-flex;align-items:center;gap:4px}.link svg,.event-action svg{display:block;flex:none}.mint-link{margin-left:auto;font-family:var(--font-sans);font-size:var(--fs-xs)}.auth-switch a:hover,.link:hover{text-decoration:underline}.app-layout{position:relative;display:flex;height:100vh;overflow:hidden;background:var(--color-bg)}.zone-sidebar{width:var(--zone-sidebar);flex:none;background:var(--color-surface-subtle);border-right:1px solid var(--color-border);display:flex;flex-direction:column;height:100%}.zone-feed{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;transition:padding-right .18s ease}.app-layout.drawer-open .zone-feed{padding-right:var(--zone-context)}.zone-context{position:absolute;top:0;right:0;z-index:20;width:var(--zone-context);height:100%;background:var(--color-surface-subtle);border-left:1px solid var(--color-border);box-shadow:var(--shadow-drawer);transform:translate(100%);transition:transform .2s ease;display:flex;flex-direction:column}.zone-context.drawer-open{transform:translate(0)}.group-sidebar{display:flex;flex-direction:column;height:100%;min-height:0}.sidebar-header{height:56px;display:flex;align-items:center;padding:0 var(--sp-4);border-bottom:1px solid var(--color-border);flex:none}.sidebar-search{padding:var(--sp-3) var(--sp-3) var(--sp-2);flex:none}.search-input{display:flex;align-items:center;gap:var(--sp-2);height:34px;padding:0 10px;background:#f1f1f3;border-radius:var(--radius-pill);color:var(--color-text-tertiary)}.search-input input{flex:1;min-width:0;border:none;background:transparent;font-family:var(--font-sans);font-size:var(--fs-sm);color:var(--color-text);outline:none}.search-input input::placeholder{color:var(--color-text-tertiary)}.sidebar-section-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-tertiary);padding:var(--sp-2) var(--sp-4) 6px}.group-list{list-style:none;margin:0;padding:0 var(--sp-2);overflow-y:auto;flex:1;min-height:0}.group-list li{margin-bottom:2px}.group-item{width:100%;display:flex;align-items:center;gap:var(--sp-2);padding:7px 8px;border-radius:var(--radius-md);border:none;background:transparent;cursor:pointer;text-align:left}.group-item:hover{background:#f1f1f3}.group-item[aria-current=true]{background:var(--color-accent-soft)}.group-item .avatar{width:30px;height:30px}.group-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.group-item-name{font-size:13.5px;font-weight:500;color:var(--color-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.group-item[aria-current=true] .group-item-name{font-weight:700}.group-item-meta{font-family:var(--font-mono);font-size:11.5px;color:var(--color-text-tertiary)}.unread-pill{flex:none;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;font-family:var(--font-mono);font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.sidebar-footer{flex:none;padding:var(--sp-3);border-top:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--sp-3)}.user-row{display:flex;align-items:center;gap:var(--sp-2);padding:2px 4px}.user-row .avatar{width:26px;height:26px}.user-name{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-secondary)}.feed{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}.feed-header{height:56px;flex:none;display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-5);border-bottom:1px solid var(--color-border);background:var(--color-surface)}.feed-header .avatar{width:30px;height:30px}.feed-header-body{flex:1;min-width:0}.feed-header-name{font-size:15px;font-weight:700;letter-spacing:-.01em}.feed-header-meta{font-family:var(--font-mono);font-size:11.5px;color:var(--color-text-tertiary)}.feed-filter-btn{position:relative}.feed-filter-btn.is-active{color:var(--color-accent);background:var(--color-accent-soft)}.feed-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;margin-left:var(--sp-1);padding:0 5px;border-radius:var(--radius-pill);background:var(--color-accent);color:#fff;font-family:var(--font-mono);font-size:10.5px;font-weight:600;line-height:1}.filter-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:transparent}.filter-dropdown{position:absolute;z-index:50;top:52px;right:var(--sp-5);width:320px;display:flex;flex-direction:column;gap:var(--sp-4);padding:var(--sp-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:0 12px 32px #14141e1f}.filter-section{display:flex;flex-direction:column;gap:var(--sp-2)}.filter-section-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary)}.filter-chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.filter-chip{padding:5px 11px;border:1px solid var(--color-field-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-secondary);font-size:var(--fs-sm);cursor:pointer}.filter-chip:hover{border-color:var(--color-accent-soft-border-2)}.filter-chip.is-active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.filter-money{display:flex;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface-inset)}.filter-money:focus-within{border-color:var(--color-accent)}.filter-money-prefix{font-family:var(--font-mono);color:var(--color-text-tertiary)}.filter-money input{flex:1;min-width:0;border:none;background:transparent;padding:8px 0;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text);outline:none}.filter-money-hint{font-size:var(--fs-xs);color:var(--color-text-tertiary)}.filter-blacklist-add{display:flex;gap:var(--sp-2)}.filter-blacklist-add input{flex:1;min-width:0;padding:8px var(--sp-3);border:1px solid var(--color-field-border);border-radius:var(--radius-sm);background:var(--color-surface-inset);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text)}.filter-blacklist-add input:focus{outline:none;border-color:var(--color-accent)}.filter-blacklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-1)}.filter-blacklist-row{display:flex;align-items:center;justify-content:space-between;padding:5px var(--sp-2);border-radius:var(--radius-sm);background:var(--color-loss-bg);color:var(--color-loss);font-size:var(--fs-sm)}.filter-blacklist-remove{border:none;background:transparent;color:var(--color-destructive);font-size:15px;line-height:1;cursor:pointer}.feed-scroll{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-3);padding:20px;max-width:760px;width:100%;margin:0 auto}.feed-item{animation:up .3s ease}.event-card{padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.event-head{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.wallet-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 9px 3px 4px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--color-text)}.wallet-chip:hover{background:var(--color-border-light-2)}.wallet-chip .avatar{width:18px;height:18px;font-size:10px}.auto-marker{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid var(--smart-border);background:var(--smart-bg);color:var(--smart-text);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.event-time{margin-left:auto;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-tertiary);white-space:nowrap}.event-auto-removed{font-size:var(--fs-sm);color:var(--color-text-secondary)}.event-summary{margin:0;font-size:var(--fs-md);line-height:var(--lh-normal);color:var(--color-text-body)}.event-summary .mono,.event-summary .num{font-family:var(--font-mono);font-weight:500;color:var(--color-text)}.event-summary .ticker{font-family:var(--font-mono);font-weight:600;color:var(--color-accent)}.event-foot{display:flex;align-items:center;gap:var(--sp-4);font-size:var(--fs-sm)}.event-action{background:none;border:none;padding:0;cursor:pointer;color:var(--color-text-secondary);font-size:var(--fs-sm);font-weight:600;display:inline-flex;align-items:center;gap:5px}.event-action:hover{color:var(--color-text)}.event-foot .link{margin-left:auto}.event-detail{background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3);animation:up .2s ease}.detail-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.event-marketcap{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.event-marketcap .mono{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text)}.event-legs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.event-legs li{display:flex;justify-content:space-between;gap:var(--sp-3);font-family:var(--font-mono);font-size:var(--fs-sm)}.leg-usd{color:var(--color-text-tertiary)}.event-counterparties{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;font-size:var(--fs-sm);color:var(--color-text-secondary)}.comment-thread{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-3)}.comments-empty{margin:0;font-size:var(--fs-sm);color:var(--color-text-tertiary)}.comment{display:grid;grid-template-columns:24px 1fr;gap:var(--sp-2)}.comment .avatar{width:24px;height:24px;font-size:10px}.comment-meta{display:flex;align-items:baseline;gap:6px}.comment-author{font-size:12.5px;font-weight:600;color:var(--color-text)}.comment-time{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-tertiary)}.comment-text{margin:2px 0 0;font-size:13px;color:var(--color-text-body)}.comment-composer{display:flex;align-items:center;gap:var(--sp-2);padding-top:var(--sp-2)}.comment-composer .avatar{width:24px;height:24px;font-size:10px}.comment-composer textarea,.comment-composer .composer-input{flex:1;height:36px;min-height:36px;padding:8px 12px;resize:none;background:var(--color-surface-inset-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-family:var(--font-sans);font-size:13px;outline:none}.comment-composer textarea:focus{border-color:var(--color-accent);background:#fff}.event-comments{background:var(--color-surface-inset-2);border-top:1px solid var(--color-border-light);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 calc(-1 * var(--sp-4)) calc(-1 * var(--sp-4));padding:var(--sp-3) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.new-messages-indicator{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:5;display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:var(--radius-pill);border:none;background:var(--color-accent);color:#fff;font-size:var(--fs-sm);font-weight:600;cursor:pointer;box-shadow:var(--shadow-modal);animation:up .25s ease}.backfill-banner{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-3) auto 0;max-width:760px;width:calc(100% - 40px);padding:10px 14px;border-radius:var(--radius-md);background:var(--color-warn-bg);border:1px solid var(--color-warn-border);color:var(--color-warn-strong);font-size:var(--fs-sm)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--color-ok);animation:blink 1.5s ease infinite;flex:none}.analytics-panel{display:flex;flex-direction:column;height:100%;min-height:0}.drawer-header{flex:none;padding:var(--sp-4);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--sp-3)}.drawer-head-row{display:flex;align-items:center;gap:var(--sp-2)}.drawer-head-row .avatar{width:34px;height:34px;border-radius:var(--radius-pill)}.drawer-head-body{flex:1;min-width:0}.drawer-name{font-size:15px;font-weight:700}.drawer-addr{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-tertiary)}.copy-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--color-text-tertiary);font-size:var(--fs-xs);font-family:var(--font-mono)}.copy-btn:hover{color:var(--color-accent)}.icon-btn{background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);font-size:16px;line-height:1;padding:4px;border-radius:var(--radius-sm)}.icon-btn:hover{background:var(--color-border-light-2);color:var(--color-text)}.drawer-tabs{display:flex;gap:var(--sp-4);padding:0 var(--sp-4);border-bottom:1px solid var(--color-border);flex:none}.drawer-tab{background:none;border:none;padding:10px 0;cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--color-text-tertiary);border-bottom:2px solid transparent;margin-bottom:-1px}.drawer-tab:hover{color:var(--color-text-secondary)}.drawer-tab[aria-selected=true]{color:var(--color-accent);border-bottom-color:var(--color-accent)}.drawer-body{flex:1;min-height:0;overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-4)}.analytics-analyzing{display:flex;align-items:center;gap:var(--sp-2);padding:10px 12px;border-radius:var(--radius-md);background:var(--color-warn-bg);border:1px solid var(--color-warn-border);color:var(--color-warn-strong);font-size:var(--fs-sm)}.progress-track{height:6px;border-radius:var(--radius-pill);background:var(--color-border);overflow:hidden;margin-top:var(--sp-2)}.progress-fill{height:100%;background:var(--color-accent);border-radius:var(--radius-pill);transition:width .3s ease}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3)}.stat-tile{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:4px}.stat-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.stat-value{font-family:var(--font-mono);font-size:var(--fs-lg);font-weight:600;color:var(--color-text)}.pnl-hero{text-align:center;padding:var(--sp-4) 0}.pnl-hero-label{font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary)}.pnl-hero-value{font-family:var(--font-mono);font-size:var(--fs-display);font-weight:700;letter-spacing:-.02em;margin-top:4px}.pnl-list{display:flex;flex-direction:column}.pnl-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:12px 0;border-top:1px solid var(--color-border-light);font-size:var(--fs-sm)}.pnl-row-value{font-family:var(--font-mono);font-size:var(--fs-lg);font-weight:600;font-variant-numeric:tabular-nums}.pnl-incomplete{color:var(--color-warn)}.portfolio-total{display:flex;flex-direction:column;gap:2px}.portfolio-total .stat-value{font-size:22px}.token-row{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:var(--sp-2);padding:var(--sp-2) 0;border-top:1px solid var(--color-border-light)}.token-row .avatar{width:22px;height:22px;font-size:9px}.token-icon{border-radius:var(--radius-pill);object-fit:cover;flex:none;background:var(--color-border-light-2)}.token-name-full{font-size:var(--fs-xs);color:var(--color-text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leg-token{display:inline-flex;align-items:center;gap:5px}.token-row-body{min-width:0}.token-ticker{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-sm);margin-right:var(--sp-2)}.token-bar{height:4px;border-radius:var(--radius-pill);background:var(--color-border);margin-top:4px;overflow:hidden}.token-bar-fill{height:100%;border-radius:var(--radius-pill)}.token-value{font-family:var(--font-mono);font-size:var(--fs-sm);text-align:right;white-space:nowrap}.token-balance{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-tertiary);text-align:right}.action-list{display:flex;flex-direction:column;gap:var(--sp-2)}.action-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--sp-3);display:flex;flex-direction:column;gap:6px}.action-head{display:flex;align-items:center;gap:var(--sp-2)}.action-head .event-time{margin-left:auto}.manage-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.manage-count{font-size:var(--fs-sm);color:var(--color-text-secondary)}.wallet-list{display:flex;flex-direction:column;gap:var(--sp-2);max-height:60vh;overflow-y:auto}.wallet-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.wallet-row .avatar{width:30px;height:30px}.wallet-row-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.wallet-name{background:none;border:none;padding:0;text-align:left;cursor:pointer;font-size:var(--fs-sm);font-weight:600;color:var(--color-text)}.wallet-name:hover{color:var(--color-accent)}.wallet-addr{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-tertiary)}.wallet-attr{font-size:var(--fs-xs);color:var(--color-text-tertiary)}.wallet-name-line,.wallet-addr-line{display:flex;align-items:center;gap:4px;min-width:0}.wallet-name-input{flex:1;min-width:0;height:24px;padding:0 6px;font-size:var(--fs-sm);font-weight:600}.icon-btn-sm{font-size:13px;padding:2px}.icon-btn-sm:disabled{opacity:.5;cursor:default}.manage-search{width:100%;margin-bottom:var(--sp-3)}.link-danger{background:none;border:none;padding:0;cursor:pointer;color:var(--color-destructive);font-size:var(--fs-sm);font-weight:600}.link-danger:hover{color:var(--color-destructive-hover)}.positions-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.positions-table th{text-align:left;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);padding:6px 8px;border-bottom:1px solid var(--color-border)}.positions-table td{padding:8px;border-bottom:1px solid var(--color-border-light)}.positions-empty,.positions-note{font-size:var(--fs-sm);color:var(--color-text-tertiary)}.util-tabs{display:flex;gap:var(--sp-4);border-bottom:1px solid var(--color-border);margin-bottom:var(--sp-4)}.util-tabs .drawer-tab{position:relative}.util-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;margin-left:6px;padding:0 5px;border-radius:var(--radius-pill);background:var(--color-warn-border);color:var(--color-warn-strong);font-family:var(--font-mono);font-size:10.5px;font-weight:600;line-height:1}.feed-util-badge{background:var(--color-warn-border);color:var(--color-warn-strong)}.util-tab-body{min-height:220px}.util-tab{display:flex;flex-direction:column;gap:var(--sp-4)}.util-tab-center{align-items:center;text-align:center;gap:var(--sp-3);padding:var(--sp-5) var(--sp-4)}.util-control-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.util-control-label{font-size:var(--fs-sm);font-weight:600;color:var(--color-text)}.util-control-hint{font-size:var(--fs-xs);color:var(--color-text-tertiary);margin-top:2px}.util-toggle{flex:none;width:40px;height:22px;border:none;border-radius:var(--radius-pill);background:var(--color-border);cursor:pointer;padding:0;position:relative;transition:background .15s ease}.util-toggle.is-on{background:var(--color-accent)}.util-toggle:disabled{opacity:.6;cursor:default}.util-toggle-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.util-toggle.is-on .util-toggle-knob{transform:translate(18px)}.util-config{display:flex;flex-direction:column;gap:var(--sp-3)}.util-config.is-disabled{opacity:.5}.util-field{display:flex;flex-direction:column;gap:var(--sp-2)}.segmented{display:inline-flex;border:1px solid var(--color-field-border);border-radius:var(--radius-sm);overflow:hidden;align-self:flex-start}.seg-btn{border:none;background:var(--color-surface);color:var(--color-text-secondary);padding:6px 14px;font-size:var(--fs-sm);cursor:pointer;border-right:1px solid var(--color-field-border)}.seg-btn:last-child{border-right:none}.seg-btn.is-active{background:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.seg-btn:disabled{opacity:.5;cursor:default}.util-pending-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.util-review-pill{padding:2px 9px;border-radius:var(--radius-pill);background:var(--color-warn-bg);border:1px solid var(--color-warn-border);color:var(--color-warn-strong);font-size:var(--fs-xs);font-weight:600}.util-empty{padding:var(--sp-4);text-align:center;font-size:var(--fs-sm);color:var(--color-text-tertiary);border:1px dashed var(--color-border);border-radius:var(--radius-md)}.util-pending-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2);max-height:320px;overflow-y:auto}.util-pending-row{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.util-pending-row .avatar{width:30px;height:30px}.util-pending-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.util-pending-name-line{display:flex;align-items:center;gap:6px;min-width:0}.util-name-input{flex:1;min-width:0;height:26px;padding:0 6px;font-size:var(--fs-sm)}.util-pending-meta{font-size:var(--fs-xs);color:var(--color-text-tertiary)}.util-dir-pill{flex:none;padding:1px 7px;border-radius:var(--radius-pill);font-size:var(--fs-xs);font-weight:600;white-space:nowrap}.util-dir-incoming{background:var(--color-gain-bg, #ecfdf5);color:var(--color-profit)}.util-dir-outgoing{background:var(--color-warn-bg);color:var(--color-warn-strong)}.util-pending-actions{display:flex;align-items:center;gap:var(--sp-3);flex:none}.util-keep-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--color-profit);font-size:var(--fs-sm);font-weight:600}.util-keep-btn:disabled{opacity:.5;cursor:default}.util-removed-row{justify-content:space-between;background:var(--color-surface-inset)}.util-removed-text{font-size:var(--fs-sm);color:var(--color-text-secondary)}.util-undo-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--color-accent);font-size:var(--fs-sm);font-weight:600}.util-undo-btn:disabled{opacity:.5;cursor:default}.util-checkbox{width:16px;height:16px;flex:none;accent-color:var(--color-accent)}.util-scan-cta{display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3)}.util-success-mark{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--color-warn-bg);color:var(--color-profit);font-size:22px;font-weight:700}.util-success-title{font-size:var(--fs-md, 15px);font-weight:600;color:var(--color-text)}.util-success-note{font-size:var(--fs-sm);color:var(--color-text-tertiary);max-width:320px}.util-confirm{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--color-loss-border);border-radius:var(--radius-md);background:var(--color-loss-bg)}.group-color-bar{flex:none;width:3px;border-radius:var(--radius-pill);align-self:center;transition:height .15s ease,opacity .15s ease}.feed-header-bar{flex:none;width:3px;height:30px;border-radius:var(--radius-pill)}.wallet-emoji{display:inline-flex;align-items:center;justify-content:center;flex:none}.wallet-chip .wallet-emoji{margin-right:1px}.color-picker-label,.emoji-field>label{display:block;font-size:var(--fs-xs);font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.color-picker{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.color-swatch{width:26px;height:26px;border-radius:var(--radius-pill);border:2px solid transparent;cursor:pointer;padding:0;box-shadow:0 0 0 1px #1414280f inset}.color-swatch.is-selected{border-color:#fff;box-shadow:0 0 0 2px var(--color-text)}.emoji-field{position:relative}.emoji-trigger{width:38px;height:38px;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-inset, #fafafb);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.emoji-trigger:hover{border-color:var(--color-accent)}.emoji-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.emoji-pop{position:fixed;z-index:1001}.event-token-loading{font-size:var(--fs-xs);color:var(--color-text-tertiary)}.event-token{border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--sp-3);display:flex;flex-direction:column;gap:var(--sp-3)}.event-token-id{display:flex;align-items:center;gap:var(--sp-2)}.event-token-name{display:flex;flex-direction:column;flex:1;min-width:0}.event-token-name .token-ticker{font-family:var(--font-mono);font-weight:600;color:var(--color-accent);font-size:var(--fs-sm)}.event-token-name .token-name-full{font-size:var(--fs-xs);color:var(--color-text-tertiary)}.event-token-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-2) var(--sp-3)}.event-token-cell{display:flex;flex-direction:column;gap:2px}.event-token-cell .mono{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text)}.drawer-head-row .wallet-emoji{width:34px;justify-content:flex-start}.drawer-name-input{width:100%;height:22px;padding:0 4px;font-size:15px;font-weight:700;font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-inset);border:1px solid var(--color-field-border);border-radius:var(--radius-sm)}.drawer-name-input:focus{outline:none;border-color:var(--color-accent)}.icon-btn-danger:hover{color:#dc2626}.emoji-inline{position:relative;display:inline-flex;flex:none;align-self:center}.emoji-trigger-inline{border:none;background:none;padding:0;margin:0;cursor:pointer;display:inline-flex;align-items:center;line-height:1;border-radius:var(--radius-sm)}.emoji-trigger-inline:hover{opacity:.65}
