:root{--primary:#c7866c;--primary-dark:#372118;--primary-light:#f2ded6;--secondary:#945941;--accent:#a6af6b;--gold:#f59e0b;--bg:#eeeef0;--surface:#fff;--surface-hover:#e8e5e1;--surface-elevated:#fff;--border:#0000001a;--border-light:#00000026;--text:#111;--text-secondary:#4a4a4a;--text-muted:#7a7a7a;--font-display:"Gotu", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body:"Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, Consolas, monospace;--radius:20px;--radius-sm:12px;--page-pad:20px;--coral:#ff6b6b;--coral-light:#fff0f0;--sky:#4dabf7;--sky-light:#edf5ff;--mint:#51cf66;--mint-light:#edfcf0;--violet:#845ef7;--violet-light:#f3f0ff}@media (width<=600px){:root{--page-pad:16px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.5;overflow-x:hidden}#root{min-height:100dvh}button,input,select,textarea{font-family:var(--font-body)}input,select,textarea{font-size:16px}@media (width>=601px){input,select,textarea{font-size:14px}}::selection{background:var(--primary);color:#fff}.app{min-height:100vh;display:flex}.sidebar{background:var(--surface);border-right:1px solid var(--border);z-index:10;flex-direction:column;gap:4px;width:240px;padding:24px 16px;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar__brand{border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:12px;padding:4px 8px 20px;display:flex}.sidebar__logo{border-radius:10px;width:36px;height:36px}.sidebar__name{color:var(--text);font-size:18px;font-weight:800}.sidebar__chain{color:var(--text-muted);font-size:10px;font-family:var(--font-mono)}.sidebar__label{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);padding:16px 8px 6px;font-size:10px;font-weight:700}.sidebar__item{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;text-align:left;width:100%;font-size:13px;font-weight:500;font-family:var(--font-body);background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;transition:all .15s;display:flex}.sidebar__item:hover{background:var(--bg);color:var(--text)}.sidebar__item--active{background:var(--primary);color:#fff;font-weight:600}.sidebar__item--active:hover{background:var(--primary);color:#fff}.sidebar__icon{text-align:center;flex-shrink:0;width:20px;font-size:14px}.sidebar__footer{border-top:1px solid var(--border);flex-direction:column;gap:4px;margin-top:auto;padding-top:16px;display:flex}.sidebar__footer a{color:var(--text-muted);border-radius:8px;padding:6px 8px;font-size:12px;text-decoration:none;transition:color .15s}.sidebar__footer a:hover{color:var(--primary)}.main{flex:1;max-width:1200px;margin-left:240px;padding:24px 32px 40px}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header__title{color:var(--text);margin:0;font-size:22px;font-weight:800}.page-header__sub{color:var(--text-muted);margin-top:2px;font-size:12px}.page-header__actions{gap:8px;display:flex}.page-header__btn{font-family:var(--font-body);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:12px;font-weight:600;text-decoration:none;transition:all .15s;display:inline-flex}.page-header__btn:hover{border-color:var(--primary);color:var(--primary)}.page-header__btn--primary{background:var(--primary);color:#fff;border-color:var(--primary)}.page-header__btn--primary:hover{background:var(--text);border-color:var(--text);color:#fff}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card{background:var(--surface);border-radius:var(--radius-sm);border:1px solid var(--border);padding:20px;transition:border-color .15s}.metric-card:hover{border-color:#0000001f}.metric-card__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:11px;font-weight:600}.metric-card__value{color:var(--text);font-size:28px;font-weight:800;line-height:1}.metric-card__delta{border-radius:100px;margin-top:6px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.metric-card__delta--up{background:var(--mint-light);color:#16a34a}.metric-card__delta--down{background:var(--coral-light);color:var(--coral)}.metric-card__delta--neutral{background:var(--bg);color:var(--text-muted)}.metric-card__sub{color:var(--text-muted);margin-top:4px;font-size:11px}.metric-card--coral{border-top:3px solid var(--coral)}.metric-card--primary{border-top:3px solid var(--primary)}.metric-card--gold{border-top:3px solid var(--gold)}.metric-card--accent{border-top:3px solid var(--accent)}.metric-card--sky{border-top:3px solid var(--sky)}.metric-card--violet{border-top:3px solid var(--violet)}.metric-card--mint{border-top:3px solid var(--mint)}.dash-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:24px;display:grid}.dash-grid--3{grid-template-columns:1fr 1fr 1fr}.dash-grid__full{grid-column:1/-1}.card{background:var(--surface);border-radius:var(--radius-sm);border:1px solid var(--border);margin-bottom:16px;padding:20px}.card__header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card__title{color:var(--text);margin:0;font-size:14px;font-weight:700}.card__label{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);margin:0 0 14px;font-size:10px;font-weight:700}.card__badge{background:var(--bg);color:var(--text-muted);border-radius:100px;padding:4px 10px;font-size:11px;font-weight:600}.section{margin-bottom:24px}.section__header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.section__title{color:var(--text);margin:0;font-size:16px;font-weight:700}.section__link{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;text-decoration:none}.vault-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.vault-item{background:var(--bg);border-radius:var(--radius-sm);flex-direction:column;gap:8px;padding:16px;display:flex}.vault-item__name{color:var(--text-secondary);font-size:12px}.vault-item__value{color:var(--text);font-size:18px;font-weight:800}.vault-item__bar{background:var(--border);border-radius:2px;height:4px;overflow:hidden}.vault-item__bar-fill{border-radius:2px;height:100%}.pill-list{flex-wrap:wrap;gap:8px;display:flex}.pill{background:var(--bg);color:var(--text-secondary);border-radius:8px;padding:6px 14px;font-size:12px;font-weight:500;transition:all .15s}.pill:hover{background:var(--primary-light);color:var(--primary)}.tx-row{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 0;display:flex}.tx-row:last-child{border-bottom:none}.tx-row__icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:13px;font-weight:700;display:flex}.tx-row__info{flex:1;min-width:0}.tx-row__name{color:var(--text);font-size:13px;font-weight:600}.tx-row__sub{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.tx-row__amount{font-family:var(--font-mono);text-align:right;flex-shrink:0;font-size:13px;font-weight:600}.market-list{grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:14px;display:grid}.market-item{flex-direction:column;gap:2px;display:flex}.market-item__label{text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);font-size:10px;font-weight:700}.market-item__value{font-family:var(--font-mono);color:var(--text);font-size:20px;font-weight:700}.market-item__sub{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.finance-row{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--text-secondary);flex-wrap:wrap;gap:14px;padding-top:12px;font-size:11px;display:flex}.status-dot{border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot--live{background:var(--mint)}.status-dot--warn{background:var(--gold)}.status-dot--off{background:var(--text-muted)}.triple-graph__controls{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.triple-graph__search{border:1px solid var(--border);min-width:0;color:var(--text);background:var(--bg);border-radius:8px;outline:none;flex:1;padding:8px 12px;font-size:13px;transition:border-color .15s}.triple-graph__search:focus{border-color:var(--primary)}.triple-graph__count{font-family:var(--font-mono);color:var(--text-muted);font-size:11px}.triple-graph__legend{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.triple-graph__tag{font-family:var(--font-mono);border:1px solid;border-radius:100px;padding:3px 10px;font-size:10px}.triple-graph__list{flex-direction:column;gap:2px;max-height:360px;display:flex;overflow-y:auto}.triple-graph__row{border-radius:8px;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:6px 10px;font-size:12px;transition:background .1s;display:grid}.triple-graph__row:hover{background:var(--bg)}.triple-graph__subject{color:var(--text);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.triple-graph__predicate{font-family:var(--font-mono);text-align:center;white-space:nowrap;border:1px solid var(--border);border-radius:100px;padding:2px 8px;font-size:10px}.triple-graph__object{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-footer{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:20px;padding:20px 0;font-size:10px;display:flex}@media (width<=900px){.sidebar{display:none}.main{margin-left:0;padding:16px}.dash-grid,.dash-grid--3{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.metric-grid{grid-template-columns:1fr 1fr}.market-list{grid-template-columns:1fr;gap:12px}.vault-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:12px}}
