/* 对齐 Flutter GlassTokens：静态渐变，无实时模糊；系统浅色模式使用同套结构。 */
:root{color-scheme:light dark;font-family:system-ui,-apple-system,"PingFang SC",sans-serif;--bg:#070d23;--panel:#151d35;--raised:#202a44;--text:#f4f5fc;--muted:#aab7cf;--line:#354363;--accent:#ff4fa3;--purple:#aa56ff;--gold:#f2d394;--selected:#251b40;--glow:#44275044}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 0 0,var(--glow),transparent 55%),var(--bg);color:var(--text);line-height:1.55}body.modal-open{overflow:hidden}main{max-width:720px;margin:auto;padding:24px 16px calc(24px + env(safe-area-inset-bottom))}.wallet-page{max-width:560px;padding-top:env(safe-area-inset-top)}h1{font-size:21px;line-height:1.3;margin:0}h2{font-size:18px;margin:0;font-weight:700}p{color:var(--muted)}
button,input,select{font:inherit;min-height:44px;border-radius:12px;padding:10px 14px;border:1px solid var(--line);background:var(--panel);color:var(--text);max-width:100%}button{cursor:pointer;transition:background .16s,border-color .16s,transform .16s}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.55;cursor:not-allowed}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.primary{background:linear-gradient(110deg,var(--accent),var(--purple));color:#fff;border:0;font-weight:700}input,select{width:100%;margin:6px 0}input::placeholder{color:var(--muted)}input:focus{border-color:var(--accent);outline:none}label{display:block}a{color:var(--purple)}[hidden]{display:none!important}.muted{color:var(--muted);font-size:13px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grid{display:grid;gap:10px}.notice{color:#f7b2ba;white-space:pre-line;font-size:14px;overflow-wrap:anywhere}.notice:empty{display:none}output{display:block;white-space:pre-line}.text-button{background:transparent;border:0;color:var(--muted);padding:8px;font-size:13px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:68px}.topbar>.text-button{color:var(--accent);font-size:15px}.user-chip{display:flex;align-items:center;gap:8px;min-width:0;max-width:55%;font-size:14px;font-weight:600}.user-chip #who{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.avatar{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:50%;overflow:hidden;background:var(--raised);color:var(--accent)}.avatar img{grid-area:1/1;width:100%;height:100%;object-fit:cover}.avatar span{grid-area:1/1}
.balance-card{display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(120deg,var(--raised),var(--panel));padding:22px 16px;margin:8px 0 0}.diamond-icon{width:66px;height:66px;flex:none}.balance-content{display:flex;flex-direction:column;min-width:0}.balance-content strong{font-size:32px;font-weight:850;overflow-wrap:anywhere;line-height:1.25}.balance-content span,.exchange-rate{color:var(--muted);font-size:13px}.exchange-rate{margin-left:auto;flex-shrink:0}.account-tools{display:flex;align-items:center;flex-wrap:wrap;gap:2px;margin:4px 0;font-size:12px;color:var(--muted)}#accountLabel{flex:1;overflow-wrap:anywhere}
.recharge-section{margin-top:22px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.product{position:relative;text-align:center;padding:17px 8px 11px;border-radius:14px;min-width:0;white-space:pre-line;background:var(--panel)}.product[aria-pressed=true]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:var(--selected)}.product[aria-pressed=true]::after{content:'✓';position:absolute;top:5px;right:6px;background:var(--accent);color:white;border-radius:50%;width:14px;height:14px;line-height:14px;font-size:10px}.product-count{display:block;font-size:18px;font-weight:850;overflow-wrap:anywhere}.product-unit{font-size:11px;font-weight:400;color:var(--muted);margin-left:4px}.product-bonus{display:block;color:var(--accent);font-size:11px;min-height:18px;margin:4px 0}.product-price{display:block;color:var(--muted);font-size:14px;font-weight:700}.product-vip{display:block;color:var(--gold);font-size:10px;margin-top:5px}
.custom-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-top:12px;padding:14px}.custom-card label{font-size:15px;font-weight:600}.custom-card input{border:0;background:var(--raised);padding:14px;margin-top:10px}.custom-card p{margin:6px 0 0}.arrival{margin:16px 0;color:var(--muted);font-size:13px;min-height:60px}.arrival strong{font-size:20px;color:var(--accent)}.arrival-title{color:var(--text);font-size:16px}.payment-channel{display:flex;align-items:center;gap:12px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:15px}.alipay-icon{background:#597cff;color:white;font-size:26px;font-weight:700;border-radius:11px;width:40px;height:40px;text-align:center}.channel-check{margin-left:auto;color:var(--accent)}.recharge-button{width:100%;min-height:48px;border-radius:28px;margin-top:16px}.payment-caption{font-size:12px;text-align:center;margin:8px 0}
.benefit{display:flex;align-items:center;gap:8px;color:var(--gold);background:#bb913b12;border:1px solid #bb913b44;border-radius:12px;padding:8px 10px;margin-bottom:12px;font-size:13px}.benefit>span{font-size:25px}.benefit .text-button{margin-left:auto;color:inherit;white-space:nowrap}.sub-card,.cashier{background:var(--panel);border-radius:16px;padding:18px;margin-top:16px}.purchase-help{margin-top:24px;font-size:13px;color:var(--muted)}summary{cursor:pointer;min-height:44px;display:flex;align-items:center}footer{text-align:center;font-size:12px;margin-top:24px;color:var(--muted);overflow-wrap:anywhere}footer p{margin:4px}footer a{color:inherit;text-decoration:none}
.confirm-overlay{position:fixed;inset:0;z-index:10;background:#0009;display:flex;align-items:center;justify-content:center;padding:16px}.confirm-overlay section{background:var(--panel);width:100%;max-width:430px;max-height:min(90vh,760px);max-height:min(calc(100dvh - 32px),760px);overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:22px;padding:22px;animation:dialog-in .18s ease-out}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.icon-button{border:0;background:transparent;color:var(--muted);font-size:26px;padding:0;width:44px;flex:none}.confirm-overlay label{font-size:13px;color:var(--muted);margin-top:12px}.captcha-row,.sms-row{display:flex;align-items:center;gap:10px}.captcha-row input,.sms-row input{min-width:0;flex:1}.captcha-button{padding:0;overflow:hidden;width:112px;height:48px;flex:none}.captcha-button img{display:block;width:100%;height:100%;object-fit:contain}.sms-row button{flex:none;color:var(--accent);font-size:13px}.full-width{width:100%;margin-top:8px;border-radius:24px}.dialog-footnote{font-size:12px;text-align:center}.dialog-actions{margin-top:18px}.dialog-actions button{flex:1}#confirmation{padding-top:16px;line-height:1.9}#rulesContent{white-space:pre-line}
.product-unit{display:inline-block;white-space:nowrap}
/* 标题与 App 钱包一样居中，右侧身份限制宽度，长昵称不挤偏标题。 */
.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px}
.topbar h1{grid-column:2;grid-row:1}.topbar>.text-button,.topbar>.user-chip{grid-column:3;grid-row:1;justify-self:end;max-width:100%}
@keyframes dialog-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){button,.confirm-overlay section{animation:none;transition:none}}@media(max-width:359px){.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-card{flex-wrap:wrap}.exchange-rate{margin-left:78px}.confirm-overlay section{padding:16px}}@media(prefers-color-scheme:light){:root{--bg:#f5f6fb;--panel:#fff;--raised:#edf0f8;--text:#19233a;--muted:#52617a;--line:#dbe1ec;--accent:#b71e68;--purple:#7a3cb9;--gold:#805b17;--selected:#fff0f8;--glow:#e9d8ff66}.notice{color:#ad2142}}
