:root{--bg: #000000;--surface: #0d0d0d;--surface-2: #161616;--surface-3: #1f1f1f;--border: #262626;--border-strong: #3a3a3a;--text: #ffffff;--text-dim: #a3a3a3;--text-faint: #6b6b6b;--ink: #ffffff;--ink-contrast: #000000;--r-sm: 10px;--r: 14px;--r-lg: 20px;--nav-h: 66px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit}svg{flex:none}.app{max-width:560px;margin:0 auto;padding:12px 14px calc(var(--nav-h) + 28px);min-height:100vh}.topbar{display:flex;align-items:center;gap:12px;padding:6px 2px 16px}.avatar{width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--ink-contrast);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex:none}.avatar-lg{width:78px;height:78px;border-radius:50%;margin:0 auto 12px;background:var(--ink);color:var(--ink-contrast);display:flex;align-items:center;justify-content:center;font-size:30px;font-weight:700}.topbar .who{flex:1;min-width:0}.topbar .greet{font-size:13px;color:var(--text-faint)}.topbar .name{font-size:16px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-btn{width:40px;height:40px;flex:none;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text-dim);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:active{background:var(--surface-2)}h2.screen{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:2px 0 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}h3.section{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin:26px 0 10px}.hero{border:1px solid var(--border);border-radius:var(--r-lg);padding:24px 20px;margin-bottom:14px;background:linear-gradient(180deg,var(--surface-2),var(--surface) 75%)}.hero .cap{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:10px}.hero .amount{font-size:40px;font-weight:700;line-height:1.02;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.hero .amount small{font-size:19px;font-weight:500;color:var(--text-faint);margin-left:8px;letter-spacing:0}.hero .sub{font-size:13.5px;color:var(--text-dim);margin-top:8px}.hero .pill{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:12.5px;color:var(--text-dim);background:var(--surface-3);border:1px solid var(--border);padding:6px 12px;border-radius:999px}.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:20px}.quick button{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:14px 4px 11px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;font-size:11.5px;color:var(--text-dim);line-height:1.25;text-align:center}.quick button .ico{width:36px;height:36px;border-radius:11px;background:var(--surface-3);color:var(--text);display:flex;align-items:center;justify-content:center}.quick button.primary .ico{background:var(--ink);color:var(--ink-contrast)}.quick button:disabled{opacity:.35}.rates{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:15px 17px;margin-bottom:14px}.rates .head{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-faint);margin-bottom:13px}.rates .head .spacer{flex:1}.rates .grid{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.rates .val{font-size:18px;font-weight:650;font-variant-numeric:tabular-nums}.rates .lab{font-size:11.5px;color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase}.card{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:16px;margin-bottom:12px}.card.flush{padding:2px 16px}.card-title{font-size:15px;font-weight:650;margin-bottom:4px}.card-sub{font-size:13px;color:var(--text-dim)}.tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.tile{border:1px solid var(--border);border-radius:var(--r);background:var(--surface);padding:15px;text-align:left;cursor:pointer;display:block;width:100%;color:inherit}.tile .t-label{font-size:12.5px;color:var(--text-faint);margin-bottom:8px;display:flex;align-items:center;gap:6px}.tile .t-value{font-size:20px;font-weight:700;font-variant-numeric:tabular-nums}.tile.invert{background:var(--ink);border-color:var(--ink);color:var(--ink-contrast)}.tile.invert .t-label{color:#0009}.promos{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -14px 18px;padding:0 14px 4px;scrollbar-width:none}.promos::-webkit-scrollbar{display:none}.promo{flex:none;width:236px;scroll-snap-align:start;border-radius:var(--r);padding:15px 16px;border:1px solid var(--border);background:var(--surface);text-align:left;color:inherit;cursor:pointer;position:relative;overflow:hidden}.promo .p-icon{color:var(--text-faint);margin-bottom:10px}.promo .p-title{font-size:14.5px;font-weight:650;margin-bottom:4px}.promo .p-sub{font-size:12.5px;color:var(--text-dim)}.promo.invert{background:var(--ink);border-color:var(--ink);color:var(--ink-contrast)}.promo.invert .p-icon{color:#0000008c}.promo.invert .p-sub{color:#0000009e}.row-btn{display:flex;align-items:center;gap:13px;width:100%;text-align:left;border:none;background:transparent;color:inherit;padding:13px 0;cursor:pointer;border-bottom:1px solid var(--border)}.row-btn:last-child{border-bottom:none}.row-btn .lead{width:40px;height:40px;flex:none;border-radius:12px;background:var(--surface-3);color:var(--text);display:flex;align-items:center;justify-content:center}.row-btn .lead.in{background:var(--ink);color:var(--ink-contrast)}.row-btn .body{flex:1;min-width:0}.row-btn .t1{font-size:15px;font-weight:550;display:block}.row-btn .t2{font-size:12.5px;color:var(--text-faint);margin-top:2px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-btn .trail{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.row-btn .trail .m{font-size:15px;font-weight:650;color:var(--text-dim);display:block}.row-btn .trail .m.in{color:var(--text)}.row-btn .trail .s{font-size:12px;color:var(--text-faint);margin-top:2px;display:block}.row-btn .chev{color:var(--text-faint)}.kv{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--border);font-size:14.5px}.kv:first-child{padding-top:0}.kv:last-child{border-bottom:none;padding-bottom:0}.kv .k{color:var(--text-faint)}.kv .v{text-align:right;font-weight:550;font-variant-numeric:tabular-nums;word-break:break-all}.kv .v.strong{font-weight:700}.label{display:block;font-size:13px;color:var(--text-faint);margin:0 0 8px}.field{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;margin-bottom:14px}.field:focus-within{border-color:var(--ink)}.field.readonly{background:transparent;border-style:dashed}.field .prefix{display:flex;align-items:center;padding:0 14px;color:var(--text-faint);border-right:1px solid var(--border);font-size:15px}.field input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text);padding:15px 14px;font:inherit;font-variant-numeric:tabular-nums}.field input::placeholder{color:var(--text-faint)}.field .suffix button{border:none;background:transparent;color:var(--text);font-size:13px;font-weight:650;padding:0 14px;height:100%;cursor:pointer;text-transform:uppercase;letter-spacing:.04em}.segmented{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:4px;margin-bottom:18px}.segmented button{flex:1;border:none;background:transparent;color:var(--text-faint);padding:10px 6px;border-radius:9px;cursor:pointer;font-size:14px}.segmented button.active{background:var(--ink);color:var(--ink-contrast);font-weight:600}.btn{width:100%;border:none;border-radius:13px;background:var(--ink);color:var(--ink-contrast);font-size:16px;font-weight:650;padding:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:9px}.btn:active{background:#d4d4d4}.btn:disabled{opacity:.28;cursor:default}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--border-strong)}.btn.ghost:active{background:var(--surface-2)}.btn+.btn{margin-top:10px}.notice{display:flex;gap:11px;border-radius:12px;padding:13px 15px;font-size:14px;margin-bottom:14px;border:1px solid var(--border);background:var(--surface);color:var(--text-dim)}.notice svg{margin-top:1px;color:var(--text-faint)}.notice b{color:var(--text)}.notice.warn{border-left:3px solid var(--text-dim);color:var(--text)}.notice.warn svg{color:var(--text)}.notice.error{border-color:var(--border-strong);border-left:3px solid var(--ink);background:var(--surface-2);color:var(--text)}.notice.error svg{color:var(--text)}.hint{font-size:12.5px;color:var(--text-faint);margin:-4px 0 14px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap;border:1px solid var(--border-strong);color:var(--text-dim)}.badge.done{background:var(--ink);border-color:var(--ink);color:var(--ink-contrast)}.badge.processing{border-style:dashed;color:var(--text)}.badge.pending{border-style:dashed}.badge.failed{border-color:var(--text-faint);color:var(--text-faint);text-decoration:line-through}.qr-wrap{background:var(--ink);border-radius:var(--r-lg);padding:18px;display:flex;justify-content:center;margin-bottom:14px}.qr-wrap img{width:100%;max-width:230px;display:block}.addr{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14.5px;line-height:1.55;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px;word-break:break-all;text-align:center;margin-bottom:12px}.level{border:1px dashed var(--border-strong);border-radius:var(--r);padding:17px;margin-bottom:11px;background:var(--surface)}.level.current{border-style:solid;border-color:var(--ink);background:var(--surface-2)}.level.locked{opacity:.45}.level .l-head{display:flex;align-items:center;gap:10px;margin-bottom:8px}.level .l-name{font-size:17px;font-weight:700}.level .l-num{color:var(--text-faint);font-weight:500;font-size:14px}.level .l-desc{font-size:14px;color:var(--text-dim);margin-bottom:14px}.level .l-desc b{color:var(--text);font-size:16px}.level .req{display:flex;align-items:center;gap:10px;font-size:14px;padding:5px 0}.level .req .box{width:19px;height:19px;flex:none;border:1.5px solid var(--border-strong);border-radius:6px;display:flex;align-items:center;justify-content:center}.level .req .box.ok{background:var(--ink);border-color:var(--ink);color:var(--ink-contrast)}.level .req .txt{flex:1;color:var(--text-dim)}.level .req .num{font-variant-numeric:tabular-nums;font-weight:600}.level .track{display:flex;gap:6px;margin-top:15px}.level .track span{flex:1;height:3px;border-radius:2px;background:var(--border)}.level .track span.on{background:var(--ink)}.code-box{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:13px 14px;margin-bottom:12px}.code-box span{flex:1;min-width:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-dim)}.code-box button{border:none;background:transparent;color:var(--text);cursor:pointer;display:flex;padding:2px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000c7;z-index:40;display:flex;align-items:flex-end;animation:fade .16s ease}.sheet{width:100%;max-width:560px;margin:0 auto;background:var(--surface);border-radius:22px 22px 0 0;border-top:1px solid var(--border-strong);padding:10px 16px calc(20px + env(safe-area-inset-bottom));max-height:88vh;overflow-y:auto;animation:rise .2s cubic-bezier(.22,1,.36,1)}.sheet .grabber{width:38px;height:4px;border-radius:2px;background:var(--border-strong);margin:4px auto 14px}.sheet .s-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.sheet .s-head h3{font-size:21px;font-weight:700;margin:0}.sheet .s-sub{font-size:11.5px;color:var(--text-faint);letter-spacing:.09em;text-transform:uppercase;margin:20px 0 4px}@keyframes rise{0%{transform:translateY(14%);opacity:.4}}@keyframes fade{0%{opacity:0}}.empty{text-align:center;padding:24px 16px 34px}.empty .skeleton{display:flex;flex-direction:column;gap:10px;margin-bottom:26px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 45%,transparent);mask-image:linear-gradient(180deg,transparent,#000 45%,transparent)}.empty .skeleton i{height:62px;border-radius:var(--r);background:var(--surface);border:1px solid var(--border);display:block}.empty h3{font-size:21px;font-weight:700;margin:0 0 8px}.empty p{color:var(--text-dim);font-size:14.5px;margin:0 0 20px}.center{text-align:center;color:var(--text-faint);padding:46px 0;font-size:14.5px}.muted{color:var(--text-dim);font-size:14px}.nav{position:fixed;left:0;right:0;bottom:0;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);display:flex;align-items:flex-start;background:#000000eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);z-index:30}.nav button{flex:1;border:none;background:transparent;color:var(--text-faint);font-size:10.5px;padding:11px 2px 0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}.nav button.active{color:var(--text)}.nav .fab{flex:none;width:62px}.nav .fab .ring{position:absolute;top:-20px;left:50%;transform:translate(-50%);width:56px;height:56px;border-radius:50%;background:var(--ink);color:var(--ink-contrast);display:flex;align-items:center;justify-content:center;border:4px solid var(--bg)}.nav .fab .lbl{margin-top:40px;font-size:10.5px}.back{border:none;background:transparent;color:var(--text-dim);font-size:15px;padding:2px 0 12px;cursor:pointer;display:flex;align-items:center;gap:6px}
