*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-deep:#140c22;--bg-panel:#1e1433;--bg-panel-2:#271a40;--gold:#e8c36a;--gold-strong:#f5d67b;--gold-dim:rgba(232,195,106,.35);--silver-grad:linear-gradient(180deg, #f5f7fb, #ccd3de 58%, #97a1b0);--silver-ink:#232a35;--red:#e0354b;--red-dim:rgba(224,53,75,.5);--green:#2fbf71;--green-dim:rgba(47,191,113,.5);--ink:#f3ead2;--ink-dim:rgba(243,234,210,.55);--radius:14px;--shadow-pop:0 18px 50px rgba(0,0,0,.55);--edge-x:clamp(16px, 3.4vw, 56px);--edge-x-home:clamp(14px, 1.8vw, 28px);--frost-mask:rgba(10,6,18,.88);--frost-bg:rgba(34,17,66,.92);--frost-blur:blur(8px);--app-vh:var(--toy-vh,100vh);--safe-top:var(--toy-safe-top,0px);--safe-right:var(--toy-safe-right,0px);--safe-bottom:var(--toy-safe-bottom,0px);--safe-left:var(--toy-safe-left,0px)}@supports (padding:env(safe-area-inset-top)){:root{--toy-safe-top:env(safe-area-inset-top,0px);--toy-safe-right:env(safe-area-inset-right,0px);--toy-safe-bottom:env(safe-area-inset-bottom,0px);--toy-safe-left:env(safe-area-inset-left,0px)}}@supports (padding:max(0px)){:root{--safe-top:max(env(safe-area-inset-top), var(--toy-safe-top,0px));--safe-right:max(env(safe-area-inset-right), var(--toy-safe-right,0px));--safe-bottom:max(env(safe-area-inset-bottom), var(--toy-safe-bottom,0px));--safe-left:max(env(safe-area-inset-left), var(--toy-safe-left,0px))}}@supports (height:1dvh){:root{--app-vh:var(--toy-vh,100dvh)}}@supports not (width:min(1px, 2px)){:root{--edge-x:16px;--edge-x-home:14px}}html.mobile-ui{--edge-x:10px;--edge-x-home:10px;--grid-gap:8px;--cell-w:min(calc((100vw - 2 * var(--edge-x) - 8px - 3 * var(--grid-gap)) / 4), calc((var(--app-vh) - 200px - var(--safe-bottom)) / 7.36))}html.mobile-ui.wide-stage{--grid-gap:clamp(5px, .9vw, 10px);--cell-w:min(calc((100vw - 2 * var(--edge-x) - 8px - 5 * var(--grid-gap)) / 6), calc((var(--app-vh) - 178px - var(--safe-bottom)) / 5.52))}html.mobile-ui.wide-stage.bilibili{--cell-w:min(calc((100vw - 2 * var(--edge-x) - 8px - clamp(20px, 5vw, 44px) - 5 * var(--grid-gap)) / 6), calc((var(--app-vh) - 172px - var(--safe-bottom)) / 5.52))}html,body{background:var(--bg-deep);width:100%;height:100%;color:var(--ink);user-select:none;-webkit-tap-highlight-color:transparent;text-size-adjust:100%;overscroll-behavior:none;font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;overflow:hidden}#app{width:100%;height:100%}button{color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none;font-family:inherit}img{-webkit-user-drag:none;user-select:none}.btn-gold{letter-spacing:2px;color:#2a1a05;background:linear-gradient(180deg, var(--gold-strong), var(--gold) 55%, #c99b3f);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:14px 34px;font-size:18px;font-weight:700;transition:transform .15s,box-shadow .15s,filter .15s;display:inline-flex;box-shadow:0 6px 18px rgba(232,195,106,.35),inset 0 1px rgba(255,255,255,.6)}@media (hover:hover){.btn-gold:hover{filter:brightness(1.06);transform:translateY(-2px);box-shadow:0 10px 26px rgba(232,195,106,.45),inset 0 1px rgba(255,255,255,.6)}}.btn-gold:active{transform:translateY(1px)scale(.98)}.btn-ghost{letter-spacing:1px;color:var(--gold);border:2px solid var(--gold-dim);background:rgba(232,195,106,.06);border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:16px;font-weight:600;transition:background .15s,transform .15s;display:inline-flex}@media (hover:hover){.btn-ghost:hover{background:rgba(232,195,106,.14);transform:translateY(-1px)}}.btn-ghost:active{transform:scale(.97)}.overlay{justify-content:center;align-items:center;animation:.25s both fade-in;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-card{background:linear-gradient(180deg, var(--bg-panel-2), var(--bg-panel));box-shadow:var(--shadow-pop);border:1px solid rgba(232,195,106,.35);border-radius:20px;animation:.3s cubic-bezier(.2,1.4,.4,1) both pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.82)translateY(14px)}60%{transform:scale(1.03)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{opacity:0;transform:translateY(40%)}to{opacity:1;transform:none}}@keyframes screen-shake{0%,to{transform:translate(0)}15%{transform:translate(-9px,4px)rotate(-.4deg)}30%{transform:translate(8px,-5px)rotate(.4deg)}45%{transform:translate(-6px,-3px)}60%{transform:translate(6px,4px)}75%{transform:translate(-4px,2px)}90%{transform:translate(3px,-2px)}}.shake{animation:.5s both screen-shake}.sheet-mask{display:none}html.mobile-ui .sheet-mask{z-index:110;background:rgba(10,6,18,.7);animation:.2s both fade-in;display:block;position:fixed;top:0;bottom:0;left:0;right:0}.sheet{max-height:72%;padding:14px 14px calc(14px + var(--safe-bottom));background:linear-gradient(180deg, var(--bg-panel-2), var(--bg-panel));border-top:1px solid rgba(232,195,106,.35);border-radius:20px 20px 0 0;animation:.28s cubic-bezier(.2,1.2,.4,1) both sheet-up;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.sheet-head{letter-spacing:3px;color:var(--gold-strong);justify-content:space-between;align-items:center;margin-bottom:12px;font-size:15px;font-weight:800;display:flex}.sheet-close{color:var(--ink-dim);border:2px solid rgba(243,234,210,.2);border-radius:999px;padding:6px 12px;font-size:13px}.game-fab{bottom:calc(14px + var(--safe-bottom));z-index:60;letter-spacing:2px;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:12px 18px;font-size:14px;font-weight:700;display:none;position:fixed;box-shadow:0 8px 22px rgba(0,0,0,.5)}html.mobile-ui .game-fab{display:flex}.game-fab.gold{right:calc(14px + var(--safe-right));color:#2a1a05;background:linear-gradient(180deg, var(--gold-strong), var(--gold) 60%, #c99b3f)}.game-fab.silver{left:calc(14px + var(--safe-left));color:var(--silver-ink);background:var(--silver-grad)}.app-toast{z-index:400;letter-spacing:1px;text-align:center;max-width:calc(100vw - 32px);color:var(--ink);border:2px solid var(--gold-dim);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:rgba(30,20,51,.94);border-radius:999px;padding:12px 30px;font-size:15px;font-weight:600;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 8px 30px rgba(0,0,0,.55)}.app-toast-enter-active,.app-toast-leave-active{transition:opacity .2s,transform .2s}.app-toast-enter-from,.app-toast-leave-to{opacity:0;transform:translate(-50%,-50%)scale(.86)}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}
