:root{--bg: #070A16;--card: #10172E;--hero: #0D1735;--raised: #172042;--chip: #1B2550;--line: #222C4D;--line2: #2A355E;--line-hero: #1F2D5C;--text: #F2F6FF;--muted: #A3AED3;--muted2: #8E9AC0;--cyan: #00E5FF;--ink: #03131A;--gold: #FFC933;--green: #3BE38F;--red: #FF6B7D;--violet: #9B86FF;--blue: #3D7BFF;--nav-h: 68px;--safe-b: env(safe-area-inset-bottom, 0px);--font: "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Unbounded", "Manrope", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{margin:0;min-height:100%;background:var(--bg)}body{color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior:none}button{font-family:inherit;color:inherit}a{color:var(--cyan)}input,textarea,select{font-family:inherit}img{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.unb{font-family:var(--display)}.muted{color:var(--muted)}.muted2{color:var(--muted2)}.nowrap{white-space:nowrap}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row{display:flex;align-items:center}.col{display:flex;flex-direction:column}.grow{flex:1;min-width:0}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.shell{position:relative;max-width:480px;margin:0 auto;min-height:100dvh;background:var(--bg)}.page{padding-bottom:calc(var(--nav-h) + 40px + var(--safe-b));animation:pageIn .22s ease-out both}.page.no-nav{padding-bottom:calc(24px + var(--safe-b))}.pad{padding-left:16px;padding-right:16px}.top{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 8px;gap:8px}.logo{display:block;height:46px;width:auto}.bal-pill{display:flex;align-items:center;gap:8px;height:44px;padding:0 12px 0 8px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--text);cursor:pointer}.bal-pill .amt{font-family:var(--display);font-size:14px;font-weight:700}.bal-pill .cur{font-size:12px;font-weight:700;color:var(--muted2)}.icon-btn{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--text);cursor:pointer;padding:0}.icon-btn.cyan{background:var(--cyan);border:0;color:var(--ink)}.demo-bar{margin:0 16px 6px;padding:6px 12px;border-radius:12px;background:#ffc9331a;border:1px solid rgba(255,201,51,.35);color:#ffdf7a;font-size:12px;font-weight:700;text-align:center}.h1{margin:0;font-family:var(--display);font-size:26px;font-weight:800}.h2{margin:0;font-family:var(--display);font-size:17px;font-weight:800}.h2l{margin:0;font-family:var(--display);font-size:18px;font-weight:800}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:12px;gap:8px}.link{font-size:13px;font-weight:700;color:var(--cyan);background:none;border:0;padding:0;cursor:pointer;text-decoration:none}.card{background:var(--card);border:1px solid var(--line);border-radius:24px}.card-hero{background:var(--hero);border:1px solid var(--line-hero);border-radius:24px;position:relative;overflow:hidden}.well{background:var(--bg);border:1px solid var(--line);border-radius:16px}.tile{background:var(--raised);border-radius:14px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}.list{display:flex;flex-direction:column;border-radius:20px;background:var(--card);border:1px solid var(--line);overflow:hidden}.list>.li{display:flex;align-items:center;gap:12px;min-height:64px;padding:0 14px;border-bottom:1px solid var(--chip)}.list>.li:last-child{border-bottom:0}.glow{position:absolute;border-radius:50%;pointer-events:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 16px;border-radius:14px;border:0;font-size:14px;font-weight:800;cursor:pointer;text-decoration:none;transition:transform 90ms ease,filter .12s ease,opacity .15s ease;white-space:nowrap}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:default}.btn.lg{height:52px;border-radius:16px;font-size:15px}.btn.xl{height:60px;border-radius:18px;font-family:var(--display);font-size:15px}.btn.block{display:flex;width:100%}.btn-cyan{background:var(--cyan);color:var(--ink)}.btn-white{background:var(--text);color:var(--bg)}.btn-chip{background:var(--chip);border:1px solid var(--line2);color:var(--text)}.btn-dark{background:var(--bg);border:1px solid var(--chip);color:var(--muted)}.btn-ghost{background:transparent;color:var(--cyan)}.btn-danger{background:transparent;color:var(--red)}.btn-grad{background:linear-gradient(135deg,#00e5ff,#3d7bff);color:var(--ink)}.btn-gold{background:linear-gradient(135deg,#ffc94a,#ff8a3d);color:#2a1500}.chips{display:flex;gap:8px;overflow-x:auto;padding:12px 16px 2px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;height:44px;padding:0 16px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--text);font-size:14px;font-weight:700;cursor:pointer}.chip.on{background:var(--cyan);border-color:var(--cyan);color:var(--ink);font-weight:800}.badge{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.tag{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:999px;background:var(--chip);font-size:12px;font-weight:800}.input{height:52px;width:100%;padding:0 14px;border-radius:16px;background:var(--bg);border:1px solid var(--line);color:var(--text);font-size:15px;font-weight:700;outline:none}.input:focus{border-color:var(--cyan)}.bar{height:8px;border-radius:4px;background:var(--chip);overflow:hidden}.bar>i{display:block;height:100%;border-radius:inherit;background:var(--cyan);transition:width .4s ease}.switch{position:relative;width:52px;height:32px;border-radius:16px;background:var(--chip);border:0;cursor:pointer;flex:none;transition:background .16s;padding:0}.switch:after{content:"";position:absolute;left:3px;top:3px;width:26px;height:26px;border-radius:50%;background:var(--muted2);transition:transform .16s,background .16s}.switch.on{background:var(--cyan)}.switch.on:after{transform:translate(20px);background:var(--ink)}.nav{position:fixed;left:50%;transform:translate(-50%);bottom:calc(16px + var(--safe-b));width:calc(min(480px,100vw) - 24px);height:var(--nav-h);display:flex;align-items:center;gap:4px;padding:6px;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:0 12px 32px #0000008c;z-index:40}.nav button{flex:1;height:54px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--muted2);background:transparent;border:0;font-size:11px;font-weight:700;cursor:pointer;position:relative}.nav button.on{background:var(--chip);color:var(--text);font-weight:800}.nav .dot{position:absolute;top:7px;right:calc(50% - 18px);width:8px;height:8px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--card)}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;justify-content:center;align-items:flex-end}.sheet-dim{position:absolute;top:0;right:0;bottom:0;left:0;background:#03050cbd;animation:fadeIn .2s ease-out both}.sheet{position:relative;width:100%;max-width:480px;max-height:92dvh;overflow-y:auto;padding:10px 16px calc(24px + var(--safe-b));border-radius:28px 28px 0 0;background:var(--card);border-top:1px solid var(--line2);display:flex;flex-direction:column;gap:14px;animation:sheetUp .3s cubic-bezier(.2,1,.3,1) both;overscroll-behavior:contain}.sheet>*{flex-shrink:0}.sheet.closing{animation:sheetDown .22s ease-in both}.sheet-dim.closing{animation:fadeOut .22s ease-in both}.grab{align-self:center;width:40px;height:5px;border-radius:3px;background:var(--line2);flex:none}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.seg{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border-radius:16px;background:var(--bg)}.seg button{height:44px;border-radius:12px;background:transparent;border:0;color:var(--muted);font-size:14px;font-weight:700;cursor:pointer}.seg button.on{background:var(--chip);color:var(--text);font-weight:800}.kv{display:flex;justify-content:space-between;gap:10px;font-size:12px;font-weight:600;color:var(--muted)}.kv b{color:var(--text);font-weight:700;text-align:right}.toast{position:fixed;z-index:90;left:50%;top:calc(12px + env(safe-area-inset-top,0px));transform:translate(-50%);max-width:min(420px,92vw);padding:11px 16px;border-radius:14px;background:#2a1720;border:1px solid rgba(255,107,125,.45);box-shadow:0 10px 30px #00000073;font-size:14px;font-weight:700;text-align:center;animation:toastIn .26s cubic-bezier(.2,1.4,.4,1) both}.toast.ok{background:#0e2a26;border-color:#3be38f73}.skeleton{background:linear-gradient(90deg,#10172e,#172042,#10172e);background-size:200% 100%;animation:shimmer 1.4s linear infinite;border-radius:16px}.empty{padding:28px 16px;text-align:center;color:var(--muted2);font-size:13px;font-weight:600}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid rgba(0,229,255,.2);border-top-color:var(--cyan);animation:spin .8s linear infinite}.loader{min-height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--muted);font-size:14px}@keyframes pageIn{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes sheetDown{0%{transform:translateY(0)}to{transform:translateY(100%)}}@keyframes toastIn{0%{transform:translate(-50%,-14px) scale(.92);opacity:0}to{transform:translate(-50%) scale(1);opacity:1}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes popIn{0%{transform:scale(.6);opacity:0}65%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes pulseDot{0%,to{opacity:1}50%{opacity:.35}}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-6px) rotate(-2deg)}}@keyframes twinkle{0%,to{opacity:.2;transform:scale(.7)}50%{opacity:1;transform:scale(1)}}@keyframes raysRot{to{transform:rotate(360deg)}}@keyframes feedIn{0%{transform:translateY(-8px) scale(.94);opacity:0}to{transform:none;opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
