:root{color-scheme:dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #0a0a0a;--bg-card: #111113;--bg-hover: #1a1a1f;--border: rgba(255, 255, 255, .08);--text: #fafafa;--text-dim: rgba(255, 255, 255, .5);--accent: #6366f1;--green: #22c55e;--red: #ef4444;--yellow: #eab308}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;background:var(--bg);color:var(--text)}.app{display:flex;min-height:100vh}.sidebar{width:220px;min-height:100vh;background:#0d0d0f;border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1.25rem .75rem;position:sticky;top:0;height:100vh}.sidebar-brand{display:flex;align-items:center;gap:.5rem;padding:0 .5rem 1.5rem}.brand-icon{font-size:1.5rem;color:var(--accent)}.brand-text{font-size:1.25rem;font-weight:700;letter-spacing:.05em}.sidebar-nav{display:flex;flex-direction:column;gap:2px;flex:1}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;border-radius:.5rem;border:none;background:transparent;color:var(--text-dim);font-size:.875rem;cursor:pointer;transition:all .15s;font-family:inherit}.nav-item:hover{background:var(--bg-hover);color:var(--text)}.nav-item.active{background:var(--accent);color:#fff}.nav-icon{font-size:1rem;width:1.25rem;text-align:center}.sidebar-footer{padding-top:1rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:1rem .5rem 0}.chain-badges{display:flex;gap:6px}.chain-dot{width:8px;height:8px;border-radius:50%}.sidebar-version{font-size:.7rem;color:var(--text-dim)}.main{flex:1;padding:1.5rem 2rem;overflow-y:auto;min-height:100vh}.page{max-width:1400px}.page-title{font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;letter-spacing:-.02em}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.page-header .page-title{margin-bottom:0}.filters{display:flex;gap:.5rem}.filters select{background:var(--bg-card);border:1px solid var(--border);color:var(--text);padding:.5rem .75rem;border-radius:.5rem;font-size:.8rem;cursor:pointer}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.25rem}.stat-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim)}.stat-value{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.stat-sub{font-size:.75rem;color:var(--text-dim)}.stat-sub.green{color:var(--green)}.stat-sub.red{color:var(--red)}.dashboard-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.panel{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1rem;margin-bottom:1rem}.panel-title{font-size:.85rem;font-weight:600;margin-bottom:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.panel-title.green{color:var(--green)}.panel-title.red{color:var(--red)}.collection-list{display:flex;flex-direction:column;gap:.5rem}.collection-row{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:.5rem;transition:background .15s}.collection-row:hover{background:var(--bg-hover)}.collection-img{width:36px;height:36px;border-radius:.375rem;object-fit:cover}.collection-info{flex:1;display:flex;flex-direction:column}.collection-name{font-size:.85rem;font-weight:600}.collection-chain{font-size:.7rem;text-transform:capitalize}.collection-stats-mini{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.collection-floor{font-size:.75rem;color:var(--text-dim)}.collection-change{font-size:.75rem;font-weight:600}.collection-vol{font-size:.8rem;font-weight:600;min-width:80px;text-align:right}.trade-list{display:flex;flex-direction:column;gap:.5rem}.trade-row{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:.5rem;transition:background .15s}.trade-row:hover{background:var(--bg-hover)}.trade-type{font-size:.65rem;font-weight:700;padding:.2rem .4rem;border-radius:.25rem;text-transform:uppercase}.trade-type.buy{background:#22c55e26;color:var(--green)}.trade-type.sell{background:#ef444426;color:var(--red)}.trade-info{flex:1;display:flex;flex-direction:column}.trade-name{font-size:.8rem;font-weight:600}.trade-time{font-size:.7rem;color:var(--text-dim)}.trade-price{font-size:.8rem;font-weight:600}.trade-source{font-size:.7rem;color:var(--text-dim)}.nft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.nft-card{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;overflow:hidden;cursor:pointer;transition:all .2s}.nft-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 24px #6366f126}.nft-img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.nft-body{padding:.75rem;display:flex;flex-direction:column;gap:.25rem}.nft-collection{font-size:.7rem;color:var(--text-dim)}.nft-name{font-size:.85rem;font-weight:600}.nft-meta{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.nft-price{font-size:.9rem;font-weight:700}.nft-rarity{font-size:.65rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.nft-chain{font-size:.7rem;text-transform:capitalize}.orderbook-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.order-header{display:grid;grid-template-columns:1fr 1.5fr 1fr .8fr;gap:.5rem;padding:.5rem;font-size:.7rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}.order-row{display:grid;grid-template-columns:1fr 1.5fr 1fr .8fr;gap:.5rem;padding:.4rem .5rem;font-size:.8rem;border-radius:.25rem;transition:background .15s}.order-row:hover{background:var(--bg-hover)}.order-price{font-weight:600}.order-nft{font-weight:500}.order-maker,.order-source{color:var(--text-dim);font-size:.75rem}.bots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.bot-card{background:var(--bg-card);border:1px solid var(--border);border-radius:.75rem;padding:1rem;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:.5rem}.bot-card:hover{border-color:var(--accent);transform:translateY(-1px)}.bot-card.stopped{opacity:.6}.bot-header{display:flex;justify-content:space-between;align-items:center}.bot-name{font-size:1rem;font-weight:700}.bot-status{display:flex;align-items:center;gap:.35rem;font-size:.75rem;text-transform:capitalize;font-weight:600}.dot{width:6px;height:6px;border-radius:50%;display:inline-block}.bot-type{font-size:.7rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.bot-strategy{font-size:.8rem;color:var(--text-dim);line-height:1.4}.bot-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.25rem}.bot-metric{display:flex;flex-direction:column;gap:2px}.bot-metric-label{font-size:.65rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.bot-metric-value{font-size:.9rem;font-weight:700}.bot-chain{font-size:.7rem;text-transform:capitalize}.arb-list{display:flex;flex-direction:column;gap:.5rem}.arb-row{display:flex;align-items:center;gap:1rem;padding:.75rem;border-radius:.5rem;transition:background .15s;flex-wrap:wrap}.arb-row:hover{background:var(--bg-hover)}.arb-status{display:flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:600;text-transform:capitalize;min-width:80px}.arb-info{display:flex;flex-direction:column;min-width:140px}.arb-name{font-size:.85rem;font-weight:600}.arb-collection{font-size:.7rem;color:var(--text-dim)}.arb-route{display:flex;align-items:center;gap:.5rem;font-size:.8rem}.arb-from{color:var(--text-dim)}.arb-arrow{color:var(--accent)}.arb-to{color:var(--text-dim)}.arb-prices{display:flex;flex-direction:column;gap:2px;font-size:.75rem}.arb-buy{color:var(--green)}.arb-sell{color:var(--red)}.arb-profit{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.arb-profit-eth{font-size:.85rem;font-weight:700;color:var(--green)}.arb-profit-pct{font-size:.7rem;color:var(--green)}.arb-time{font-size:.7rem;color:var(--text-dim)}.table-wrap{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.8rem}.data-table th{text-align:left;padding:.6rem .75rem;font-size:.7rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}.data-table td{padding:.6rem .75rem;border-bottom:1px solid var(--border)}.data-table tr:hover td{background:var(--bg-hover)}.table-name{display:flex;align-items:center;gap:.5rem;font-weight:600}.table-img{width:28px;height:28px;border-radius:.25rem;object-fit:cover}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:grid;place-items:center;z-index:100;padding:1rem}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:1rem;padding:1.5rem;max-width:440px;width:100%;max-height:90vh;overflow-y:auto;position:relative;display:flex;flex-direction:column;gap:.75rem}.modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;color:var(--text-dim);font-size:1.5rem;cursor:pointer;line-height:1}.modal h3{font-size:1.25rem;font-weight:700}.modal-collection{color:var(--text-dim);font-size:.85rem}.modal-img{width:100%;border-radius:.5rem}.modal-details{display:flex;flex-direction:column;gap:.5rem}.modal-row{display:flex;justify-content:space-between;padding:.35rem 0;border-bottom:1px solid var(--border);font-size:.85rem}.modal-row span:first-child{color:var(--text-dim)}.modal-row span:last-child{font-weight:600}.modal-traits{display:flex;flex-wrap:wrap;gap:.5rem}.trait{background:#ffffff0d;border:1px solid var(--border);border-radius:.375rem;padding:.35rem .6rem;display:flex;flex-direction:column;gap:2px}.trait-key{font-size:.6rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.05em}.trait-val{font-size:.8rem;font-weight:600}.bot-strategy-full{font-size:.85rem;color:var(--text-dim);line-height:1.5}.bot-actions{display:flex;gap:.5rem}.btn-primary{background:var(--accent);color:#fff;border:none;padding:.6rem 1.25rem;border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:opacity .15s;font-family:inherit}.btn-primary:hover{opacity:.85}.btn-secondary{background:transparent;color:var(--text);border:1px solid var(--border);padding:.6rem 1.25rem;border-radius:.5rem;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s;font-family:inherit}.btn-secondary:hover{background:var(--bg-hover)}.btn-sm{background:var(--accent);color:#fff;border:none;padding:.35rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;cursor:pointer;font-family:inherit}.green{color:var(--green)}.red{color:var(--red)}@media(max-width:900px){.sidebar{width:60px;padding:.75rem .35rem}.brand-text,.nav-item span:last-child,.sidebar-footer{display:none}.nav-item{justify-content:center;padding:.6rem}.nav-icon{width:auto}.sidebar-brand{justify-content:center;padding-bottom:1rem}.dashboard-row,.orderbook-grid{grid-template-columns:1fr}.main{padding:1rem}}
