:root{--gold: #ffcf4d;--gold2: #ff9f1c;--ink: #fff7e6;--muted: #bda9c9;--panel: rgba(18, 10, 28, .72);--line: rgba(255, 207, 77, .28);--font: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:#06050b;color:var(--ink);font-family:var(--font);overflow:hidden;overscroll-behavior:none}#app{position:fixed;inset:0;user-select:none;-webkit-user-select:none}#stage{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:crosshair}button{font:inherit;color:inherit;cursor:pointer}.hud{position:absolute;left:0;right:0;top:0;padding:calc(10px + var(--safe-t)) 14px 10px;display:flex;align-items:center;gap:12px;pointer-events:none;background:linear-gradient(to bottom,#06040cd9,#06040c00)}.hud>*{pointer-events:auto}.wallet{display:flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;background:var(--panel);border:1px solid var(--line);box-shadow:0 4px 18px #0006,inset 0 1px #ffffff14;backdrop-filter:blur(8px)}.coin-ico{width:30px;height:30px;border-radius:50%;flex:none;background:radial-gradient(circle at 35% 30%,#fff3b8,#ffcd4a 40%,#c98612 75%,#8a5a08);box-shadow:inset 0 0 0 3px #ffe69699,0 0 12px #ffbe3c80}.wallet b{font-size:26px;font-weight:900;letter-spacing:.5px;font-variant-numeric:tabular-nums;min-width:2ch;background:linear-gradient(#fff6cf,#ffd24a 55%,#ff9d1c);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 2px 0 rgba(90,40,0,.6));transition:transform .12s}.wallet b.bump{transform:scale(1.18)}.wallet small{font-size:12px;color:var(--muted);white-space:nowrap}.wallet.shake{animation:shake .35s}@keyframes shake{20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.level{flex:1;max-width:220px;display:flex;align-items:center;gap:8px}.level span{font-weight:900;font-size:15px;color:var(--gold);text-shadow:0 0 10px rgba(255,180,40,.6);white-space:nowrap}.bar{flex:1;height:8px;border-radius:8px;background:#ffffff1a;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#ff4fa0,#ffcf4d);border-radius:8px;transition:width .3s}.btns{margin-left:auto;display:flex;gap:8px}.btns button{position:relative;width:42px;height:42px;border-radius:14px;border:1px solid var(--line);background:var(--panel);display:grid;place-items:center;backdrop-filter:blur(8px)}.btns svg{width:22px;height:22px;fill:none;stroke:var(--gold);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.btns button:active{transform:scale(.94)}.dot{position:absolute;top:6px;right:6px;width:9px;height:9px;border-radius:50%;background:#ff3d6e;box-shadow:0 0 8px #ff3d6e;display:none}.dot.on{display:block}#chips{position:absolute;top:calc(66px + var(--safe-t));left:14px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;pointer-events:none}.chip{padding:5px 12px;border-radius:999px;font-size:13px;font-weight:800;background:#1478b459;border:1px solid rgba(95,224,255,.6);color:#cff6ff;box-shadow:0 0 14px #28beff66}#floaters{position:absolute;inset:0;pointer-events:none;overflow:hidden}.float{position:absolute;transform:translate(-50%,-50%);font-weight:900;font-size:20px;white-space:nowrap;color:#fff3b0;text-shadow:0 2px 0 #7a3d00,0 0 12px rgba(255,190,40,.9);animation:floatUp 1.1s ease-out forwards}.float.big{font-size:30px;color:#fff;text-shadow:0 2px 0 #a0105a,0 0 18px rgba(255,80,180,.9)}.float.bad{color:#ff8c9c;font-size:16px;text-shadow:0 0 8px rgba(255,40,70,.8)}@keyframes floatUp{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}15%{opacity:1;transform:translate(-50%,-60%) scale(1.1)}to{opacity:0;transform:translate(-50%,-260%) scale(1)}}#banner{position:absolute;left:0;right:0;bottom:calc(13% + var(--safe-b));display:flex;justify-content:center;pointer-events:none;opacity:0}#banner.show{animation:banner 2.4s ease-out forwards}.banner-inner{display:flex;flex-direction:column;align-items:center;padding:14px 36px;border-radius:20px;background:radial-gradient(ellipse at center,#780a3cd9,#28051ebf);border:2px solid var(--gold);box-shadow:0 0 40px #ff3ca099,0 0 90px #ffbe2859}#banner-title{font-size:clamp(26px,6.5vw,46px);font-weight:900;letter-spacing:4px;background:linear-gradient(#fffbe0,#ffd24a 50%,#ff8a1c);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 3px 0 #6a1a00)}#banner-sub{margin-top:4px;font-size:15px;font-weight:700;color:#ffe9b8}@keyframes banner{0%{opacity:0;transform:scale(.4)}12%{opacity:1;transform:scale(1.12)}20%{transform:scale(1)}80%{opacity:1}to{opacity:0;transform:translateY(-30px)}}#flash{position:absolute;inset:0;background:radial-gradient(circle,#fff0b4b3,#ff78c833);opacity:0;pointer-events:none}#flash.on{animation:flash .6s ease-out}@keyframes flash{0%{opacity:.9}to{opacity:0}}#toast{position:absolute;left:50%;bottom:calc(90px + var(--safe-b));transform:translate(-50%);padding:8px 16px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:14px;opacity:0;transition:opacity .25s;pointer-events:none;white-space:nowrap}#toast.on{opacity:1}#hint{position:absolute;left:50%;bottom:calc(22px + var(--safe-b));transform:translate(-50%);text-align:center;pointer-events:none;font-size:15px;font-weight:800;color:#fff;text-shadow:0 2px 8px #000;animation:pulse 1.6s ease-in-out infinite;transition:opacity .6s}#hint small{font-size:12px;font-weight:600;color:var(--muted)}#hint.off{opacity:0;animation:none}@keyframes pulse{50%{opacity:.55}}#loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:radial-gradient(ellipse at center,#2a0c2e,#06050b 70%);z-index:20;transition:opacity .5s}#loading.hide{opacity:0;pointer-events:none}.logo{font-size:clamp(40px,11vw,72px);font-weight:900;letter-spacing:6px;background:linear-gradient(#fffbe0,#ffd24a 50%,#ff8a1c);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 24px rgba(255,150,40,.6))}.load-bar{width:min(280px,70vw);height:6px;border-radius:6px;background:#ffffff1a;overflow:hidden}.load-bar i{display:block;height:100%;width:5%;background:linear-gradient(90deg,#ff4fa0,#ffcf4d);transition:width .3s}#load-text{color:var(--muted);font-size:14px}#btn-start{padding:14px 44px;border-radius:999px;border:none;font-size:20px;font-weight:900;color:#3a1600;background:linear-gradient(#fff2a8,#ffc93c 50%,#ff9d1c);box-shadow:0 6px #a4520a,0 10px 30px #ffa02880;letter-spacing:2px}#btn-start:active{transform:translateY(3px);box-shadow:0 3px #a4520a}.sheet{position:absolute;inset:0;z-index:10;display:flex;align-items:flex-end;justify-content:center;background:#0000008c;backdrop-filter:blur(4px)}.sheet[hidden]{display:none}.sheet-card{width:min(560px,100%);max-height:86vh;overflow:auto;padding:18px 18px calc(22px + var(--safe-b));border-radius:22px 22px 0 0;background:linear-gradient(#1d0f2a,#120a1a);border:1px solid var(--line);border-bottom:none;box-shadow:0 -10px 40px #0009;animation:up .25s ease-out}@media(min-width:700px)and (min-height:600px){.sheet{align-items:center}.sheet-card{border-radius:22px;border-bottom:1px solid var(--line)}}@keyframes up{0%{transform:translateY(40px);opacity:0}}.sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet h2{margin:0;font-size:20px;color:var(--gold)}.sheet h3{margin:18px 0 8px;font-size:15px;color:var(--gold)}.close{width:36px;height:36px;border-radius:12px;border:1px solid var(--line);background:transparent;font-size:22px;line-height:1}.sheet-tip{color:var(--muted);font-size:13px;margin:8px 0 12px}.set{margin-bottom:12px;padding:12px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07)}.set.done{border-color:var(--gold);box-shadow:inset 0 0 20px #ffc83c1f}.set-head{display:flex;justify-content:space-between;font-size:14px;font-weight:800;margin-bottom:8px}.set-head small{color:var(--muted);font-weight:600}.set.done .set-head small{color:var(--gold)}.items{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.item{padding:10px 4px;border-radius:12px;text-align:center;background:#00000040;font-size:13px}.item .ico{font-size:30px;display:block;filter:grayscale(1) brightness(.35)}.item.got .ico{filter:none}.item img{display:block;margin:0 auto 4px}.item>span{display:block}.item .cnt{display:block;font-size:11px;color:var(--muted)}.rows{display:flex;flex-direction:column;gap:4px;margin-top:10px}.row{display:flex;align-items:center;justify-content:space-between;padding:10px 2px;border-bottom:1px solid rgba(255,255,255,.06);font-size:15px}.row input{width:22px;height:22px;accent-color:var(--gold2)}.seg{display:flex;border:1px solid var(--line);border-radius:10px;overflow:hidden}.seg button{padding:6px 12px;border:none;background:transparent;font-size:13px}.seg button:disabled{opacity:.45;cursor:default}.seg button.on{background:var(--gold);color:#2a1200;font-weight:800}.rules{margin:0;padding-left:18px;font-size:13px;color:#e6d8f0;line-height:1.7}.odds{width:100%;border-collapse:collapse;font-size:13px}.odds td{padding:5px 4px;border-bottom:1px solid rgba(255,255,255,.06)}.odds td:first-child{width:72px;font-size:16px}.odds td:last-child{text-align:right;color:var(--gold);font-variant-numeric:tabular-nums}.stats{margin-top:14px;font-size:12px;color:var(--muted);line-height:1.7}.danger{margin-top:16px;width:100%;padding:12px;border-radius:12px;border:1px solid rgba(255,70,100,.5);background:#ff32501f;color:#ff9aac;font-weight:700}@media(max-width:420px){.wallet b{font-size:22px}.coin-ico{width:26px;height:26px}.level{max-width:120px}}#shop{display:flex;flex-direction:column;gap:8px}.buy{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:#ffc83c12;text-align:left}.buy span{display:flex;flex-direction:column}.buy small{color:var(--muted);font-size:12px}.buy em{font-style:normal;font-weight:900;color:var(--gold);white-space:nowrap}.buy:disabled{opacity:.4;cursor:default}.buy:not(:disabled):active{transform:scale(.98)}.ripple{position:absolute;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;border:2px solid rgba(255,215,90,.9);pointer-events:none;animation:ripple .45s ease-out forwards}@keyframes ripple{0%{transform:scale(.3);opacity:1}to{transform:scale(1.3);opacity:0}}.intro h2{text-align:center;margin-bottom:6px}.steps{list-style:none;margin:10px 0 16px;padding:0;counter-reset:step;display:flex;flex-direction:column;gap:10px}.steps li{counter-increment:step;position:relative;padding:12px 12px 12px 52px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07)}.steps li:before{content:counter(step);position:absolute;left:12px;top:12px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#3a1600;background:linear-gradient(#fff2a8,#ffc93c 50%,#ff9d1c)}.steps b{display:block;color:var(--gold);margin-bottom:3px}.steps span{font-size:13px;color:#e6d8f0;line-height:1.6}.go{width:100%;padding:14px;border-radius:999px;border:none;font-size:18px;font-weight:900;color:#3a1600;background:linear-gradient(#fff2a8,#ffc93c 50%,#ff9d1c);box-shadow:0 5px #a4520a}.go:active{transform:translateY(3px);box-shadow:0 2px #a4520a}.chip.task{background:#1e0e2cb3;border-color:var(--line);color:#f3e6ff;box-shadow:none;pointer-events:auto;cursor:pointer;font-weight:700}.chip.task b{color:var(--gold);margin-left:6px}.mission{padding:12px 14px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);margin-bottom:8px}.mission.done{border-color:var(--gold);opacity:.75}.mission-top{display:flex;justify-content:space-between;font-size:14px;font-weight:700;margin-bottom:8px}.mission-top em{font-style:normal;color:var(--gold);white-space:nowrap}.mission .bar{height:7px}.mission-foot{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:6px}.bonus{text-align:center;font-size:13px;color:var(--muted);margin-top:6px}.bonus.on{color:var(--gold);font-weight:800}.row .sub{display:block;font-size:11px;color:var(--muted);font-weight:400}.io{display:flex;gap:8px;margin-top:16px}.io>*{flex:1;padding:11px;border-radius:12px;border:1px solid var(--line);background:#ffc83c12;text-align:center;font-size:14px;font-weight:700;cursor:pointer}.spin-coin{width:84px;height:84px;perspective:400px}.spin-coin i{display:block;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff4c0,#ffcc45 45%,#d18a14 85%,#8a560a);box-shadow:inset 0 0 0 5px #ffe69680,0 0 40px #ffaa2873;animation:coinspin 1.6s linear infinite}@keyframes coinspin{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}.ach{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.badge{padding:10px 6px;border-radius:12px;text-align:center;background:#00000040;border:1px solid rgba(255,255,255,.06)}.badge i{font-style:normal;font-size:26px;display:block;filter:grayscale(1) brightness(.4)}.badge b{display:block;font-size:12px;margin-top:4px;color:var(--muted)}.badge small{display:block;font-size:10px;color:var(--muted);line-height:1.4;margin-top:2px}.badge.got{border-color:var(--line);background:#ffc83c14}.badge.got i{filter:none}.badge.got b{color:var(--gold)}.sheet h3 small{color:var(--muted);font-weight:600;font-size:12px}.tabs{display:flex;gap:4px;background:#0000004d;padding:4px;border-radius:12px}.tabs button{border:none;background:transparent;padding:7px 14px;border-radius:9px;font-size:15px;font-weight:800;color:var(--muted)}.tabs button.on{background:var(--gold);color:#2a1200}.tabs button small{font-size:11px;font-weight:700;opacity:.8}.tabs button.on small{color:#2a1200}.tab[hidden]{display:none}.skins{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}.skin{padding:10px 6px;border-radius:12px;text-align:center;border:1px solid rgba(255,255,255,.08);background:#00000040}.skin .c{width:40px;height:40px;margin:0 auto 6px;border-radius:50%;display:grid;place-items:center;font-weight:900;color:#00000073;box-shadow:inset 0 0 0 3px #ffffff59,inset 0 -4px 8px #0000004d}.skin b{display:block;font-size:12px}.skin em{display:block;font-style:normal;font-size:12px;color:var(--gold);margin-top:2px}.skin.on{border-color:var(--gold);background:#ffc83c1a}.skin:disabled{opacity:.45}.share{margin-top:16px;width:100%;padding:12px;border-radius:12px;border:none;font-weight:900;color:#3a1600;background:linear-gradient(#fff2a8,#ffc93c 50%,#ff9d1c)}#guide{position:absolute;transform:translate(-50%,-100%);pointer-events:none;display:flex;flex-direction:column;align-items:center;animation:bob 1s ease-in-out infinite}#guide[hidden]{display:none}#guide span{padding:6px 12px;border-radius:999px;background:#ffc83cf2;color:#3a1600;font-size:13px;font-weight:900;white-space:nowrap;box-shadow:0 4px 16px #00000080}#guide i{transform:translate(var(--dx, 0));width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:10px solid rgba(255,200,60,.95)}@keyframes bob{50%{margin-top:-6px}}.side{display:none;position:absolute;top:120px;width:230px;padding:14px;border-radius:16px;background:#140a1e99;border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(6px);pointer-events:none}.side.left{left:18px}.side.right{right:18px}.side h4{margin:0 0 10px;font-size:13px;color:var(--gold);letter-spacing:1px}.side .m{margin-bottom:10px;font-size:13px}.side .m.done{opacity:.5}.side .m div{display:flex;justify-content:space-between;margin-bottom:4px}.side .m em{font-style:normal;color:var(--gold);font-size:12px}.side .bar{height:5px}.side ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}.side ol li{display:flex;justify-content:space-between;gap:8px;animation:logIn .3s ease-out}.side ol li small{color:var(--muted);white-space:nowrap}.side ol li.empty{color:var(--muted)}@keyframes logIn{0%{opacity:0;transform:translate(10px)}}@media(min-aspect-ratio:3/2)and (min-width:1100px){.side{display:block}#chips .task{display:none}}.share.alt{margin-top:8px;background:#ffc83c1f;color:var(--gold);border:1px solid var(--line)}
