@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Outfit:wght@500;600;700&display=swap";
@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
:root{--bg-color:#0d1117;--panel-bg:#161b22b3;--border-color:#30363d80;--accent-color:#58a6ff;--accent-glow:#58a6ff33;--text-primary:#c9d1d9;--text-secondary:#8b949e;--success:#3fb950;--success-glow:#3fb95033;--danger:#f85149;--danger-glow:#f8514933;--warning:#d29922}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(circle at 15%,#58a6ff14,#0000 25%),radial-gradient(circle at 85% 30%,#3fb9500d,#0000 25%);background-attachment:fixed;flex-direction:column;min-height:100vh;margin:0;font-family:Inter,sans-serif;display:flex}h1,h2,h3,h4,h5,h6{color:#fff;font-family:Outfit,sans-serif}.dashboard-container{width:100%;max-width:1200px;margin:0 auto;padding:2rem}.header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:3rem;padding-bottom:1.5rem;display:flex}.header-title{align-items:center;gap:1rem;display:flex}.header-title h1{background:linear-gradient(90deg, #fff, var(--text-secondary));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2rem}.status-badge{background:var(--panel-bg);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:flex}.status-dot{border-radius:50%;width:10px;height:10px;animation:2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 0 0 var(--success-glow)}70%{box-shadow:0 0 0 6px #0000}to{box-shadow:0 0 #0000}}.status-dot.online{background-color:var(--success);box-shadow:0 0 10px var(--success)}.status-dot.offline{background-color:var(--danger);box-shadow:0 0 10px var(--danger);animation:none}.grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:1.5rem;display:grid}.card{background:var(--panel-bg);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:1.5rem;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden;box-shadow:0 8px 32px #0003}.card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-color), transparent);opacity:0;width:100%;height:2px;transition:opacity .3s;position:absolute;top:0;left:0}.card:hover{border-color:#58a6ff66;transform:translateY(-2px);box-shadow:0 12px 40px #0000004d}.card:hover:before{opacity:1}.card-header{color:var(--text-secondary);align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.card-title{color:#fff;letter-spacing:.5px;font-size:1.1rem;font-weight:600}.stat-value{color:#fff;margin-bottom:.5rem;font-family:Outfit,sans-serif;font-size:2.5rem;font-weight:700}.stat-label{color:var(--text-secondary);font-size:.875rem;display:block}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.text-accent{color:var(--accent-color)}.text-secondary{color:var(--text-secondary)}.font-bold{font-weight:700}.info-row{border-bottom:1px solid #ffffff0d;justify-content:space-between;padding:.75rem 0;display:flex}.info-row:last-child{border-bottom:none}.info-label{color:var(--text-secondary);font-size:.9rem}.info-value{color:#fff;font-weight:600}.badge{text-transform:uppercase;letter-spacing:1px;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:700}.badge.long{color:var(--success);background:#3fb95026;border:1px solid #3fb9504d}.badge.short{color:var(--danger);background:#f8514926;border:1px solid #f851494d}.badge.flat{color:var(--text-secondary);background:#8b949e26;border:1px solid #8b949e4d}.main-stat{align-items:baseline;gap:.5rem;display:flex}.currency{color:var(--text-secondary);font-size:1.25rem;font-weight:500}.skeleton{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14 50%,#ffffff08 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s infinite skeletonLoading}.skeleton-text{width:50%;height:1.5rem;margin-bottom:.5rem}.skeleton-title{width:70%;height:2.5rem;margin-bottom:1rem}@keyframes skeletonLoading{0%{background-position:200% 0}to{background-position:-200% 0}}.refresh-button{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.refresh-button:hover{color:#fff;background:#ffffff0d}.refresh-button:active{transform:scale(.95)}.refresh-button.spinning svg{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.header-actions{align-items:center;gap:1rem;display:flex}.card-error{border-color:var(--danger);margin-bottom:1.5rem}.card-error-hint{margin-top:.5rem}.wallet-details{margin-top:1.5rem}.position-empty{text-align:center;padding:2rem 0}.badge-inline{margin-bottom:1rem;padding:.5rem 1rem;display:inline-block}.position-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;display:flex}.position-symbol{font-size:2rem}.position-pnl-row{border-top:1px dashed var(--border-color);margin-top:.5rem;padding-top:1rem}.footer-timestamp{text-align:center;margin-top:2rem}.mt-6{margin-top:1.5rem}.history-skeleton{padding:2rem}.history-empty{opacity:.7;padding:2rem 0}.history-table-container{margin-top:1rem;overflow-x:auto}.history-table{text-align:left;border-collapse:collapse;width:100%;font-size:.9rem}.history-tr{border-bottom:1px solid var(--border-color)}.history-thead-tr{border-bottom:1px solid var(--border-color);color:var(--text-secondary)}.history-th,.history-td{padding:.75rem 0}.badge-sm{padding:2px 6px;font-size:.7rem}.text-small{font-size:.9rem}.capitalize{text-transform:capitalize}
