@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Syne:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0d0f14;--bg2: #13161d;--bg3: #1a1e28;--bg4: #222736;--bg5: #2a3045;--border: #2a3045;--border2: #3a4560;--text: #e8ecf5;--text2: #8892aa;--text3: #556075;--green: #00d68f;--red: #ff4d6a;--amber: #f5a623;--blue: #4e8fff;--purple: #9b6dff;--cyan: #00c4d4;--green-dim: rgba(0,214,143,.12);--red-dim: rgba(255,77,106,.12);--amber-dim: rgba(245,166,35,.12);--blue-dim: rgba(78,143,255,.12);--purple-dim:rgba(155,109,255,.12);--radius: 8px;--radius-lg: 12px}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:Syne,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea,button{font-family:Syne,sans-serif;font-size:13px}input[type=text],input[type=email],input[type=password],input[type=number],select,textarea{background:var(--bg4);border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:8px 10px;outline:none;transition:border-color .15s;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--blue)}input::placeholder{color:var(--text3)}button{cursor:pointer;border:none;border-radius:var(--radius);font-weight:600;transition:all .12s}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border2)}.mono{font-family:JetBrains Mono,monospace}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-16{gap:16px}.ml-auto{margin-left:auto}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.w-full{width:100%}.text-sm{font-size:12px}.text-xs{font-size:11px}.text-lg{font-size:16px}.text-xl{font-size:20px}.text-2{color:var(--text2)}.text-3{color:var(--text3)}.fw-5{font-weight:500}.fw-6{font-weight:600}.fw-7{font-weight:700}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wrap{flex-wrap:wrap}.up{color:var(--green)}.down{color:var(--red)}.neutral{color:var(--text2)}.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px}.card-title{font-size:10px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--text3);margin-bottom:10px}.btn{padding:7px 16px;border-radius:var(--radius);font-size:12px;font-weight:600;transition:all .12s;display:inline-flex;align-items:center;gap:6px}.btn-sm{padding:5px 10px;font-size:11px}.btn-lg{padding:10px 20px;font-size:14px}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{opacity:.88}.btn-ghost{background:transparent;color:var(--text2);border:1px solid var(--border)}.btn-ghost:hover{background:var(--bg3);color:var(--text)}.btn-green{background:var(--green-dim);color:var(--green);border:1px solid rgba(0,214,143,.3)}.btn-green:hover{background:#00d68f33}.btn-red{background:var(--red-dim);color:var(--red);border:1px solid rgba(255,77,106,.3)}.btn-red:hover{background:#ff4d6a33}.btn-amber{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(245,166,35,.3)}.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:20px;font-size:10px;font-weight:600}.badge-green{background:var(--green-dim);color:var(--green)}.badge-red{background:var(--red-dim);color:var(--red)}.badge-amber{background:var(--amber-dim);color:var(--amber)}.badge-blue{background:var(--blue-dim);color:var(--blue)}.badge-purple{background:var(--purple-dim);color:var(--purple)}.sep{height:1px;background:var(--border);margin:8px 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeIn .2s ease}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}
