:root{--bg: #0b0e14;--surface: #131722;--surface2: #1a1f2b;--border: #242a38;--text: #e6e7ea;--subtext: #9aa0a6;--accent: #ffc53d;--buy: #26a69a;--sell: #ef5350;--radius: 8px;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior:none}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.5}input,select{font-family:inherit}.tnum{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.mono{font-family:var(--mono)}.btn{border:1px solid var(--border);background:var(--surface2);color:var(--text);border-radius:var(--radius);padding:10px 14px;font-weight:600;font-size:14px}.btn:hover:not(:disabled){border-color:var(--accent)}.btn-accent{background:var(--accent);color:#000;border-color:var(--accent)}.btn-buy{background:var(--buy);color:#fff;border-color:var(--buy)}.btn-sell{background:var(--sell);color:#fff;border-color:var(--sell)}.btn-ghost{background:transparent}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px}.chip{background:var(--surface2);border:1px solid var(--border);border-radius:6px;padding:4px 8px;font-size:11px;color:var(--subtext);font-weight:700}.subtext{color:var(--subtext)}.accent{color:var(--accent)}.buy{color:var(--buy)}.sell{color:var(--sell)}.input{background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:10px 12px;font-size:14px;width:100%}.input:focus{outline:none;border-color:var(--accent)}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.gap6{gap:6px}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap16{gap:16px}.spacer{flex:1 1 auto}.center{display:flex;align-items:center;justify-content:center}.screen{height:100vh;height:100dvh;display:flex;flex-direction:column}.overlay{position:fixed;inset:0;background:#000000c7;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px;backdrop-filter:blur(3px);animation:fade .18s ease}.dialog{background:var(--surface);border:1px solid var(--border);border-radius:14px;width:100%;max-width:520px;max-height:90vh;overflow:auto;padding:22px;position:relative;box-shadow:0 20px 60px #0009;animation:pop .2s ease}.modal-x{position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:8px;border:1px solid var(--border);background:var(--surface2);color:var(--subtext);font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;z-index:2}.modal-x:hover{color:var(--text);border-color:var(--accent)}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{width:0;height:0;display:none}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.bar{height:7px;border-radius:999px;background:var(--bg);overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--accent),#ffd970);border-radius:999px;transition:width .5s ease}.hero{background:radial-gradient(900px 200px at 0% 0%,color-mix(in srgb,transparent 86%,var(--accent)),transparent 60%),linear-gradient(180deg,var(--surface),var(--surface2));border:1px solid var(--border);border-radius:14px}.dash-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}@media (max-width: 900px){.dash-grid{grid-template-columns:minmax(0,1fr)}}.hoverable{transition:background .12s ease}.hoverable:hover{background:var(--surface2)}.lift{transition:transform .12s ease,border-color .12s ease}.lift:hover{transform:translateY(-1px);border-color:color-mix(in srgb,transparent 50%,var(--accent))}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toast-wrap{position:fixed;left:50%;top:14px;transform:translate(-50%);z-index:3000;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:10px 16px;font-size:13px;box-shadow:0 6px 24px #00000080}.toast.success{border-color:var(--buy)}.toast.error{border-color:var(--sell)}
