*{box-sizing:border-box}html,body{margin:0;background:#140a2a;color:#f3eaff;font-family:system-ui,"PingFang SC","Noto Sans CJK SC",sans-serif;-webkit-tap-highlight-color:transparent}
body{max-width:520px;margin:0 auto;min-height:100vh;padding-bottom:76px;background:radial-gradient(ellipse at top,#2c1460,#140a2a 60%)}
header{display:flex;align-items:center;gap:8px;padding:12px 14px;position:sticky;top:0;background:#140a2acc;backdrop-filter:blur(6px);z-index:5}
.logo{font-weight:900;font-size:18px;text-shadow:0 2px 0 #3a1550}.logo small{color:#ffd23a;font-size:11px;margin-left:4px}
.beans{margin-left:auto;background:#2a1450;border:2px solid #fff;border-radius:12px;padding:3px 10px;font-weight:800;font-size:13px}
.btn{font:inherit;font-weight:900;border:3px solid #1a1020;border-radius:14px;padding:10px 18px;box-shadow:0 4px 0 #1a1020;cursor:pointer;background:#fff;color:#3a2340}
.btn:active{transform:translateY(3px);box-shadow:0 1px 0 #1a1020}.btn.o{background:#ff8a1e;color:#fff}.btn.p{background:#a879ff;color:#fff}.btn.s{padding:6px 12px;font-size:13px;border-width:2px;box-shadow:0 3px 0 #1a1020}.btn:disabled{opacity:.45}
.panel{background:#24124a;border:2px solid #4a2a86;border-radius:16px;padding:14px;margin:12px}
h2{margin:6px 0 10px;font-size:17px}h3{margin:4px 0 8px;font-size:15px;color:#d8c8ff}
input{font:inherit;width:100%;padding:10px 12px;border-radius:12px;border:2px solid #4a2a86;background:#1a0d38;color:#fff;margin:6px 0}
nav{position:fixed;bottom:0;left:0;right:0;max-width:520px;margin:0 auto;display:flex;background:#1d0e3c;border-top:2px solid #4a2a86;z-index:6}
nav a{flex:1;text-align:center;padding:8px 0 10px;color:#a898cc;text-decoration:none;font-weight:800;font-size:11px;position:relative}nav a b{display:block;font-size:20px}
nav a.on{color:#fff}nav a i{position:absolute;top:3px;right:18%;background:#ff5ab8;color:#fff;border-radius:9px;font-size:10px;font-style:normal;padding:0 5px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cardt{position:relative;cursor:pointer}.cardt img{width:100%;display:block;image-rendering:auto}
.cardt .sel{position:absolute;inset:0;border:4px solid #ff8a1e;border-radius:12px;display:none}.cardt.picked .sel{display:block}
.cardt .lock{position:absolute;top:4px;right:4px;background:#000a;border-radius:8px;padding:1px 5px;font-size:11px}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}.chip{padding:4px 10px;border-radius:10px;border:2px solid #4a2a86;font-size:12px;font-weight:800;cursor:pointer}.chip.on{background:#fff;color:#3a2340}
.book{display:flex;gap:4px;flex-wrap:wrap}.book img{width:38px;height:38px;image-rendering:pixelated;background:#1a0d38;border-radius:8px}
.row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #3a2070}.row:last-child{border:0}.row .n{flex:1;font-weight:800}
.muted{color:#a898cc;font-size:12px}.tier{font-weight:900}
.modal{position:fixed;inset:0;background:#0b0620ee;z-index:20;overflow:auto;display:none}.modal.on{display:block}.modal .in{max-width:480px;margin:0 auto;padding:16px}
#animwrap{position:fixed;inset:0;z-index:30;display:none;background:#0b0620}#animwrap.on{display:block}#animwrap iframe{border:0;width:100%;height:100%}
.hero{text-align:center}.hero img{width:120px;image-rendering:pixelated;animation:bob 1.6s ease-in-out infinite}@keyframes bob{50%{transform:translateY(-8px)}}
table{width:100%;border-collapse:collapse;font-size:13px}td{padding:3px 4px}
#toast{position:fixed;left:50%;top:70px;transform:translate(-50%,-20px);background:#fff;color:#3a2340;font-weight:900;padding:8px 16px;border-radius:12px;opacity:0;transition:.25s;z-index:99;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}
.trade .side{display:flex;gap:4px;flex-wrap:wrap}.trade .side img{width:54px}

.cf3{animation:cfg 2.4s ease-in-out infinite}@keyframes cfg{50%{filter:drop-shadow(0 0 8px #ffcf3a) brightness(1.12)}}
.cf4{animation:cfh 3s linear infinite}@keyframes cfh{0%,100%{filter:drop-shadow(0 0 6px #ff7ad8)}33%{filter:drop-shadow(0 0 10px #7af0ff) brightness(1.1)}66%{filter:drop-shadow(0 0 10px #ffe27a) brightness(1.05)}}

.gbtn{display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;color:#222;text-decoration:none;width:100%;box-sizing:border-box}
