:root{--ink: #14183a;--panel: #1d2350;--panel2: #262d66;--panel3: #313a80;--line: #0b0e24;--cream: #fff6dc;--muted: #b9bfe6;--gold: #ffcf3a;--gold2: #ff9f1a;--pink: #ff5f9e;--mint: #5af2c0;--sky: #5ab8ff;--red: #ff4f5e;--green: #5ad17a;--hp-hi: #5be36b;--hp-mid: #ffd23a;--hp-lo: #ff4f5e;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);--px: "Press Start 2P", monospace;--body: "Pixelify Sans", "Trebuchet MS", sans-serif;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;background:#0d1030;color:var(--cream);font-family:var(--body);font-size:16px;user-select:none;-webkit-user-select:none;touch-action:none}#game{position:fixed;top:0;right:0;bottom:0;left:0}#game canvas{display:block;image-rendering:pixelated}#ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}#ui>*{pointer-events:auto}#ui .passthru{pointer-events:none}#ui .passthru>*{pointer-events:auto}img{image-rendering:pixelated;-webkit-user-drag:none}button{font:inherit;color:inherit}input{font:inherit}#boot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;background:radial-gradient(circle at 50% 40%,#2b3384,#0d1030 70%);transition:opacity .5s}#boot.gone{opacity:0;pointer-events:none}.boot-inner{display:grid;justify-items:center;gap:22px;width:min(420px,86vw)}.boot-logo{width:100%;filter:drop-shadow(0 6px 0 #0008);animation:bob 2.4s ease-in-out infinite}.boot-bar{width:100%;height:18px;background:var(--line);border:3px solid var(--cream);box-shadow:0 0 0 3px var(--line);padding:2px}.boot-bar i{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,var(--gold) 0 10px,var(--gold2) 10px 20px);transition:width .2s}.boot-tip{font-family:var(--px);font-size:10px;color:var(--muted);text-align:center;line-height:1.8}@keyframes bob{50%{transform:translateY(-8px)}}.frame{background:var(--panel);border:3px solid var(--cream);box-shadow:0 0 0 3px var(--line),inset 0 0 0 3px var(--panel3),0 8px 0 3px #0006;border-radius:6px}.frame.light{background:#fff6dc;color:var(--ink);box-shadow:0 0 0 3px var(--line),inset 0 -4px #e6d6ae,0 8px 0 3px #0006;border-color:#fff}.btn{font-family:var(--px);font-size:11px;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;min-height:42px;color:var(--ink);background:linear-gradient(#ffe27a,var(--gold) 55%,var(--gold2));border:3px solid var(--line);border-radius:6px;box-shadow:inset 0 -4px #c96d00,inset 0 3px #fff6,0 4px 0 var(--line);transition:transform .08s,filter .15s,box-shadow .08s}.btn:hover{filter:brightness(1.08) saturate(1.1);transform:translateY(-2px);box-shadow:inset 0 -4px #c96d00,inset 0 3px #fff6,0 6px 0 var(--line)}.btn:active,.btn.press{transform:translateY(3px);box-shadow:inset 0 -1px #c96d00,inset 0 3px #fff4,0 1px 0 var(--line)}.btn:disabled{filter:grayscale(.8) brightness(.7);cursor:not-allowed;transform:none}.btn.blue{background:linear-gradient(#8fd1ff,var(--sky) 55%,#2f7fe0);box-shadow:inset 0 -4px #1f56a8,inset 0 3px #fff6,0 4px 0 var(--line)}.btn.pink{background:linear-gradient(#ffa3c6,var(--pink) 55%,#d93a7c);box-shadow:inset 0 -4px #a02a5c,inset 0 3px #fff6,0 4px 0 var(--line);color:#fff;text-shadow:0 2px 0 #0005}.btn.green{background:linear-gradient(#9ff0b0,var(--green) 55%,#2fa452);box-shadow:inset 0 -4px #1d7a3a,inset 0 3px #fff6,0 4px 0 var(--line)}.btn.dark{background:linear-gradient(#4a548f,var(--panel3) 55%,#232a63);color:var(--cream);box-shadow:inset 0 -4px #161b45,inset 0 3px #fff2,0 4px 0 var(--line)}.btn.red{background:linear-gradient(#ff9aa2,var(--red) 55%,#c62a3a);color:#fff;box-shadow:inset 0 -4px #8e1a28,inset 0 3px #fff5,0 4px 0 var(--line)}.btn.small{font-size:9px;padding:8px 10px;min-height:32px}.btn.icon{padding:6px;min-width:42px}.btn.icon img{width:26px;height:26px;object-fit:contain}.chip{font-family:var(--px);font-size:8px;padding:4px 6px 3px;border-radius:4px;color:#fff;text-shadow:0 1px 0 #0006;border:2px solid #0007;display:inline-block;text-transform:uppercase;white-space:nowrap}.chip.sim{background:#6b5cff}.px{font-family:var(--px)}.muted{color:var(--muted)}.gold{color:var(--gold)}.row{display:flex;gap:10px;align-items:center}.col{display:flex;flex-direction:column;gap:10px}.grow{flex:1}.hide{display:none!important}.menu{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none}.menu .vignette{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 45%,transparent 30%,#0d103099 75%,#0d1030dd);pointer-events:none}.menu-inner{position:relative;display:grid;justify-items:center;gap:14px;pointer-events:auto;width:min(460px,92vw);padding-top:var(--safe-t)}.menu-logo{width:min(440px,88vw);filter:drop-shadow(0 8px 0 #0009) drop-shadow(0 0 28px #5af2ff55);animation:bob 3s ease-in-out infinite;margin-bottom:4px}.menu-sub{font-family:var(--px);font-size:10px;color:var(--gold);text-shadow:0 3px 0 var(--line);letter-spacing:2px;margin-top:-10px}.menu-btns{display:grid;gap:12px;width:min(320px,82vw);margin-top:6px}.menu-btns .btn{width:100%;font-size:12px;min-height:50px}.menu-foot{font-family:var(--px);font-size:8px;color:#fff9;text-align:center;line-height:1.9;text-shadow:0 2px 0 #0008;margin-top:6px}.particles-ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.particles-ui i{position:absolute;width:4px;height:4px;background:#fff;box-shadow:0 0 6px #fff;animation:floatUp linear infinite;opacity:0}@keyframes floatUp{0%{transform:translateY(0);opacity:0}15%{opacity:.9}to{transform:translateY(-110vh);opacity:0}}.screen{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0d1030cc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:16px;padding-top:calc(16px + var(--safe-t));padding-bottom:calc(16px + var(--safe-b));overflow-y:auto;animation:fadeIn .25s}@keyframes fadeIn{0%{opacity:0}}@keyframes popIn{0%{transform:scale(.92) translateY(10px);opacity:0}}.screen h2{font-family:var(--px);font-size:16px;margin:0 0 6px;text-align:center;color:var(--gold);text-shadow:0 3px 0 var(--line)}.cs-wrap{width:min(860px,100%);padding:22px;display:grid;gap:16px;animation:popIn .3s}.cs-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cs-card{cursor:pointer;padding:14px 10px;text-align:center;background:var(--panel2);border:3px solid var(--line);border-radius:8px;box-shadow:inset 0 -5px #0003;transition:transform .15s,background .15s;position:relative}.cs-card:hover{transform:translateY(-4px)}.cs-card.sel{background:linear-gradient(#3b4aa8,#2a3383);border-color:var(--gold);box-shadow:0 0 0 3px var(--gold),0 0 24px #ffcf3a66,inset 0 -5px #0003}.cs-card .stage{height:170px;display:grid;place-items:end center;position:relative}.cs-card .stage:after{content:"";position:absolute;bottom:4px;width:90px;height:16px;border-radius:50%;background:#0005;z-index:0}.cs-card .stage img{height:160px;position:relative;z-index:1;animation:idleBob 1.2s ease-in-out infinite}.cs-card.sel .stage img{animation:hop .6s ease-in-out infinite}@keyframes idleBob{50%{transform:translateY(-3px) scaleY(1.02)}}@keyframes hop{50%{transform:translateY(-10px)}}.cs-card h3{font-family:var(--px);font-size:12px;margin:10px 0 4px}.cs-card .arch{font-family:var(--px);font-size:8px;color:var(--mint);margin-bottom:8px}.cs-card p{margin:0;font-size:14px;color:var(--muted);line-height:1.35}.cs-dirs{position:absolute;top:8px;right:8px;display:flex;gap:2px}.cs-bottom{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.field label{display:block;font-family:var(--px);font-size:9px;color:var(--muted);margin-bottom:8px}.field input{width:100%;font-family:var(--px);font-size:13px;padding:12px;background:var(--line);color:var(--cream);border:3px solid var(--panel3);border-radius:6px;outline:none;user-select:text;-webkit-user-select:text}.field input:focus{border-color:var(--gold)}.check{display:flex;gap:10px;align-items:center;cursor:pointer;font-size:14px;color:var(--muted);margin-top:10px}.check input{width:20px;height:20px;accent-color:var(--gold)}.hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.hud>*{pointer-events:auto}.hud-tl{position:absolute;left:calc(10px + var(--safe-l));top:calc(10px + var(--safe-t));display:flex;gap:10px;align-items:center;padding:6px 12px 6px 6px;cursor:pointer}.hud-ava{width:54px;height:54px;border-radius:6px;background:linear-gradient(#5ab8ff,#2f5fd0);border:3px solid var(--line);overflow:hidden;display:grid;place-items:start center}.hud-ava img{height:90px;margin-top:2px}.hud-name{font-family:var(--px);font-size:10px}.hud-lvl{font-family:var(--px);font-size:8px;color:var(--gold);margin-top:6px}.xpbar{width:130px;height:10px;background:var(--line);border:2px solid #0008;margin-top:6px;border-radius:3px;overflow:hidden}.xpbar i{display:block;height:100%;background:linear-gradient(90deg,#5af2ff,#6b8cff);transition:width .6s}.hud-tr{position:absolute;right:calc(10px + var(--safe-r));top:calc(10px + var(--safe-t));display:flex;gap:8px;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;max-width:60vw}.pill{display:flex;align-items:center;gap:8px;padding:6px 12px;font-family:var(--px);font-size:10px;min-height:42px}.pill img{width:24px;height:24px;object-fit:contain}.region-pill{color:var(--cream)}.region-pill b{display:inline-block;width:10px;height:10px;border-radius:50%;border:2px solid var(--line)}.hud-bottom{position:absolute;left:50%;transform:translate(-50%);bottom:calc(10px + var(--safe-b));display:flex;gap:8px;align-items:flex-end;padding:6px}.hb-mon{display:flex;align-items:center;gap:8px;padding:2px 10px 2px 2px;cursor:pointer;border-radius:6px;background:var(--panel2);border:2px solid var(--line);min-width:150px}.hb-mon img{width:46px;height:46px;object-fit:contain}.hb-mon .nm{font-family:var(--px);font-size:8px}.hp{height:8px;width:90px;background:var(--line);border-radius:3px;overflow:hidden;margin-top:5px;border:1px solid #0008}.hp i{display:block;height:100%;background:var(--hp-hi);transition:width .5s,background .3s}.hb-btn{display:grid;justify-items:center;gap:3px;cursor:pointer;padding:5px 7px 4px;border-radius:6px;background:var(--panel2);border:2px solid var(--line);min-width:56px;transition:transform .1s,background .1s}.hb-btn:hover{background:var(--panel3);transform:translateY(-2px)}.hb-btn:active{transform:translateY(2px)}.hb-btn img{width:30px;height:30px;object-fit:contain}.hb-btn span{font-family:var(--px);font-size:7px;color:var(--muted)}.hb-btn kbd{font-family:var(--px);font-size:6px;color:#fff6}.badge{position:absolute;top:-6px;right:-6px;background:var(--red);color:#fff;font-family:var(--px);font-size:7px;padding:3px 4px;border-radius:8px;border:2px solid var(--line)}.quest-tracker{position:absolute;right:calc(10px + var(--safe-r));top:calc(66px + var(--safe-t));width:250px;padding:10px 12px;cursor:pointer}.quest-tracker .qt-k{font-family:var(--px);font-size:7px;color:var(--mint)}.quest-tracker .qt-t{font-family:var(--px);font-size:9px;margin:6px 0;line-height:1.5;color:var(--gold)}.quest-tracker .qt-d{font-size:13px;color:var(--muted);line-height:1.3}.quest-tracker .qt-p{height:6px;background:var(--line);margin-top:8px;border-radius:3px;overflow:hidden}.quest-tracker .qt-p i{display:block;height:100%;background:var(--mint);transition:width .4s}.qt-arrow{position:absolute;left:-16px;top:12px;width:26px;height:26px;display:grid;place-items:center;background:var(--gold);color:var(--ink);border:2px solid var(--line);border-radius:50%;font-weight:700;font-size:16px;transition:transform .2s}.minimap{position:absolute;right:calc(10px + var(--safe-r));bottom:calc(10px + var(--safe-b));padding:5px}.minimap canvas{display:block;image-rendering:pixelated;border-radius:3px}.hint{position:absolute;left:50%;top:18%;transform:translate(-50%);padding:10px 16px;font-family:var(--px);font-size:10px;line-height:1.8;text-align:center;animation:popIn .3s;pointer-events:none}.hint kbd{display:inline-block;background:var(--cream);color:var(--ink);padding:3px 6px;border-radius:3px;margin:0 2px;box-shadow:0 2px #0008}.boosts{position:absolute;left:calc(10px + var(--safe-l));top:calc(82px + var(--safe-t));display:flex;gap:6px}.boost{display:flex;align-items:center;gap:4px;padding:3px 7px 3px 3px;font-family:var(--px);font-size:7px;background:var(--panel);border:2px solid var(--line);border-radius:5px}.boost img{width:20px;height:20px}.chat{position:absolute;left:calc(10px + var(--safe-l));bottom:calc(10px + var(--safe-b));width:330px;display:flex;flex-direction:column}.chat-head{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;font-family:var(--px);font-size:8px}.chat-head .tabs{display:flex;gap:4px;margin-left:auto}.chat-head .tab{padding:4px 6px;border-radius:4px;background:var(--panel3);cursor:pointer;font-size:7px}.chat-head .tab.on{background:var(--gold);color:var(--ink)}.chat-log{height:160px;overflow-y:auto;padding:4px 10px;font-size:14px;line-height:1.3;scrollbar-width:thin}.chat-log .m{margin:3px 0;word-wrap:break-word;animation:fadeIn .3s}.chat-log .m .ts{color:#fff5;font-size:11px;margin-right:4px}.chat-log .m .nk{font-weight:700;color:var(--sky)}.chat-log .m.you .nk{color:var(--gold)}.chat-log .m.sys{color:var(--mint);font-size:13px}.chat-log .m.rare{color:#ffd76a;font-size:13px}.chat-log .m.battle{color:#ffa3c6;font-size:13px}.chat-log .chip{font-size:6px;padding:2px 3px 1px;margin-right:3px;vertical-align:1px}.chat-in{display:flex;gap:6px;padding:6px;border-top:2px solid var(--line)}.chat-in input{flex:1;min-width:0;padding:7px 8px;background:var(--line);border:2px solid var(--panel3);color:var(--cream);border-radius:4px;outline:none;font-size:14px;user-select:text;-webkit-user-select:text}.chat-in input:focus{border-color:var(--gold)}.chat-note{font-size:11px;color:#fff7;padding:0 10px 6px}.chat.min .chat-log,.chat.min .chat-in,.chat.min .chat-note{display:none}.dialog{position:fixed;left:50%;transform:translate(-50%);bottom:calc(18px + var(--safe-b));width:min(760px,calc(100vw - 20px));display:flex;gap:14px;padding:14px 16px;cursor:pointer;animation:popIn .2s;z-index:30}.dialog .portrait{width:92px;height:92px;flex:none;border-radius:6px;background:linear-gradient(#ffe7a8,#ffc56a);border:3px solid var(--line);overflow:hidden;display:grid;place-items:start center}.dialog .portrait img{height:150px;margin-top:3px}.dialog .portrait.mon img{height:84px;margin-top:4px;object-fit:contain;width:84px}.dialog .who{font-family:var(--px);font-size:10px;color:var(--pink);margin-bottom:8px;display:flex;gap:8px;align-items:center}.dialog .txt{font-size:19px;line-height:1.35;min-height:52px;color:var(--ink)}.dialog .more{position:absolute;right:16px;bottom:10px;font-size:14px;color:var(--pink);animation:blink .8s steps(2) infinite}.dialog .choices{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}@keyframes blink{50%{opacity:0}}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#070920b0;display:grid;place-items:center;padding:12px;padding-top:calc(12px + var(--safe-t));padding-bottom:calc(12px + var(--safe-b));z-index:40;animation:fadeIn .2s}.panel{width:min(980px,100%);max-height:100%;display:flex;flex-direction:column;animation:popIn .25s;overflow:hidden}.panel.narrow{width:min(560px,100%)}.panel.mid{width:min(760px,100%)}.panel-head{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:3px solid var(--line);background:var(--panel2)}.panel-head h2{font-family:var(--px);font-size:13px;margin:0;color:var(--gold);text-shadow:0 2px 0 var(--line)}.panel-head .sp{flex:1}.panel-body{padding:14px;overflow-y:auto;flex:1;scrollbar-width:thin}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tab-btn{font-family:var(--px);font-size:8px;padding:9px 10px;border-radius:5px;background:var(--panel3);border:2px solid var(--line);cursor:pointer;color:var(--muted)}.tab-btn.on{background:var(--gold);color:var(--ink)}.xbtn{cursor:pointer;width:38px;height:38px;border-radius:6px;background:var(--red);color:#fff;border:3px solid var(--line);font-family:var(--px);font-size:12px;box-shadow:inset 0 -3px #0004}.xbtn:active{transform:translateY(2px)}.dex-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.dex-progress{font-family:var(--px);font-size:10px}.bar{height:10px;background:var(--line);border-radius:4px;overflow:hidden;width:200px;border:2px solid #0007}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--pink))}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px}.card{cursor:pointer;padding:8px 6px;border-radius:8px;background:var(--panel2);border:3px solid var(--line);text-align:center;position:relative;transition:transform .12s;box-shadow:inset 0 -4px #0003}.card:hover{transform:translateY(-3px)}.card .no{position:absolute;left:6px;top:5px;font-family:var(--px);font-size:7px;color:#fff7}.card .art{height:86px;display:grid;place-items:center}.card .art img{max-width:96px;max-height:84px;object-fit:contain}.card.unknown .art img{filter:brightness(0) opacity(.55)}.card.seen .art img{filter:saturate(.25) brightness(.85)}.card .nm{font-family:var(--px);font-size:8px;margin-top:6px}.card .meta{font-size:12px;color:var(--muted);margin-top:4px}.card .types{display:flex;gap:3px;justify-content:center;margin-top:5px;flex-wrap:wrap}.card .fav{position:absolute;right:6px;top:4px;color:var(--gold);font-size:14px}.card .ballic{position:absolute;right:5px;top:5px;width:16px;height:16px}.card.inparty{border-color:var(--mint)}.rarity-bar{position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:0 0 5px 5px}.type{font-family:var(--px);font-size:7px;padding:3px 5px 2px;border-radius:3px;color:#fff;text-shadow:0 1px 0 #0007;border:1px solid #0006;text-transform:uppercase}.detail{display:grid;grid-template-columns:260px 1fr;gap:16px}.detail .big{background:radial-gradient(circle at 50% 70%,#3b4aa8,#1d2350 70%);border:3px solid var(--line);border-radius:8px;height:250px;display:grid;place-items:center}.detail .big img{max-width:230px;max-height:220px;object-fit:contain;animation:idleBob 1.4s ease-in-out infinite}.stat{display:grid;grid-template-columns:64px 40px 1fr;gap:8px;align-items:center;font-family:var(--px);font-size:8px;margin:6px 0}.stat .sb{height:8px;background:var(--line);border-radius:3px;overflow:hidden}.stat .sb i{display:block;height:100%}.moves{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.move-chip{padding:7px 8px;border-radius:5px;border:2px solid var(--line);font-family:var(--px);font-size:8px;color:#fff;text-shadow:0 1px 0 #0007}.move-chip small{display:block;font-family:var(--body);font-size:12px;margin-top:3px;opacity:.9;text-shadow:none}.evo-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.evo-line .e{text-align:center;font-family:var(--px);font-size:7px}.evo-line .e img{width:56px;height:56px;object-fit:contain;display:block;margin:0 auto 4px}.evo-line .arr{color:var(--gold);font-family:var(--px);font-size:9px;text-align:center}.desc{font-size:16px;color:var(--muted);line-height:1.35;margin:8px 0}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}select.sel{font-family:var(--px);font-size:8px;padding:8px;background:var(--panel3);color:var(--cream);border:2px solid var(--line);border-radius:5px}.items{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.item{display:flex;gap:10px;align-items:center;padding:8px 10px;background:var(--panel2);border:3px solid var(--line);border-radius:8px}.item img{width:44px;height:44px;object-fit:contain;flex:none}.item .in{flex:1;min-width:0}.item .nm{font-family:var(--px);font-size:8px;line-height:1.5}.item .ds{font-size:13px;color:var(--muted);line-height:1.25;margin-top:3px}.item .qty{font-family:var(--px);font-size:9px;color:var(--gold)}.item.locked{opacity:.5}.empty{text-align:center;color:var(--muted);padding:30px;font-size:16px}.quest{padding:12px;background:var(--panel2);border:3px solid var(--line);border-radius:8px;margin-bottom:10px}.quest.tracked{border-color:var(--gold)}.quest .k{font-family:var(--px);font-size:7px;color:var(--mint)}.quest .k.main{color:var(--gold)}.quest .k.daily{color:var(--pink)}.quest h4{font-family:var(--px);font-size:10px;margin:8px 0;line-height:1.5}.quest p{margin:0;font-size:15px;color:var(--muted);line-height:1.3}.quest .rw{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px;font-family:var(--px);font-size:8px;color:var(--gold)}.quest .rw img{width:20px;height:20px;vertical-align:middle}.quest .pb{height:8px;background:var(--line);border-radius:3px;overflow:hidden;margin-top:8px}.quest .pb i{display:block;height:100%;background:var(--mint)}.lb-row{display:grid;grid-template-columns:42px 44px 1fr 90px 90px;gap:10px;align-items:center;padding:6px 10px;background:var(--panel2);border:2px solid var(--line);border-radius:6px;margin-bottom:6px}.lb-row.me{background:linear-gradient(90deg,#5a4a10,#3b3a20);border-color:var(--gold)}.lb-row .rk{font-family:var(--px);font-size:11px;text-align:center}.lb-row .rk.r1{color:#ffd76a}.lb-row .rk.r2{color:#dfe6f2}.lb-row .rk.r3{color:#ffa060}.lb-row .av{width:40px;height:40px;overflow:hidden;border-radius:5px;background:var(--panel3);display:grid;place-items:start center}.lb-row .av img{height:66px}.lb-row .nk{font-family:var(--px);font-size:9px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.lb-row .sc{font-family:var(--px);font-size:10px;color:var(--gold);text-align:right}.lb-row .sub{font-size:12px;color:var(--muted);text-align:right}.lb-note{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.4}.set-row{display:grid;grid-template-columns:160px 1fr 60px;gap:12px;align-items:center;padding:10px 0;border-bottom:2px dashed #ffffff14}.set-row label{font-family:var(--px);font-size:9px}.set-row input[type=range]{width:100%;accent-color:var(--gold)}.set-row .v{font-family:var(--px);font-size:9px;color:var(--gold);text-align:right}.seg{display:flex;gap:4px;flex-wrap:wrap}.seg button{font-family:var(--px);font-size:8px;padding:8px;background:var(--panel3);border:2px solid var(--line);border-radius:4px;cursor:pointer;color:var(--muted)}.seg button.on{background:var(--gold);color:var(--ink)}.prof{display:grid;grid-template-columns:200px 1fr;gap:16px}.prof .ava{background:linear-gradient(#5ab8ff,#2f5fd0);border:3px solid var(--line);border-radius:8px;height:240px;display:grid;place-items:center}.prof .ava img{height:200px;animation:idleBob 1.3s ease-in-out infinite}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.sg{background:var(--panel2);border:2px solid var(--line);border-radius:6px;padding:10px}.sg b{display:block;font-family:var(--px);font-size:13px;color:var(--gold);margin-bottom:6px}.sg span{font-size:13px;color:var(--muted)}.ach{display:flex;gap:8px;align-items:center;padding:8px;background:var(--panel2);border:2px solid var(--line);border-radius:6px;font-size:14px}.ach.off{opacity:.4}.ach img{width:28px;height:28px}.outfits{display:flex;gap:6px;flex-wrap:wrap}.outfit{width:56px;height:64px;border-radius:6px;background:var(--panel3);border:2px solid var(--line);cursor:pointer;overflow:hidden;display:grid;place-items:start center}.outfit img{height:100px}.outfit.on{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold)}.outfit.lock{opacity:.35;cursor:not-allowed}.starters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.starter{cursor:pointer;padding:12px;text-align:center;background:var(--panel2);border:3px solid var(--line);border-radius:10px;transition:transform .15s}.starter:hover{transform:translateY(-4px)}.starter.sel{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold),0 0 26px #ffcf3a55}.starter .art{height:150px;display:grid;place-items:center}.starter .art img{max-height:140px;max-width:160px;animation:idleBob 1.2s ease-in-out infinite}.toasts{position:fixed;top:calc(70px + var(--safe-t));left:50%;transform:translate(-50%);display:grid;gap:6px;justify-items:center;z-index:60;pointer-events:none}.toast{display:flex;gap:8px;align-items:center;padding:7px 12px;font-family:var(--px);font-size:9px;animation:toastIn .3s,toastOut .4s 2.6s forwards;background:var(--panel);border:3px solid var(--cream);box-shadow:0 0 0 3px var(--line);border-radius:6px}.toast img{width:22px;height:22px;object-fit:contain}.toast.warn{border-color:var(--red)}.toast.good{border-color:var(--mint)}@keyframes toastIn{0%{transform:translateY(-14px);opacity:0}}@keyframes toastOut{to{transform:translateY(-10px);opacity:0}}.banner{position:fixed;left:0;right:0;top:30%;display:grid;justify-items:center;z-index:55;pointer-events:none;animation:bannerIn 2.8s forwards}.banner .b-in{padding:14px 40px;background:linear-gradient(90deg,transparent,#14183aee 15%,#14183aee 85%,transparent);text-align:center;width:100%}.banner .b-k{font-family:var(--px);font-size:9px;color:var(--mint);letter-spacing:3px}.banner .b-t{font-family:var(--px);font-size:22px;color:var(--gold);text-shadow:0 4px 0 var(--line);margin-top:10px}@keyframes bannerIn{0%{opacity:0;transform:translateY(10px)}12%,80%{opacity:1;transform:none}to{opacity:0}}.fade{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;z-index:70;pointer-events:none;opacity:0;transition:opacity .25s}.fade.on{opacity:1}.wipe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;pointer-events:none;display:grid;grid-template-rows:repeat(10,1fr)}.wipe i{background:#000;transform:scaleX(0);animation:wipeBar .5s forwards}.wipe i:nth-child(odd){transform-origin:left}.wipe i:nth-child(2n){transform-origin:right}@keyframes wipeBar{to{transform:scaleX(1)}}.flash{position:fixed;top:0;right:0;bottom:0;left:0;background:#fff;z-index:71;pointer-events:none;animation:flash3 .45s steps(1) forwards}@keyframes flash3{0%{opacity:1}16%{opacity:0}33%{opacity:1}50%{opacity:0}66%{opacity:.9}83%,to{opacity:0}}.prompt{position:fixed;left:50%;top:22%;transform:translate(-50%);padding:16px 20px;text-align:center;z-index:45;animation:popIn .25s;width:min(420px,92vw)}.prompt .pt{font-family:var(--px);font-size:11px;line-height:1.7;margin:10px 0 14px}.prompt .ava2{width:70px;height:70px;margin:0 auto;overflow:hidden;border-radius:8px;background:var(--panel3);border:3px solid var(--line);display:grid;place-items:start center}.prompt .ava2 img{height:116px}.boss-intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:72;display:grid;place-items:center;background:radial-gradient(circle,#3a0b1acc,#000e 70%);animation:fadeIn .3s;pointer-events:none}.boss-intro .bi{text-align:center}.boss-intro img{max-height:46vh;max-width:80vw;filter:drop-shadow(0 0 30px #ff4f5e);animation:bossIn 1.2s cubic-bezier(.2,1.4,.4,1)}.boss-intro .t{font-family:var(--px);font-size:clamp(22px,5vw,44px);color:var(--gold);text-shadow:0 5px 0 #6b0010,0 0 24px #ff4f5e;margin-top:14px;animation:popIn .5s .4s both}.boss-intro .s{font-family:var(--px);font-size:11px;color:#ffd0d6;margin-top:12px;animation:popIn .5s .6s both}@keyframes bossIn{0%{transform:scale(.3) translateY(40px);filter:brightness(10) drop-shadow(0 0 30px #fff)}}.evo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:72;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,#2b3a9a,#070920 70%);animation:fadeIn .3s}.evo .stage{position:relative;width:320px;height:280px;display:grid;place-items:center}.evo .stage img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:280px;max-height:260px;object-fit:contain}.evo .glow{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,#fff,#9be7ff66 30%,transparent 65%);opacity:0}.evo .msg{font-family:var(--px);font-size:13px;text-align:center;line-height:1.8;margin-top:20px;min-height:50px;padding:0 16px}.evo .sparks i{position:absolute;width:6px;height:6px;background:#fff;box-shadow:0 0 8px #9be7ff;left:50%;top:50%}.battle-ui{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:20}.battle-ui>*{pointer-events:auto}.binfo{position:absolute;padding:10px 14px;width:min(330px,46vw)}.binfo.foe{left:calc(14px + var(--safe-l));top:calc(14px + var(--safe-t))}.binfo.me{right:calc(14px + var(--safe-r));bottom:calc(196px + var(--safe-b))}.binfo .top{display:flex;align-items:center;gap:8px;justify-content:space-between}.binfo .nm{font-family:var(--px);font-size:11px}.binfo .lv{font-family:var(--px);font-size:9px;color:var(--gold)}.binfo .hpw{display:flex;align-items:center;gap:6px;margin-top:8px}.binfo .hpw b{font-family:var(--px);font-size:8px;color:var(--gold)}.binfo .hpbar{flex:1;height:12px;background:var(--line);border-radius:4px;overflow:hidden;border:2px solid #0008}.binfo .hpbar i{display:block;height:100%;background:var(--hp-hi);transition:width .55s ease-out,background .3s}.binfo .hpnum{font-family:var(--px);font-size:9px;text-align:right;margin-top:6px}.binfo .xpb{height:6px;background:var(--line);margin-top:6px;border-radius:3px;overflow:hidden}.binfo .xpb i{display:block;height:100%;background:#5af2ff;transition:width .6s}.binfo .tags{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap;align-items:center}.status{font-family:var(--px);font-size:7px;padding:3px 5px 2px;border-radius:3px;color:#fff;border:1px solid #0007}.status.psn{background:#a04ad0}.status.brn{background:#ff6a2a}.status.par{background:#d9b400}.status.frz{background:#4ab6d9}.status.slp{background:#7a8099}.bpanel{position:absolute;left:50%;transform:translate(-50%);bottom:calc(10px + var(--safe-b));width:min(900px,calc(100vw - 16px));display:grid;grid-template-columns:1fr 380px;gap:10px}.bmsg{padding:14px 16px;font-size:19px;line-height:1.35;min-height:110px;color:var(--ink);cursor:pointer;position:relative}.bmsg .more{position:absolute;right:12px;bottom:8px;color:var(--pink);animation:blink .8s steps(2) infinite;font-size:13px}.bacts{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}.bacts .btn{min-height:46px;font-size:11px}.bmoves{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px}.mvbtn{cursor:pointer;text-align:left;padding:8px 10px;border-radius:6px;border:3px solid var(--line);color:#fff;box-shadow:inset 0 -4px #0004,0 3px 0 var(--line);transition:transform .08s,filter .1s;min-height:50px}.mvbtn:hover{filter:brightness(1.1);transform:translateY(-1px)}.mvbtn:active{transform:translateY(2px)}.mvbtn .mn{font-family:var(--px);font-size:9px;text-shadow:0 2px 0 #0007}.mvbtn .mi{font-size:12px;margin-top:4px;opacity:.95;display:flex;gap:6px;justify-content:space-between;text-shadow:0 1px 0 #0007}.mvbtn .eff{font-family:var(--px);font-size:6px;background:#fff;color:#0b0;padding:2px 3px;border-radius:2px;text-shadow:none}.mvbtn .eff.bad{color:#c22}.bback{grid-column:1 / -1}.bsub{padding:10px;display:grid;gap:8px;max-height:260px;overflow-y:auto}.bsub .item{cursor:pointer;padding:6px 8px}.bsub .item:hover{background:var(--panel3)}.catch-tip{font-family:var(--px);font-size:7px;color:var(--mint)}.dmg{position:fixed;font-family:var(--px);font-size:18px;color:#fff;text-shadow:0 3px 0 #000,0 0 8px #000;pointer-events:none;z-index:25;animation:dmgUp 1s forwards}.dmg.super{color:#ffd23a;font-size:24px}.dmg.weak{color:#b9bfe6;font-size:15px}.dmg.heal{color:#5be36b}@keyframes dmgUp{0%{transform:translate(-50%) scale(.6);opacity:0}15%{transform:translate(-50%,-20px) scale(1.15);opacity:1}to{transform:translate(-50%,-70px) scale(1);opacity:0}}.forfeit{position:absolute;right:calc(14px + var(--safe-r));top:calc(14px + var(--safe-t))}.fish{position:fixed;left:50%;bottom:22%;transform:translate(-50%);padding:14px 18px;text-align:center;z-index:45;width:min(380px,92vw)}.fish .bob{font-size:34px;animation:bob 1.4s ease-in-out infinite}.fish .bob.bite{animation:shakeX .15s infinite;color:var(--red)}@keyframes shakeX{50%{transform:translate(4px) rotate(8deg)}}.touch{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:15}.joy{position:absolute;left:calc(26px + var(--safe-l));bottom:calc(110px + var(--safe-b));width:136px;height:136px;border-radius:50%;background:#ffffff1c;border:3px solid #ffffff44;pointer-events:auto;touch-action:none}.joy i{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:#fff6dccc;border:3px solid var(--line);box-shadow:0 4px #0006}.abtn{position:absolute;right:calc(26px + var(--safe-r));bottom:calc(150px + var(--safe-b));width:78px;height:78px;border-radius:50%;pointer-events:auto;font-family:var(--px);font-size:16px;color:var(--ink);background:linear-gradient(#ffe27a,var(--gold) 55%,var(--gold2));border:3px solid var(--line);box-shadow:inset 0 -5px #c96d00,0 5px 0 var(--line);touch-action:none}.abtn:active,.abtn.on{transform:translateY(3px);box-shadow:inset 0 -2px #c96d00,0 2px 0 var(--line)}.mbtn{position:absolute;right:calc(118px + var(--safe-r));bottom:calc(118px + var(--safe-b));width:54px;height:54px;border-radius:50%;pointer-events:auto;font-family:var(--px);font-size:9px;color:#fff;background:linear-gradient(#6a78c8,#3a4594);border:3px solid var(--line);box-shadow:0 4px 0 var(--line);touch-action:none}@media (max-width: 1180px){.chat{width:250px}.chat-log{height:96px;font-size:13px}.hud-bottom{left:calc(270px + var(--safe-l));transform:none}.minimap{bottom:calc(86px + var(--safe-b))}.minimap canvas{width:176px;height:99px}}@media (max-height: 640px) and (min-width: 641px){.chat-log{height:70px}.quest-tracker .qt-d{display:none}}@media (max-width: 860px){.bpanel{grid-template-columns:1fr}.bmsg{min-height:74px;font-size:16px;padding:10px 12px}.binfo.me{bottom:calc(250px + var(--safe-b))}.detail{grid-template-columns:1fr}.detail .big{height:190px}.prof{grid-template-columns:1fr}.prof .ava{height:170px}.prof .ava img{height:150px}.lb-row{grid-template-columns:30px 40px 1fr 70px}.lb-row .sub{display:none}.quest-tracker{width:200px}}@media (max-width: 640px){.cs-cards,.starters{grid-template-columns:1fr}.cs-card .stage{height:110px}.cs-card .stage img{height:104px}.cs-card{display:grid;grid-template-columns:90px 1fr;text-align:left;gap:10px;align-items:center;padding:8px}.cs-card h3{margin-top:0}.starter{display:grid;grid-template-columns:100px 1fr;gap:10px;text-align:left;align-items:center}.starter .art{height:100px}.starter .art img{max-height:94px;max-width:96px}.cs-bottom{grid-template-columns:1fr}.hud-tl{padding-right:8px}.hud-ava{width:42px;height:42px}.hud-ava img{height:70px}.xpbar{width:84px}.hud-tr .region-pill span{display:none}.quest-tracker{top:calc(70px + var(--safe-t));right:8px;width:168px;padding:7px 8px}.quest-tracker .qt-d{display:none}.quest-tracker .qt-t{font-size:8px;margin:4px 0}.qt-arrow{width:22px;height:22px;font-size:13px;left:-12px;top:8px}.chat{width:calc(100vw - 16px);left:8px;top:calc(70px + var(--safe-t));bottom:auto;z-index:2}.chat-log{height:110px;font-size:13px}.chat.min{width:auto}.chat.min .chat-head .tabs,.hud-tl .lvl-pre{display:none}.hud-bottom{left:8px;right:8px;transform:none;justify-content:center;padding:4px;gap:4px}.hb-mon{min-width:0;padding-right:6px}.hb-mon .hp{width:50px}.hb-mon .nm{display:none}.hb-btn{min-width:46px;padding:4px}.hb-btn span,.hb-btn kbd,.minimap{display:none}.binfo{width:min(240px,60vw);padding:7px 10px}.binfo .nm{font-size:9px}.bacts .btn{min-height:44px;font-size:10px}.menu-btns .btn{min-height:46px}.items{grid-template-columns:1fr}.set-row{grid-template-columns:1fr 70px}.set-row>:nth-child(2){grid-column:1 / -1;grid-row:2}.cards{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.card .art{height:66px}.card .art img{max-height:64px;max-width:80px}.dialog .portrait{width:64px;height:64px}.dialog .portrait img{height:104px}.dialog .txt{font-size:16px}.joy{bottom:calc(96px + var(--safe-b));left:calc(18px + var(--safe-l))}.abtn{bottom:calc(110px + var(--safe-b));right:calc(18px + var(--safe-r))}.mbtn{bottom:calc(96px + var(--safe-b));right:calc(108px + var(--safe-r))}.boosts{top:calc(118px + var(--safe-t))}}@media (hover: none){.btn:hover,.card:hover,.cs-card:hover,.starter:hover,.hb-btn:hover{transform:none}}body.battling .hud,body.battling .touch,body.battling .toasts{display:none}@media (max-width: 640px){.hud-tr>.btn.icon:last-child{display:none}}.mvbtn.empty{filter:grayscale(.85) brightness(.7)}.mvbtn .mn .eff{vertical-align:2px}.type .tyic{width:12px;height:12px;vertical-align:-2px;margin-right:3px;image-rendering:auto}.btn.pulse{animation:pulseBtn .9s ease-in-out infinite;box-shadow:0 0 0 3px #fff,0 0 18px #ffcf3a}@keyframes pulseBtn{50%{transform:translateY(-3px) scale(1.04)}}.catch-tip.hi{color:#5be36b}.catch-tip.mid{color:#ffd23a}.catch-tip.lo{color:#ff6b6b}.wm{padding:10px}.wm-frame{width:min(1400px,100%);height:100%;display:flex;flex-direction:column;overflow:hidden;animation:popIn .25s}.wm-body{position:relative;flex:1;min-height:0}.wm-canvas{width:100%;height:100%;display:block;cursor:grab;touch-action:none;image-rendering:pixelated}.wm-canvas:active{cursor:grabbing}.wm-q{font-family:var(--px);font-size:9px;color:#ff9f1a}.wm-tip{position:absolute;max-width:220px;padding:8px 10px;background:#14183aee;border:2px solid var(--cream);border-radius:6px;font-size:13px;pointer-events:none}.wm-tip b{display:block;font-family:var(--px);font-size:9px;color:var(--gold);margin-bottom:4px}.wm-legend{position:absolute;left:10px;bottom:10px;display:flex;gap:10px;flex-wrap:wrap;background:#14183acc;padding:6px 10px;border-radius:6px;font-family:var(--px);font-size:7px}.wm-legend span{display:flex;align-items:center;gap:4px}.wm-legend b{width:10px;height:10px;border-radius:50%;border:2px solid #14183a;display:inline-block}@media (max-width: 640px){.wm-q{display:none}}.saved-pill{position:absolute;right:calc(14px + var(--safe-r));top:calc(62px + var(--safe-t));font-family:var(--px);font-size:8px;padding:5px 8px;background:#14183add;border:2px solid var(--mint);color:var(--mint);border-radius:5px;opacity:0;pointer-events:none}.saved-pill.show{animation:savedFade 2.2s forwards}@keyframes savedFade{0%{opacity:0;transform:translateY(-6px)}15%,75%{opacity:1;transform:none}to{opacity:0}}.saved-pill{top:auto;bottom:calc(150px + var(--safe-b))}.intro-skip{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(14px + var(--safe-b));z-index:80}.intro-mute{position:fixed;left:calc(16px + var(--safe-l, 0px));bottom:calc(14px + var(--safe-b));z-index:80}.intro-play{position:fixed;left:50%;bottom:9%;transform:translate(-50%);z-index:80;font-size:16px;padding:16px 28px;white-space:nowrap;animation:introGlow 1.2s ease-in-out infinite}.intro-play:hover{filter:brightness(1.15)}@keyframes introGlow{0%,to{box-shadow:0 0 0 3px #14183a,0 0 12px 2px #ffcf3a88;transform:translate(-50%) scale(1)}50%{box-shadow:0 0 0 3px #14183a,0 0 28px 8px #ffcf3acc;transform:translate(-50%) scale(1.06)}}@media (max-width: 520px){.intro-play{font-size:12px;padding:12px 18px}}
