:root{--bg:#0b0f1a;--card:#141a2a;--bd:#1f2740;--tx:#e6e9f2;--mu:#8a93a8;--buy:#16c784;--sell:#ea3943;--neu:#f5a623;--pri:#7c5cff;--cy:#22d3ee}
*{-webkit-tap-highlight-color:transparent;box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--tx);font-family:'Vazirmatn',sans-serif}
body{background:radial-gradient(800px 400px at 100% -10%,rgba(124,92,255,.15),transparent 60%),radial-gradient(600px 400px at -10% 110%,rgba(34,211,238,.08),transparent 60%),var(--bg);background-attachment:fixed;min-height:100vh}
.card{background:var(--card);border:1px solid var(--bd);border-radius:16px}
.mu{color:var(--mu)}
.num{font-feature-settings:"tnum";direction:ltr;unicode-bidi:isolate;display:inline-block}
.shimmer{background:linear-gradient(90deg,#141a2a 0%,#1d2540 50%,#141a2a 100%);background-size:200% 100%;animation:sh 1.3s infinite}
@keyframes sh{to{background-position:-200% 0}}
.spin{animation:spin 1s linear infinite;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}
.rise{animation:rise .45s both}@keyframes rise{from{opacity:0;transform:translateY(12px)}}
.sheet{animation:up .3s cubic-bezier(.2,.9,.3,1) both}@keyframes up{from{transform:translateY(100%)}}
.fade{animation:fd .2s both}@keyframes fd{from{opacity:0}}
.pulse{animation:pl 1.4s infinite}@keyframes pl{0%{box-shadow:0 0 0 0 rgba(22,199,132,.7)}70%{box-shadow:0 0 0 8px rgba(22,199,132,0)}100%{box-shadow:0 0 0 0 rgba(22,199,132,0)}}
.bob{animation:bob 2s ease-in-out infinite;display:inline-block}@keyframes bob{50%{transform:translateY(-4px) rotate(-4deg)}}
.flg{background:rgba(22,199,132,.25);transition:background .6s}.flr{background:rgba(234,57,67,.25);transition:background .6s}
.btn{min-height:44px;border-radius:12px;font-weight:700;transition:transform .1s,opacity .2s}.btn:active{transform:scale(.96)}
input,select{background:#0f1422;border:1px solid var(--bd);color:var(--tx);border-radius:12px;min-height:44px;padding:0 12px;font-family:inherit;outline:none}
input:focus,select:focus{border-color:var(--pri)}
.pb{padding-bottom:calc(84px + env(safe-area-inset-bottom))}
.nav{padding-bottom:env(safe-area-inset-bottom)}
.burst{position:fixed;pointer-events:none;font-size:22px;animation:bu 1.4s ease-out forwards;z-index:99}
@keyframes bu{to{transform:translate(var(--x),var(--y)) rotate(540deg);opacity:0}}
a{color:var(--pri)}