@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;600;800&family=Press+Start+2P&display=swap";.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bg-primary:#070714;--bg-secondary:#0d0d26;--bg-card:#14142866;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent:#8b5cf6;--accent-glow:#8b5cf699;--success:#10b981;--danger:#ef4444;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--touch-target:48px;--map-edge:clamp(12px, 3vw, 20px);--map-icon-size:clamp(48px, 12vw, 56px);--map-nav-icon-size:clamp(44px, 12vw, 52px);--map-storage-size:clamp(86px, 22vw, 106px);--mystic:#3b82f6;--valor:#ef4444;--instinct:#eab308;--type-normal:#a8a878;--type-fire:#f08030;--type-water:#6890f0;--type-grass:#78c850;--type-electric:#f8d030;--type-ice:#98d8d8;--type-fighting:#c03028;--type-poison:#a040a0;--type-ground:#e0c068;--type-flying:#a890f0;--type-psychic:#f85888;--type-bug:#a8b820;--type-rock:#b8a038;--type-ghost:#705898;--type-dragon:#7038f8;--type-dark:#705848;--type-steel:#b8b8d0;--type-fairy:#ee99ac}*{box-sizing:border-box;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;scrollbar-width:thin;scrollbar-color:#38bdf861 transparent;margin:0;padding:0}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:linear-gradient(#38bdf88c 0%,#8b5cf680 100%);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#38bdf8d9 0%,#8b5cf6bf 100%);box-shadow:0 0 6px #38bdf873}::-webkit-scrollbar-corner{background:0 0}html{width:100%;height:100%;overflow:hidden}body{background-color:var(--bg-primary);color:var(--text-primary);overscroll-behavior:none;width:100%;height:100dvh;font-family:Inter,sans-serif;overflow:hidden}#root{justify-content:center;align-items:center;width:100%;height:100dvh;display:flex}button,input,select,textarea{font:inherit}button{touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:2px solid #7dd3fce6}img,svg,canvas{max-width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.glass-panel{-webkit-backdrop-filter:blur(16px);background:linear-gradient(135deg,#1e1e3299,#0f0f1ecc);border:1px solid #ffffff14;border-top-color:#fff3;border-radius:20px;box-shadow:0 10px 40px #00000080,inset 0 1px #ffffff1a}.glass-card{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid #ffffff0d;border-top-color:#ffffff26;border-radius:16px;padding:20px;transition:all .3s cubic-bezier(.25,.8,.25,1);box-shadow:0 8px 32px #0000004d}.glass-card:active{background:#ffffff14;transform:scale(.98)}.btn-primary{background:linear-gradient(135deg, var(--accent), #6d28d9);color:#fff;text-transform:uppercase;letter-spacing:1px;box-shadow:0 8px 20px var(--accent-glow), inset 0 2px 0 #fff3;cursor:pointer;border:1px solid #fff3;border-radius:30px;padding:14px 32px;font-size:1.1rem;font-weight:800;transition:all .3s cubic-bezier(.25,.8,.25,1)}.btn-primary:active{box-shadow:0 2px 8px var(--accent-glow);transform:scale(.95)}.btn-secondary{color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:30px;padding:10px 24px;font-weight:600;transition:all .2s}.btn-secondary:active{background:#fff3;transform:scale(.95)}.pokemon-font{font-family:"Press Start 2P",cursive}.screen-container{flex-direction:column;width:100%;min-height:100%;display:flex;position:absolute;inset:0;overflow:hidden}.premium-loading-screen{--loading-blue:#38bdf8;--loading-green:#22c55e;--loading-yellow:#facc15;--loading-red:#ef4444;--loading-panel:#050c1ab8;isolation:isolate;background:linear-gradient(#020617f5,#050a18eb 52%,#030c12fa),#020617;justify-content:center;align-items:center;min-height:100dvh;overflow:hidden}.loading-aurora,.loading-starfield,.loading-map-grid,.loading-vignette{pointer-events:none;position:absolute;inset:0}.loading-aurora{opacity:.48;filter:blur(22px);mix-blend-mode:screen}.loading-aurora--blue{background:linear-gradient(115deg,#0000 0 20%,#38bdf847 34%,#0000 52%),linear-gradient(26deg,#0000 0 46%,#facc1529 60%,#0000 78%);animation:10s ease-in-out infinite loading-aurora-drift}.loading-aurora--green{background:linear-gradient(62deg,#0000 0 28%,#22c55e3d 44%,#0000 66%),linear-gradient(145deg,#0000 0 48%,#ef44442e 64%,#0000 84%);animation:12s ease-in-out infinite reverse loading-aurora-drift}.loading-starfield{opacity:.55;background-image:radial-gradient(1px 1px at 9% 16%,#ffffff94 0,#0000 100%),radial-gradient(1px 1px at 18% 64%,#ffffff59 0,#0000 100%),radial-gradient(1px 1px at 35% 22%,#7dd3fc9e 0,#0000 100%),radial-gradient(1.5px 1.5px at 58% 14%,#ffffff80 0,#0000 100%),radial-gradient(1px 1px at 76% 34%,#bbf7d080 0,#0000 100%),radial-gradient(1px 1px at 89% 72%,#ffffff61 0,#0000 100%),radial-gradient(1.5px 1.5px at 44% 82%,#facc1580 0,#0000 100%);animation:4.2s ease-in-out infinite loading-star-glow}.loading-map-grid{opacity:.36;transform-origin:bottom;background-image:linear-gradient(#38bdf829 1px,#0000 1px),linear-gradient(90deg,#22c55e1f 1px,#0000 1px);background-size:54px 54px;height:72%;animation:8s linear infinite loading-grid-pan;top:auto;transform:perspective(700px)rotateX(58deg)translateY(18%)scale(1.45);-webkit-mask-image:linear-gradient(0deg,#000 0 44%,#0000 88%);mask-image:linear-gradient(0deg,#000 0 44%,#0000 88%)}.loading-vignette{z-index:1;background:radial-gradient(at 50% 42%,#0000 0 36%,#02061775 74%,#020617f0 100%),linear-gradient(#0206172e,#02061775)}.loading-shell{z-index:2;grid-template-rows:auto 1fr;gap:clamp(24px,4vw,42px);width:min(1080px,100vw - 36px);min-height:min(620px,100dvh - 120px);padding:clamp(20px,4vw,34px);display:grid;position:relative}.loading-brand{align-items:center;gap:12px;width:fit-content;display:flex}.loading-brand-mark{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(145deg,#ffffff29,#0f172a6b);border:1px solid #fff3;border-radius:16px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 18px 42px #02061770,inset 0 1px #ffffff29}.loading-mini-ball{background:linear-gradient(#ef4444 0 48%,#111827 48% 56%,#f8fafc 56% 100%);border:3px solid #101827;border-radius:50%;width:26px;height:26px;position:relative;overflow:hidden;box-shadow:0 0 18px #ef44445c}.loading-mini-ball:after{content:"";background:#f8fafc;border:2px solid #111827;border-radius:50%;width:9px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-brand strong,.loading-brand small{letter-spacing:0;display:block}.loading-brand strong{color:#f8fafc;text-shadow:0 0 18px #38bdf842;font-size:clamp(1.05rem,2.2vw,1.35rem);font-weight:900;line-height:1}.loading-brand small{color:#7dd3fc;text-transform:uppercase;margin-top:5px;font-size:.7rem;font-weight:900}.loading-main{grid-template-columns:minmax(300px,1fr) minmax(310px,420px);align-items:center;gap:clamp(26px,6vw,72px);display:grid}.loading-orbit-stage{place-items:center;min-height:360px;display:grid}.loading-scan-disc{aspect-ratio:1;place-items:center;width:min(440px,76vw);display:grid;position:relative}.loading-scan-disc:before{content:"";background:conic-gradient(#38bdf800,#38bdf852,#22c55e29,#facc1538,#38bdf800),radial-gradient(circle,#0f172a1f,#0ea5e914 48%,#0000 70%);border-radius:50%;animation:5.8s linear infinite loading-scanner-spin;position:absolute;inset:6%;-webkit-mask-image:radial-gradient(circle,#0000 0 41%,#000 42% 54%,#0000 55%);mask-image:radial-gradient(circle,#0000 0 41%,#000 42% 54%,#0000 55%)}.loading-scan-disc:after{content:"";background-color:#0000;background-image:linear-gradient(#7dd3fc24 1px,#0000 1px),linear-gradient(90deg,#7dd3fc1f 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border:1px solid #7dd3fc33;border-radius:50%;position:absolute;inset:18%;box-shadow:inset 0 0 48px #0ea5e929}.loading-orbit{border:1px solid #7dd3fc2e;border-radius:50%;animation:9s linear infinite loading-orbit-spin;position:absolute;inset:0}.loading-orbit--inner{border-color:#22c55e29;animation-duration:7s;animation-direction:reverse;inset:17%}.loading-orbit img{object-fit:contain;width:clamp(30px,7vw,44px);height:clamp(30px,7vw,44px);image-rendering:pixelated;filter:drop-shadow(0 8px 12px #0000007a);position:absolute}.loading-orbit img:first-child{top:2%;left:50%;transform:translate(-50%)}.loading-orbit img:last-child{bottom:18%;right:3%}.loading-pulse-ring{border:1px solid #7dd3fc3d;border-radius:50%;animation:2.8s ease-out infinite loading-pulse-ring;position:absolute;inset:29%}.loading-pulse-ring--two{animation-delay:1.4s}.loading-pokeball-3d{z-index:2;aspect-ratio:1;background:radial-gradient(circle at 34% 24%,#ffffffd6,#0000 0 12%,#0000 28%),linear-gradient(#ef4444 0 47%,#111827 47% 55%,#f8fafc 55% 100%);border:clamp(7px,1.4vw,10px) solid #111827;border-radius:50%;width:clamp(118px,24vw,168px);animation:3.2s ease-in-out infinite loading-ball-float;position:relative;overflow:hidden;box-shadow:0 28px 70px #00000085,0 0 54px #ef444433,inset -18px -26px 34px #0f172a4d,inset 14px 16px 26px #ffffff2e}.loading-pokeball-band{background:#111827;height:10%;position:absolute;top:47%;left:0;right:0;transform:translateY(-50%)}.loading-pokeball-button{aspect-ratio:1;background:radial-gradient(circle at 36% 28%,#fff,#dbeafe 58%,#94a3b8 100%);border:clamp(6px,1.2vw,8px) solid #111827;border-radius:50%;width:31%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 18px #f8fafc8a,inset 0 2px 8px #ffffff73}.loading-trainer{z-index:3;image-rendering:auto;filter:drop-shadow(0 18px 18px #0000008a);width:clamp(76px,16vw,112px);height:auto;animation:2.6s ease-in-out infinite loading-trainer-hover;position:absolute;bottom:9%;right:13%}.loading-status{background:linear-gradient(145deg, #081226c7, #0206179e), var(--loading-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid #94a3b82e;border-radius:18px;padding:clamp(18px,4vw,28px);position:relative;box-shadow:0 26px 70px #0000006b,inset 0 1px #ffffff1f}.loading-status:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(130deg,#38bdf8a3,#22c55e47,#facc156b,#0000 68%);padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.loading-status-kicker{color:var(--loading-green);letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-weight:900}.loading-status h1{color:#f8fafc;letter-spacing:0;margin-top:10px;font-size:clamp(2rem,5vw,3.4rem);font-weight:900;line-height:.95}.loading-status p{color:#b6c6dc;max-width:34rem;margin-top:12px;font-size:clamp(.88rem,2vw,1rem);font-weight:650;line-height:1.5}.loading-progress-row{grid-template-columns:auto 1fr;align-items:center;gap:14px;margin-top:24px;display:grid}.loading-progress-orb{background:radial-gradient(circle at 50% 50%, #020617f0 0 55%, transparent 57%), conic-gradient(var(--loading-green) 0 var(--loading-progress), #94a3b82e var(--loading-progress) 360deg);border-radius:50%;place-items:center;width:62px;height:62px;display:grid;box-shadow:0 0 24px #22c55e29,inset 0 1px #ffffff1f}.loading-progress-orb span{color:#f8fafc;font-size:.86rem;font-weight:900}.loading-progress-stack{min-width:0}.loading-progress-track{background:#0f172ac2;border:1px solid #ffffff1f;border-radius:999px;height:12px;position:relative;overflow:hidden}.loading-progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--loading-blue), var(--loading-green), var(--loading-yellow));width:0%;height:100%;box-shadow:0 0 22px #22c55e6b}.loading-progress-meta{color:#8ea7c7;text-transform:uppercase;justify-content:space-between;gap:12px;margin-top:8px;font-size:.72rem;font-weight:900;display:flex}.loading-stage-list{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.loading-stage-list span{color:#6f83a0;text-transform:uppercase;background:#0f172a8f;border:1px solid #94a3b829;border-radius:999px;min-height:26px;padding:6px 9px;font-size:.62rem;font-weight:900;line-height:1}.loading-stage-list span.is-active{color:#bbf7d0;background:#22c55e1f;border-color:#22c55e5c}.loading-signal-strip{right:calc(var(--safe-right) + 18px);bottom:calc(var(--safe-bottom) + 18px);left:calc(var(--safe-left) + 18px);z-index:2;pointer-events:none;justify-content:center;gap:clamp(8px,2vw,14px);display:flex;position:absolute}.loading-signal-strip span{color:#cbd5e1ad;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0206177a;border:1px solid #7dd3fc29;border-radius:999px;min-height:28px;padding:7px 10px;font-size:.62rem;font-weight:900}.loading-reset-button{right:calc(var(--safe-right) + 18px);top:calc(var(--safe-top) + 18px);z-index:4;color:#fecacab8;cursor:pointer;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0206176b;border:1px solid #f871713d;border-radius:999px;min-height:34px;padding:0 12px;font-size:.68rem;font-weight:900;position:absolute}@keyframes loading-aurora-drift{0%,to{opacity:.36;transform:translate(-2%)scale(1)}50%{opacity:.56;transform:translate(2%,-2%)scale(1.04)}}@keyframes loading-star-glow{0%,to{opacity:.42}50%{opacity:.72}}@keyframes loading-grid-pan{0%{background-position:0 0}to{background-position:0 54px}}@keyframes loading-scanner-spin{to{transform:rotate(360deg)}}@keyframes loading-orbit-spin{to{transform:rotate(360deg)}}@keyframes loading-pulse-ring{0%{opacity:.65;transform:scale(.72)}to{opacity:0;transform:scale(1.55)}}@keyframes loading-ball-float{0%,to{transform:translateY(0)rotate(-2deg)}50%{transform:translateY(-12px)rotate(2deg)}}@keyframes loading-trainer-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@media (width<=780px){.loading-shell{width:min(560px,100vw - 22px);min-height:auto;padding:calc(var(--safe-top) + 16px) 8px calc(var(--safe-bottom) + 74px);gap:18px}.loading-main{grid-template-columns:1fr;gap:16px}.loading-brand{margin:0 auto}.loading-orbit-stage{min-height:clamp(260px,46vh,360px)}.loading-scan-disc{width:min(340px,82vw)}.loading-status{border-radius:16px;padding:18px}.loading-status h1{font-size:clamp(1.65rem,8vw,2.35rem)}.loading-progress-row{grid-template-columns:1fr}.loading-progress-orb{width:54px;height:54px}.loading-signal-strip{justify-content:flex-start;overflow:hidden}.loading-signal-strip span{flex:none}}@media (height<=680px) and (orientation:landscape){.loading-shell{min-height:auto;padding:calc(var(--safe-top) + 12px) 18px calc(var(--safe-bottom) + 52px);gap:12px}.loading-main{grid-template-columns:.8fr 1fr;gap:20px}.loading-orbit-stage{min-height:260px}.loading-scan-disc{width:min(290px,42vw)}.loading-status h1{font-size:2rem}.loading-stage-list{display:none}}.name-intro-screen{isolation:isolate;background:linear-gradient(#0307122e,#030712e0),url(/ui/name-welcome-research-bg-v1.jpg) 50%/cover no-repeat,#07101f;justify-content:center;align-items:center;padding:clamp(16px,3vw,34px);overflow:hidden auto}.name-intro-bg{pointer-events:none;background:radial-gradient(circle at 50% 18%,#7dd3fc2e,#0000 26%),radial-gradient(circle at 18% 18%,#facc152e,#0000 24%),radial-gradient(circle at 82% 20%,#f8717124,#0000 24%),linear-gradient(#080f1f14,#080f1fc7);position:absolute;inset:0}.name-intro-shell{isolation:isolate;z-index:1;-webkit-backdrop-filter:blur(22px)saturate(1.12);background:linear-gradient(#ffffff14,#0000 24%),linear-gradient(145deg,#061021f0,#0a1024e0);border:1px solid #ffffff29;border-radius:30px;grid-template-columns:minmax(310px,.9fr) minmax(420px,1fr);align-items:stretch;gap:clamp(18px,2.6vw,30px);width:min(1120px,100%);padding:clamp(16px,2vw,22px);display:grid;position:relative;box-shadow:0 34px 110px #0000008f,inset 0 1px #ffffff29}.name-intro-shell:before{content:"";pointer-events:none;border:1px solid #ffffff0f;border-radius:22px;position:absolute;inset:10px}.name-intro-art,.name-intro-panel{z-index:1;position:relative}.name-intro-art{background:radial-gradient(circle at 50% 18%,#7dd3fc2e,#0000 34%),#080f1fa3;border:1px solid #7dd3fc3d;border-radius:24px;min-height:min(720px,100vh - 96px);overflow:hidden;box-shadow:0 22px 52px #0000005c,inset 0 1px #ffffff1f}.name-intro-art:after{content:"";pointer-events:none;background:linear-gradient(#02061705,#0206172e 56%,#02061799),radial-gradient(circle at 50% 76%,#60a5fa29,#0000 32%);position:absolute;inset:0}.name-intro-art img{object-fit:cover;object-position:center 28%;width:100%;height:100%;display:block}.name-intro-spark{z-index:1;filter:blur(.2px);opacity:.92;background:radial-gradient(circle,#f8fafcf0 0 20%,#7dd3fcb8 32%,#0000 72%);border-radius:50%;width:18px;height:18px;animation:3.8s ease-in-out infinite name-intro-spark-float;position:absolute}.name-intro-spark--one{top:18%;right:14%}.name-intro-spark--two{width:14px;height:14px;animation-delay:.9s;top:38%;left:14%}.name-intro-spark--three{width:12px;height:12px;animation-delay:1.7s;bottom:18%;right:20%}.name-intro-panel{background:radial-gradient(circle at 50% 0,#f8fafc14,#0000 28%),linear-gradient(#0a1329e0,#080e1ff5);border:1px solid #ffffff1c;border-radius:24px;align-content:center;gap:clamp(18px,2.4vw,24px);min-height:100%;padding:clamp(20px,3vw,34px);display:grid;box-shadow:inset 0 1px #ffffff1f,0 18px 48px #0000003d}.name-intro-header{text-align:center;justify-items:center;gap:10px;display:grid}.name-intro-emblem{background:radial-gradient(circle at 50% 36%,#ffffff2e,#60a5fa1a);border-radius:16px;place-items:center;width:50px;height:50px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff24,0 0 32px #60a5fa4d}.name-intro-emblem:before{content:"";background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:2px solid #f8fafc;border-radius:50%;width:32px;height:32px;position:absolute;box-shadow:0 0 20px #f8fafc3d}.name-intro-emblem-core{z-index:1;background:#f8fafc;border:2px solid #111827;border-radius:50%;width:10px;height:10px;position:relative}.name-intro-companion{object-fit:contain;filter:drop-shadow(0 14px 22px #facc154d);width:clamp(74px,9vw,96px);height:clamp(74px,9vw,96px);margin-top:-2px}.name-intro-kicker{color:#fde68a;letter-spacing:0;text-transform:uppercase;font-family:"Press Start 2P",cursive;font-size:clamp(.58rem,1vw,.66rem);font-weight:800;line-height:1.5}.name-intro-header h2{color:#f8fafc;letter-spacing:0;text-shadow:0 14px 28px #0000006b;max-width:17ch;margin:0;font-size:clamp(1.9rem,3.1vw,2.85rem);font-weight:950;line-height:1.04}.name-intro-header p{color:#e2e8f0d6;max-width:34rem;margin:0;font-size:clamp(.92rem,1.35vw,1rem);font-weight:700;line-height:1.58}.name-intro-account{justify-items:center;gap:10px;display:grid}.name-intro-account-badge{color:#bfdbfe;background:#0e1e36d1;border:1px solid #7dd3fc47;border-radius:999px;align-items:center;gap:10px;max-width:100%;min-height:38px;padding:0 14px 0 10px;font-size:.78rem;font-weight:850;display:inline-flex;box-shadow:inset 0 1px #ffffff14}.name-intro-account-badge span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.name-intro-account-mark{background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:1.5px solid #f8fafc;border-radius:50%;flex:none;width:18px;height:18px;position:relative}.name-intro-account-mark:after{content:"";background:#f8fafc;border:1px solid #111827;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.name-intro-switch-account{color:#bfdbfeb3;cursor:pointer;letter-spacing:0;background:0 0;border:0;font-size:.74rem;font-weight:850;text-decoration:underline;transition:color .18s,opacity .18s}.name-intro-switch-account:hover,.name-intro-switch-account:focus-visible{color:#dbeafe}.name-intro-switch-account:disabled{cursor:not-allowed;opacity:.52}.name-intro-form{gap:14px;display:grid}.name-intro-input-wrap{position:relative}.name-intro-input{box-sizing:border-box;color:#f8fafc;letter-spacing:0;text-align:center;background:linear-gradient(#0c142bf5,#070d1dfa);border:1px solid #c084fc85;border-radius:18px;outline:none;width:100%;min-height:64px;padding:16px 58px 16px 18px;font-size:clamp(1rem,2vw,1.18rem);font-weight:900;transition:border-color .18s,box-shadow .18s;box-shadow:inset 0 1px #ffffff14,0 18px 34px #00000038}.name-intro-input::placeholder{color:#cbd5e194}.name-intro-input:focus{border-color:#c4b5fdf0;box-shadow:0 0 0 3px #a855f729,0 18px 34px #00000038}.name-intro-input.is-error{border-color:#f87171e0}.name-intro-counter{color:#e2e8f07a;letter-spacing:0;pointer-events:none;font-size:.68rem;font-weight:950;position:absolute;bottom:11px;right:16px}.name-intro-counter.is-near-limit{color:#fda4af}.name-intro-hint{color:#cbd5e18f;text-align:center;margin:0;font-size:.74rem;font-weight:800;line-height:1.45}.name-intro-error{color:#fecaca;text-align:center;background:#7f1d1d38;border:1px solid #f871716b;border-radius:14px;padding:11px 14px;font-size:.82rem;font-weight:850;line-height:1.4}.name-intro-submit{letter-spacing:0;background:linear-gradient(135deg,#a855f7,#7c3aed 58%,#2563eb);border-color:#ffffff3d;border-radius:999px;width:100%;min-height:58px;margin-top:2px;font-size:1rem;box-shadow:0 18px 36px #7c3aed5c,inset 0 2px #ffffff2e}.name-intro-submit:disabled{cursor:not-allowed;opacity:.56}@keyframes name-intro-spark-float{0%,to{opacity:.72;transform:translate(0,0)scale(.92)}50%{opacity:1;transform:translateY(-10px)scale(1.08)}}@media (width<=980px){.name-intro-shell{grid-template-columns:1fr;width:min(760px,100%)}.name-intro-art{min-height:clamp(220px,34vh,320px)}.name-intro-art img{object-position:center 22%}}@media (width<=640px){.name-intro-screen{justify-content:flex-start;padding:14px}.name-intro-shell{border-radius:22px;gap:14px;padding:14px}.name-intro-shell:before{border-radius:16px;inset:8px}.name-intro-art{border-radius:18px;min-height:188px}.name-intro-panel{border-radius:18px;gap:16px;padding:18px 16px}.name-intro-emblem{border-radius:15px;width:46px;height:46px}.name-intro-companion{width:76px;height:76px}.name-intro-header h2{font-size:1.8rem}.name-intro-header p{font-size:.88rem}.name-intro-account-badge{justify-content:center;width:100%}.name-intro-input{border-radius:16px;min-height:60px;padding-right:52px}.name-intro-submit{min-height:54px}}@media (height<=720px) and (orientation:landscape){.name-intro-shell{grid-template-columns:minmax(250px,.72fr) minmax(420px,1fr)}.name-intro-art{min-height:calc(100vh - 72px)}.name-intro-panel{gap:14px;padding:18px 22px}.name-intro-companion{width:72px;height:72px}.name-intro-header h2{font-size:1.95rem}}@media (prefers-reduced-motion:reduce){.name-intro-spark{animation:none!important}}.starter-select-screen{isolation:isolate;background:linear-gradient(#030a143d,#030a14e0),url(/ui/starter-select-sanctuary-bg-v1.jpg) 50%/cover no-repeat,#07131d;justify-content:center;align-items:center;padding:clamp(16px,3vw,34px);overflow:hidden auto}.starter-select-bg{pointer-events:none;background:radial-gradient(circle at 50% 18%,#7dd3fc2e,#0000 28%),radial-gradient(circle at 18% 20%,#4ade802e,#0000 25%),radial-gradient(circle at 50% 18%,#fb71851f,#0000 20%),radial-gradient(circle at 82% 20%,#38bdf82e,#0000 25%),linear-gradient(#02061714,#020617bd);position:absolute;inset:0}.starter-select-shell{isolation:isolate;z-index:1;-webkit-backdrop-filter:blur(22px)saturate(1.12);background:linear-gradient(#ffffff14,#0000 24%),linear-gradient(145deg,#061021eb,#091123e0);border:1px solid #ffffff29;border-radius:30px;gap:clamp(20px,2.8vw,30px);width:min(1080px,100%);padding:clamp(20px,3vw,34px);display:grid;position:relative;box-shadow:0 34px 110px #0000008f,inset 0 1px #ffffff29}.starter-select-shell:before{content:"";pointer-events:none;border:1px solid #ffffff0f;border-radius:22px;position:absolute;inset:10px}.starter-select-shell>*{z-index:1;position:relative}.starter-select-header{text-align:center;justify-items:center;gap:10px;display:grid}.starter-select-emblem{background:radial-gradient(circle at 50% 36%,#ffffff2e,#60a5fa1a);border-radius:16px;place-items:center;width:50px;height:50px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff24,0 0 32px #60a5fa4d}.starter-select-emblem:before{content:"";background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:2px solid #f8fafc;border-radius:50%;width:32px;height:32px;position:absolute;box-shadow:0 0 20px #f8fafc3d}.starter-select-emblem-core{z-index:1;background:#f8fafc;border:2px solid #111827;border-radius:50%;width:10px;height:10px;position:relative}.starter-select-kicker{color:#fde68a;letter-spacing:0;text-transform:uppercase;font-family:"Press Start 2P",cursive;font-size:clamp(.58rem,1vw,.66rem);font-weight:800;line-height:1.5}.starter-select-header h2{color:#f8fafc;letter-spacing:0;text-shadow:0 14px 28px #0000006b;margin:0;font-size:clamp(2rem,4vw,3rem);font-weight:950;line-height:1.02}.starter-select-header p{color:#e2e8f0d6;margin:0;font-size:clamp(.92rem,1.5vw,1rem);font-weight:800;line-height:1.5}.starter-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,20px);display:grid}.starter-choice{isolation:isolate;border:1px solid color-mix(in srgb, var(--starter-accent), transparent 50%);background:linear-gradient(180deg, color-mix(in srgb, var(--starter-accent), transparent 80%), transparent 36%), linear-gradient(145deg, #ffffff14, transparent 58%), #ffffff0d;color:#fff;cursor:pointer;text-align:center;border-radius:24px;grid-template-rows:minmax(210px,1fr) auto;align-content:stretch;justify-items:center;gap:18px;min-height:324px;padding:16px 16px 18px;transition:border-color .2s,box-shadow .2s,background .2s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff24,0 20px 44px #00000047}.starter-choice:hover,.starter-choice:focus-visible{border-color:color-mix(in srgb, var(--starter-accent), white 18%);box-shadow:0 0 0 2px color-mix(in srgb, var(--starter-accent), transparent 72%), 0 28px 58px color-mix(in srgb, var(--starter-accent), transparent 78%), inset 0 1px 0 #ffffff2e;outline:none}.starter-choice-backdrop{z-index:0;background:radial-gradient(circle at 50% 30%, color-mix(in srgb, var(--starter-accent), transparent 64%), transparent 34%), linear-gradient(180deg, #ffffff0a, transparent 28%);position:absolute;inset:0}.starter-choice-stage,.starter-choice-copy{z-index:1;position:relative}.starter-choice-stage{border:1px solid color-mix(in srgb, var(--starter-accent), white 16%);background:radial-gradient(circle at 50% 38%, #ffffff3d, transparent 30%), linear-gradient(145deg, color-mix(in srgb, var(--starter-accent), transparent 56%), #0f172ad1);width:100%;min-height:210px;box-shadow:0 18px 32px color-mix(in srgb, var(--starter-accent), transparent 80%), inset 0 1px 0 #ffffff24;border-radius:20px;place-items:center;display:grid;overflow:hidden}.starter-choice-ring{background:radial-gradient(circle, color-mix(in srgb, var(--starter-accent), transparent 60%), transparent 72%);filter:blur(1px);border-radius:50%;height:34px;position:absolute;inset:auto 16% 18px}.starter-choice-stage img{z-index:1;object-fit:contain;image-rendering:auto;filter:drop-shadow(0 16px 20px #0000006b);width:min(132px,56%);min-width:112px;height:min(132px,56%);min-height:112px;position:relative}.starter-choice-copy{gap:8px;display:grid}.starter-choice-copy strong{color:#fff;letter-spacing:0;font-size:clamp(1.32rem,2vw,1.62rem);font-weight:950;line-height:1.05}.starter-choice-copy small{border:1px solid color-mix(in srgb, var(--starter-accent), white 18%);background:linear-gradient(135deg, color-mix(in srgb, var(--starter-accent), white 8%), color-mix(in srgb, var(--starter-accent), transparent 22%));color:#fff;letter-spacing:0;text-transform:uppercase;min-height:38px;box-shadow:0 12px 24px color-mix(in srgb, var(--starter-accent), transparent 80%), inset 0 1px 0 #ffffff24;border-radius:999px;justify-content:center;justify-self:center;align-items:center;padding:0 16px;font-size:.72rem;font-weight:950;line-height:1;display:inline-flex}@media (width<=920px){.starter-select-screen{justify-content:flex-start}.starter-select-shell{width:min(760px,100%)}.starter-choice-grid{grid-template-columns:1fr}.starter-choice{text-align:left;grid-template-rows:1fr;grid-template-columns:148px minmax(0,1fr);place-items:center stretch;gap:18px;min-height:210px;padding:18px}.starter-choice-stage{width:148px;min-height:172px}.starter-choice-stage img{width:108px;min-width:108px;height:108px;min-height:108px}.starter-choice-copy{justify-items:start}.starter-choice-copy small{justify-self:start}}@media (width<=640px){.starter-select-screen{padding:14px}.starter-select-shell{border-radius:22px;gap:18px;padding:18px 14px}.starter-select-shell:before{border-radius:16px;inset:8px}.starter-select-emblem{border-radius:15px;width:46px;height:46px}.starter-select-header h2{font-size:1.86rem}.starter-select-header p{font-size:.9rem}.starter-choice{border-radius:18px;grid-template-columns:112px minmax(0,1fr);gap:14px;min-height:182px;padding:14px}.starter-choice-stage{border-radius:16px;width:112px;min-height:142px}.starter-choice-stage img{width:88px;min-width:88px;height:88px;min-height:88px}.starter-choice-copy strong{font-size:1.18rem}.starter-choice-copy small{min-height:36px;padding:0 14px;font-size:.68rem}}.team-select-screen{--team-panel:#070c1cd1;--team-line:#ffffff24;isolation:isolate;background:linear-gradient(#0408152e,#040815db),url(/ui/team-select-lobby-bg-v2.jpg) 50%/cover no-repeat,#050816;justify-content:center;align-items:center;padding:clamp(18px,3vw,34px);overflow:hidden}.team-select-bg{pointer-events:none;background:radial-gradient(circle at 50% 16%,#ffffff29,#0000 24%),radial-gradient(circle at 18% 18%,#60a5fa38,#0000 24%),radial-gradient(circle at 51% 16%,#fb71852e,#0000 22%),radial-gradient(circle at 84% 18%,#facc1533,#0000 24%),linear-gradient(#0307120a,#030712bd);position:absolute;inset:0}.team-select-shell{isolation:isolate;border:1px solid var(--team-line);background:linear-gradient(180deg, #ffffff14, transparent 24%), linear-gradient(145deg, #091023f2, #101228d6), var(--team-panel);-webkit-backdrop-filter:blur(22px)saturate(1.18);border-radius:26px;width:min(1180px,100%);padding:clamp(20px,3vw,34px);position:relative;box-shadow:0 32px 90px #0000008a,inset 0 1px #ffffff24}.team-select-shell:before,.team-select-shell:after{content:"";pointer-events:none;border-radius:inherit;position:absolute;inset:0}.team-select-shell:before{border:1px solid #ffffff0f;inset:10px}.team-select-shell:after{background:radial-gradient(circle at 18% 0,#60a5fa29,#0000 24%),radial-gradient(circle at 50% 0,#fb71851f,#0000 22%),radial-gradient(circle at 82% 0,#facc1529,#0000 24%)}.team-select-shell>*{z-index:1;position:relative}.team-select-header{text-align:center;justify-items:center;gap:10px;margin-bottom:clamp(18px,2.6vw,28px);display:grid}.team-select-emblem{background:radial-gradient(circle at 50% 36%,#ffffff2e,#60a5fa1a);border-radius:16px;place-items:center;width:50px;height:50px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffffff24,0 0 32px #60a5fa4d}.team-select-emblem:before{content:"";background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:2px solid #f8fafc;border-radius:50%;width:32px;height:32px;position:absolute;overflow:hidden;box-shadow:0 0 20px #f8fafc3d}.team-select-emblem-core{z-index:1;background:#f8fafc;border:2px solid #111827;border-radius:50%;width:10px;height:10px;position:relative}.team-select-header h2{color:#f8fafc;letter-spacing:0;text-shadow:0 12px 28px #00000075;margin:0;font-size:clamp(1.9rem,4.5vw,3rem);font-weight:950;line-height:1.02}.team-select-header p{color:#e2e8f0d1;margin:0;font-size:clamp(.92rem,1.6vw,1rem);font-weight:800}.team-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,20px);display:grid}.team-choice{isolation:isolate;border:1px solid color-mix(in srgb, var(--team-accent), transparent 52%);background:linear-gradient(180deg, color-mix(in srgb, var(--team-accent), transparent 78%), transparent 34%), linear-gradient(145deg, #ffffff14, transparent 56%), #ffffff0d;color:#fff;cursor:pointer;text-align:center;border-radius:22px;grid-template-rows:minmax(238px,1fr) auto auto;align-content:stretch;justify-items:center;gap:16px;min-height:432px;padding:14px 14px 18px;transition:border-color .2s,box-shadow .2s,background .2s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff24,0 20px 44px #00000047}.team-choice:hover,.team-choice:focus-visible{border-color:color-mix(in srgb, var(--team-accent), white 18%);box-shadow:0 0 0 2px color-mix(in srgb, var(--team-accent), transparent 72%), 0 28px 58px color-mix(in srgb, var(--team-accent), transparent 78%), inset 0 1px 0 #ffffff2e;outline:none}.team-choice-backdrop{z-index:0;background:radial-gradient(circle at 50% 26%, color-mix(in srgb, var(--team-accent), transparent 60%), transparent 34%), linear-gradient(180deg, #ffffff0a, transparent 28%);opacity:.95;position:absolute;inset:0}.team-choice-art,.team-choice-copy,.team-choice-action{z-index:1;position:relative}.team-choice-art{border:1px solid color-mix(in srgb, var(--team-accent), white 16%);background:radial-gradient(circle at 50% 28%, #ffffff38, transparent 28%), linear-gradient(145deg, color-mix(in srgb, var(--team-accent), transparent 52%), #0f172ad1);width:100%;min-height:238px;box-shadow:0 18px 32px color-mix(in srgb, var(--team-accent), transparent 78%), inset 0 1px 0 #ffffff24;border-radius:18px;overflow:hidden}.team-choice-art:after{content:"";background:linear-gradient(180deg, #02061705, #02061724 44%, #02061794), radial-gradient(circle at 50% 24%, color-mix(in srgb, var(--team-accent), transparent 70%), transparent 40%);pointer-events:none;position:absolute;inset:0}.team-choice-art img{object-fit:cover;object-position:center 34%;filter:saturate(1.08)contrast(1.02);width:100%;height:100%;min-height:238px;transition:transform .28s,filter .28s;display:block}.team-choice:hover .team-choice-art img,.team-choice:focus-visible .team-choice-art img{filter:saturate(1.18)contrast(1.06);transform:scale(1.035)}.team-choice-copy{gap:8px;display:grid}.team-choice-copy strong{color:#fff;letter-spacing:0;font-size:clamp(1.28rem,2vw,1.6rem);font-weight:950;line-height:1.08}.team-choice-copy small{color:color-mix(in srgb, var(--team-glow), white 8%);letter-spacing:0;text-transform:uppercase;font-family:"Press Start 2P",cursive;font-size:.62rem;font-weight:700;line-height:1.4}.team-choice-action{border:1px solid color-mix(in srgb, var(--team-accent), white 20%);background:linear-gradient(135deg, color-mix(in srgb, var(--team-accent), white 10%), color-mix(in srgb, var(--team-accent), transparent 18%));color:#fff;letter-spacing:0;text-transform:uppercase;min-width:148px;min-height:42px;box-shadow:0 14px 28px color-mix(in srgb, var(--team-accent), transparent 78%), inset 0 1px 0 #ffffff29;border-radius:999px;justify-content:center;align-items:center;padding:0 16px;font-size:.76rem;font-weight:950;line-height:1;display:inline-flex}@media (width<=940px){.team-select-screen{justify-content:flex-start;overflow:hidden auto}.team-select-shell{margin-block:auto}.team-choice-grid{grid-template-columns:1fr}.team-choice{text-align:left;grid-template:"art copy""action action"/148px minmax(0,1fr);place-items:center stretch;gap:14px 16px;min-height:246px;padding:18px}.team-choice-art{grid-area:art;width:148px;min-height:186px}.team-choice-art img{min-height:186px}.team-choice-copy{grid-area:copy;justify-self:start}.team-choice-action{grid-area:action;width:100%}}@media (width<=640px){.team-select-screen{padding:14px}.team-select-shell{border-radius:20px;width:100%;padding:18px 14px}.team-select-header{gap:8px;margin-bottom:16px}.team-select-emblem{border-radius:16px;width:46px;height:46px}.team-select-header h2{font-size:1.8rem}.team-select-header p{font-size:.88rem}.team-choice{border-radius:18px;grid-template-columns:108px minmax(0,1fr);gap:12px 14px;min-height:214px;padding:16px}.team-choice-art{border-radius:16px;width:108px;min-height:144px}.team-choice-art img{min-height:144px}.team-choice-copy strong{font-size:1.14rem}.team-choice-copy small{font-size:.56rem}.team-choice-action{min-width:0;min-height:40px;font-size:.72rem}}@media (prefers-reduced-motion:reduce){.team-choice{transition:none!important}.loading-aurora,.loading-starfield,.loading-map-grid,.loading-scan-disc:before,.loading-orbit,.loading-pulse-ring,.loading-pokeball-3d,.loading-trainer{animation:none}}.auth-screen-v2{--auth-blue:#38bdf8;--auth-cyan:#22d3ee;--auth-green:#22c55e;--auth-yellow:#facc15;--auth-red:#ef4444;--auth-purple:#a78bfa;--auth-choice-accent:#60a5fa;--auth-choice-pink:#fb7185;--auth-line:#ffffff29;--auth-panel:#0c1326b8;isolation:isolate;min-height:100dvh;padding:calc(var(--safe-top) + 28px) calc(var(--safe-right) + 22px) calc(var(--safe-bottom) + 62px) calc(var(--safe-left) + 22px);background:linear-gradient(#020617f5,#081122eb 50%,#020617fc),#020617;justify-content:center;align-items:center;overflow:hidden}.auth-screen-v2:before{content:"";z-index:2;pointer-events:none;opacity:.28;background:linear-gradient(90deg,#ffffff0b 1px,#0000 1px) 0 0/36px 36px,linear-gradient(#ffffff09 1px,#0000 1px) 0 0/36px 36px,radial-gradient(circle at 50% 18%,#7dd3fc2e,#0000 32%);position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 86%);mask-image:linear-gradient(#000000e6,#0000 86%)}.auth-v2-bg-video,.auth-v2-bg-fallback,.auth-v2-noise,.auth-v2-grid,.auth-v2-vignette{pointer-events:none;position:fixed;inset:0}.auth-v2-bg-video{z-index:0;object-fit:cover;filter:saturate(1.22)brightness(.92)contrast(1.05);opacity:.64;width:115%;height:115%;top:-7.5%;left:-7.5%}.auth-v2-bg-fallback{z-index:0;filter:saturate(1.08)brightness(.34);opacity:.24;background:url(/auth-bg.png) 50%/cover no-repeat}.auth-v2-noise{z-index:1;opacity:.028;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E") 0 0/256px}.auth-v2-grid{z-index:1;opacity:.18;transform-origin:bottom;background-image:linear-gradient(#38bdf833 1px,#0000 1px),linear-gradient(90deg,#22c55e1f 1px,#0000 1px);background-size:48px 48px;height:62%;animation:7s linear infinite auth-v2-grid-drift;top:auto;transform:perspective(700px)rotateX(60deg)translateY(16%)scale(1.42);-webkit-mask-image:linear-gradient(0deg,#000 0 38%,#0000 84%);mask-image:linear-gradient(0deg,#000 0 38%,#0000 84%)}.auth-v2-vignette{z-index:2;background:radial-gradient(circle at 16% 16%,#38bdf829,#0000 32%),radial-gradient(circle at 84% 18%,#facc151a,#0000 30%),radial-gradient(circle at 54% 78%,#22c55e1f,#0000 38%),radial-gradient(circle,#0000 44%,#02061794),linear-gradient(#02061705 0%,#0206171a 30%,#02061757 60%,#020617b3 85%,#020617e6 100%)}.auth-v2-particles{z-index:2;pointer-events:none;position:fixed;inset:0;overflow:hidden}.auth-v2-particle{left:var(--px);top:var(--py);width:var(--psize);height:var(--psize);opacity:0;animation:auth-v2-float var(--pdur) var(--pdelay) ease-in-out infinite;background:radial-gradient(circle,#38bdf8e6,#22c55e66);border-radius:50%;position:absolute;box-shadow:0 0 8px #38bdf866}@keyframes auth-v2-float{0%{opacity:0;transform:translateY(0)scale(.6)}20%{opacity:var(--popacity)}80%{opacity:var(--popacity)}to{opacity:0;transform:translateY(-120px)scale(1.1)}}.auth-v2-shell{z-index:3;isolation:isolate;grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:stretch;gap:clamp(18px,3.6vw,46px);width:min(1160px,100%);display:grid;position:relative}.auth-v2-hero{z-index:3;border:1px solid var(--auth-line);-webkit-backdrop-filter:blur(20px)saturate(1.3);background:linear-gradient(145deg,#0c1326c7,#1416309e),url(/ui/auth-trainer-choice-bg-v2.png) 50%/cover no-repeat;border-radius:18px;min-height:min(660px,100dvh - 120px);padding:clamp(24px,3.6vw,44px);position:relative;overflow:hidden;box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff1f}.auth-v2-hero:before{content:"";pointer-events:none;opacity:.78;background:linear-gradient(120deg,#ffffff29,#0000 26%),radial-gradient(circle at 52% 58%,#60a5fa29,#0000 32%),linear-gradient(152deg,#0000 56%,#a78bfa1a);position:absolute;inset:-1px}.auth-v2-hero:after{content:"";z-index:0;opacity:.42;pointer-events:none;background:radial-gradient(circle at 50% 54%,#7dd3fc3d,#0000 36%),linear-gradient(145deg,#60a5fa29,#0000 58%);position:absolute;inset:8px 10px 18px}.auth-v2-launch-row{z-index:3;flex-wrap:wrap;align-items:center;gap:9px;max-width:100%;display:flex;position:relative}.auth-v2-launch-dot{background:#94a3b87a;border-radius:50%;flex:none;width:5px;height:5px;box-shadow:0 0 12px #7dd3fc38}.auth-v2-brand{z-index:2;border:1px solid color-mix(in srgb, var(--auth-choice-accent), white 20%);background:linear-gradient(180deg, color-mix(in srgb, var(--auth-choice-accent), transparent 86%), transparent), #02061775;color:#f8fafc;-webkit-backdrop-filter:blur(16px);border-radius:16px;align-items:center;gap:12px;min-height:52px;padding:8px 14px 8px 8px;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff1a,0 16px 38px #00000038}.auth-v2-brand-orb{background:radial-gradient(circle at 50% 36%,#ffffff2e,#60a5fa1a);border-radius:12px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #ffffff24,0 0 28px #60a5fa4d}.auth-v2-brand-ball{background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:2px solid #f8fafc;border-radius:50%;width:24px;height:24px;position:relative;overflow:hidden;box-shadow:0 0 18px #f8fafc3d}.auth-v2-brand-ball:after{content:"";background:#f8fafc;border:2px solid #111827;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-v2-brand strong{letter-spacing:0;text-transform:uppercase;font-size:.88rem;font-weight:900;line-height:1;display:block}.auth-v2-brand small{color:#e2e8f0b8;letter-spacing:.08em;text-transform:uppercase;margin-top:3px;font-size:.64rem;font-weight:800;display:block}.auth-v2-kicker-wrap{z-index:2;align-items:center;gap:8px;margin-top:clamp(28px,6vh,56px);display:inline-flex;position:relative}.auth-v2-launch-row .auth-v2-kicker-wrap{margin-top:0}.auth-v2-kicker{color:#bfdbfe;letter-spacing:.08em;text-transform:uppercase;background:#60a5fa1f;border:1px solid #7dd3fc3d;border-radius:10px;align-items:center;min-height:28px;padding:5px 11px;font-size:.66rem;font-weight:900;line-height:1;display:inline-flex}.auth-v2-kicker--live{color:#fecdd3;background:#fb718524;border-color:#fb71854d;animation:2.4s ease-in-out infinite auth-v2-pulse-live}.auth-v2-kicker-dot{background:#94a3b866;border-radius:50%;width:5px;height:5px}.auth-v2-avatar-stage{z-index:2;aspect-ratio:.48;opacity:.94;pointer-events:none;place-items:end center;width:clamp(190px,17.5vw,238px);display:grid;position:absolute;bottom:clamp(-18px,-1.4vw,-8px);left:calc(58.4% + clamp(0px,.8vw,10px));transform:translate(-50%)}.auth-v2-avatar-glow{filter:blur(2px);background:radial-gradient(#22c55e33,#38bdf814 48%,#0000 72%);border-radius:50%;width:86%;height:30%;position:absolute;bottom:0;right:4%;transform:rotateX(62deg)}.auth-v2-standing-avatar{z-index:1;object-fit:contain;filter:drop-shadow(0 22px 20px #0206178a)drop-shadow(0 0 18px #38bdf824);transform-origin:bottom;width:100%;height:auto;animation:4.8s ease-in-out infinite auth-v2-avatar-breathe;position:relative}@keyframes auth-v2-pulse-live{0%,to{opacity:1}50%{opacity:.5}}.auth-v2-headline{z-index:2;color:#f8fafc;letter-spacing:0;text-wrap:balance;text-shadow:0 4px 20px #020617d6,0 20px 40px #0206178f;max-width:600px;margin-top:clamp(24px,4vh,42px);font-size:clamp(2.25rem,5.7vw,4.6rem);font-weight:900;line-height:.96;position:relative}.auth-v2-gradient-text{background:linear-gradient(135deg,#93c5fd,#60a5fa 42%,#c084fc);-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 12px #60a5fa4d);-webkit-background-clip:text;background-clip:text}.auth-v2-tagline-slot{z-index:2;height:clamp(48px,6vh,62px);margin-top:18px;position:relative;overflow:hidden}.auth-v2-tagline{color:#cbd5e1;text-shadow:0 2px 10px #020617b3;align-items:center;max-width:640px;margin:0;font-size:clamp(.98rem,1.8vw,1.1rem);font-weight:700;line-height:1.42;display:flex;position:absolute;inset:0}.auth-v2-features{z-index:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:clamp(18px,3.4vh,32px);display:grid;position:relative}.auth-v2-feature{background:linear-gradient(180deg, color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), transparent 86%), transparent), #02061761;-webkit-backdrop-filter:blur(14px);border:1px solid #ffffff1f;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:84px;padding:12px;transition:border-color .3s,background .3s,transform .3s;display:grid;box-shadow:inset 0 1px #ffffff12,0 16px 38px #0000002e}.auth-v2-feature:hover{border-color:color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), white 22%);background:linear-gradient(180deg, color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), transparent 82%), transparent), #02061785;transform:translateY(-2px)}.auth-v2-feature-icon{border:1px solid color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), white 18%);background:radial-gradient(circle at 50% 32%, #ffffff2e, transparent 24%), linear-gradient(145deg, color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), transparent 68%), #0f172ab8);width:34px;height:34px;color:color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), white 34%);box-shadow:0 12px 22px color-mix(in srgb, var(--feature-accent,var(--auth-choice-accent)), transparent 82%);border-radius:10px;place-items:center;display:grid}.auth-v2-feature:nth-child(2n){--feature-accent:var(--auth-choice-pink)}.auth-v2-feature:nth-child(3n){--feature-accent:#a78bfa}.auth-v2-feature strong{color:#f8fafc;overflow-wrap:anywhere;font-size:.76rem;font-weight:900;display:block}.auth-v2-feature small{color:#b0c4de;overflow-wrap:anywhere;margin-top:3px;font-size:.66rem;font-weight:700;line-height:1.32;display:block}.auth-v2-system-visual{z-index:0;aspect-ratio:1;opacity:.52;pointer-events:none;width:min(32%,300px);min-width:230px;position:absolute;top:clamp(96px,18vh,140px);right:clamp(12px,2.4vw,34px)}.auth-v2-system-radar{background:radial-gradient(circle,#020617c7 0 34%,#0ea5e91a 35% 36%,#0000 38%),linear-gradient(#7dd3fc1f 1px,#0000 1px) 0 0/28px 28px,linear-gradient(90deg,#7dd3fc1a 1px,#0000 1px) 0 0/28px 28px;border-radius:50%;place-items:center;display:grid;position:absolute;inset:10%;box-shadow:inset 0 0 54px #38bdf829,0 0 62px #22c55e29}.auth-v2-system-ring,.auth-v2-system-sweep{border-radius:50%;position:absolute}.auth-v2-system-ring{border:1px solid #7dd3fc2e}.auth-v2-system-ring--outer{border-color:#7dd3fc47;inset:0}.auth-v2-system-ring--middle{border-color:#22c55e3d;inset:22%}.auth-v2-system-ring--inner{border-color:#facc1533;inset:39%}.auth-v2-system-sweep{background:conic-gradient(from 8deg, transparent 0 63%, #38bdf85c 70%, #22c55e29 78%, transparent 86%), radial-gradient(circle, transparent 0 55%, #38bdf81f 56%, transparent 58%);animation:5.8s linear infinite auth-v2-system-sweep;inset:0;-webkit-mask-image:radial-gradient(circle,#0000 0 14%,#000 15% 84%,#0000 86%);mask-image:radial-gradient(circle,#0000 0 14%,#000 15% 84%,#0000 86%)}.auth-v2-system-core{z-index:2;aspect-ratio:1;color:#f8fafc;text-align:center;background:linear-gradient(145deg,#0f172aeb,#020617ad),#020617b8;border:1px solid #fff3;border-radius:50%;place-items:center;width:43%;padding:14px;display:grid;position:relative;box-shadow:0 18px 44px #02061775,inset 0 1px #ffffff2e}.auth-v2-system-core strong,.auth-v2-system-core small,.auth-v2-system-node strong,.auth-v2-system-node small{display:block}.auth-v2-system-core strong{text-transform:uppercase;font-size:clamp(.68rem,1vw,.82rem);font-weight:900;line-height:1.05}.auth-v2-system-core small{color:#a7f3d0;text-transform:uppercase;margin-top:5px;font-size:.56rem;font-weight:900;line-height:1.15}.auth-v2-system-node{z-index:3;color:#f8fafc;text-align:center;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#38bdf824,#22c55e14),#0206179e;border:1px solid #7dd3fc33;border-radius:12px;min-width:88px;max-width:102px;padding:7px 8px;position:absolute;box-shadow:0 16px 34px #02061747,inset 0 1px #ffffff1a}.auth-v2-system-node strong{letter-spacing:0;text-transform:uppercase;font-size:.52rem;font-weight:900;line-height:1.08}.auth-v2-system-node small{color:#93c5fd;text-transform:uppercase;margin-top:3px;font-size:.48rem;font-weight:800;line-height:1.08}.auth-v2-system-node--1{top:4%;left:50%;transform:translate(-50%)}.auth-v2-system-node--2{top:32%;right:-4%}.auth-v2-system-node--3{bottom:8%;right:-2%}.auth-v2-system-node--4{bottom:8%;left:-2%}.auth-v2-system-node--5{top:31%;left:-6%}.auth-v2-login{z-index:1;border:1px solid var(--auth-line);background:linear-gradient(180deg, #60a5fa17, transparent), linear-gradient(145deg, #0c1326d6, #141630b3), var(--auth-panel);-webkit-backdrop-filter:blur(20px)saturate(1.24);border-radius:18px;align-self:center;padding:clamp(22px,3.4vw,34px);position:relative;overflow:hidden;box-shadow:0 24px 70px #0000006b,inset 0 1px #ffffff1f}.auth-v2-login-glow{pointer-events:none;background:radial-gradient(circle at 50% 18%,#7dd3fc33,#0000 34%),linear-gradient(102deg,#ffffff24,#0000 32%),linear-gradient(232deg,#a78bfa1f,#0000 40%);position:absolute;inset:0}.auth-v2-login>*{z-index:1;position:relative}.auth-v2-login-header{color:#f8fafc;text-align:center;gap:8px;margin-bottom:20px;display:grid}.auth-v2-login-header strong{text-shadow:0 2px 14px #0206178c;font-size:clamp(1.2rem,2.2vw,1.48rem);font-weight:900;line-height:1.12}.auth-v2-login-header span{color:#dbeafe;font-size:.88rem;font-weight:700;line-height:1.45}.auth-v2-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:20px;display:grid}.auth-v2-stat{text-align:center;background:radial-gradient(circle at 50% 0,#60a5fa29,#0000 42%),linear-gradient(#ffffff0b,#0000),#0206175c;border:1px solid #ffffff1a;border-radius:12px;padding:12px 6px}.auth-v2-stat span{color:#bfdbfe;font-size:1.2rem;font-weight:900;display:block}.auth-v2-stat small{color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;margin-top:4px;font-size:.62rem;font-weight:800;display:block}.auth-v2-error{color:#fecaca;background:#7f1d1d47;border:1px solid #f8717147;border-radius:13px;align-items:center;min-height:42px;margin:0 0 14px;padding:10px 12px;font-size:.78rem;font-weight:800;line-height:1.35;display:flex}.auth-v2-google-btn{color:#fff;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:linear-gradient(135deg,#8b5cf6,#7c3aed 48%,#6d28d9);border:1px solid #fff3;border-radius:30px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:54px;font-size:.96rem;font-weight:900;transition:transform .18s cubic-bezier(.23,1,.32,1),box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 8px 20px #8b5cf673,inset 0 2px #fff3}.auth-v2-google-btn:hover:not(:disabled){filter:saturate(1.06)brightness(1.04);box-shadow:0 14px 32px #8b5cf685,inset 0 2px #ffffff3d}.auth-v2-google-btn:disabled{cursor:default;opacity:.58;filter:grayscale(.2)}.auth-v2-faq-btn{color:#dff7ff;cursor:pointer;letter-spacing:0;background:linear-gradient(135deg,#0ea5e91f,#a78bfa1a),#0f172a8f;border:1px solid #7dd3fc38;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:44px;margin-top:10px;font-size:.84rem;font-weight:900;transition:transform .18s,border-color .18s,background .18s;display:inline-flex;box-shadow:inset 0 1px #ffffff14}.auth-v2-faq-btn:hover{background:linear-gradient(135deg,#0ea5e92e,#a78bfa24),#0f172aad;border-color:#7dd3fc66}.auth-v2-faq-btn:active{transform:scale(.98)}.auth-v2-disclaimer{text-align:center;color:#64748b;letter-spacing:.04em;margin-top:16px;font-size:.72rem;font-weight:700}.auth-v2-signals{left:calc(var(--safe-left) + 20px);right:calc(var(--safe-right) + 20px);bottom:calc(var(--safe-bottom) + 30px);z-index:3;pointer-events:none;justify-content:center;gap:8px;display:flex;position:absolute}.auth-v2-signals span{background:linear-gradient(90deg,#38bdf81a,#38bdf8d1,#22c55e1a);border-radius:999px;width:min(56px,14vw);height:3px;animation:2.6s ease-in-out infinite auth-v2-signal-pulse;box-shadow:0 0 16px #38bdf83d}.auth-v2-signals span:nth-child(2){background:linear-gradient(90deg,#22c55e1a,#22c55ecc,#facc151a);animation-delay:.18s}.auth-v2-signals span:nth-child(3){background:linear-gradient(90deg,#facc151a,#facc15c2,#ef44441a);animation-delay:.36s}.auth-v2-signals span:nth-child(4){background:linear-gradient(90deg,#ef44441a,#ef4444b8,#a78bfa1a);animation-delay:.54s}.auth-v2-signals span:nth-child(5){background:linear-gradient(90deg,#a78bfa1a,#a78bfab3,#38bdf81a);animation-delay:.72s}.auth-v2-watermark{left:50%;bottom:calc(var(--safe-bottom) + 10px);z-index:3;color:#94a3b838;letter-spacing:.12em;text-transform:uppercase;pointer-events:none;white-space:nowrap;font-size:.58rem;font-weight:800;position:absolute;transform:translate(-50%)}.game-guide{--guide-border:#7dd3fc2e;-webkit-user-select:text;user-select:text;border:1px solid var(--guide-border);-webkit-backdrop-filter:blur(18px);background:radial-gradient(circle at 12% 0,#38bdf829,#0000 30%),radial-gradient(circle at 86% 8%,#a78bfa24,#0000 32%),linear-gradient(145deg,#0f172ae6,#040c1ceb);border-radius:24px;gap:14px;padding:clamp(16px,2.6vw,26px);display:grid;box-shadow:0 24px 70px #02061770,inset 0 1px #ffffff14}.game-guide *,.game-guide-modal-shell *{-webkit-user-select:text;user-select:text}.game-guide button,.game-guide-modal-close,.map-guide-button{-webkit-user-select:none;user-select:none}.game-guide--compact{box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}.game-guide-hero{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;display:grid}.game-guide-hero-icon{color:#bae6fd;background:radial-gradient(circle at 32% 22%,#ffffff3d,#0000 34%),linear-gradient(145deg,#0ea5e947,#6366f11f);border:1px solid #7dd3fc47;border-radius:17px;place-items:center;width:52px;height:52px;display:grid;box-shadow:0 10px 26px #0ea5e92e}.game-guide-hero-copy h2{color:#f8fafc;letter-spacing:0;margin:0;font-size:clamp(1.35rem,4vw,2.2rem);font-weight:950;line-height:1.02}.game-guide-hero-copy p{color:#a8bdd9;max-width:780px;margin:7px 0 0;font-size:.92rem;font-weight:720;line-height:1.48}.game-guide-feature-row{flex-wrap:wrap;gap:8px;display:flex}.game-guide-feature-row span{color:#bbf7d0;background:#22c55e1a;border:1px solid #22c55e33;border-radius:999px;align-items:center;min-height:28px;padding:5px 10px;font-size:.7rem;font-weight:900;display:inline-flex}.game-guide-update{background:radial-gradient(circle at 16% 0,#fbbf2433,#0000 32%),linear-gradient(145deg,#1e293bc7,#0f172ac7);border:1px solid #fbbf2438;border-radius:18px;gap:12px;padding:14px;display:grid;box-shadow:inset 0 1px #ffffff12,0 14px 32px #0206173d}.game-guide-update-head{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.game-guide-update-icon{color:#fde68a;background:#fbbf241f;border:1px solid #fbbf2447;border-radius:14px;place-items:center;width:40px;height:40px;display:grid;box-shadow:0 10px 24px #fbbf241f}.game-guide-update-title span{color:#fde68a;letter-spacing:0;text-transform:uppercase;font-size:.68rem;font-weight:950;display:block}.game-guide-update-title h3{color:#f8fafc;letter-spacing:0;margin:3px 0 0;font-size:1rem;font-weight:950;line-height:1.18}.game-guide-update-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;display:grid}.game-guide-update-meta>div{background:#0206173d;border:1px solid #7dd3fc24;border-radius:12px;min-width:0;padding:8px 10px}.game-guide-update-meta dt,.game-guide-update-meta dd{margin:0;line-height:1.2}.game-guide-update-meta dt{color:#93c5fd;text-transform:uppercase;font-size:.62rem;font-weight:950}.game-guide-update-meta dd{color:#f8fafc;margin-top:3px;font-size:.72rem;font-weight:850}.game-guide-update-subtitle{color:#fde68a;text-transform:uppercase;font-size:.68rem;font-weight:950;line-height:1}.game-guide-update-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.game-guide-update-list li{color:#dbeafe;padding-left:17px;font-size:.8rem;font-weight:760;line-height:1.44;position:relative}.game-guide-update-list li:before{content:"";background:#facc15;border-radius:999px;width:6px;height:6px;position:absolute;top:.64em;left:0;box-shadow:0 0 12px #facc156b}.game-guide-update-recent{border-top:1px solid #fbbf2424;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;padding-top:10px;display:grid}.game-guide-update-recent>span{color:#93c5fd;text-transform:uppercase;font-size:.68rem;font-weight:950;line-height:1.9}.game-guide-update-recent>div{flex-wrap:wrap;gap:7px;display:flex}.game-guide-update-recent small{color:#bfdbfe;background:#0ea5e91a;border:1px solid #7dd3fc29;border-radius:999px;align-items:center;gap:5px;min-height:24px;padding:4px 8px;font-size:.68rem;font-weight:850;line-height:1.25;display:inline-flex}.game-guide-update-recent small strong{color:#fde68a;font-size:inherit;font-weight:950}.game-guide-search{color:#93c5fd;background:#02061775;border:1px solid #7dd3fc33;border-radius:13px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-height:42px;padding:0 12px;display:grid}.game-guide-search input{color:#f8fafc;background:0 0;border:0;outline:0;width:100%;min-width:0;font-size:.88rem;font-weight:760}.game-guide-search input::placeholder{color:#64748b}.game-guide-list{gap:9px;display:grid}.game-guide-item{background:#0f172a8a;border:1px solid #94a3b81f;border-radius:16px;overflow:hidden}.game-guide-question{color:#e2e8f0;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:62px;padding:13px 14px;display:grid}.game-guide-question strong,.game-guide-question small{display:block}.game-guide-question strong{color:#f8fafc;font-size:.94rem;font-weight:950;line-height:1.18}.game-guide-question small{color:#8ea2bd;margin-top:3px;font-size:.75rem;font-weight:760;line-height:1.35}.game-guide-chevron{color:#7dd3fc;transition:transform .18s}.game-guide-question[aria-expanded=true] .game-guide-chevron{transform:rotate(180deg)}.game-guide-answer{padding:0 14px 14px}.game-guide-answer ul{border-top:1px solid #94a3b81a;gap:8px;margin:0;padding:12px 0 0 18px;display:grid}.game-guide-answer li{color:#b8c7dc;font-size:.82rem;font-weight:690;line-height:1.46}.game-guide-empty{color:#94a3b8;text-align:center;background:#0f172a6b;border:1px solid #94a3b81f;border-radius:14px;padding:18px;font-weight:800}.game-guide-modal-overlay{z-index:8800;width:100vw;height:100dvh;padding:calc(var(--safe-top) + 16px) calc(var(--safe-right) + 12px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 12px);-webkit-backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 18%,#38bdf82e,#0000 36%),#020617b8;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.game-guide-modal-shell{width:min(820px,100%);max-height:min(760px, calc(100dvh - var(--safe-top) - var(--safe-bottom) - 32px));background:linear-gradient(155deg,#081022fa,#0c142af5),#020617f5;border:1px solid #7dd3fc3d;border-radius:22px;padding:clamp(16px,2.4vw,24px);position:relative;overflow:hidden auto;box-shadow:0 26px 76px #000000a8,inset 0 1px #ffffff1a}.game-guide-modal-close{float:right;z-index:3;color:#cbd5e1;cursor:pointer;background:#0f172ad6;border:1px solid #94a3b82e;border-radius:50%;place-items:center;width:38px;height:38px;margin:-4px -4px 6px 10px;display:grid;position:sticky;top:0}@keyframes auth-v2-grid-drift{0%{background-position:0 0}to{background-position:0 48px}}@keyframes auth-v2-scanner-spin{0%{transform:translate(-50%)rotateX(62deg)rotate(0)}to{transform:translate(-50%)rotateX(62deg)rotate(360deg)}}@keyframes auth-v2-system-sweep{to{transform:rotate(360deg)}}@keyframes auth-v2-avatar-breathe{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.015)}}@keyframes auth-v2-ball-hover{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-14px)rotate(5deg)}}@keyframes auth-v2-trainer-hover{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes auth-v2-signal-pulse{0%,to{opacity:.3;transform:scaleX(.74)}50%{opacity:.92;transform:scaleX(1)}}@media (width<=900px){.auth-screen-v2{padding:calc(var(--safe-top) + 14px) calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 48px) calc(var(--safe-left) + 14px);-webkit-overflow-scrolling:touch;justify-content:flex-start;align-items:center;overflow:hidden auto}.auth-v2-bg-video,.auth-v2-bg-fallback,.auth-v2-noise,.auth-v2-grid,.auth-v2-vignette,.auth-v2-particles{position:fixed}.auth-v2-bg-video{width:118vw;height:118vh;top:-9vh;left:-9vw}.auth-v2-shell{width:min(560px, calc(100vw - var(--safe-left) - var(--safe-right) - 28px));grid-template-columns:1fr;gap:14px;max-width:100%}.auth-v2-hero{border-radius:16px;min-height:auto;padding:20px}.auth-v2-headline{max-width:440px;font-size:clamp(2rem,7vw,3rem)}.auth-v2-avatar-stage{display:none}.auth-v2-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}.auth-v2-feature{min-height:72px;padding:10px}.auth-v2-system-visual{opacity:.2;width:230px;min-width:0;top:auto;bottom:-58px;right:-70px}.auth-v2-login{border-radius:20px;width:100%;padding:18px}.auth-v2-stats{gap:6px;margin-bottom:16px}.auth-v2-stat{padding:10px 4px}.auth-v2-signals{bottom:calc(var(--safe-bottom) + 20px);left:calc(var(--safe-left) + 20px);right:calc(var(--safe-right) + 20px);position:fixed}.auth-v2-watermark{bottom:calc(var(--safe-bottom) + 6px);position:fixed}}@media (width<=540px){.auth-screen-v2{padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 10px) calc(var(--safe-bottom) + 42px) calc(var(--safe-left) + 10px)}.auth-v2-shell{width:calc(100vw - var(--safe-left) - var(--safe-right) - 20px)}.game-guide{border-radius:18px;gap:11px;padding:13px}.game-guide-hero{grid-template-columns:1fr;gap:9px}.game-guide-hero-icon{border-radius:14px;width:42px;height:42px}.game-guide-hero-copy h2{font-size:1.28rem}.game-guide-hero-copy p{font-size:.8rem}.game-guide-feature-row{gap:6px}.game-guide-feature-row span{min-height:25px;padding:4px 8px;font-size:.62rem}.game-guide-update{border-radius:18px;padding:13px}.game-guide-update-head{grid-template-columns:1fr;gap:8px}.game-guide-update-icon{border-radius:13px;width:38px;height:38px}.game-guide-update-title h3{font-size:.94rem}.game-guide-update-meta{grid-template-columns:1fr;gap:6px}.game-guide-update-recent{grid-template-columns:1fr}.game-guide-update-recent small{border-radius:12px;justify-content:flex-start;width:100%;min-height:28px}.game-guide-question{min-height:58px;padding:11px}.game-guide-question strong{font-size:.84rem}.game-guide-question small,.game-guide-answer li{font-size:.72rem}.game-guide-modal-shell{width:100%;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);border-radius:18px;padding:12px}.auth-v2-bg-video{width:120vw;height:120vh;top:-10vh;left:-10vw}.auth-v2-launch-row{gap:8px}.auth-v2-launch-dot{display:none}.auth-v2-launch-row .auth-v2-kicker-wrap{width:100%;margin-top:8px}.auth-v2-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.auth-v2-feature{gap:8px;min-height:60px;padding:8px}.auth-v2-feature-icon{border-radius:10px;width:28px;height:28px}.auth-v2-feature strong{font-size:.7rem}.auth-v2-feature small{margin-top:2px;font-size:.6rem}.auth-v2-hero{border-radius:18px;padding:16px}.auth-v2-avatar-stage{display:none}.auth-v2-headline{font-size:clamp(1.8rem,10vw,2.8rem)}.auth-v2-tagline{font-size:.88rem}.auth-v2-brand{gap:8px;min-height:44px;padding:6px 10px 6px 6px}.auth-v2-brand-orb{width:32px;height:32px}.auth-v2-brand-ball{width:20px;height:20px}.auth-v2-brand strong{font-size:.78rem}.auth-v2-brand small{font-size:.58rem}.auth-v2-login{border-radius:18px;padding:14px}.auth-v2-login-header strong{font-size:1.12rem}.auth-v2-login-header span{font-size:.8rem}.auth-v2-google-btn{border-radius:24px;min-height:48px;font-size:.88rem}.auth-v2-stat span{font-size:1.05rem}.auth-v2-stat small{font-size:.56rem}.auth-v2-system-visual{display:none}.auth-v2-signals{bottom:calc(var(--safe-bottom) + 14px);gap:6px}.auth-v2-signals span{width:min(42px,12vw);height:2px}}@media (width<=390px){.auth-v2-headline{font-size:clamp(1.6rem,9.5vw,2.4rem)}.auth-v2-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.auth-v2-feature{gap:7px;min-height:58px;padding:7px}.auth-v2-kicker-wrap{margin-top:12px}.auth-v2-kicker{min-height:24px;padding:4px 8px;font-size:.58rem}.auth-v2-tagline-slot{margin-top:12px}.auth-v2-tagline{font-size:.82rem}.auth-v2-login-header{margin-bottom:14px}.auth-v2-stats{margin-bottom:12px}.auth-v2-stat{border-radius:10px;padding:8px 4px}.auth-v2-disclaimer{margin-top:12px;font-size:.64rem}}@media (height<=680px) and (orientation:landscape){.auth-screen-v2{padding-block:calc(var(--safe-top) + 10px) calc(var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overflow-y:auto}.auth-v2-bg-video,.auth-v2-bg-fallback,.auth-v2-noise,.auth-v2-grid,.auth-v2-vignette,.auth-v2-particles{position:fixed}.auth-v2-bg-video{width:118vw;height:118vh;top:-9vh;left:-9vw}.auth-v2-signals{bottom:calc(var(--safe-bottom) + 10px);left:calc(var(--safe-left) + 20px);right:calc(var(--safe-right) + 20px);position:fixed}.auth-v2-shell{grid-template-columns:1fr minmax(300px,.72fr);gap:14px}.auth-v2-hero{min-height:auto;padding:16px}.auth-v2-headline{font-size:clamp(2rem,5vw,3.4rem)}.auth-v2-kicker-wrap{margin-top:10px}.auth-v2-avatar-stage{display:none}.auth-v2-tagline-slot{margin-top:10px}.auth-v2-features,.auth-v2-system-visual{display:none}.auth-v2-login{padding:16px}.auth-v2-login-header,.auth-v2-stats{margin-bottom:12px}.auth-v2-signals{bottom:calc(var(--safe-bottom) + 10px)}}@media (width<=320px){.auth-v2-headline{font-size:1.5rem}.auth-v2-features{display:none}.auth-v2-brand{gap:6px}.auth-v2-brand strong{font-size:.72rem}.auth-v2-kicker-wrap{gap:5px}.auth-v2-stats{grid-template-columns:1fr 1fr 1fr;gap:4px}.auth-v2-stat span{font-size:.92rem}}@media (prefers-reduced-motion:reduce){.auth-v2-grid,.auth-v2-bg-video,.auth-v2-scan--outer,.auth-v2-system-sweep,.auth-v2-standing-avatar,.auth-v2-hero-ball,.auth-v2-trainer,.auth-v2-signals span,.auth-v2-particle{animation:none}.auth-v2-bg-video{display:none}.auth-v2-bg-fallback{z-index:0}}.canvas-container{z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.ui-overlay{z-index:10;pointer-events:none;position:absolute;inset:0}.ui-overlay>*{pointer-events:auto}.encounter-screen{--encounter-panel:#060d1cc2;--encounter-panel-strong:#040914e6;--encounter-line:#ffffff24;--encounter-muted:#cbd5e1b8;--encounter-shadow:#0206179e;isolation:isolate;background-color:#060c1c;overflow:hidden}.encounter-shade{z-index:1;pointer-events:none;background:linear-gradient(#0206174d,#0206170a 42%,#02061780),radial-gradient(at 50% 46%,#0000 0 34%,#0206175c 78%,#0206179e 100%);position:absolute;inset:0}.encounter-shade:before{content:"";opacity:.12;background-image:linear-gradient(#ffffff1f 1px,#0000 1px),linear-gradient(90deg,#ffffff14 1px,#0000 1px);background-size:42px 42px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 24%,#0000 92%);mask-image:linear-gradient(#0000,#000 24%,#0000 92%)}.encounter-canvas{z-index:2}.encounter-top-action,.encounter-info-wrap,.encounter-instruction,.encounter-server-check,.encounter-bottom-hud,.encounter-active-berries,.encounter-berry-menu,.encounter-toast-layer{position:absolute}.encounter-top-action{top:calc(22px + env(safe-area-inset-top));z-index:44;align-items:center;gap:8px;display:flex;left:clamp(14px,4vw,24px)}.encounter-run-button{color:#fff;cursor:pointer;letter-spacing:0;text-transform:uppercase;-webkit-backdrop-filter:blur(14px);background:linear-gradient(#fff3,#0f172ab8);border:1px solid #ffffff38;border-radius:8px;min-width:72px;min-height:38px;padding:0 18px;font-size:.78rem;font-weight:900;transition:transform .16s,border-color .16s,background .16s;box-shadow:0 12px 28px #02061757,inset 0 1px #ffffff2e}.encounter-run-button:active{transform:scale(.96)}.encounter-run-button:disabled{cursor:not-allowed;opacity:.46;transform:none}.encounter-run-button--hold{color:#e0f2fe;background:linear-gradient(#38bdf842,#0e749057),linear-gradient(#ffffff24,#0f172ab8);border-color:#38bdf85c}.encounter-run-button--danger{color:#fee2e2;background:linear-gradient(#f8717138,#7f1d1d6b),linear-gradient(#ffffff1f,#0f172ac2);border-color:#f871716b;min-width:64px}.encounter-run-button--danger.is-armed{color:#fef3c7;background:linear-gradient(#fbbf2442,#7f1d1d80),linear-gradient(#ffffff1f,#0f172ac7);border-color:#fbbf2480;min-width:84px}.encounter-throw-limit-pill{color:#fde68a;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(135deg,#f59e0b38,#7f1d1d3d),#0f172ab3;border:1px solid #f59e0b6b;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:.66rem;font-weight:900;line-height:1;display:inline-flex;box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000038}.encounter-throw-limit-pill strong{color:#fff7ed;letter-spacing:0;font-size:.78rem}.encounter-info-wrap{top:calc(22px + env(safe-area-inset-top));z-index:44;text-align:right;pointer-events:none;right:clamp(14px,4vw,24px)}.encounter-info-card{border:1px solid color-mix(in srgb, var(--rarity-color), transparent 44%);background:linear-gradient(180deg, color-mix(in srgb, var(--rarity-color), transparent 88%), transparent 48%), linear-gradient(145deg, #080f1fe0, #020617b8);width:min(200px,100vw - 96px);min-width:168px;box-shadow:0 0 20px var(--rarity-glow), 0 14px 28px #0006, inset 0 1px 0 #ffffff21;-webkit-backdrop-filter:blur(18px);cursor:pointer;pointer-events:auto;-webkit-user-select:none;user-select:none;border-radius:12px;padding:11px 13px;transition:box-shadow .15s,transform .12s}.encounter-info-card:hover{box-shadow:0 0 26px var(--rarity-glow), 0 16px 32px #00000075, inset 0 1px 0 #ffffff2e}.encounter-info-card:active{transform:scale(.975)}.encounter-info-card.is-shiny{border-color:#facc15b8;box-shadow:0 0 26px #facc1552,0 14px 28px #0006,inset 0 1px #ffffff2e}.encounter-name-row{align-items:center;gap:6px;min-width:0;display:flex}.encounter-pokemon-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;flex:1 1 0;min-width:0;font-size:1.08rem;font-weight:900;line-height:1.1;overflow:hidden}.encounter-rank-badge{border:1px solid color-mix(in srgb, var(--rank-color), transparent 36%);background:color-mix(in srgb, var(--rank-color), transparent 86%);min-height:22px;color:var(--rank-color);border-radius:7px;flex:none;align-items:center;padding:2px 8px;font-size:.62rem;font-weight:900;line-height:1;display:inline-flex}.encounter-rarity-row{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:5px;display:flex}.encounter-protected-reward-note{color:#bbf7d0;letter-spacing:.035em;text-transform:uppercase;white-space:normal;background:#14532d3d;border:1px solid #22c55e47;border-radius:8px;justify-content:flex-end;max-width:100%;margin-top:7px;padding:5px 8px;font-size:.62rem;font-weight:900;line-height:1.15;display:inline-flex}.encounter-protected-reward-note.is-tower-risk{color:#fde68a;background:linear-gradient(135deg,#f59e0b33,#7f1d1d2e),#0f172a5c;border-color:#f59e0b61;box-shadow:inset 0 1px #ffffff14}.encounter-rarity-badge{border:1px solid color-mix(in srgb, var(--rarity-color), transparent 42%);background:var(--rarity-bg);min-height:20px;color:var(--rarity-color);letter-spacing:0;text-transform:uppercase;border-radius:7px;align-items:center;padding:2px 7px;font-size:.58rem;font-weight:900;display:inline-flex}.encounter-shiny-badge{color:#fde68a;letter-spacing:0;text-transform:uppercase;background:#713f1261;border:1px solid #facc1585;border-radius:7px;align-items:center;min-height:20px;padding:2px 7px;font-size:.58rem;font-weight:900;display:inline-flex;box-shadow:0 0 12px #facc1538}.encounter-type-text{color:#cbd5e1;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:800;line-height:1;overflow:hidden}.encounter-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:10px;display:grid}.encounter-stat-grid div{text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:7px;min-width:0;padding:6px 7px}.encounter-stat-grid span,.encounter-iv-row span,.encounter-rate-row span{color:#cbd5e1a8;text-transform:uppercase;font-size:.54rem;font-weight:900;line-height:1;display:block}.encounter-stat-grid strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:.74rem;font-weight:900;line-height:1;display:block;overflow:hidden}.encounter-iv-row{background:#0f172a80;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:7px 8px;display:flex}.encounter-iv-row strong{color:#e0f2fe;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:900;line-height:1;overflow:hidden}.encounter-move-row,.encounter-rate-row{justify-content:flex-end;gap:6px;margin-top:7px;display:flex}.encounter-move-row span{color:#bae6fd;text-overflow:ellipsis;white-space:nowrap;background:#0ea5e91a;border:1px solid #7dd3fc2e;border-radius:999px;min-width:0;padding:3px 7px;font-size:.58rem;font-weight:900;line-height:1.1;overflow:hidden}.encounter-rate-row span{color:#cbd5e1bd}.encounter-catch-row{justify-content:flex-end;align-items:baseline;gap:7px;margin-top:6px;display:flex}.encounter-catch-label{color:var(--encounter-muted);font-size:.68rem;font-weight:800}.encounter-catch-value{font-size:.76rem;font-weight:900}.encounter-catch-boost{color:#7dd3fc;margin-left:5px;font-size:.62rem;font-weight:900}.encounter-stats-toggle{color:#94a3b8;pointer-events:none;background:#ffffff12;border:1px solid #ffffff29;border-radius:50%;flex:none;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;padding:0;font-size:.72rem;line-height:1;display:inline-flex}.encounter-stats-chevron{transition:transform .22s;display:inline-block}.encounter-stats-chevron.is-open{transform:rotate(180deg)}.encounter-instruction{bottom:calc(152px + env(safe-area-inset-bottom));z-index:42;pointer-events:none;justify-content:center;width:min(280px,100% - 32px);display:flex;left:50%;translate:-50%}.encounter-instruction-chip{-webkit-backdrop-filter:blur(14px);background:linear-gradient(145deg,#080f1fb8,#02061794);border:1px solid #ffffff29;border-radius:8px;max-width:100%;padding:8px 14px;box-shadow:0 12px 24px #0206174d,inset 0 1px #ffffff1f}.encounter-instruction-chip span{color:#f8fafc;letter-spacing:0;text-align:center;text-transform:uppercase;font-size:.76rem;font-weight:900;line-height:1.1;display:block}.encounter-server-check{right:0;bottom:calc(134px + env(safe-area-inset-bottom));z-index:45;pointer-events:none;text-align:center;place-items:center;gap:5px;display:grid;left:0}.encounter-server-check span{border:3px solid #7dd3fc33;border-top-color:#7dd3fc;border-radius:50%;width:30px;height:30px;animation:.82s linear infinite encounter-server-spin}.encounter-server-check strong,.encounter-server-check small{-webkit-backdrop-filter:blur(12px);background:#0206179e;border-radius:999px;max-width:min(280px,100vw - 32px);padding:0 10px;display:block}.encounter-server-check strong{color:#e0f2fe;text-transform:uppercase;font-size:.78rem;font-weight:950;line-height:1.7}.encounter-server-check small{color:#cbd5e1c7;font-size:.66rem;font-weight:800;line-height:1.55}@keyframes encounter-server-spin{to{transform:rotate(360deg)}}.encounter-berry-throw{left:calc(50% - 70px);bottom:calc(96px + env(safe-area-inset-bottom));z-index:52;pointer-events:none;filter:drop-shadow(0 0 10px #22c55ee6);width:44px;height:44px;position:absolute}.encounter-toast-layer{top:calc(116px + env(safe-area-inset-top));z-index:1200;pointer-events:none;width:min(380px,100% - 28px);left:50%;translate:-50%}.encounter-berry-toast{border:1px solid color-mix(in srgb, var(--berry-color), transparent 30%);background:linear-gradient(90deg, color-mix(in srgb, var(--berry-color), transparent 86%), transparent 52%), linear-gradient(145deg, #070e1cf0, #020617d1);width:100%;min-height:74px;box-shadow:0 0 26px color-mix(in srgb, var(--berry-color), transparent 72%), 0 22px 56px #0000007a, inset 0 1px 0 #ffffff29;-webkit-backdrop-filter:blur(18px);border-left-width:3px;border-radius:8px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px 10px 10px;display:grid;position:relative;overflow:hidden}.encounter-berry-toast:before{content:"";background:linear-gradient(90deg,#0000,#ffffff8f,#0000);height:1px;position:absolute;top:0;left:0;right:0}.encounter-breakout-layer{z-index:1201}.encounter-breakout-toast{border:1px solid color-mix(in srgb, var(--ball-color), transparent 30%);background:linear-gradient(90deg, color-mix(in srgb, var(--ball-color), transparent 86%), transparent 52%), linear-gradient(145deg, #070e1cf2, #020617d6);width:100%;min-height:74px;box-shadow:0 0 26px color-mix(in srgb, var(--ball-color), transparent 70%), 0 22px 56px #0000007a, inset 0 1px 0 #ffffff29;-webkit-backdrop-filter:blur(18px);border-left-width:3px;border-radius:8px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;padding:10px 14px 10px 10px;display:grid;position:relative;overflow:hidden}.encounter-breakout-toast:before{content:"";background:linear-gradient(90deg,#0000,#ffffff8f,#0000);height:1px;position:absolute;top:0;left:0;right:0}.encounter-breakout-icon{border:1px solid color-mix(in srgb, var(--ball-color), white 10%);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--ball-color), transparent 62%), transparent 63%), #ffffff12;border-radius:50%;place-items:center;width:54px;height:54px;display:grid;box-shadow:inset 0 1px #ffffff29}.encounter-breakout-icon img{object-fit:contain;width:40px;height:40px;image-rendering:pixelated;filter:drop-shadow(0 0 12px color-mix(in srgb, var(--ball-color), transparent 25%))}.encounter-breakout-copy{min-width:0}.encounter-breakout-kicker{color:color-mix(in srgb, var(--ball-color), white 18%);letter-spacing:0;text-transform:uppercase;font-size:.58rem;font-weight:900}.encounter-breakout-title{color:#fff;margin-top:2px;font-size:1rem;font-weight:900;line-height:1.12}.encounter-breakout-text{color:#cbd5e1;margin-top:5px;font-size:.72rem;font-weight:800;line-height:1.2}.encounter-limit-toast{grid-template-columns:minmax(0,1fr);padding:12px 14px}.encounter-limit-toast .encounter-breakout-title{font-size:.88rem;line-height:1.25}.encounter-toast-icon{border:1px solid color-mix(in srgb, var(--berry-color), white 10%);background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--berry-color), transparent 62%), transparent 63%), #ffffff12;border-radius:8px;place-items:center;width:54px;height:54px;display:grid;box-shadow:inset 0 1px #ffffff29}.encounter-toast-icon img{object-fit:contain;width:42px;height:42px}.encounter-toast-copy{min-width:0}.encounter-toast-kicker{color:color-mix(in srgb, var(--berry-color), white 16%);letter-spacing:0;text-transform:uppercase;font-size:.58rem;font-weight:900}.encounter-toast-title{color:#fff;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:1rem;font-weight:900;line-height:1.12;overflow:hidden}.encounter-toast-effect{border:1px solid color-mix(in srgb, var(--berry-color), transparent 48%);background:color-mix(in srgb, var(--berry-color), transparent 88%);min-height:20px;color:color-mix(in srgb, var(--berry-color), white 18%);border-radius:6px;align-items:center;margin-top:5px;padding:2px 7px;font-size:.64rem;font-weight:900;line-height:1.1;display:inline-flex}.encounter-bottom-hud{right:0;bottom:calc(34px + env(safe-area-inset-bottom));z-index:46;pointer-events:none;justify-content:center;align-items:center;gap:12px;display:flex;left:0}.encounter-bottom-hud>*{pointer-events:auto}.encounter-berry-control{position:relative}.encounter-berry-trigger{cursor:pointer;-webkit-backdrop-filter:blur(14px);background:radial-gradient(circle at 34% 24%,#ffffff52,#0000 28%),linear-gradient(145deg,#ffffff29,#020617c7);border:2px solid #ffffff38;border-radius:50%;place-items:center;width:54px;height:54px;padding:0;transition:transform .16s,border-color .16s,box-shadow .16s,opacity .16s;display:grid;box-shadow:0 14px 30px #0206176b,inset 0 1px #ffffff2e}.encounter-berry-trigger img{object-fit:contain;filter:drop-shadow(0 6px 8px #0000006b);width:32px;height:32px}.encounter-berry-trigger.is-active{border-color:color-mix(in srgb, var(--berry-active-color), white 16%);box-shadow:0 0 0 3px color-mix(in srgb, var(--berry-active-color), transparent 78%), 0 16px 34px color-mix(in srgb, var(--berry-active-color), transparent 78%), inset 0 1px 0 #ffffff2e}.encounter-berry-trigger:disabled{cursor:not-allowed;opacity:.48}.encounter-berry-trigger:not(:disabled):active{transform:scale(.94)}.encounter-berry-badge{color:#052e16;background:#4ade80;border:2px solid #020617db;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.62rem;font-weight:900;line-height:1;display:grid;position:absolute;top:-5px;right:-4px}.encounter-ball-count{-webkit-backdrop-filter:blur(14px);background:linear-gradient(145deg,#080f1fc7,#0206179e);border:1px solid #ffffff26;border-radius:8px;align-items:center;gap:11px;min-height:50px;padding:9px 20px;display:flex;box-shadow:0 14px 30px #02061761,inset 0 1px #ffffff24}.encounter-ball-trigger{appearance:none;cursor:pointer;color:#f8fafc;border-color:color-mix(in srgb, var(--ball-color), transparent 44%);background:linear-gradient(90deg, color-mix(in srgb, var(--ball-color), transparent 86%), transparent 58%), linear-gradient(145deg, #080f1fd1, #020617a8);min-width:152px;font-family:inherit;transition:transform .16s,border-color .16s,box-shadow .16s,opacity .16s}.encounter-ball-trigger:not(:disabled):active{transform:scale(.97)}.encounter-ball-trigger:disabled{cursor:not-allowed;opacity:.48}.encounter-ball-count img{width:28px;height:28px;image-rendering:pixelated;filter:drop-shadow(0 4px 6px #00000073)}.encounter-ball-count-value{color:#f8fafc;font-weight:900;line-height:1}.encounter-ball-meta{text-align:left;min-width:0;display:grid}.encounter-ball-meta strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:900;line-height:1;overflow:hidden}.encounter-ball-meta small{color:color-mix(in srgb, var(--ball-color), white 18%);text-transform:uppercase;margin-top:3px;font-size:.6rem;font-weight:900;line-height:1}.encounter-ball-menu{bottom:calc(100px + env(safe-area-inset-bottom));z-index:56;-webkit-backdrop-filter:blur(18px);scrollbar-width:none;background:linear-gradient(145deg,#070e1df2,#020617e6);border:1px solid #ffffff24;border-radius:8px;gap:8px;max-width:min(480px,100vw - 24px);padding:10px;display:flex;position:absolute;left:50%;overflow-x:auto;translate:-50%;box-shadow:0 22px 54px #00000080,inset 0 1px #ffffff1a}.encounter-ball-menu::-webkit-scrollbar{display:none}.encounter-ball-option{background:linear-gradient(180deg, color-mix(in srgb, var(--ball-color), transparent 88%), transparent), #ffffff0e;color:#fff;cursor:pointer;border:1px solid #ffffff1f;border-radius:8px;flex:0 0 76px;grid-template-rows:38px auto auto auto;place-items:center;gap:2px;min-height:104px;padding:8px 7px;transition:transform .16s,border-color .16s,box-shadow .16s,opacity .16s;display:grid;box-shadow:inset 0 1px #ffffff14}.encounter-ball-option.is-selected{border-color:color-mix(in srgb, var(--ball-color), white 14%);box-shadow:0 0 0 2px color-mix(in srgb, var(--ball-color), transparent 76%)}.encounter-ball-option:disabled{cursor:not-allowed;opacity:.34}.encounter-ball-option:not(:disabled):active{transform:scale(.96)}.encounter-ball-option img{object-fit:contain;filter:drop-shadow(0 4px 6px #0000007a);width:36px;height:36px}.encounter-ball-name{color:#e2e8f0;white-space:nowrap;font-size:.62rem;font-weight:900;line-height:1}.encounter-ball-power{color:color-mix(in srgb, var(--ball-color), white 18%);text-transform:uppercase;font-size:.56rem;font-weight:900;line-height:1}.encounter-ball-owned{color:#94a3b8d1;font-size:.58rem;font-weight:900;line-height:1}.encounter-active-berries{bottom:calc(96px + env(safe-area-inset-bottom));z-index:45;-webkit-backdrop-filter:blur(14px);scrollbar-width:none;background:#050b18c7;border:1px solid #ffffff24;border-radius:8px;align-items:center;gap:6px;max-width:min(520px,100vw - 24px);padding:6px 8px;display:flex;left:50%;overflow-x:auto;translate:-50%;box-shadow:0 12px 28px #02061761}.encounter-active-berries::-webkit-scrollbar{display:none}.encounter-berry-menu::-webkit-scrollbar{display:none}.encounter-active-berry{color:var(--berry-color);white-space:nowrap;flex:none;align-items:center;gap:4px;font-size:.58rem;font-weight:900;line-height:1;display:flex}.encounter-active-berry img{object-fit:contain;width:20px;height:20px}.encounter-active-plus{color:#94a3b88c;margin-left:2px}.encounter-berry-menu{bottom:calc(100px + env(safe-area-inset-bottom));z-index:55;-webkit-backdrop-filter:blur(18px);background:linear-gradient(145deg,#070e1df2,#020617e6);border:1px solid #ffffff24;border-radius:8px;gap:8px;max-width:min(520px,100vw - 24px);padding:10px;display:flex;left:50%;overflow-x:auto;translate:-50%;box-shadow:0 22px 54px #00000080,inset 0 1px #ffffff1a}.encounter-berry-option{background:linear-gradient(180deg, color-mix(in srgb, var(--berry-color), transparent 90%), transparent), #ffffff0e;color:#fff;cursor:pointer;border:1px solid #ffffff1f;border-radius:8px;flex:0 0 76px;grid-template-rows:38px auto auto auto;place-items:center;gap:2px;min-height:104px;padding:8px 7px;transition:transform .16s,border-color .16s,box-shadow .16s,opacity .16s;display:grid;box-shadow:inset 0 1px #ffffff14}.encounter-berry-option.is-rare{border-color:#94a3b875}.encounter-berry-option.is-legendary{border-color:#fbbf2494;box-shadow:inset 0 0 10px #fbbf241f,0 8px 18px #fbbf2424}.encounter-berry-option.is-active{border-color:color-mix(in srgb, var(--berry-color), white 16%);background:linear-gradient(180deg, color-mix(in srgb, var(--berry-color), transparent 80%), transparent), #ffffff13;box-shadow:0 0 0 2px color-mix(in srgb, var(--berry-color), transparent 78%)}.encounter-berry-option:disabled{cursor:not-allowed;opacity:.34}.encounter-berry-option:not(:disabled):active{transform:scale(.96)}.encounter-berry-option img{object-fit:contain;width:36px;height:36px}.encounter-berry-name{color:#e2e8f0;white-space:nowrap;font-size:.62rem;font-weight:900;line-height:1}.encounter-berry-effect{max-width:68px;color:var(--berry-color);text-align:center;font-size:.54rem;font-weight:900;line-height:1.08}.encounter-berry-count{color:#94a3b8d1;font-size:.58rem;font-weight:900;line-height:1}.encounter-gesture-zone{z-index:20;touch-action:none;position:absolute;inset:0}.encounter-result-overlay{z-index:9999;-webkit-backdrop-filter:blur(5px);background:#0000009e;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.encounter-result-panel{text-align:center;flex-direction:column;align-items:center;gap:clamp(12px,2.5vw,18px);width:min(400px,100vw - 28px);max-height:min(660px,100dvh - 48px);padding:clamp(22px,4.5vw,34px) 18px;display:flex;overflow:hidden}.encounter-result-title{text-transform:uppercase;margin:0;font-size:clamp(2rem,8vw,2.5rem);font-weight:900;line-height:1}.encounter-result-title.is-success{color:var(--success);text-shadow:0 0 20px var(--success)}.encounter-result-logo{object-fit:contain;filter:drop-shadow(0 14px 22px #0000007a)drop-shadow(0 0 20px #facc1542);width:min(340px,86vw);max-height:132px}.encounter-result-logo--fled{filter:drop-shadow(0 14px 22px #00000080)drop-shadow(0 0 18px #ff392f4d);width:min(330px,84vw)}.encounter-result-title.is-danger{color:var(--danger);text-shadow:0 0 20px var(--danger)}.encounter-result-copy{color:#f8fafc;font-size:1.05rem;font-weight:700}.encounter-reward-summary{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#94a3b847 transparent;gap:7px;width:100%;max-height:min(312px,42dvh);padding:2px;display:grid;overflow-y:auto}.encounter-reward-summary::-webkit-scrollbar{width:4px}.encounter-reward-summary::-webkit-scrollbar-thumb{background:#94a3b847;border-radius:999px}.encounter-reward-row{background:linear-gradient(90deg, var(--reward-row-tint,#60a5fa24), transparent 62%), #0f172aa8;border:1px solid #ffffff1f;border-radius:11px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:56px;padding:8px 10px;display:grid;box-shadow:inset 0 1px #ffffff14,0 8px 18px #02061733}.encounter-reward-icon{justify-self:center}.encounter-reward-copy{text-align:left;gap:2px;min-width:0;display:grid}.encounter-reward-copy>span{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:900;line-height:1.08;overflow:hidden}.encounter-reward-row strong{color:#fff;white-space:nowrap;font-size:.98rem;font-weight:950;line-height:1}.encounter-reward-copy small{color:#cbd5e1c7;overflow-wrap:anywhere;font-size:.61rem;font-weight:800;line-height:1.22}.encounter-reward-row--xp{--reward-row-tint:#2563eb38;border-color:#60a5fa52}.encounter-reward-row--stardust{--reward-row-tint:#7e22ce38;border-color:#c084fc57}.encounter-reward-row--candy{--reward-row-tint:#05966938;border-color:#34d39952}.encounter-reward-row--item{--reward-row-tint:#b4530938;border-color:#fbbf2452}.encounter-result-bonus{color:#facc15;font-size:.9rem;font-weight:800}.encounter-result-button{width:100%;margin-top:6px}@media (width<=640px){.encounter-top-action{top:calc(16px + env(safe-area-inset-top));flex-wrap:wrap;gap:6px;max-width:min(214px,100vw - 166px);left:12px}.encounter-info-wrap{top:calc(16px + env(safe-area-inset-top));right:12px}.encounter-run-button{min-width:62px;min-height:36px;padding:0 14px;font-size:.72rem}.encounter-run-button--danger{min-width:58px}.encounter-run-button--danger.is-armed{min-width:78px}.encounter-throw-limit-pill{gap:5px;min-height:32px;padding:0 8px;font-size:.58rem}.encounter-throw-limit-pill strong{font-size:.7rem}.encounter-info-card{min-width:142px;padding:9px 10px}.encounter-name-row{gap:5px}.encounter-stats-toggle{width:20px;height:20px;font-size:.7rem}.encounter-pokemon-name{font-size:.98rem}.encounter-instruction{bottom:calc(132px + env(safe-area-inset-bottom));width:min(250px,100% - 24px)}.encounter-instruction-chip span{font-size:.68rem}.encounter-result-panel{gap:14px;width:min(360px,100vw - 20px);max-height:calc(100dvh - 34px);padding:24px 14px}.encounter-reward-summary{gap:6px;max-height:min(300px,40dvh)}.encounter-reward-row{grid-template-columns:34px minmax(0,1fr) auto;gap:8px;min-height:52px;padding:7px 9px}.encounter-reward-row strong{font-size:.9rem}.encounter-reward-copy>span{font-size:.72rem}.encounter-reward-copy small{font-size:.56rem}.encounter-toast-layer{top:calc(104px + env(safe-area-inset-top));width:calc(100% - 24px)}.encounter-bottom-hud{bottom:calc(24px + env(safe-area-inset-bottom))}.encounter-active-berries{bottom:calc(86px + env(safe-area-inset-bottom));max-width:calc(100vw - 20px)}.encounter-berry-menu,.encounter-ball-menu{bottom:calc(90px + env(safe-area-inset-bottom));gap:6px;max-width:calc(100vw - 18px);padding:8px}.encounter-berry-option,.encounter-ball-option{flex-basis:68px;min-height:100px;padding:7px 5px}.encounter-ball-trigger{min-width:136px;padding:8px 14px}.encounter-berry-effect{max-width:60px;font-size:.5rem}}@media (height<=640px){.encounter-instruction{display:none}.encounter-toast-layer{top:calc(78px + env(safe-area-inset-top))}}@media (prefers-reduced-motion:reduce){.encounter-run-button,.encounter-berry-trigger,.encounter-berry-option,.encounter-ball-trigger,.encounter-ball-option{transition:none}}.map-ui-top{z-index:1000;justify-content:space-between;align-items:flex-start;display:flex;position:absolute;top:20px;left:20px;right:20px}.map-ui-bottom{z-index:1000;justify-content:space-evenly;align-items:center;display:flex;position:absolute;bottom:30px;left:0;right:0}.pokeball-menu-btn{cursor:pointer;background:linear-gradient(135deg,#f44 50%,#fff 50%);border:4px solid #333;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;transition:transform .2s;display:flex;box-shadow:0 4px 12px #00000080}.pokeball-menu-btn:after{content:"";background:#fff;border:2px solid #333;border-radius:50%;width:20px;height:20px}.pokeball-menu-btn:active{transform:scale(.9)}.joystick-panel{z-index:1000;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:150px;left:20px}.run-toggle{color:#fff;cursor:pointer;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:2px solid #ffffffeb;border-radius:999px;min-width:78px;min-height:34px;font-size:.88rem;font-weight:900;transition:transform .16s,background .16s,box-shadow .16s,color .16s;box-shadow:0 6px 16px #0f172a6b}.run-toggle.is-idle{color:#ffffff73;background:linear-gradient(135deg,#475569b3,#1e293be6);border-color:#ffffff4d;box-shadow:0 4px 10px #0f172a47}.run-toggle.is-walking{background:linear-gradient(135deg,#22c55e,#15803d);box-shadow:0 6px 16px #22c55e52}.run-toggle.is-running{background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 6px 18px #ef444461}.run-toggle:active{transform:scale(.95)}.joystick-pad{touch-action:none;cursor:grab;background:radial-gradient(circle,#ffffff42 0 18%,#0000 19%),radial-gradient(circle,#ffffff24 0 44%,#ffffff4d 45% 46%,#ffffff24 48% 100%);border:1px solid #ffffff1f;border-radius:50%;width:120px;height:120px;position:relative;box-shadow:inset 0 0 30px #ffffff14,0 10px 26px #0000004d}.joystick-pad.is-active{cursor:grabbing;box-shadow:inset 0 0 34px #3b82f633,0 0 22px #3b82f647}.joystick-thumb{pointer-events:none;background:radial-gradient(circle at 35% 28%,#f8fafc,#94a3b8 62%,#475569);border-radius:50%;width:48px;height:48px;transition:transform 80ms linear;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 8px 18px #00000057,inset 0 2px 8px #ffffff59}.joystick-kb-hint{color:#ffffff59;letter-spacing:.5px;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.6rem;font-weight:700}.map-ui-top{top:calc(var(--safe-top) + var(--map-edge));right:calc(var(--safe-right) + var(--map-edge));left:calc(var(--safe-left) + var(--map-edge));z-index:1000;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;width:auto;display:flex;position:absolute}.map-ui-top>*{pointer-events:auto}.map-screen .leaflet-tile{backface-visibility:hidden;will-change:filter;transition:filter .3s}.leaflet-control-attribution{opacity:.3!important;box-shadow:none!important;background:0 0!important;padding:0 3px!important;font-size:.45rem!important}.map-screen.map-theme-light .leaflet-tile{filter:saturate(1.05)brightness(1.04)contrast(.98)}.map-screen.map-theme-dark .leaflet-tile{filter:saturate(1.06)brightness(.98)contrast(1.03)}.map-environment-overlay{z-index:1;pointer-events:none;background:radial-gradient(circle,#0000 40%,#07071452 100%),linear-gradient(#0206170f,#0206172e);transition:background .6s,opacity .6s;position:absolute;inset:0;overflow:hidden}.map-environment-overlay:before,.map-environment-overlay:after{content:"";opacity:0;pointer-events:none;transition:opacity .6s;position:absolute;inset:0}.map-theme-light .map-environment-overlay{background:radial-gradient(circle,#0000 42%,#0c1b2e3d 100%),linear-gradient(#ffffff0d,#38bdf814)}.map-theme-dark .map-environment-overlay{background:radial-gradient(circle,#0000 46%,#02061729 100%),linear-gradient(#080d1e08,#02061714)}.map-time-dawn .map-environment-overlay,.map-time-dusk .map-environment-overlay{background:radial-gradient(circle,#0000 40%,#0206173d 100%),linear-gradient(160deg,#facc151f,#0000 38%),linear-gradient(18deg,#0000 44%,#ef44441a,#0000 72%)}.map-weather-drizzle .map-environment-overlay,.map-weather-rain .map-environment-overlay{background:radial-gradient(circle,#0000 42%,#0208172e 100%),linear-gradient(#082f4914,#02061724)}.map-weather-storm .map-environment-overlay{background:radial-gradient(circle,#0000 40%,#02061747 100%),linear-gradient(#0f172a24,#0206173d)}.map-weather-snow .map-environment-overlay{background:radial-gradient(circle,#0000 44%,#dbeafe29 100%),linear-gradient(#f0f9ff1a,#1e293b1a)}.map-weather-fog .map-environment-overlay,.map-weather-cloudy .map-environment-overlay{background:radial-gradient(circle,#0000 38%,#e2e8f01f 100%),linear-gradient(#e2e8f014,#3341551a)}.weather-effect-layer{z-index:2;pointer-events:none;contain:layout style paint;position:absolute;inset:0;overflow:hidden}.weather-effect-layer--battle{z-index:4}.weather-effect-layer>span{opacity:0;pointer-events:none;backface-visibility:hidden;position:absolute;inset:-22% -16%;transform:translate(0,0)}.weather-effect-layer__tone{inset:0}.weather-effect-drizzle .weather-effect-layer__tone,.weather-effect-rain .weather-effect-layer__tone{opacity:.22;background:radial-gradient(circle at 50% 12%,#bae6fd1a,#0000 32%),linear-gradient(#082f491a,#02061714)}.weather-effect-storm .weather-effect-layer__tone{opacity:.36;background:radial-gradient(circle at 28% 8%,#38bdf829,#0000 30%),linear-gradient(#02061724,#02061738)}.weather-effect-snow .weather-effect-layer__tone{opacity:.24;background:radial-gradient(circle at 50% 18%,#f0f9ff33,#0000 38%),linear-gradient(#dbeafe14,#0f172a1f)}.weather-effect-layer__precip{will-change:transform;background-repeat:repeat}.weather-effect-drizzle .weather-effect-layer__precip--back{opacity:.28;background-image:radial-gradient(1px 5px at 14% 12%,#bfdbfe94 0 58%,#0000 72%),radial-gradient(1px 5px at 62% 38%,#dbeafe6b 0 58%,#0000 72%),radial-gradient(1px 4px at 86% 76%,#bfdbfe66 0 58%,#0000 72%);background-size:150px 190px;animation:2.8s linear infinite weather-rain-fall-soft}.weather-effect-rain .weather-effect-layer__precip--back,.weather-effect-storm .weather-effect-layer__precip--back{opacity:.38;background-image:radial-gradient(1.2px 9px at 10% 8%,#bfdbfe9e 0 58%,#0000 72%),radial-gradient(1.1px 8px at 36% 42%,#dbeafe80 0 58%,#0000 72%),radial-gradient(1px 7px at 68% 18%,#bae6fd75 0 58%,#0000 72%),radial-gradient(1.2px 9px at 88% 72%,#dbeafe8a 0 58%,#0000 72%);background-size:170px 220px;animation:1.35s linear infinite weather-rain-fall}.weather-effect-rain .weather-effect-layer__precip--front,.weather-effect-storm .weather-effect-layer__precip--front{opacity:.28;background-image:radial-gradient(1.4px 11px at 18% 22%,#f0f9ffb3 0 58%,#0000 72%),radial-gradient(1.2px 10px at 52% 6%,#bfdbfe99 0 58%,#0000 72%),radial-gradient(1.3px 10px at 78% 58%,#e0f2fe9e 0 58%,#0000 72%);background-size:210px 260px;animation:.95s linear infinite weather-rain-fall}.weather-effect-storm .weather-effect-layer__precip--back{opacity:.52;animation-duration:1s}.weather-effect-storm .weather-effect-layer__precip--front{opacity:.42;animation-duration:.72s}.weather-effect-snow .weather-effect-layer__precip--back{opacity:.58;will-change:transform;background-image:radial-gradient(circle at 12% 18%,#ffffffd6 0 1.4px,#0000 2.2px),radial-gradient(circle at 44% 68%,#f0f9ff9e 0 1.2px,#0000 2px),radial-gradient(circle at 76% 34%,#ffffffb3 0 1.6px,#0000 2.4px);background-size:190px 210px;animation:13s linear infinite weather-snow-fall}.weather-effect-snow .weather-effect-layer__precip--front{opacity:.46;will-change:transform;background-image:radial-gradient(circle at 22% 28%,#ffffffd1 0 2px,#0000 3px),radial-gradient(circle at 58% 10%,#dbeafea8 0 1.5px,#0000 2.4px),radial-gradient(circle at 92% 64%,#ffffffbd 0 1.7px,#0000 2.6px);background-size:260px 250px;animation:9s linear infinite weather-snow-fall-near}.weather-effect-fog .weather-effect-layer__mist,.weather-effect-cloudy .weather-effect-layer__mist{opacity:.52;filter:blur(14px);will-change:transform;background:radial-gradient(at 18% 42%,#e2e8f042,#0000 42%),radial-gradient(at 72% 34%,#94a3b833,#0000 44%),linear-gradient(100deg,#0000 0 12%,#e2e8f029 28%,#0000 52%);animation:14s ease-in-out infinite weather-mist-drift}.weather-effect-cloudy .weather-effect-layer__mist{opacity:.36;animation-duration:18s}.weather-effect-windy .weather-effect-layer__gust{opacity:.26;filter:blur(6px);will-change:transform;background:linear-gradient(100deg,#0000 0 16%,#e0f2fe2e 22%,#0000 34%),linear-gradient(105deg,#0000 0 58%,#bae6fd24 64%,#0000 76%);animation:5.8s ease-in-out infinite weather-gust-sweep}.weather-effect-storm .weather-effect-layer__flash{opacity:0;background:radial-gradient(circle at 72% 18%,#fafaffb8,#0000 18%),linear-gradient(#7dd3fc38,#0000 42%);animation:5.4s ease-in-out infinite weather-storm-flash;inset:0}.weather-effect-layer--battle.weather-effect-rain .weather-effect-layer__tone,.weather-effect-layer--battle.weather-effect-drizzle .weather-effect-layer__tone,.weather-effect-layer--battle.weather-effect-snow .weather-effect-layer__tone{opacity:.28}.weather-effect-layer--battle.weather-effect-storm .weather-effect-layer__tone{opacity:.44}.map-raid-event-countdown{top:calc(var(--safe-top) + 64px);z-index:1001;-webkit-backdrop-filter:blur(16px);pointer-events:none;background:radial-gradient(circle at 13%,#fbbf243d,#0000 30%),linear-gradient(135deg,#0b101fe6,#22162ad1),#050814cc;border:1px solid #fbbf247a;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;width:min(322px,100vw - 118px);min-height:58px;padding:7px 10px 7px 9px;display:grid;position:absolute;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 10px 28px #0000006b,0 0 28px #fbbf2438,inset 0 0 0 1px #ffffff0f}.map-raid-event-countdown:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);animation:3.2s ease-out infinite raidEventScan;position:absolute;inset:0;transform:translate(-110%)}.map-raid-event-countdown:after{content:"";opacity:.34;filter:blur(18px);background:conic-gradient(from 90deg,#0000,#fbbf245c,#0000,#38bdf840,#0000);animation:2.6s ease-in-out infinite raidEventAura;position:absolute;inset:-18px}.map-raid-event-countdown.is-live-burst{background:radial-gradient(circle at 13%,#f8717138,#0000 30%),linear-gradient(135deg,#120e1ceb,#2c1118d6),#050814d1;border-color:#f871716b;box-shadow:0 10px 28px #0000006b,0 0 30px #f871713d,inset 0 0 0 1px #ffffff0f}.map-raid-event-countdown.is-live-burst:after{background:conic-gradient(from 90deg,#0000,#f8717175,#0000,#fbbf243d,#0000)}.map-raid-event-orb,.map-raid-event-copy,.map-raid-event-timer{z-index:1;position:relative}.map-raid-event-orb{color:#fde68a;background:radial-gradient(circle at 35% 28%,#ffffff38,#0000 30%),#78350f57;border:1px solid #fbbf2475;border-radius:999px;place-items:center;width:36px;height:36px;animation:1s ease-in-out infinite raidEventOrbPulse;display:grid;box-shadow:0 0 18px #fbbf242e}.map-raid-event-countdown.is-live-burst .map-raid-event-orb{color:#fecaca;background:radial-gradient(circle at 35% 28%,#fff3,#0000 30%),#7f1d1d61;border-color:#f8717175;box-shadow:0 0 18px #f8717138}.map-raid-event-copy{gap:2px;min-width:0;display:grid}.map-raid-event-copy strong,.map-raid-event-copy small,.map-raid-event-timer small,.map-raid-event-timer b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.map-raid-event-copy strong{color:#f8fafc;letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:950}.map-raid-event-copy small{color:#cbd5e1;font-size:.68rem;font-weight:850}.map-raid-event-timer{justify-items:end;gap:1px;min-width:54px;display:grid}.map-raid-event-timer small{color:#fbbf24;letter-spacing:.08em;text-transform:uppercase;font-size:.6rem;font-weight:950}.map-raid-event-countdown.is-live-burst .map-raid-event-timer small{color:#fca5a5}.map-raid-event-timer b{color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 0 8px #fbbf245c,0 0 18px #fbbf2447;font-size:2rem;font-weight:1000;line-height:1;animation:1s ease-in-out infinite raidEventNumberPop}.map-raid-event-countdown.is-live-burst .map-raid-event-timer b{letter-spacing:.08em;color:#fecaca;text-shadow:0 0 14px #f8717157;font-size:1.08rem;animation:none}.map-raid-event-spark{z-index:1;color:#fde68a;filter:drop-shadow(0 0 7px #fbbf24b8);animation:2.6s ease-in-out infinite raidEventSpark;position:absolute}.map-raid-event-spark-1{top:7px;right:9px}.map-raid-event-spark-2{animation-delay:.9s;bottom:8px;left:52px}.event-raid-announcement-layer{top:calc(var(--safe-top) + 18px);z-index:30000;padding:0 calc(var(--safe-right) + 14px) 0 calc(var(--safe-left) + 14px);pointer-events:none;justify-content:center;display:flex;position:fixed;left:0;right:0}.event-raid-announcement-card{color:#f8fafc;-webkit-backdrop-filter:blur(18px);background:radial-gradient(circle at 11% 48%,#fbbf2440,#0000 31%),linear-gradient(135deg,#090e1cf2,#25182ee6),#040712eb;border:1px solid #fbbf2480;border-radius:18px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;width:min(440px,100%);min-height:66px;padding:10px 12px 10px 10px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 38px #00000085,0 0 34px #fbbf2447,inset 0 0 0 1px #ffffff12}.event-raid-announcement-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1f,#0000);animation:3.4s ease-out infinite raidEventScan;position:absolute;inset:0;transform:translate(-120%)}.event-raid-announcement-card:after{content:"";opacity:.36;filter:blur(22px);background:conic-gradient(from 90deg,#0000,#fbbf2461,#0000,#38bdf84d,#0000);animation:2.8s ease-in-out infinite raidEventAura;position:absolute;inset:-24px}.event-raid-announcement-card--ended{background:radial-gradient(circle at 11% 48%,#f871713d,#0000 31%),linear-gradient(135deg,#100c1af2,#30121ce6),#040712eb;border-color:#f871717a;box-shadow:0 16px 38px #00000085,0 0 34px #f871713d,inset 0 0 0 1px #ffffff12}.event-raid-announcement-card--ended:after{background:conic-gradient(from 90deg,#0000,#f871716b,#0000,#fbbf2438,#0000)}.event-raid-announcement-icon,.event-raid-announcement-copy,.event-raid-announcement-status{z-index:1;position:relative}.event-raid-announcement-icon{color:#fde68a;background:radial-gradient(circle at 34% 26%,#ffffff3d,#0000 33%),#78350f5c;border:1px solid #fbbf2480;border-radius:999px;place-items:center;width:42px;height:42px;animation:1.15s ease-in-out infinite raidEventOrbPulse;display:grid;box-shadow:0 0 20px #fbbf2438}.event-raid-announcement-card--ended .event-raid-announcement-icon{color:#fecaca;background:radial-gradient(circle at 34% 26%,#fff3,#0000 33%),#7f1d1d6b;border-color:#f8717180;box-shadow:0 0 20px #f871713d}.event-raid-announcement-copy{gap:3px;min-width:0;display:grid}.event-raid-announcement-copy strong,.event-raid-announcement-copy small,.event-raid-announcement-status{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.event-raid-announcement-copy strong{color:#fff;text-transform:uppercase;font-size:.94rem;font-weight:1000;line-height:1.08}.event-raid-announcement-copy small{color:#cbd5e1;font-size:.76rem;font-weight:850}.event-raid-announcement-status{color:#fef3c7;letter-spacing:.08em;text-align:center;text-transform:uppercase;background:#78350f42;border:1px solid #fbbf246b;border-radius:999px;justify-self:end;min-width:62px;padding:6px 9px;font-size:.66rem;font-weight:1000;box-shadow:0 0 14px #fbbf242e}.event-raid-announcement-card--ended .event-raid-announcement-status{color:#fecaca;background:#7f1d1d4d;border-color:#f871716b;box-shadow:0 0 14px #f871712e}.map-announcement-banner{top:calc(var(--safe-top) + 118px);z-index:1002;width:min(420px, calc(100vw - var(--safe-left) - var(--safe-right) - 118px));color:#f8fafc;pointer-events:auto;transform-origin:top;position:absolute;left:50%;transform:translate(-50%)}.map-announcement-banner.is-minimized{display:block}.map-announcement-minimized-anchor{pointer-events:none;transform-origin:50%;will-change:transform, opacity;justify-content:center;width:100%;display:flex}.map-announcement-minimized{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--announcement-accent) 50%, transparent);appearance:none;width:clamp(44px,11.5vw,50px);height:clamp(44px,11.5vw,50px);color:inherit;font:inherit;box-shadow:0 12px 28px #0006, 0 0 22px var(--announcement-glow), inset 0 0 0 1px #ffffff0f;-webkit-backdrop-filter:blur(16px);cursor:pointer;pointer-events:auto;transform-origin:50%;will-change:transform, opacity;background:radial-gradient(circle at 36% 28%,#fff3,#0000 34%),linear-gradient(145deg,#0a101ff0,#161c2fe6);border-radius:999px;place-items:center;margin:0;padding:0;line-height:0;transition:transform .15s cubic-bezier(.23,1,.32,1),border-color .18s,box-shadow .18s;display:grid}.map-announcement-minimized:active{transform:scale(.985)}.map-announcement-minimized .map-announcement-icon{box-sizing:border-box;border:1px solid color-mix(in srgb, var(--announcement-accent) 58%, transparent);width:34px;height:34px;color:color-mix(in srgb, var(--announcement-accent) 84%, #fff);background:radial-gradient(circle at 34% 26%, #ffffff3d, transparent 32%), color-mix(in srgb, var(--announcement-accent) 18%, #0f172ab8);box-shadow:0 0 14px var(--announcement-glow), inset 0 0 0 1px #ffffff0a;border-radius:999px;place-items:center;margin:0;display:grid}.map-announcement-minimized .map-announcement-icon svg{transform-origin:50%;width:17px;height:17px;display:block;transform:translate(.15px,.35px)}.map-announcement-shell{border:1px solid color-mix(in srgb, var(--announcement-accent) 42%, transparent);background:radial-gradient(circle at 12% 50%, var(--announcement-soft), transparent 36%), linear-gradient(135deg, #0a101fed, #161c2fe0), #040712db;width:100%;min-width:0;box-shadow:0 12px 30px #0000006b, 0 0 24px var(--announcement-glow), inset 0 0 0 1px #ffffff0f;-webkit-backdrop-filter:blur(16px);transform-origin:50%;will-change:transform, opacity;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.map-announcement-main,.map-announcement-dismiss{color:inherit;font:inherit;border:0}.map-announcement-main{text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;width:100%;min-width:0;padding:8px 10px 8px 9px;display:grid}.map-announcement-main:active{transform:scale(.99)}.map-announcement-icon{border:1px solid color-mix(in srgb, var(--announcement-accent) 52%, transparent);width:34px;height:34px;color:color-mix(in srgb, var(--announcement-accent) 84%, #fff);background:radial-gradient(circle at 34% 26%, #ffffff3d, transparent 32%), color-mix(in srgb, var(--announcement-accent) 20%, #0f172abd);box-shadow:0 0 16px var(--announcement-glow);border-radius:999px;flex:none;place-items:center;display:grid}.map-announcement-copy{gap:2px;min-width:0;display:grid}.map-announcement-meta{min-width:0;color:color-mix(in srgb, var(--announcement-accent) 82%, #fff);text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:5px;font-size:.58rem;font-weight:950;line-height:1.1;display:flex}.map-announcement-meta span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.map-announcement-copy strong,.map-announcement-copy small{text-overflow:ellipsis;min-width:0;overflow:hidden}.map-announcement-copy strong{color:#fff;white-space:nowrap;font-size:.8rem;font-weight:950;line-height:1.2}.map-announcement-copy small{color:#cbd5e1;-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.66rem;font-weight:780;line-height:1.25;display:-webkit-box}.map-announcement-dismiss{color:#94a3b8;cursor:pointer;background:#ffffff0a;border-left:1px solid #ffffff14;align-self:stretch;place-items:center;width:34px;display:grid}.map-announcement-dismiss:hover{color:#fff;background:#ffffff14}.map-announcement-dismiss:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.map-announcement-minimized{transition-duration:1ms}.map-announcement-minimized:active,.map-announcement-main:active,.map-announcement-dismiss:active{transform:none}}.map-announcement-detail{border:1px solid color-mix(in srgb, var(--announcement-accent) 28%, transparent);box-sizing:border-box;-webkit-backdrop-filter:blur(14px);transform-origin:top;will-change:transform, opacity;background:#070c19eb;border-radius:14px;margin-top:7px;padding:10px 11px;box-shadow:0 10px 24px #00000057}.map-announcement-detail-title{min-width:0;color:color-mix(in srgb, var(--announcement-accent) 78%, #fff);align-items:center;gap:6px;font-size:.62rem;font-weight:900;line-height:1.25;display:flex}.map-announcement-detail-title span{overflow-wrap:anywhere;min-width:0}.map-announcement-detail p{color:#e2e8f0;overflow-wrap:anywhere;max-height:132px;margin:7px 0 0;font-size:.74rem;font-weight:700;line-height:1.45;overflow-y:auto}@keyframes raidEventScan{0%,48%{opacity:0;transform:translate(-110%)}58%{opacity:1}to{opacity:0;transform:translate(110%)}}@keyframes raidEventSpark{0%,to{opacity:.32;transform:scale(.85)rotate(0)}45%{opacity:1;transform:scale(1.12)rotate(10deg)}}@keyframes raidEventAura{0%,to{opacity:.22;transform:scale(.96)rotate(0)}50%{opacity:.46;transform:scale(1.04)rotate(8deg)}}@keyframes raidEventOrbPulse{0%,to{transform:scale(1);box-shadow:0 0 14px #fbbf2433}50%{transform:scale(1.08);box-shadow:0 0 24px #fbbf2457}}@keyframes raidEventNumberPop{0%,to{transform:scale(1)}42%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.map-raid-event-countdown:before,.map-raid-event-countdown:after,.map-raid-event-orb,.map-raid-event-timer b,.map-raid-event-spark,.event-raid-announcement-card:before,.event-raid-announcement-card:after,.event-raid-announcement-icon{animation:none}}.map-environment-chip{top:calc(var(--safe-top) + var(--map-edge));right:calc(var(--safe-right) + var(--map-edge));z-index:1000;-webkit-backdrop-filter:blur(14px);color:#fff;pointer-events:none;background:#05081480;border-radius:999px;align-items:center;gap:10px;max-width:min(280px,44vw);min-height:46px;padding:8px 13px 8px 11px;display:inline-flex;position:absolute;box-shadow:0 4px 12px #00000040;border:1px solid #ffffff1f!important}.map-environment-chip svg{color:currentColor;flex:none}.map-environment-chip span{gap:2px;min-width:0;display:grid}.map-environment-chip strong,.map-environment-chip small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.map-environment-chip strong{letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:900}.map-environment-chip small{color:currentColor;opacity:.72;font-size:.66rem;font-weight:800}@media (hover:none),(pointer:coarse),(width<=768px){.map-environment-overlay:before,.map-environment-overlay:after{animation:none!important}.weather-effect-layer__precip--front{display:none}.weather-effect-fog .weather-effect-layer__mist,.weather-effect-cloudy .weather-effect-layer__mist{filter:blur(9px)}.weather-effect-storm .weather-effect-layer__flash{animation-duration:7s}.map-weather-storm .map-environment-overlay:after{opacity:0}.map-screen .leaflet-marker-icon,.map-screen .leaflet-marker-pane,.player-avatar-2d,.player-sprite-frame{backface-visibility:hidden}.player-avatar-2d,.player-sprite-frame{filter:none}.wild-pokemon-halo,.wild-pokemon-sprite,.wild-pokemon-shadow,.pokestop-model__field,.pokestop-model__scene,.gym-model-3d__stack,.gym-pulse,.tower-model-3d__stack,.tower-pulse{animation:none!important}}@media (prefers-reduced-motion:reduce){.map-environment-overlay:before,.map-environment-overlay:after,.weather-effect-layer>span,.map-screen .leaflet-tile{transition:none;animation:none}}.map-ui-top-left{max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 390px);flex-direction:column;align-items:flex-start;gap:8px;display:flex}.map-effect-timers{pointer-events:none;flex-flow:column;align-items:flex-start;gap:6px;max-width:min(92vw,190px);display:flex;overflow:visible}.map-effect-chip{border:1px solid color-mix(in srgb, var(--effect-accent) 42%, #ffffff29);background:linear-gradient(135deg, color-mix(in srgb, var(--effect-accent) 18%, transparent), #050814a3 48%), #05081494;width:100%;min-width:150px;min-height:28px;box-shadow:0 8px 18px #00000040, 0 0 12px color-mix(in srgb, var(--effect-accent) 24%, transparent);color:#fff;letter-spacing:0;font-variant-numeric:tabular-nums;white-space:nowrap;-webkit-backdrop-filter:blur(14px);border-radius:999px;flex:none;justify-content:flex-start;align-items:center;gap:6px;padding:5px 9px 5px 7px;font-size:.68rem;font-weight:850;line-height:1;display:inline-flex}.map-effect-chip-icon{background:color-mix(in srgb, var(--effect-accent) 22%, #ffffff14);width:18px;height:18px;color:var(--effect-accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--effect-accent) 34%, transparent);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.map-effect-chip-label{text-overflow:ellipsis;flex:auto;min-width:0;max-width:none;overflow:hidden}.map-effect-chip-time{min-width:38px;color:color-mix(in srgb, var(--effect-accent) 72%, #fff);text-align:right;flex:none;font-size:.72rem;font-weight:950}.map-boss-reward-chip{cursor:pointer;pointer-events:auto;border-color:color-mix(in srgb, var(--effect-accent) 54%, #ffffff24);background:radial-gradient(circle at 18px 50%, color-mix(in srgb, var(--effect-accent) 32%, transparent), transparent 38px), linear-gradient(135deg, color-mix(in srgb, var(--effect-accent) 18%, transparent), #050814b8 50%), #0508149e;width:152px;min-width:152px;max-width:152px;min-height:28px;box-shadow:0 10px 24px #00000047, 0 0 15px color-mix(in srgb, var(--effect-accent) 28%, transparent);padding-right:8px;transition:width .25s,min-width .25s,max-width .25s,gap .2s,padding .2s,transform .16s}.map-boss-reward-chip.is-expanded{width:min(196px, calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)));min-width:160px;max-width:min(196px, calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)));padding-right:9px}.map-boss-reward-chip .map-effect-chip-label{opacity:1;color:#d8b4fe;flex:auto;max-width:48px;transition:opacity .18s,max-width .24s,flex-basis .24s}.map-boss-reward-chip.is-expanded .map-effect-chip-label{opacity:1;flex:auto;max-width:82px}.map-boss-reward-chip .map-effect-chip-time{min-width:50px;color:color-mix(in srgb, var(--effect-accent) 82%, #fff);font-size:.68rem}.map-boss-reward-chip.is-expanded .map-effect-chip-time{min-width:54px;font-size:.72rem}.map-boss-reward-chip:active{transform:translateY(1px)scale(.98)}.map-boss-reward-chip.is-urgent{animation:1.8s ease-in-out infinite boss-reward-urgent-pulse}.map-effect-chip-count{border:1px solid color-mix(in srgb, var(--effect-accent) 46%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--effect-accent) 54%, transparent), #0f172ab3), #0f172ab3;color:#f8fafc;min-width:17px;height:17px;box-shadow:0 0 10px color-mix(in srgb, var(--effect-accent) 24%, transparent);border-radius:999px;flex:none;place-items:center;padding:0 4px;font-size:.6rem;font-weight:950;line-height:1;display:inline-grid}@keyframes boss-reward-urgent-pulse{0%,to{box-shadow:0 10px 24px #00000047,0 0 12px #f973162e}50%{box-shadow:0 10px 24px #00000047,0 0 22px #f973165c}}.map-location-bubble{--location-accent:#2f80ed;--location-dark:#1558b8;--location-ink:#fff;--location-height:34px;--location-icon-size:24px;--location-copy-size:15px;--location-inner-top:5px;--location-inner-right:calc(var(--location-copy-size) + 13px);--location-inner-bottom:5px;--location-inner-left:calc(var(--location-icon-size) + 10px);z-index:1;isolation:isolate;grid-template-columns:var(--location-icon-size) minmax(0, 1fr) var(--location-copy-size);width:max-content;min-width:154px;max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 222px);height:var(--location-height);background:radial-gradient(75% 120% at 92% 48%, color-mix(in srgb, var(--location-accent) 18%, transparent), transparent 44%), linear-gradient(180deg, transparent calc(100% - 8px), color-mix(in srgb, var(--location-accent) 88%, #fff) calc(100% - 8px), var(--location-dark) calc(100% - 3px), transparent calc(100% - 3px)), linear-gradient(180deg, #fffef9 0%, #f8fbff 52%, #edf6ff 100%);box-shadow:0 6px 12px #0f172a3b, 0 0 0 2px color-mix(in srgb, var(--location-accent) 70%, #2a80e0), 0 0 0 4px color-mix(in srgb, var(--location-accent) 36%, #ffd65280), inset 0 2px 0 #ffffffe6, inset 0 -4px 0 #1c6fcc1f;-webkit-backdrop-filter:none;color:#123866;cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:5px;padding:3px 6px 3px 4px;transition:transform .15s cubic-bezier(.23,1,.32,1),filter .18s;display:grid;position:relative;overflow:visible;border:2px solid color-mix(in srgb, var(--location-accent) 48%, #ffe37d)!important}.glass-card.map-location-bubble,.glass-card.map-location-bubble:active{background:radial-gradient(75% 120% at 92% 48%, color-mix(in srgb, var(--location-accent) 18%, transparent), transparent 44%), linear-gradient(180deg, transparent calc(100% - 8px), color-mix(in srgb, var(--location-accent) 88%, #fff) calc(100% - 8px), var(--location-dark) calc(100% - 3px), transparent calc(100% - 3px)), linear-gradient(180deg, #fffef9 0%, #f8fbff 52%, #edf6ff 100%)!important}.map-location-bubble:before{content:"";z-index:1;width:calc(var(--location-icon-size) + 9px);background:radial-gradient(circle at 30% 24%, #ffffffb8, transparent 18%), linear-gradient(135deg, color-mix(in srgb, var(--location-accent) 20%, #fffef0), color-mix(in srgb, var(--location-accent) 80%, #ffe987) 52%, var(--location-dark));pointer-events:none;border-radius:999px 15px 15px 999px;position:absolute;inset:4px auto 4px 4px;box-shadow:inset 0 2px #ffffff94,inset 0 -4px #0a499c29,0 0 0 1px #ffffffd6}.map-location-bubble:after{content:"";top:var(--location-inner-top);right:var(--location-inner-right);bottom:var(--location-inner-bottom);left:var(--location-inner-left);z-index:1;background:radial-gradient(circle at 96% 78%, color-mix(in srgb, var(--location-accent) 16%, transparent), transparent 30%), linear-gradient(180deg, #fffffff5, #eff8ffe0);pointer-events:none;border:1px solid #28609a21;border-radius:999px;position:absolute;box-shadow:inset 0 2px 4px #0f172a1a,0 1px #fffc}.map-location-bubble:active{transform:scale(.96)}.map-location-bubble-emblem,.map-location-bubble-copy,.map-location-bubble-icon{z-index:2;position:relative}.map-location-bubble-emblem{width:var(--location-icon-size);height:var(--location-icon-size);box-sizing:border-box;background:radial-gradient(circle at 34% 24%, #ffffffe6, transparent 18%), conic-gradient(from 218deg, var(--location-dark), color-mix(in srgb, var(--location-accent) 44%, #fff8c7), var(--location-accent), color-mix(in srgb, var(--location-dark) 78%, #123866), var(--location-dark));color:var(--location-ink);box-shadow:0 0 0 2px color-mix(in srgb, var(--location-accent) 66%, #2a80e0), 0 2px 5px #0f172a45, inset 0 1px 0 #fff9;border:2px solid #fff8ca;border-radius:50%;place-self:center;place-items:center;line-height:0;display:grid}.map-location-bubble-emblem svg,.map-location-bubble-icon svg{filter:drop-shadow(0 1px 1px color-mix(in srgb, var(--location-dark) 84%, #0f172a57))}.map-location-bubble-copy{gap:1px;min-width:0;padding:2px 5px 2px 7px;display:grid}.map-location-bubble-country{color:#123866;text-overflow:ellipsis;text-shadow:0 1px #ffffffeb;text-transform:uppercase;white-space:nowrap;pointer-events:none;max-width:100%;font-size:.62rem;font-weight:950;line-height:1;display:block;overflow:hidden}.map-location-bubble-row{pointer-events:none;align-items:center;min-width:0;max-width:100%;display:grid}.map-location-bubble-coords{color:#123866;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.5rem;font-weight:850;line-height:1;overflow:hidden}.map-location-bubble-icon{width:var(--location-copy-size);height:var(--location-copy-size);background:linear-gradient(180deg, color-mix(in srgb, var(--location-accent) 78%, #fff), var(--location-dark));color:var(--location-ink);border-radius:50%;place-self:center;place-items:center;transition:filter .15s,transform .15s cubic-bezier(.23,1,.32,1);display:grid;box-shadow:0 1px #ffffff85,inset 0 -1px #04245e38}.map-location-bubble:hover .map-location-bubble-icon{filter:brightness(1.08)}.map-location-bubble:active .map-location-bubble-icon{transform:scale(.92)}.location-copy-button{color:#ffffff8c;cursor:pointer;background:linear-gradient(145deg,#7dd3fc24,#22c55e14),#ffffff0f;border:1px solid #ffffff26;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:auto;padding:0;transition:background .15s,border-color .15s,color .15s,transform .15s;display:flex}.location-copy-button:active{color:#22c55e;background:#ffffff24;transform:scale(.96)}.map-trainer-chip{--profile-card-width:clamp(234px, 31.7vw, 334px);--profile-card-height:clamp(51px, 5.1vw, 56px);--profile-level-size:clamp(37px, 4.3vw, 42px);--profile-right-art-size:clamp(21px, 2.65vw, 26px);--profile-mascot-size:clamp(62px, 7vw, 76px);--profile-inner-top:8px;--profile-inner-right:calc(var(--profile-right-art-size) + 12px);--profile-inner-bottom:8px;--profile-inner-left:calc(var(--profile-level-size) + 21px);--profile-chip-bg:radial-gradient(75% 120% at 94% 48%, color-mix(in srgb, var(--team-color) 18%, transparent), transparent 44%), linear-gradient(180deg, transparent calc(100% - 13px), color-mix(in srgb, var(--team-color) 86%, #fff) calc(100% - 13px), var(--team-dark) calc(100% - 5px), transparent calc(100% - 5px)), linear-gradient(180deg, #fffef9 0%, #f8fbff 52%, #edf6ff 100%);isolation:isolate;grid-template-columns:var(--profile-level-size) minmax(0, 1fr);width:var(--profile-card-width);min-width:220px;max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 334px);height:var(--profile-card-height);padding:4px calc(var(--profile-right-art-size) + 16px) 4px 5px;margin-top:calc(var(--profile-mascot-size) * .48);background:var(--profile-chip-bg);box-shadow:0 8px 16px #0f172a42, 0 0 0 2px color-mix(in srgb, var(--team-color) 72%, #2a80e0), 0 0 0 4px #ffd652a8, inset 0 2px 0 #ffffffeb, inset 0 -6px 0 #1c6fcc1f;-webkit-backdrop-filter:none;color:color-mix(in srgb, var(--team-dark) 76%, #123866);cursor:pointer;text-align:left;border-radius:999px;align-items:center;gap:clamp(9px,1.1vw,12px);transition:transform .15s cubic-bezier(.23,1,.32,1),filter .18s;display:grid;position:relative;overflow:visible;border:2px solid #ffe37d!important}.glass-card.map-trainer-chip,.glass-card.map-trainer-chip:active{background:var(--profile-chip-bg)!important}.map-trainer-chip:before{content:"";z-index:1;width:calc(var(--profile-level-size) + 13px);background:radial-gradient(circle at 30% 24%, #ffffffb8, transparent 18%), radial-gradient(circle at 76% 82%, #ffffff47, transparent 24%), linear-gradient(135deg, color-mix(in srgb, var(--team-color) 22%, #fffef0) 0%, color-mix(in srgb, var(--team-color) 78%, #ffe987) 48%, var(--team-dark) 100%);pointer-events:none;border-radius:999px 24px 24px 999px;position:absolute;inset:4px auto 4px 5px;box-shadow:inset 0 2px #ffffff94,inset 0 -5px #b1680b24,0 0 0 1px #ffffffd6}.map-trainer-chip:after{content:"";top:var(--profile-inner-top);right:var(--profile-inner-right);bottom:var(--profile-inner-bottom);left:var(--profile-inner-left);z-index:1;background:radial-gradient(circle at 96% 78%, color-mix(in srgb, var(--team-color) 18%, transparent), transparent 28%), linear-gradient(180deg, #fffffff5, #eff8ffe0);pointer-events:none;border:1px solid #28609a21;border-radius:999px;position:absolute;box-shadow:inset 0 2px 4px #0f172a1a,0 1px #fffc}.map-profile-level-card,.map-trainer-meta{z-index:5;position:relative}.map-trainer-chip:active,.map-compass-button:active,.map-icon-button:active,.map-nav-button:active,.map-storage-button:active,.nearby-trigger:active{transform:scale(.96)}.map-profile-pokeball-detail{z-index:6;width:var(--profile-right-art-size);height:var(--profile-right-art-size);object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 4px #0f172a40)drop-shadow(0 0 5px #38bdf861);position:absolute;top:50%;right:6px;transform:translateY(-50%)rotate(8deg)}.map-profile-mascot-peek{left:calc(var(--profile-level-size) + clamp(7px, .9vw, 12px));top:calc(var(--profile-mascot-size) * -.9);z-index:4;width:var(--profile-mascot-size);height:var(--profile-mascot-size);object-fit:contain;object-position:bottom center;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 2px 2px #5b400f47)drop-shadow(0 0 4px #ffd95275);position:absolute}.map-profile-level-card{width:var(--profile-level-size);height:var(--profile-level-size);background:radial-gradient(circle at 34% 22%, #fffffff2 0 11%, #ffffff57 12% 23%, transparent 24%), conic-gradient(from 218deg, var(--team-dark), color-mix(in srgb, var(--team-color) 44%, #fff8c7), var(--team-color), color-mix(in srgb, var(--team-dark) 78%, #123866), var(--team-dark));color:#fff;box-shadow:0 0 0 2px color-mix(in srgb, var(--team-color) 72%, #2a80e0), 0 3px 9px #0f172a4d, inset 0 2px 0 #fff9, inset 0 -4px 7px #0f367538;font-variant-numeric:tabular-nums;text-align:center;text-shadow:0 1px #020617b3,0 0 6px #ffffff2e;white-space:nowrap;border:2px solid #fff8ca;border-radius:50%;flex-direction:column;grid-area:1/1;justify-content:center;place-self:center;align-items:center;gap:1px;padding:0;font-weight:900;line-height:1;display:flex;overflow:hidden}.map-profile-level-card:before{content:"";z-index:0;background:linear-gradient(180deg, #fffef2 0%, color-mix(in srgb, var(--team-color) 58%, #fff5b8) 48%, color-mix(in srgb, var(--team-dark) 84%, #f5aa22) 100%);border-radius:50%;position:absolute;inset:4px;box-shadow:inset 0 1px 2px #ffffffdb,inset 0 -3px 4px #94560829}.map-profile-level-card:after{content:"";z-index:1;pointer-events:none;background:#ffffff7a;border-radius:999px;width:13px;height:6px;position:absolute;top:7px;left:8px;transform:rotate(-22deg)}.map-profile-level-kicker{z-index:2;background:linear-gradient(180deg, color-mix(in srgb, var(--team-color) 78%, #fff), var(--team-dark));color:var(--team-ink);text-transform:uppercase;border-radius:999px;margin:0;padding:1px 4px;font-size:clamp(.34rem,.55vw,.4rem);position:relative;box-shadow:0 1px #ffffff6b,inset 0 -1px #04245e33}.map-profile-level-number{z-index:2;color:#18335d;text-overflow:ellipsis;text-shadow:0 1px #fffc;min-width:0;font-size:clamp(.76rem,1.2vw,.92rem);line-height:.9;position:relative;overflow:hidden}.map-trainer-meta{top:var(--profile-inner-top);right:var(--profile-inner-right);bottom:var(--profile-inner-bottom);left:var(--profile-inner-left);box-sizing:border-box;grid-template-rows:auto auto;align-content:center;gap:2px;min-width:0;padding:3px 11px;display:grid;position:absolute}.map-trainer-meta:after{content:"";background:linear-gradient(135deg, #fff9c9, color-mix(in srgb, var(--team-color) 74%, #ffc728));clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);filter:drop-shadow(0 1px 2px #5537073d);opacity:.9;pointer-events:none;width:8px;height:8px;position:absolute;top:5px;right:7px}.map-trainer-name{color:#123866;text-overflow:ellipsis;text-shadow:0 1px #fffffff2,0 0 7px #ffffffb8;text-transform:uppercase;white-space:nowrap;max-width:100%;font-size:clamp(.7rem,1.04vw,.84rem);font-weight:1000;line-height:1;display:block;overflow:hidden}.map-xp-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px;width:100%;min-width:0;display:grid}.map-xp-label{background:linear-gradient(180deg, color-mix(in srgb, var(--team-color) 78%, #fff), var(--team-dark));min-width:21px;color:var(--team-ink);border-radius:999px;justify-content:center;align-items:center;padding:2px 4px;font-size:clamp(.4rem,.63vw,.47rem);font-weight:950;line-height:1;display:inline-flex;box-shadow:0 1px #ffffff85,inset 0 -1px #04245e38}.map-xp-track{border:1px solid color-mix(in srgb, var(--team-dark) 24%, #1f568f2e);background:linear-gradient(180deg, color-mix(in srgb, var(--team-color) 12%, #f3f9ff), color-mix(in srgb, var(--team-color) 26%, #b9d4ef));border-radius:999px;width:100%;min-width:0;height:6px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0f172a38,0 1px #ffffffc7}.map-xp-track:after{content:"";pointer-events:none;background:#ffffff9e;border-radius:999px;height:2px;position:absolute;inset:1px 2px auto}.map-xp-fill{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--team-color) 66%, #fff), color-mix(in srgb, var(--team-color) 38%, #fff7c2) 38%, var(--team-color) 100%);height:100%;box-shadow:inset 0 1px 0 #ffffff94, 0 0 8px color-mix(in srgb, var(--team-color) 38%, transparent);display:block}.map-unread-badge{z-index:2;color:#fff;text-align:center;letter-spacing:.02em;background:linear-gradient(135deg,#7c3aed,#a855f7);border:1.5px solid #a855f780;border-radius:999px;min-width:20px;min-height:20px;padding:2px 6px;font-size:.62rem;font-weight:900;line-height:1.25;position:absolute;top:-6px;right:-6px;box-shadow:0 0 0 1.5px #a855f738,0 0 14px #7c3aeda6,0 2px 8px #00000080}.map-admin-support-badge{pointer-events:none}.map-compass-button{width:var(--map-icon-size);height:var(--map-icon-size);min-width:var(--touch-target);min-height:var(--touch-target);-webkit-backdrop-filter:blur(14px);cursor:pointer;background:#05081480;border-radius:50%;place-items:center;padding:0;display:grid;overflow:hidden;box-shadow:0 4px 12px #00000040;border:1px solid #ffffff1f!important}.map-icon-button{right:calc(var(--safe-right) + var(--map-edge));z-index:1000;width:var(--map-icon-size);height:var(--map-icon-size);min-width:var(--touch-target);min-height:var(--touch-target);box-shadow:none;cursor:pointer;color:#fff;background:0 0;border-radius:50%;place-items:center;padding:0;transition:transform .15s cubic-bezier(.23,1,.32,1),filter .18s;display:grid;position:absolute;overflow:visible;border:0!important}.glass-card.map-icon-button,.glass-card.map-icon-button:active{box-shadow:none;background:0 0}.map-action-button-art{width:calc(var(--map-icon-size) + 8px);height:calc(var(--map-icon-size) + 8px);object-fit:contain;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 7px 10px #0f172a70)drop-shadow(0 0 9px #38bdf82e)}.map-gps-button{top:calc(var(--safe-top) + 88px)}.map-location-button{top:calc(var(--safe-top) + 148px)}.map-shop-button{top:calc(var(--safe-top) + 208px)}.map-guide-button{top:calc(var(--safe-top) + 268px)}.map-admin-button{top:calc(var(--safe-top) + 328px)}@media (hover:hover) and (pointer:fine){.map-icon-button:hover:not(:disabled){filter:brightness(1.06)saturate(1.06)}}.map-icon-button:disabled{cursor:not-allowed;opacity:.64;filter:grayscale(.24)saturate(.72)}.admin-panel-overlay{z-index:9000;padding:max(12px, var(--safe-top)) max(12px, var(--safe-right)) max(12px, var(--safe-bottom)) max(12px, var(--safe-left));-webkit-backdrop-filter:blur(16px);background:linear-gradient(#020617d1,#020617eb),#020617e0;place-items:center;display:grid;position:fixed;inset:0}.admin-panel-shell{width:min(1120px, calc(100vw - var(--safe-left) - var(--safe-right) - 24px));height:min(820px, calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px));background:linear-gradient(145deg,#0f172af5,#080d1cfa),#08111f;border:1px solid #7dd3fc2e;border-radius:18px;grid-template-columns:220px minmax(0,1fr);min-height:0;display:grid;overflow:hidden;box-shadow:0 28px 80px #000000ad,inset 0 1px #ffffff14}.admin-panel-sidebar{background:linear-gradient(#0f172ab8,#020617db),#0f172aad;border-right:1px solid #94a3b81f;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;min-width:0;min-height:0;padding:16px 12px;display:grid}.admin-panel-brand{border-bottom:1px solid #94a3b81a;align-items:center;gap:10px;min-width:0;padding:6px 6px 12px;display:flex}.admin-panel-brand-mark,.admin-panel-title-icon,.admin-accordion-icon{color:#7dd3fc;background:#0ea5e91a;border:1px solid #7dd3fc2e;flex:none;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff14}.admin-panel-brand-mark{border-radius:11px;width:36px;height:36px}.admin-panel-brand-copy{gap:2px;min-width:0;display:grid}.admin-panel-brand-copy strong{color:#f8fafc;font-size:.88rem;font-weight:950;line-height:1.1}.admin-panel-brand-copy span,.admin-panel-sidebar-footer>span,.admin-panel-title-block p{color:#718096;text-transform:uppercase;font-size:.64rem;font-weight:850;line-height:1.35}.admin-panel-nav{flex-direction:column;gap:5px;min-height:0;padding-right:2px;display:flex;overflow-y:auto}.admin-panel-nav-item,.admin-panel-mobile-tab{color:#94a3b8;cursor:pointer;background:0 0;border:1px solid #0000;min-width:0;transition:transform .14s cubic-bezier(.23,1,.32,1),border-color .16s,background .16s,color .16s;position:relative}.admin-panel-nav-item{text-align:left;border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:38px;padding:5px 8px 5px 5px;display:grid}.admin-panel-nav-item:active,.admin-panel-mobile-tab:active,.admin-panel-close:active,.admin-accordion-trigger:active,.admin-global-save-button:active,.admin-confirm-save-button:active,.admin-confirm-cancel-button:active,.admin-toggle:active{transform:scale(.97)}.admin-panel-nav-item.is-active,.admin-panel-mobile-tab.is-active{color:#e0f2fe;background:#0ea5e91f;border-color:#7dd3fc42}.admin-panel-nav-item.is-disabled,.admin-panel-mobile-tab.is-disabled{cursor:not-allowed;opacity:.38;filter:grayscale(.35)}.admin-panel-nav-item.is-disabled:active,.admin-panel-mobile-tab.is-disabled:active{transform:none}.admin-panel-nav-icon{color:currentColor;background:#94a3b812;border-radius:8px;place-items:center;width:30px;height:28px;display:grid}.admin-panel-nav-label{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;font-weight:900;line-height:1.1;overflow:hidden}.admin-panel-sidebar-footer{border-top:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:10px 6px 4px;display:flex}.admin-role-badge{color:#cbd5e1;text-transform:uppercase;white-space:nowrap;background:#0f172aa3;border:1px solid #94a3b829;border-radius:999px;align-items:center;gap:5px;max-width:100%;min-height:22px;padding:4px 8px;font-size:.6rem;font-weight:950;line-height:1;display:inline-flex}.admin-role-badge.is-admin{color:#fecaca;background:#ef44441f;border-color:#f8717152}.admin-role-badge.is-co-admin{color:#fde68a;background:#f59e0b1f;border-color:#fbbf244d}.admin-panel-main{grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;display:grid}.admin-panel-header{background:#02061733;border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:14px;min-width:0;min-height:70px;padding:15px 18px;display:flex}.admin-panel-title-block{align-items:center;gap:11px;min-width:0;display:flex}.admin-panel-title-icon{border-radius:11px;width:36px;height:36px}.admin-panel-title-block h2{color:#f8fafc;margin:0;font-size:1rem;font-weight:950;line-height:1.1}.admin-panel-title-block p{color:#8ea3bd;text-overflow:ellipsis;white-space:nowrap;text-transform:none;max-width:52rem;margin:4px 0 0;overflow:hidden}.admin-panel-header-actions{flex:none;align-items:center;gap:8px;display:inline-flex}.admin-panel-close{color:#cbd5e1;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b826;border-radius:10px;place-items:center;width:34px;height:34px;transition:transform .14s cubic-bezier(.23,1,.32,1),border-color .16s,color .16s,background .16s;display:grid}.admin-panel-mobile-tabs{display:none}.admin-panel-content{overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;min-width:0;min-height:0;padding:16px 18px 22px;overflow:hidden auto}.admin-panel-content,.admin-panel-content *{min-width:0}.admin-panel-content input,.admin-panel-content select,.admin-panel-content textarea,.admin-panel-content button{max-width:100%}.admin-panel-content input,.admin-panel-content select,.admin-panel-content textarea{min-height:32px;font-size:.74rem;line-height:1.25}.admin-row{border-bottom:1px solid #94a3b81a;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:9px 0;display:flex}.admin-row-label{color:#a8b6ca;min-width:0;font-size:.74rem;font-weight:850;line-height:1.3}.admin-row-control{color:#e2e8f0;justify-content:flex-end;align-items:center;min-width:0;display:flex}.admin-toggle{cursor:pointer;background:#0f172ad1;border:1px solid #94a3b829;border-radius:999px;flex:none;width:42px;height:23px;transition:transform .14s cubic-bezier(.23,1,.32,1),border-color .16s,background .16s,box-shadow .16s;position:relative}.admin-toggle[data-on=true]{background:#22c55e38;border-color:#22c55e57;box-shadow:0 0 18px #22c55e1a}.admin-toggle-thumb{background:#e2e8f0;border-radius:999px;width:15px;height:15px;transition:transform .16s cubic-bezier(.23,1,.32,1),background .16s;position:absolute;top:3px;left:3px;box-shadow:0 2px 8px #00000061}.admin-toggle[data-on=true] .admin-toggle-thumb{background:#bbf7d0;transform:translate(19px)}.admin-accordion{--admin-accent-rgb:125, 211, 252;border:1px solid rgba(var(--admin-accent-rgb), .18);background:linear-gradient(145deg, rgba(var(--admin-accent-rgb), .07), transparent 48%), #0f172a8f;border-radius:13px;transition:border-color .18s,box-shadow .18s,background .18s;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.admin-accordion.is-open{border-color:rgba(var(--admin-accent-rgb), .28);box-shadow:0 12px 30px #00000029,inset 0 1px #ffffff0f}.admin-accordion-trigger{width:100%;min-height:46px;color:rgb(var(--admin-accent-rgb));cursor:pointer;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;transition:transform .14s cubic-bezier(.23,1,.32,1),background .16s;display:flex}.admin-accordion.is-open .admin-accordion-trigger{background:rgba(var(--admin-accent-rgb), .055)}.admin-accordion-title{align-items:center;gap:9px;min-width:0;display:inline-flex}.admin-accordion-icon{border-color:rgba(var(--admin-accent-rgb), .24);background:rgba(var(--admin-accent-rgb), .1);width:30px;height:30px;color:rgb(var(--admin-accent-rgb));border-radius:9px}.admin-accordion-copy{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;display:flex}.admin-accordion-copy>span{color:rgb(var(--admin-accent-rgb));text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:950;line-height:1.1}.admin-accordion-copy small{color:#86efac;text-transform:uppercase;background:#22c55e1a;border:1px solid #22c55e40;border-radius:999px;place-items:center;min-height:18px;padding:3px 6px;font-size:.55rem;font-weight:950;line-height:1;display:inline-grid}.admin-accordion-chevron{color:#94a3b8;flex:none;place-items:center;display:grid}.admin-accordion-panel{overflow:hidden}.admin-accordion-body{padding:2px 12px 12px}.admin-save-status{color:#bae6fd;text-align:center;background:#0ea5e91a;border:1px solid #7dd3fc3d;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:9px 14px;font-size:.78rem;font-weight:850;line-height:1.25;display:flex}.admin-save-status.is-saving{color:#c7d2fe;background:#6366f124;border-color:#818cf857}.admin-save-status.is-saved{color:#86efac;background:#16a34a24;border-color:#4ade8057}.admin-save-status.is-error{color:#fca5a5;background:#dc262624;border-color:#f871715c}.admin-spin{animation:.9s linear infinite adminSpin}@keyframes adminSpin{to{transform:rotate(360deg)}}.admin-save-confirm-card{background:linear-gradient(135deg,#0ea5e91f,#22c55e12),#0f172ab8;border:1px solid #7dd3fc42;border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex;box-shadow:0 16px 38px #02061740,inset 0 1px #ffffff14}.admin-save-confirm-copy{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.admin-save-confirm-copy>span{color:#67e8f9;text-transform:uppercase;letter-spacing:0;align-items:center;gap:6px;font-size:.68rem;font-weight:950;line-height:1;display:inline-flex}.admin-save-confirm-copy p{color:#e0f2fe;margin:0;font-size:.88rem;font-weight:850;line-height:1.35}.admin-save-confirm-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.admin-confirm-save-button,.admin-confirm-cancel-button{letter-spacing:0;cursor:pointer;border-radius:11px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:10px 12px;font-size:.82rem;font-weight:900;line-height:1.1;transition:transform .14s,border-color .16s,background .16s,box-shadow .16s;display:inline-flex}.admin-confirm-save-button{color:#ecfdf5;background:linear-gradient(135deg,#14b8a6f2,#16a34af0),#16a34a;border:1px solid #34d3996b;box-shadow:0 14px 30px #14b8a63d}.admin-confirm-cancel-button{color:#cbd5e1;background:#0f172acc;border:1px solid #94a3b82e}.admin-global-save-button{isolation:isolate;color:#f8fafc;cursor:pointer;background:linear-gradient(135deg,#14b8a6f5,#2563ebf0),#0f766e;border:1px solid #34d39957;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px;transition:transform .15s cubic-bezier(.23,1,.32,1),border-color .16s,background .16s,box-shadow .16s,opacity .16s;display:grid;position:relative;overflow:hidden;box-shadow:0 18px 42px #0ea5e938,inset 0 1px #ffffff2e}.admin-global-save-button:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#ffffff29,#0000 58%);border-radius:13px;position:absolute;inset:1px}.admin-global-save-button.is-clean{color:#94a3b8;background:#0f172a9e;border-color:#94a3b824;box-shadow:inset 0 1px #ffffff0d}.admin-global-save-button.is-error{background:linear-gradient(135deg,#ef4444f5,#be123cf0),#991b1b;border-color:#f8717161;box-shadow:0 18px 42px #ef444433,inset 0 1px #ffffff29}.admin-global-save-button.is-busy{color:#dbeafe;background:linear-gradient(135deg,#4f46e5cc,#0ea5e9b8),#3730a3;border-color:#818cf857;box-shadow:0 18px 42px #4f46e52e,inset 0 1px #ffffff1f}.admin-global-save-button:disabled{cursor:not-allowed;opacity:.72}.admin-global-save-button.is-busy:disabled{opacity:1}.admin-global-save-icon{color:currentColor;background:#ffffff24;border:1px solid #ffffff2e;border-radius:11px;place-items:center;width:34px;height:34px;display:grid;box-shadow:inset 0 1px #ffffff24}.admin-global-save-button.is-clean .admin-global-save-icon{background:#94a3b814;border-color:#94a3b829}.admin-global-save-copy{text-align:left;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;display:flex}.admin-global-save-copy strong{max-width:100%;color:inherit;letter-spacing:0;overflow-wrap:anywhere;font-size:.86rem;font-weight:950;line-height:1.1}.admin-global-save-copy small{color:#f0fdfac7;letter-spacing:0;overflow-wrap:anywhere;max-width:100%;font-size:.68rem;font-weight:750;line-height:1.15}.admin-global-save-button.is-clean .admin-global-save-copy small{color:#64748b}.admin-global-save-scope{color:currentColor;letter-spacing:0;background:#02061738;border:1px solid #ffffff29;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-width:52px;padding:7px 9px;font-size:.7rem;font-weight:900;line-height:1;display:inline-flex}.admin-panel-tab-badge{z-index:2;color:#fff;letter-spacing:.02em;background:linear-gradient(135deg,#7c3aed,#a855f7);border:1.5px solid #a855f780;border-radius:999px;flex-shrink:0;place-items:center;min-width:18px;height:18px;padding:1px 5px;font-size:.56rem;font-weight:900;line-height:1;display:grid;position:absolute;top:-4px;right:-3px;transform:translateY(-1px);box-shadow:0 0 0 1px #a855f738,0 0 12px #7c3aed8c,0 2px 6px #00000073}@media (hover:hover) and (pointer:fine){.admin-panel-nav-item:hover,.admin-panel-mobile-tab:hover,.admin-panel-close:hover,.admin-accordion-trigger:hover{color:#e0f2fe;border-color:#7dd3fc3d}.admin-panel-close:hover{background:#0ea5e91f}.admin-global-save-button:not(:disabled):hover,.admin-confirm-save-button:hover{border-color:#7dd3fc7a;transform:translateY(-1px);box-shadow:0 20px 46px #0ea5e942,inset 0 1px #fff3}.admin-confirm-cancel-button:hover{background:#1e293bdb;border-color:#cbd5e147;transform:translateY(-1px)}.admin-global-save-button.is-clean:not(:disabled):hover{background:#0f172abd;border-color:#7dd3fc38;box-shadow:inset 0 1px #ffffff14}}@media (width<=900px){.admin-panel-overlay{padding:max(8px, var(--safe-top)) max(8px, var(--safe-right)) max(8px, var(--safe-bottom)) max(8px, var(--safe-left))}.admin-panel-shell{width:calc(100vw - var(--safe-left) - var(--safe-right) - 16px);height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 16px);border-radius:16px;grid-template-columns:minmax(0,1fr)}.admin-panel-sidebar{display:none}.admin-panel-header{min-height:64px;padding:12px 14px}.admin-panel-title-block p{max-width:min(64vw,34rem)}.admin-panel-mobile-tabs{-webkit-overflow-scrolling:touch;background:#0206174d;border-bottom:1px solid #94a3b81a;gap:7px;min-width:0;padding:9px 12px;display:flex;overflow:auto hidden}.admin-panel-mobile-tab{white-space:nowrap;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:34px;padding:7px 10px;display:inline-flex}.admin-panel-mobile-tab span:not(.admin-panel-tab-badge){color:inherit;font-size:.68rem;font-weight:900;line-height:1}.admin-panel-content{padding:14px 14px 20px}}@media (width<=620px){.admin-panel-overlay{place-items:stretch stretch;padding:0}.admin-panel-shell{border-width:0;border-radius:0;width:100vw;height:100dvh}.admin-panel-header{z-index:3;min-height:58px;padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 12px) 10px calc(var(--safe-left) + 12px);-webkit-backdrop-filter:blur(14px);background:#020617e0;position:sticky;top:0}.admin-panel-title-icon{border-radius:10px;width:32px;height:32px}.admin-panel-title-block{gap:9px}.admin-panel-title-block h2{font-size:.92rem}.admin-panel-title-block p,.admin-panel-header-actions .admin-role-badge{display:none}.admin-panel-mobile-tabs{padding:8px calc(var(--safe-right) + 12px) 8px calc(var(--safe-left) + 12px)}.admin-panel-content{padding:12px calc(var(--safe-right) + 12px) calc(var(--safe-bottom) + 18px) calc(var(--safe-left) + 12px)}.admin-row{flex-direction:column;align-items:flex-start;gap:7px}.admin-row-control{justify-content:flex-start;width:100%}.admin-row-control>div,.admin-row-control>input,.admin-row-control>select{max-width:100%}.admin-accordion-trigger{min-height:44px;padding:9px 10px}.admin-accordion-body{padding:0 10px 10px}.admin-save-confirm-actions{grid-template-columns:minmax(0,1fr)}.admin-global-save-button{grid-template-columns:auto minmax(0,1fr);gap:10px;min-height:64px;padding:10px}.admin-global-save-scope{grid-column:1/-1;justify-self:stretch;min-height:28px}}@media (width<=380px){.admin-panel-mobile-tab{min-height:32px;padding:7px 9px}.admin-panel-mobile-tab span:not(.admin-panel-tab-badge){font-size:.64rem}.admin-panel-close{width:32px;height:32px}.admin-global-save-copy strong{font-size:.8rem}.admin-global-save-copy small{font-size:.64rem}}.admin-redeem-tab,.admin-redeem-tab *,.admin-announcement-tab,.admin-announcement-tab *{box-sizing:border-box}.admin-redeem-grid,.admin-redeem-created-code,.admin-redeem-item-row,.admin-announcement-grid{min-width:0}.admin-redeem-field,.admin-announcement-field{min-width:0;max-width:100%}.admin-redeem-field--datetime,.admin-announcement-field--datetime{appearance:auto}.admin-redeem-tab input[type=datetime-local],.admin-announcement-tab input[type=datetime-local]{width:100%}.admin-announcement-preview{border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:11px;display:grid;box-shadow:0 10px 24px #0000003d,inset 0 1px #ffffff0d}.admin-announcement-preview-icon{border:1px solid;border-radius:999px;flex:none;place-items:center;width:34px;height:34px;display:grid}.admin-announcement-preview-copy{gap:3px;min-width:0;display:grid}.admin-announcement-preview-copy>div{color:#94a3b8;text-transform:uppercase;flex-wrap:wrap;gap:6px;min-width:0;font-size:.58rem;font-weight:950;line-height:1.1;display:flex}.admin-announcement-preview-copy strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:950;line-height:1.2;overflow:hidden}.admin-announcement-preview-copy p{color:#cbd5e1;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.68rem;font-weight:760;line-height:1.35;display:-webkit-box;overflow:hidden}.admin-announcement-duration-row,.admin-announcement-switches{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.admin-announcement-duration-row button,.admin-announcement-switches label,.admin-announcement-icon-button{transition:transform .14s cubic-bezier(.23,1,.32,1),border-color .16s,background .16s,color .16s}.admin-announcement-duration-row button{color:#94a3b8;cursor:pointer;background:#0f172a9e;border:1px solid #94a3b824;border-radius:999px;align-items:center;gap:5px;min-height:30px;padding:6px 9px;font-size:.68rem;font-weight:880;display:inline-flex}.admin-announcement-duration-row button.is-active{color:#7dd3fc;background:#38bdf824;border-color:#38bdf85c}.admin-announcement-duration-row button:active,.admin-announcement-switches label:active,.admin-announcement-icon-button:active{transform:scale(.97)}.admin-announcement-switches label{color:#cbd5e1;cursor:pointer;background:#0f172a8f;border:1px solid #94a3b821;border-radius:10px;align-items:center;gap:7px;min-height:32px;padding:6px 9px;font-size:.7rem;font-weight:850;display:inline-flex}.admin-announcement-switches input{accent-color:#38bdf8}.admin-announcement-switches span{align-items:center;gap:5px;display:inline-flex}.admin-announcement-icon-button{color:#cbd5e1;cursor:pointer;background:#ffffff0a;border:1px solid #94a3b824;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.admin-announcement-icon-button:hover{color:#7dd3fc;border-color:#38bdf847}.admin-announcement-icon-button.is-danger:hover{color:#fca5a5;border-color:#f8717152}.admin-announcement-icon-button:disabled{cursor:wait;opacity:.58}@media (width<=520px){.map-announcement-banner{top:calc(var(--safe-top) + 106px);width:min(336px, calc(100vw - var(--safe-left) - var(--safe-right) - 94px))}.map-announcement-main{gap:7px;padding:7px 8px}.map-announcement-icon{width:30px;height:30px}.map-announcement-copy strong{font-size:.72rem}.map-announcement-copy small{font-size:.6rem}.map-announcement-dismiss{width:30px}.map-announcement-minimized{width:44px;height:44px}.map-announcement-minimized .map-announcement-icon{width:30px;height:30px}.map-announcement-minimized .map-announcement-icon svg{width:15px;height:15px}.admin-redeem-grid--two,.admin-redeem-grid--limit,.admin-redeem-created-code,.admin-announcement-grid--two,.admin-announcement-grid--dates{grid-template-columns:1fr!important}.admin-redeem-grid--limit{align-items:stretch!important}.admin-redeem-field,.admin-announcement-field{font-size:16px!important}.admin-announcement-switches label,.admin-announcement-duration-row button{flex:auto;justify-content:center}}@media (width<=380px){.admin-redeem-item-row{grid-template-columns:minmax(0,1fr) 68px 36px!important;gap:6px!important}.admin-redeem-tab input[type=datetime-local],.admin-announcement-tab input[type=datetime-local]{padding-left:8px!important;padding-right:8px!important;font-size:14px!important}}.map-icon-fill{object-fit:cover;width:100%;height:100%;display:block}.location-confirm-overlay{z-index:9700;padding:calc(var(--safe-top) + 18px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 18px) calc(var(--safe-left) + 16px);-webkit-backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 26%,#38bdf833,#0000 34%),#020617b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.location-confirm-panel{text-align:center;background:linear-gradient(155deg,#081022f5,#0c142aeb),#020617f0;border:1px solid #7dd3fc4d;border-radius:22px;width:min(390px,100vw - 32px);padding:24px;position:relative;overflow:hidden;box-shadow:0 26px 70px #0000009e,inset 0 1px #ffffff1a}.location-confirm-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#38bdf83d,#0000 62%),radial-gradient(circle at 70% 40%,#22c55e29,#0000 48%);height:74%;position:absolute;inset:-40% -30% auto}.location-confirm-close{z-index:2;color:#cbd5e1;cursor:pointer;background:#0f172aad;border:1px solid #94a3b82e;border-radius:50%;place-items:center;width:36px;height:36px;display:grid;position:absolute;top:12px;right:12px}.location-confirm-orb{z-index:1;color:#e0f2fe;background:radial-gradient(circle at 34% 28%,#ffffff42,#0000 30%),radial-gradient(circle,#38bdf852,#0ea5e914 58%,#020617bd 100%);border:1px solid #7dd3fc57;border-radius:50%;place-items:center;width:72px;height:72px;margin:4px auto 18px;display:grid;position:relative;box-shadow:0 0 34px #38bdf84d,inset 0 1px #ffffff2e}.location-confirm-copy{z-index:1;position:relative}.location-confirm-copy span{color:#7dd3fc;letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:900}.location-confirm-copy h2{color:#f8fafc;letter-spacing:0;margin-top:8px;font-size:clamp(1.35rem,7vw,1.9rem);font-weight:900;line-height:1}.location-confirm-copy p{color:#a8bdd9;margin:12px auto 0;font-size:.9rem;font-weight:700;line-height:1.48}.location-confirm-actions{z-index:1;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px;display:grid;position:relative}.location-confirm-button{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;border-radius:14px;min-height:46px;font-weight:900}.location-confirm-button--ghost{color:#cbd5e1;background:#0f172a99;border:1px solid #94a3b833}.location-confirm-button--primary{color:#02111f;background:linear-gradient(135deg,#38bdf8fa,#22c55ef2),#38bdf8;border:1px solid #ffffff38;box-shadow:0 16px 30px #22c55e33,inset 0 1px #ffffff57}.travel-risk-overlay{z-index:9910;padding:calc(var(--safe-top) + 14px) calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 14px) calc(var(--safe-left) + 14px);-webkit-backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 22%,#fbbf2433,#0000 34%),#020617c2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.travel-risk-panel{width:min(410px,100%);max-width:100%;max-height:min(680px, calc(100vh - var(--safe-top) - var(--safe-bottom) - 28px));text-align:center;background:linear-gradient(155deg,#101627fa,#0c1221f0),#020617f5;border:1px solid #fbbf2447;border-radius:20px;min-width:0;padding:22px;position:relative;overflow:hidden auto;box-shadow:0 26px 72px #000000a3,inset 0 1px #ffffff1a}.travel-risk-panel>*{min-width:0;max-width:100%}.travel-risk-panel:before{content:"";pointer-events:none;background:radial-gradient(circle,#fbbf2438,#0000 64%),radial-gradient(circle at 68% 40%,#f8717129,#0000 50%);height:72%;position:absolute;inset:-38% -26% auto}.travel-risk-orb{z-index:1;color:#fef3c7;background:radial-gradient(circle at 34% 28%,#ffffff47,#0000 30%),radial-gradient(circle,#fbbf2457,#f59e0b14 58%,#020617bd 100%);border:1px solid #fbbf2461;border-radius:50%;place-items:center;width:68px;height:68px;margin:2px auto 16px;display:grid;position:relative;box-shadow:0 0 34px #fbbf2442,inset 0 1px #ffffff2e}.travel-risk-copy h2{overflow-wrap:anywhere;font-size:clamp(1.3rem,6.5vw,1.75rem)}.travel-risk-copy span{white-space:normal;overflow-wrap:anywhere;display:block}.travel-risk-copy p{overflow-wrap:anywhere}.travel-risk-stats{z-index:1;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid;position:relative}.travel-risk-stats div{background:#0f172a94;border:1px solid #94a3b829;border-radius:12px;gap:4px;min-width:0;padding:10px;display:grid}.travel-risk-stats span,.travel-risk-mode{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:900}.travel-risk-stats strong{color:#f8fafc;font-size:1rem;font-weight:950}.travel-risk-mode{z-index:1;color:#bfdbfe;overflow-wrap:anywhere;background:#2563eb1f;border:1px solid #60a5fa38;border-radius:12px;margin-top:10px;padding:9px 10px;line-height:1.35;position:relative}.travel-risk-mode--enforce{color:#fecaca;background:#7f1d1d3d;border-color:#f8717152}.travel-risk-list{z-index:1;text-align:left;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid;position:relative}.travel-risk-list li{color:#cbd5e1;overflow-wrap:anywhere;background:#02061757;border:1px solid #94a3b824;border-radius:12px;padding:9px 10px;font-size:.75rem;font-weight:750;line-height:1.35}.travel-risk-actions{margin-top:16px}.travel-risk-actions .location-confirm-button{min-width:0}@media (width<=380px){.travel-risk-panel{width:100%;padding:18px}.travel-risk-stats{gap:8px}.travel-risk-stats div{padding:9px 8px}.travel-risk-actions{gap:8px}}.location-modal-overlay{z-index:9800;padding:calc(var(--safe-top) + 14px) calc(var(--safe-right) + 14px) calc(var(--safe-bottom) + 14px) calc(var(--safe-left) + 14px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#02061761,#020617c7),#020617d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.location-modal-panel,.spawn-choice-panel{background:linear-gradient(156deg,#091224fa,#0d1527f0 52%,#040c18fa),#020617f0;border:1px solid #7dd3fc38;border-radius:16px;width:min(410px,100vw - 28px);max-height:680px;transition:max-height .34s cubic-bezier(.22,1,.36,1);overflow:auto;box-shadow:0 24px 72px #0000009e,0 0 0 1px #ffffff0a,inset 0 1px #ffffff1a}.location-modal-panel{flex-direction:column;display:flex;overflow:hidden}.location-modal-panel.is-collapsed{max-height:228px}.spawn-choice-panel{padding:20px}.location-modal-header{background:linear-gradient(90deg,#0ea5e91f,#0000 38%),#02061752;border-bottom:1px solid #94a3b81f;border-radius:15px 15px 0 0;flex-shrink:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:13px 14px 12px;display:grid}.location-modal-header h2{color:#f8fafc;letter-spacing:0;margin:0;font-size:1.02rem;font-weight:900;line-height:1.05}.location-modal-header p{color:#8ea7c7;margin:3px 0 0;font-size:.74rem;font-weight:650;line-height:1.28}.location-modal-icon{color:#7dd3fc;background:linear-gradient(145deg,#7dd3fc38,#22c55e1a),#0f172acc;border:1px solid #38bdf85c;border-radius:11px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 1px #ffffff1f,0 0 18px #0ea5e92e}.location-close-button{color:#dbeafe;cursor:pointer;background:linear-gradient(145deg,#7dd3fc24,#22c55e12),#0f172ab8;border:1px solid #7dd3fc3d;border-radius:50%;place-items:center;width:38px;height:38px;transition:border-color .18s,background .18s,color .18s,transform .18s;display:grid;box-shadow:inset 0 1px #ffffff1a}.location-close-button:hover{color:#f8fafc;background:linear-gradient(145deg,#7dd3fc38,#22c55e1a),#0f172ad1;border-color:#7dd3fc75}.location-header-actions{align-items:center;gap:6px;display:flex}.location-modal-body{flex:1;padding:10px 14px 14px;overflow-y:auto}.location-modal-body--compact{flex:none;padding-bottom:12px;overflow:hidden}.location-body-content{gap:10px;display:grid}.location-body-content--compact{gap:8px}.location-section{background:linear-gradient(145deg,#0f172aa3,#0f172a61),#02061738;border:1px solid #94a3b824;border-radius:14px;gap:10px;padding:10px;display:grid}.location-current-strip{background:linear-gradient(135deg,#0ea5e926,#22c55e12),#0f172a80;border:1px solid #38bdf833;border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;display:grid}.location-current-strip.is-compact{padding:10px}.location-current-strip span,.location-field span,.location-saved-title{color:#7dd3fc;letter-spacing:0;text-transform:uppercase;font-size:.63rem;font-weight:900}.location-current-strip strong{color:#f8fafc;overflow-wrap:anywhere;margin-top:2px;font-size:.86rem;font-weight:800;display:block}.location-field{gap:5px;min-width:0;display:grid}.location-field input{color:#f8fafc;background:#050c1ab8;border:1px solid #94a3b83d;border-radius:9px;outline:none;width:100%;min-height:40px;padding:9px 10px;font-size:.84rem;font-weight:700}.location-field input:focus{border-color:#38bdf8b8;box-shadow:0 0 0 3px #0ea5e929}.location-action-row,.spawn-choice-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.location-action-row--compact{padding:0 2px}.location-action-button,.spawn-choice-button{color:#f8fafc;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#0ea5e940,#22c55e1c),#0f172a75;border:1px solid #38bdf842;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:42px;font-size:.76rem;font-weight:900;line-height:1.1;transition:border-color .18s,background .18s,transform .18s;display:flex}.location-action-button:not(:disabled):hover,.spawn-choice-button:not(:disabled):hover{background:linear-gradient(135deg,#0ea5e957,#22c55e29),#0f172a8f;border-color:#7dd3fc7a}.location-action-button:not(:disabled):active,.spawn-choice-button:not(:disabled):active,.location-close-button:active{transform:translateY(1px)scale(.99)}.location-action-row--compact .location-action-button{min-height:40px}.spawn-choice-button{text-align:left;white-space:normal;justify-content:flex-start;min-height:64px;padding:12px}.spawn-choice-grid{margin-top:12px}.spawn-choice-button span{gap:4px;min-width:0;display:grid}.spawn-choice-button strong{color:#f8fafc;font-size:.9rem;line-height:1}.spawn-choice-button small{color:#9fb5d3;overflow-wrap:anywhere;font-size:.72rem;font-weight:700;line-height:1.3}.spawn-choice-loc-name{text-overflow:ellipsis;white-space:nowrap;color:#7dd3fc;overflow:hidden}.spawn-choice-loc-coords{color:#9fb5d3;opacity:.85}.location-action-button:disabled,.spawn-choice-button:disabled{cursor:not-allowed;opacity:.48}.location-paste-row{align-items:stretch;gap:8px;display:flex}.location-paste-row.has-preview{grid-template-columns:auto minmax(0,1fr);display:grid}.location-paste-button{color:#fde68a;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#facc1524,#0ea5e914),#0f172a8c;border:1px solid #facc153d;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-width:86px;min-height:38px;padding:0 12px;font-size:.76rem;font-weight:900;display:flex}.location-paste-button:hover{color:#fffbeb;background:linear-gradient(135deg,#facc1533,#0ea5e91f),#0f172a9e;border-color:#facc1570}.location-paste-preview{background:#22c55e14;border:1px solid #22c55e38;border-radius:9px;min-width:0;padding:7px 9px}.location-paste-preview span,.location-paste-preview small{color:#86efac;text-transform:uppercase;font-size:.6rem;font-weight:900;line-height:1.15;display:block}.location-paste-preview strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.75rem;font-weight:850;line-height:1.2;display:block;overflow:hidden}.location-paste-preview small{color:#fecaca;text-transform:none;margin-top:2px}.location-paste-preview.is-error{background:#ef44441a;border-color:#f8717142}.location-paste-preview.is-error span{color:#fca5a5}.location-custom-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.location-message{color:#bbf7d0;background:#22c55e14;border:1px solid #22c55e3d;border-radius:9px;padding:8px 10px;font-size:.78rem;font-weight:800}.location-saved-list{background:#02061738;border:1px solid #94a3b824;border-radius:14px;gap:8px;padding:10px;display:grid}.location-saved-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.location-saved-head>span{color:#bae6fd;background:#0ea5e91a;border:1px solid #7dd3fc38;border-radius:999px;place-items:center;min-width:24px;height:22px;padding:0 7px;font-size:.66rem;font-weight:900;display:grid}.location-saved-scroll{gap:8px;max-height:min(220px,32dvh);padding-right:2px;display:grid;overflow-y:auto}.location-empty{color:#8ea7c7;text-align:center;border:1px dashed #94a3b847;border-radius:10px;padding:12px 10px;font-size:.78rem;font-weight:700}.location-saved-item{background:#0f172a80;border:1px solid #94a3b82e;border-radius:10px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:9px 8px 9px 10px;display:grid}.location-saved-item strong,.location-saved-item span{min-width:0;display:block}.location-saved-item strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:900;overflow:hidden}.location-saved-item span{color:#8ea7c7;overflow-wrap:anywhere;margin-top:2px;font-size:.68rem;font-weight:700}.location-saved-actions{align-items:center;gap:6px;display:flex}.location-saved-actions button{color:#e0f2fe;cursor:pointer;background:#0ea5e921;border:1px solid #38bdf842;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:0 9px;font-size:.7rem;font-weight:900;display:flex}.location-saved-actions .location-delete-button{color:#fecaca;background:#ef44441f;border-color:#f8717142;width:32px;padding:0}@media (width<=640px){.location-modal-overlay{padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 10px) calc(var(--safe-bottom) + 10px) calc(var(--safe-left) + 10px);align-items:center}.location-modal-panel,.spawn-choice-panel{width:100%;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 20px)}.location-modal-header p{display:none}.location-modal-header{padding:11px 12px}.location-modal-body{gap:8px;padding:8px 10px 10px}.location-section,.location-saved-list{padding:9px}.spawn-choice-grid,.location-saved-item{grid-template-columns:1fr}.location-saved-actions{justify-content:flex-end}.location-saved-scroll{max-height:min(190px,30dvh)}}@media (width<=360px){.location-custom-grid,.location-action-row,.location-paste-row.has-preview{grid-template-columns:1fr}}@media (height<=700px){.location-modal-header p{display:none}.location-modal-panel,.spawn-choice-panel{max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 18px)}.location-saved-scroll{max-height:min(150px,26dvh)}}.map-ui-bottom{right:auto;bottom:calc(var(--safe-bottom) + 14px);z-index:1000;width:min(470px, calc(100vw - (var(--map-edge) * 2)));pointer-events:none;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:clamp(10px,4vw,26px);display:grid;position:absolute;left:50%;transform:translate(-50%)}.map-ui-bottom>*{pointer-events:auto}.map-nav-cluster{align-items:center;gap:clamp(6px,2vw,10px);min-width:0;display:flex}.map-nav-cluster-left{justify-content:flex-start}.map-nav-cluster-right{justify-content:flex-end}.map-nav-button{min-width:clamp(48px,13vw,64px);min-height:calc(var(--touch-target) + 22px);color:#fff;cursor:pointer;text-shadow:0 2px 4px #00000080;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;transition:transform .16s;display:flex}.map-shop-button{color:#fff}.map-shop-star{color:#fde68a;filter:drop-shadow(0 0 5px #facc15cc);opacity:0;animation:2.8s ease-in-out infinite map-shop-sparkle;position:absolute}.map-shop-button .map-shop-star{color:#fde68a;filter:drop-shadow(0 0 5px #facc15cc);pointer-events:none}.map-shop-star-1{width:8px;height:8px;animation-delay:.2s;top:3px;right:4px}.map-shop-star-2{width:7px;height:7px;animation-delay:1.1s;bottom:5px;left:5px}.map-shop-star-3{width:6px;height:6px;animation-delay:1.8s;bottom:8px;right:8px}@keyframes map-shop-sparkle{0%,72%,to{opacity:0;transform:scale(.45)rotate(0)}10%{opacity:.95;transform:scale(1)rotate(16deg)}24%{opacity:0;transform:scale(1.35)rotate(28deg)}}@media (prefers-reduced-motion:reduce){.map-shop-star{opacity:.52;animation:none}}.map-nav-icon{width:calc(var(--map-nav-icon-size) + 8px);height:calc(var(--map-nav-icon-size) + 8px);object-fit:contain;filter:drop-shadow(0 6px 10px #0000007a);background:0 0;border:0;border-radius:50%;margin-bottom:5px}.map-nav-label{text-overflow:ellipsis;text-transform:uppercase;text-shadow:0 1px #0055a0bf,0 3px 6px #00000094;white-space:nowrap;max-width:74px;font-size:.65rem;font-weight:900;line-height:1;overflow:hidden}.map-storage-button-wrap{position:relative;top:-22px}.map-storage-button{width:var(--map-storage-size);height:var(--map-storage-size);min-width:var(--touch-target);min-height:var(--touch-target);cursor:pointer;background:0 0;border:2px solid #fff6;border-radius:50%;place-items:center;padding:0;display:grid;overflow:hidden;box-shadow:0 4px 12px #00000080}.map-pokeball-img{object-fit:contain;image-rendering:auto;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%}.storage-modal-shell{z-index:9999;-webkit-backdrop-filter:blur(20px);background:radial-gradient(circle at 24% 0,#38bdf81f,#0000 34%),radial-gradient(circle at 88% 18%,#f59e0b14,#0000 32%),#080d1bf7;flex-direction:column;display:flex;position:absolute;inset:0}.storage-header{padding:calc(var(--safe-top) + 14px) 18px 12px;background:linear-gradient(#020617b8 0%,#0206172e 100%);border-bottom:1px solid #94a3b826;grid-template-columns:minmax(0,1fr) auto 36px;align-items:center;gap:14px;display:grid}.storage-header h2{color:#f8fafc;letter-spacing:0;text-transform:uppercase;margin:0;font-size:1.16rem;font-weight:900;line-height:1}.storage-header span,.storage-header-meta span,.storage-summary-item span{color:#94a3b8;text-transform:uppercase;font-size:.68rem;font-weight:800;line-height:1.2}.storage-header>div:first-child{gap:5px;min-width:0;display:grid}.storage-header-meta{justify-content:flex-end;align-items:center;gap:8px;min-width:112px;display:flex}.storage-header-meta>svg{flex:none}.storage-header-meta>div{justify-items:end;gap:3px;min-width:0;display:grid}.storage-header-meta strong{color:#bae6fd;font-variant-numeric:tabular-nums;font-size:.98rem;font-weight:900;line-height:1}.storage-close-button{color:#cbd5e1;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b847;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid}.storage-summary-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 18px 0;display:grid}.storage-selection-bar{background:#0f172ab3;border:1px solid #22c55e40;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin:12px 18px 0;padding:10px 12px;display:grid}.storage-selection-bar.is-transfer-mode{background:linear-gradient(135deg,#1e293beb,#0f172ae6),radial-gradient(circle at 0 0,#fb923c1f,#0000 42%);border-color:#fb923c47;border-radius:12px;gap:10px;padding:8px 10px;box-shadow:inset 0 1px #ffffff0f,0 10px 26px #0206173d}.storage-selection-bar.is-confirming{border-color:#f871716b}.storage-selection-bar>div:first-child{gap:3px;min-width:0;display:grid}.storage-selection-bar strong{color:#bbf7d0;font-size:.86rem;font-weight:950;line-height:1}.storage-selection-bar span{color:#94a3b8;text-transform:uppercase;font-size:.66rem;font-weight:850;line-height:1.15}.storage-selection-slots{align-items:center;gap:6px;display:flex}.storage-selection-slots span{color:#64748b;background:#02061770;border:1px dashed #94a3b857;border-radius:9px;place-items:center;width:34px;height:34px;font-size:.72rem;font-weight:950;display:grid;overflow:hidden}.storage-selection-slots span.is-filled{background:#22c55e1a;border-style:solid;border-color:#22c55e75}.storage-selection-bar.is-transfer-mode .storage-selection-slots span.is-filled{background:linear-gradient(#10b9812e,#064e3b2e),#02061770;border-color:#34d39973}.storage-selection-slots img{object-fit:contain;width:30px;height:30px}.storage-selection-confirm{white-space:nowrap;min-height:38px;padding-inline:14px}.storage-selection-bar.is-transfer-mode .storage-selection-confirm{letter-spacing:.03em;border-radius:12px;min-height:34px;padding:0 14px;font-size:.78rem;box-shadow:0 8px 18px #8b5cf657,inset 0 1px #ffffff38}.storage-selection-confirm:disabled{cursor:not-allowed;opacity:.45}.storage-selection-message{color:#94a3b8;max-width:260px;font-size:.68rem;font-weight:850;line-height:1.2}.storage-selection-message.is-ok{color:#86efac}.storage-selection-message.is-error{color:#fca5a5}.storage-summary-item{background:linear-gradient(145deg,#ffffff0e,#ffffff05),#0f172a94;border:1px solid #7dd3fc26;border-radius:10px;min-width:0;padding:9px 11px}.storage-summary-item strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:1rem;font-weight:900;line-height:1;display:block;overflow:hidden}.storage-controls{flex-direction:column;gap:7px;padding:10px 18px;display:flex}.storage-controls-main{align-items:center;gap:7px;display:flex}.storage-filters-toggle{color:#94a3b8;cursor:pointer;min-height:38px;font:inherit;white-space:nowrap;background:#0f172ae0;border:1px solid #94a3b838;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;gap:5px;padding:0 12px;font-size:.76rem;font-weight:800;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.storage-filters-toggle:hover,.storage-filters-toggle:focus-visible{color:#e2e8f0;border-color:#94a3b86b;outline:none}.storage-filters-toggle.is-open{color:#7dd3fc;background:#0ea5e91a;border-color:#7dd3fc80}.storage-multi-transfer-toggle{color:#fecaca;cursor:pointer;min-height:38px;font:inherit;white-space:nowrap;background:#7f1d1d24;border:1px solid #f8717147;border-radius:8px;flex-shrink:0;padding:0 12px;font-size:.74rem;font-weight:900;transition:border-color .18s,background .18s,color .18s}.storage-multi-transfer-toggle:hover,.storage-multi-transfer-toggle:focus-visible{color:#fee2e2;border-color:#f871717a;outline:none}.storage-multi-transfer-toggle.is-active{color:#fed7aa;background:#9a34122e;border-color:#fb923c94}.storage-multi-transfer-toggle:disabled{cursor:not-allowed;opacity:.5}.storage-filter-icon,.storage-filter-text{flex-shrink:0}.storage-controls-filters{opacity:0;pointer-events:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;max-height:0;transition:max-height .22s,opacity .18s;display:grid;overflow:hidden}.storage-controls-filters.is-open{opacity:1;pointer-events:auto;max-height:90px}.storage-chevron{opacity:.7;font-size:.62rem;line-height:1;transition:transform .18s;display:inline-block}.storage-filters-toggle.is-open .storage-chevron,.storage-detail-stats-toggle.is-open .storage-chevron,.storage-detail-accordion-toggle.is-open .storage-chevron{opacity:1;transform:rotate(180deg)}.storage-search,.storage-sort-select,.storage-controls-filters select{color:#e2e8f0;min-width:0;min-height:38px;font:inherit;background:#0f172ae0;border:1px solid #94a3b838;border-radius:8px;outline:none;font-size:.78rem;font-weight:800}.storage-search{flex:1;min-width:0;padding:0 12px}.storage-sort-select,.storage-controls-filters select{text-transform:capitalize;padding:0 9px}.storage-sort-select{flex-shrink:0;min-width:108px}.storage-search:focus,.storage-sort-select:focus,.storage-controls-filters select:focus{border-color:#7dd3fc94;box-shadow:0 0 0 2px #38bdf824}.storage-grid{min-height:0;padding:4px 18px calc(var(--safe-bottom) + 18px);flex:1;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));align-content:start;gap:10px;display:grid;overflow-y:auto}.storage-pokemon-card{border:1px solid color-mix(in srgb, var(--rank-color), transparent 68%);color:#f8fafc;cursor:pointer;background:linear-gradient(145deg,#ffffff0f 0%,#ffffff05 100%);border-radius:16px;grid-template-rows:auto 20px 68px minmax(20px,auto) minmax(46px,1fr);justify-items:center;gap:6px;min-width:0;min-height:208px;padding:10px;font-family:inherit;transition:border-color .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #0003}.storage-pokemon-card:before{content:"";background:linear-gradient(145deg, color-mix(in srgb, var(--rank-color), transparent 85%) 0%, transparent 100%);opacity:0;z-index:0;pointer-events:none;transition:opacity .2s;position:absolute;inset:0}.storage-pokemon-card:hover:before,.storage-pokemon-card:active:before{opacity:1}.storage-pokemon-card.is-selected{border-color:#22c55edb;box-shadow:0 8px 24px #00000038,0 0 0 2px #22c55e2e,0 0 18px #22c55e38}.storage-pokemon-card.is-selected:before{opacity:1}.storage-pokemon-card.is-shiny{border-color:#facc157a;box-shadow:0 8px 24px #00000038,0 0 18px #facc1533}.storage-pokemon-card.is-shiny:before{background:radial-gradient(circle at 50% 38%, #facc152e, transparent 44%), linear-gradient(145deg, color-mix(in srgb, var(--rank-color), transparent 86%) 0%, transparent 100%)}.storage-pokemon-card.is-selection-muted{opacity:.46}.storage-pokemon-card.is-defender-locked{border-color:#fbbf245c;box-shadow:inset 0 0 0 1px #fbbf241a}.storage-pokemon-card.is-selection-disabled{cursor:not-allowed}.storage-pokemon-card.is-selection-disabled img,.storage-pokemon-card.is-selection-disabled .storage-card-name,.storage-pokemon-card.is-selection-disabled .storage-card-bottom{opacity:.48}.storage-pokemon-card>*{z-index:1}.storage-defender-lock-badge,.storage-detail-lock-badge,.storage-shiny-badge,.storage-detail-shiny-badge{color:#fde68a;text-transform:uppercase;background:#78350f52;border:1px solid #fbbf2457;border-radius:999px;justify-content:center;align-items:center;width:fit-content;max-width:100%;padding:3px 7px;font-size:.58rem;font-weight:900;line-height:1;display:inline-flex}.storage-shiny-badge,.storage-detail-shiny-badge{color:#fde68a;background:#713f1257;border-color:#facc156b;box-shadow:0 0 12px #facc152e}.storage-defender-lock-badge{z-index:2;margin-inline:auto;position:absolute;bottom:8px;left:8px;right:8px}.storage-detail-lock-badge{margin-top:4px;font-size:.62rem}.storage-card-badges{pointer-events:none;justify-content:center;align-items:center;width:100%;min-width:0;min-height:20px;display:flex}.storage-card-badges .storage-shiny-badge{max-width:calc(100% - 8px);padding:3px 8px}.storage-detail-shiny-badge{margin-top:4px;font-size:.62rem}.storage-selection-badge{z-index:2;color:#052e16;background:#22c55e;border:1px solid #ffffff6b;border-radius:999px;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:950;line-height:1;display:grid;position:absolute;top:8px;right:8px}.storage-card-topline,.storage-card-tags{justify-content:space-between;align-items:center;gap:6px;width:100%;min-width:0;display:flex}.storage-card-topline span{color:#f8fafc;font-size:.7rem;font-weight:900;line-height:1}.storage-card-topline strong{color:var(--rank-color);white-space:nowrap;font-size:.62rem;font-weight:900;line-height:1}.storage-pokemon-card img{object-fit:contain;width:76px;height:68px;image-rendering:pixelated;filter:drop-shadow(0 7px 7px #0000008f)}.storage-pokemon-card.is-shiny img{filter:drop-shadow(0 7px 7px #0000008f)drop-shadow(0 0 10px #facc1594)}.storage-card-name{color:#f8fafc;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%;min-height:1.35em;padding-block:1px 2px;font-size:.82rem;font-weight:900;line-height:1.18;overflow:hidden}.storage-card-bottom{align-self:end;gap:5px;width:100%;min-width:0;display:grid}.storage-card-tags span{color:#cbd5e1;text-overflow:ellipsis;white-space:nowrap;background:#0f172aad;border-radius:999px;min-width:0;padding:4px 6px;font-size:.62rem;font-weight:900;line-height:1;overflow:hidden}.storage-card-health{--hp-color:#22c55e;gap:5px;width:100%;min-width:0;display:grid}.storage-card-health.is-injured{--hp-color:#facc15}.storage-card-health.is-low{--hp-color:#fb923c}.storage-card-health.is-fainted{--hp-color:#ef4444}.storage-card-health__row{justify-content:space-between;align-items:center;gap:6px;width:100%;min-width:0;line-height:1;display:flex}.storage-card-health__row span{color:color-mix(in srgb, var(--hp-color), white 32%);letter-spacing:.04em;text-transform:uppercase;font-size:.56rem;font-weight:950}.storage-card-health__row strong{color:#e2e8f0;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.62rem;font-weight:950;overflow:hidden}.storage-card-health.is-fainted .storage-card-health__row strong{color:#fecaca}.storage-card-health__track{background:#0f172ab8;border:1px solid #94a3b824;border-radius:999px;width:100%;height:6px;overflow:hidden;box-shadow:inset 0 1px 2px #00000057}.storage-card-health__track span{width:var(--hp-percent,100%);border-radius:inherit;background:var(--hp-color);background:linear-gradient(90deg, color-mix(in srgb, var(--hp-color), white 8%), var(--hp-color));min-width:0;height:100%;box-shadow:0 0 9px color-mix(in srgb, var(--hp-color), transparent 48%);transition:width .22s;display:block}.storage-empty{color:var(--text-secondary);text-align:center;grid-column:1/-1;padding:48px 20px;font-size:.9rem;font-weight:800}.storage-detail-overlay{z-index:10000;padding:calc(var(--safe-top) + 16px) 16px calc(var(--safe-bottom) + 16px);-webkit-backdrop-filter:blur(8px);background:#000000b8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.storage-detail-panel{width:min(520px,100%);max-height:min(92vh, calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px));border:1px solid color-mix(in srgb, var(--rank-color), transparent 58%);background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--rank-color), transparent 84%), transparent 38%), linear-gradient(160deg, #080f1ffb, #020617f6);box-shadow:0 24px 70px #0000009e, 0 0 30px color-mix(in srgb, var(--rank-color), transparent 84%);border-radius:14px;flex-direction:column;display:flex;position:relative;overflow:hidden auto}.storage-detail-close{z-index:2;position:absolute;top:12px;right:12px}.storage-detail-stats-toggle,.storage-detail-accordion-toggle{color:#94a3b8;cursor:pointer;font:inherit;letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff17;border-radius:8px;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:9px 14px;font-size:.74rem;font-weight:800;transition:background .16s,color .16s,border-color .16s;display:flex}.storage-detail-stats-toggle{margin:10px 18px 8px}.storage-detail-stats-toggle:hover,.storage-detail-stats-toggle:focus-visible,.storage-detail-accordion-toggle:hover,.storage-detail-accordion-toggle:focus-visible{color:#e2e8f0;background:#ffffff12;outline:none}.storage-detail-stats-toggle.is-open{color:#bae6fd;border-color:#7dd3fc33}.storage-detail-accordion{flex-shrink:0;margin:9px 18px 0}.storage-detail-accordion-toggle{text-transform:none;width:100%;min-width:0;margin:0;padding:9px 12px}.storage-detail-accordion-toggle>span:first-child{text-align:left;gap:3px;min-width:0;display:grid}.storage-detail-accordion-toggle strong{color:#e2e8f0;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:900;line-height:1.05;overflow:hidden}.storage-detail-accordion-toggle em{color:#94a3b8;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:.64rem;font-style:normal;font-weight:800;line-height:1.15;overflow:hidden}.storage-detail-accordion-toggle.is-open{background:#0f172ab8}.storage-detail-accordion.is-evolve .storage-detail-accordion-toggle.is-open{border-color:#7dd3fc33}.storage-detail-accordion.is-recovery .storage-detail-accordion-toggle.is-open{border-color:#22c55e38}.storage-detail-accordion.is-warning .storage-detail-accordion-toggle.is-open{border-color:#facc1542}.storage-detail-accordion.is-danger .storage-detail-accordion-toggle.is-open{border-color:#f871713d}.storage-detail-accordion-wrap{opacity:0;pointer-events:none;max-height:0;transition:max-height .26s,opacity .2s;overflow:hidden}.storage-detail-accordion-wrap.is-open{opacity:1;pointer-events:auto;max-height:min(360px,48vh);overflow-y:auto}.storage-detail-accordion-wrap .storage-evolve-panel,.storage-detail-accordion-wrap .storage-transfer-panel,.storage-detail-accordion-wrap .storage-recall-panel,.storage-detail-accordion-wrap .storage-recovery-panel,.storage-detail-accordion-wrap .storage-no-evolve{margin:8px 0 0}.storage-detail-stats-wrap{opacity:0;pointer-events:none;max-height:0;transition:max-height .28s,opacity .22s;overflow:hidden}.storage-detail-stats-wrap.is-open{opacity:1;pointer-events:auto;max-height:min(420px,55vh);overflow-y:auto}.storage-detail-hero{background:radial-gradient(circle at 45% 30%, color-mix(in srgb, var(--rank-color), transparent 80%), transparent 46%), #ffffff09;border-bottom:1px solid #ffffff17;flex:none;grid-template-columns:minmax(86px,auto) minmax(96px,auto) minmax(0,1fr);align-items:center;gap:14px;min-height:136px;padding:20px 56px 16px 18px;display:grid;position:relative}.storage-detail-hero.is-shiny{background:radial-gradient(circle at 45% 30%, #facc1533, transparent 48%), radial-gradient(circle at 78% 64%, color-mix(in srgb, var(--rank-color), transparent 86%), transparent 36%), #ffffff0a}.storage-detail-cp{color:#94a3b8;text-transform:uppercase;flex-direction:column;gap:4px;font-size:.66rem;font-weight:900;line-height:1;display:flex;position:static}.storage-detail-cp strong{color:#f8fafc;font-size:1.95rem;font-weight:900}.storage-detail-hero img{object-fit:contain;width:104px;height:104px;image-rendering:pixelated;filter:drop-shadow(0 12px 12px #000000bf)}.storage-detail-hero.is-shiny img{filter:drop-shadow(0 12px 12px #000000bf)drop-shadow(0 0 16px #facc1594)}.storage-detail-hero h3{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.82rem;font-weight:900;line-height:1;overflow:hidden}.storage-detail-info{text-align:left;min-width:0}.storage-detail-subline{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;min-width:0;margin-top:8px;display:flex}.storage-detail-subline span,.storage-detail-rank{color:#cbd5e1;text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;background:#ffffff12;border-radius:999px;align-items:center;min-width:0;max-width:100%;padding:5px 8px;font-size:.66rem;font-weight:900;line-height:1;display:inline-flex;overflow:hidden}.storage-detail-rank{border:1px solid color-mix(in srgb, var(--rank-color), transparent 38%);background:color-mix(in srgb, var(--rank-color), transparent 88%);color:var(--rank-color);flex:0 auto}.storage-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px 18px;display:grid}.storage-detail-stat{background:#ffffff0d;border:1px solid #ffffff17;border-radius:8px;min-width:0;padding:10px 11px}.storage-detail-stat span{color:#94a3b8;text-transform:uppercase;font-size:.58rem;font-weight:900;line-height:1;display:block}.storage-detail-stat strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:.82rem;font-weight:900;line-height:1.14;display:block;overflow:hidden}.storage-evolve-panel,.storage-transfer-panel,.storage-recall-panel,.storage-no-evolve{background:#0ea5e914;border:1px solid #7dd3fc29;border-radius:10px;margin:12px 18px;padding:12px}.storage-recovery-panel{background:#14532d24;border:1px solid #22c55e2e;border-radius:10px;margin:0 18px 12px;padding:12px}.storage-recovery-panel.is-fainted{background:#713f122e;border-color:#facc153d}.storage-recovery-panel.is-full{background:#0f172a52;border-color:#94a3b81f}.storage-recovery-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.storage-recovery-head strong{color:#f8fafc;font-size:.86rem;font-weight:900;line-height:1.1;display:block}.storage-recovery-head span{color:#94a3b8;margin-top:3px;font-size:.72rem;font-weight:800;line-height:1.25;display:block}.storage-recovery-hp{color:#bbf7d0;text-align:center;background:#0f172a80;border-radius:8px;min-width:62px;padding:7px 9px;font-size:.78rem;font-weight:900}.storage-recovery-panel.is-fainted .storage-recovery-hp{color:#fde68a}.storage-recovery-actions{grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:7px;margin-top:10px;display:grid}.storage-recovery-button{color:#bbf7d0;cursor:pointer;background:#22c55e1a;border:1px solid #22c55e3d;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;min-height:34px;padding:7px 8px;font-size:.7rem;font-weight:900;display:grid}.storage-recovery-button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.storage-recovery-button b{color:#e2e8f0;font-size:.66rem}.storage-recovery-button:disabled{opacity:.42;cursor:not-allowed}.storage-recovery-message{margin-top:8px;font-size:.72rem;font-weight:850}.storage-recovery-message.is-ok{color:#86efac}.storage-recovery-message.is-error{color:#fca5a5}.storage-evolve-panel,.storage-transfer-panel,.storage-recall-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.storage-transfer-panel{background:#7f1d1d29;border-color:#f871712e}.storage-transfer-panel.is-confirming{background:#7f1d1d47;border-color:#f8717166}.storage-recall-panel{background:#713f122e;border-color:#facc153d}.storage-recall-panel.is-ready,.storage-recall-panel.is-complete{background:#14532d2e;border-color:#22c55e3d}.storage-evolve-panel strong,.storage-transfer-panel strong,.storage-recall-panel strong{color:#f8fafc;font-size:.86rem;font-weight:900;line-height:1.1;display:block}.storage-evolve-panel span,.storage-transfer-panel span,.storage-recall-panel span,.storage-no-evolve{color:#94a3b8;font-size:.72rem;font-weight:800;line-height:1.25}.storage-candy-meter{background:#064e3b2e;border:1px solid #34d3993d;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:min(100%,260px);margin-top:8px;padding:7px 9px;display:grid}.storage-candy-meter span{color:#a7f3d0;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.68rem;overflow:hidden}.storage-candy-meter strong{color:#ecfdf5;white-space:nowrap;font-size:.72rem;font-weight:950}.storage-evolve-button{min-width:96px;min-height:42px}.storage-recall-button{color:#bbf7d0;cursor:pointer;min-width:96px;min-height:42px;font:inherit;background:#22c55e29;border:1px solid #22c55e61;border-radius:10px;justify-content:center;align-items:center;gap:6px;font-size:.78rem;font-weight:900;display:inline-flex}.storage-recall-button:disabled{color:#94a3b8;cursor:not-allowed;opacity:.62;background:#33415547;border-color:#94a3b833}.storage-recall-button span{color:inherit;font-size:inherit;font-weight:inherit;line-height:1}.storage-transfer-button{color:#fecaca;cursor:pointer;min-width:96px;min-height:42px;font:inherit;background:#ef44442e;border:1px solid #f8717173;border-radius:10px;font-size:.78rem;font-weight:900}.storage-evolve-button:disabled{cursor:not-allowed;opacity:.45}@media (width>=641px) and (width<=900px){.storage-header.is-transfer-mode{padding:calc(var(--safe-top) + 11px) 14px 9px;gap:10px}.storage-header.is-transfer-mode h2{font-size:1.02rem}.storage-header.is-transfer-mode .storage-capacity-card{max-width:270px;margin-top:2px;padding:6px 8px}.storage-header.is-transfer-mode+.storage-summary-row{gap:6px;padding:7px 14px 0}.storage-header.is-transfer-mode+.storage-summary-row .storage-summary-item{padding:7px 8px}.storage-controls.is-transfer-mode{padding:8px 14px 7px}.storage-selection-bar.is-transfer-mode{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;margin:9px 14px 0;padding:9px 10px}.storage-selection-bar.is-transfer-mode .storage-selection-slots span{width:31px;height:31px}.storage-selection-bar.is-transfer-mode .storage-selection-slots img{width:27px;height:27px}}@media (width<=640px){.storage-modal-shell{background:radial-gradient(circle at 24% 0,#38bdf821,#0000 30%),#080d1bfa}.storage-header{padding:calc(var(--safe-top) + 10px) 12px 8px;grid-template-columns:minmax(0,1fr) auto 34px;gap:8px}.storage-header.is-transfer-mode{padding:calc(var(--safe-top) + 7px) 10px 6px;grid-template-columns:minmax(0,1fr) auto 32px;gap:6px}.storage-header h2{font-size:1rem}.storage-header.is-transfer-mode h2{font-size:.9rem}.storage-header span,.storage-header-meta span,.storage-summary-item span{font-size:.6rem}.storage-header.is-transfer-mode span,.storage-header.is-transfer-mode .storage-header-meta span{font-size:.54rem}.storage-header>div:first-child{gap:4px}.storage-header.is-transfer-mode>div:first-child{gap:3px}.storage-header-meta{background:#0f172a8a;border:1px solid #7dd3fc26;border-radius:12px;gap:2px;min-width:0;padding:6px 8px}.storage-header.is-transfer-mode .storage-header-meta{border-radius:10px;gap:4px;padding:4px 6px}.storage-header.is-transfer-mode .storage-header-meta>svg{width:22px;height:22px}.storage-header-meta strong{font-size:.82rem}.storage-header.is-transfer-mode .storage-header-meta strong{font-size:.74rem}.storage-header.is-transfer-mode .storage-header-meta span{display:none}.storage-close-button{width:34px;height:34px}.storage-header.is-transfer-mode .storage-close-button{width:32px;height:32px}.storage-capacity-card{gap:5px;width:min(100%,252px);max-width:252px;margin-top:4px;padding:5px 7px}.storage-header.is-transfer-mode .storage-capacity-card{gap:4px;width:min(100%,210px);max-width:210px;margin-top:2px;padding:4px 6px}.inventory-capacity-head{gap:5px}.inventory-capacity-head span{font-size:.58rem}.inventory-capacity-head strong{font-size:.64rem}.inventory-capacity-track{height:5px}.storage-header.is-transfer-mode .inventory-capacity-track{height:4px}.storage-summary-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:7px 12px 0}.storage-header.is-transfer-mode+.storage-summary-row{gap:5px;padding:5px 10px 0}.storage-summary-item{border-radius:9px;padding:7px}.storage-header.is-transfer-mode+.storage-summary-row .storage-summary-item{border-radius:8px;padding:5px 6px}.storage-summary-item strong{margin-top:3px;font-size:.8rem}.storage-header.is-transfer-mode+.storage-summary-row .storage-summary-item strong{margin-top:2px;font-size:.72rem}.storage-controls{gap:6px;padding:8px 12px 7px}.storage-controls.is-transfer-mode{gap:5px;padding:7px 10px 6px}.storage-controls-main{grid-template-columns:minmax(0,1fr) minmax(108px,.7fr) auto;gap:6px;display:grid}.storage-controls.is-transfer-mode .storage-controls-main{grid-template-columns:minmax(0,1fr) minmax(88px,.62fr) 38px minmax(64px,auto)}.storage-search,.storage-sort-select,.storage-controls-filters select,.storage-filters-toggle{border-radius:9px;min-height:34px;font-size:.68rem}.storage-filters-toggle{width:42px;padding:0;overflow:hidden}.storage-controls.is-transfer-mode .storage-filters-toggle{width:38px}.storage-multi-transfer-toggle{border-radius:9px;grid-column:1/-1;width:100%;min-height:34px;font-size:.68rem}.storage-controls.is-transfer-mode .storage-multi-transfer-toggle{grid-column:auto;width:auto;min-width:64px;padding:0 8px;font-size:.66rem}.storage-filter-text{display:none}.storage-filters-toggle .storage-filter-icon,.storage-filters-toggle .storage-chevron{color:#94a3b8;font-size:.7rem}.storage-filters-toggle.is-open .storage-filter-icon,.storage-filters-toggle.is-open .storage-chevron{color:#7dd3fc}.storage-selection-bar{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:9px;margin:10px 12px 0}.storage-selection-bar.is-transfer-mode{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;margin:7px 10px 0;padding:7px 8px}.storage-selection-bar.is-transfer-mode>div:first-child{gap:2px}.storage-selection-bar.is-transfer-mode strong{font-size:.78rem}.storage-selection-bar.is-transfer-mode span{font-size:.57rem;line-height:1.08}.storage-selection-slots{justify-content:space-between}.storage-selection-bar.is-transfer-mode .storage-selection-slots{justify-content:flex-end;gap:4px}.storage-selection-bar.is-transfer-mode .storage-selection-slots span{border-radius:8px;width:27px;height:27px;font-size:.6rem}.storage-selection-bar.is-transfer-mode .storage-selection-slots img{width:23px;height:23px}.storage-selection-confirm{width:100%}.storage-selection-bar.is-transfer-mode .storage-selection-confirm{border-radius:11px;grid-column:1/-1;min-height:32px;padding:0 12px;font-size:.74rem}.storage-selection-message{max-width:none}.storage-selection-bar.is-transfer-mode .storage-selection-message{grid-column:1/-1;font-size:.64rem}.storage-controls-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-controls.is-transfer-mode .storage-controls-filters{gap:5px}.storage-controls-filters.is-open{max-height:132px}.storage-controls.is-transfer-mode .storage-controls-filters.is-open{max-height:120px}.storage-detail-overlay{padding:calc(var(--safe-top) + 7px) 8px calc(var(--safe-bottom) + 7px);align-items:stretch}.storage-detail-panel{width:100%;max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 14px);border-radius:14px}.storage-detail-stats-toggle{margin:8px 12px;padding:8px 11px}.storage-detail-accordion{margin:7px 12px 0}.storage-detail-accordion-toggle{padding:8px 10px}.storage-detail-accordion-toggle strong{font-size:.72rem}.storage-detail-accordion-toggle em{font-size:.6rem}.storage-detail-accordion-wrap.is-open{max-height:min(320px,44vh)}.storage-detail-stats-wrap.is-open{max-height:min(360px,50vh)}.storage-grid{padding:4px 12px calc(var(--safe-bottom) + 14px);grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:7px}.storage-pokemon-card{border-radius:13px;grid-template-rows:auto 18px 58px minmax(18px,auto) minmax(38px,1fr);gap:5px;min-height:184px;padding:8px}.storage-card-topline{gap:4px}.storage-card-topline span{font-size:.64rem}.storage-card-topline strong{text-overflow:ellipsis;max-width:48%;font-size:.56rem;overflow:hidden}.storage-pokemon-card img{width:66px;height:58px}.storage-card-name{min-height:1.34em;padding-block:1px;font-size:.74rem}.storage-card-tags,.storage-card-bottom{gap:4px}.storage-card-tags span{padding:3px 5px;font-size:.54rem}.storage-card-health{align-self:end;gap:3px}.storage-card-health__row{gap:4px}.storage-card-health__row span,.storage-card-health__row strong{font-size:.5rem}.storage-card-health__track{height:5px}.storage-detail-hero{grid-template-columns:minmax(54px,auto) 70px minmax(0,1fr);gap:8px;min-height:104px;padding:10px 48px 10px 12px}.storage-detail-cp{font-size:.56rem}.storage-detail-cp strong{font-size:1.54rem}.storage-detail-hero img{width:70px;height:70px}.storage-detail-info{text-align:left;grid-column:3}.storage-detail-info h3{white-space:nowrap;word-break:break-word;font-size:1.32rem}.storage-detail-subline{justify-content:flex-start;gap:4px;margin-top:6px}.storage-detail-subline span,.storage-detail-rank{padding:4px 7px;font-size:.58rem}.storage-detail-stats{gap:6px;padding:8px 12px}.storage-evolve-panel,.storage-transfer-panel,.storage-recall-panel,.storage-recovery-panel,.storage-no-evolve{margin:9px 12px;padding:10px 11px}.storage-detail-accordion-wrap .storage-evolve-panel,.storage-detail-accordion-wrap .storage-transfer-panel,.storage-detail-accordion-wrap .storage-recall-panel,.storage-detail-accordion-wrap .storage-recovery-panel,.storage-detail-accordion-wrap .storage-no-evolve{margin:7px 0 0}.storage-evolve-panel,.storage-transfer-panel,.storage-recall-panel{gap:9px}.storage-evolve-panel strong,.storage-transfer-panel strong,.storage-recall-panel strong,.storage-recovery-head strong{font-size:.8rem}.storage-evolve-panel span,.storage-transfer-panel span,.storage-recall-panel span,.storage-no-evolve,.storage-recovery-head span{font-size:.66rem}.storage-transfer-panel,.storage-recall-panel{grid-template-columns:1fr}.storage-candy-meter{width:100%}.storage-recovery-head{grid-template-columns:1fr}.storage-recovery-hp{justify-self:start;min-width:0;padding:6px 8px;font-size:.72rem}.storage-transfer-button,.storage-evolve-button{width:100%;min-height:38px}}@media (width<=360px){.storage-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:6px;padding-inline:10px}.storage-pokemon-card{min-height:178px;padding:7px}.storage-card-topline strong{max-width:45%}.storage-pokemon-card img{width:62px;height:54px}.storage-card-name{font-size:.7rem}.storage-card-health__row span,.storage-card-health__row strong{font-size:.48rem}.storage-detail-hero{grid-template-columns:minmax(46px,auto) 62px minmax(0,1fr);gap:6px;min-height:98px;padding:9px 42px 9px 10px}.storage-detail-cp{font-size:.52rem}.storage-detail-cp strong{font-size:1.38rem}.storage-detail-hero img{width:62px;height:62px}.storage-detail-info h3{font-size:1.18rem}.storage-detail-subline span,.storage-detail-rank{padding:3px 6px;font-size:.54rem}}.pokedex-modal-overlay{z-index:9999;-webkit-backdrop-filter:blur(20px);background:#0f172af5;flex-direction:column;display:flex;position:absolute;inset:0}.pokedex-modal-header{background:linear-gradient(#02061799 0%,#02061700 100%);border-bottom:1px solid #94a3b826;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:clamp(12px,4vw,20px);display:flex}.pokedex-modal-title{color:#f8fafc;letter-spacing:2px;text-transform:uppercase;margin:0;font-size:clamp(1rem,5vw,1.4rem);font-weight:900}.pokedex-modal-count{color:#ef4444;font-size:clamp(.76rem,3vw,.9rem);font-weight:800}.pokedex-modal-filters{flex:240px;grid-template-columns:minmax(110px,1fr) minmax(104px,136px);gap:8px;min-width:0;display:grid}.pokedex-modal-filters input,.pokedex-modal-filters select{box-sizing:border-box;color:#e2e8f0;background:#0f172ac7;border:1px solid #94a3b833;border-radius:8px;width:100%;min-width:0;padding:9px 10px;font-size:.76rem;font-weight:800}.inventory-modal-header{flex-wrap:wrap}.inventory-modal-title-block{flex:130px;gap:4px;min-width:0;display:grid}.inventory-modal-title-block>span{color:#94a3b8;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.7rem;font-weight:800;line-height:1.2;overflow:hidden}.inventory-capacity-card{border:1px solid color-mix(in srgb, var(--capacity-color,#38bdf8) 42%, transparent);background:#0f172aa8;border-radius:8px;flex:0 230px;gap:7px;min-width:188px;padding:8px 10px;display:grid;box-shadow:0 10px 26px #0206172e}.inventory-capacity-head{align-items:center;gap:7px;min-width:0;display:flex}.inventory-capacity-head svg{color:var(--capacity-color,#38bdf8);flex:none}.inventory-capacity-head span{color:#cbd5e1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:900;line-height:1;overflow:hidden}.inventory-capacity-head strong{color:var(--capacity-color,#38bdf8);white-space:nowrap;margin-left:auto;font-size:.74rem;font-weight:950;line-height:1}.inventory-capacity-track{background:#020617b8;border-radius:999px;height:6px;overflow:hidden}.inventory-capacity-fill{border-radius:inherit;background:var(--capacity-color,#38bdf8);height:100%;box-shadow:0 0 14px color-mix(in srgb, var(--capacity-color,#38bdf8) 58%, transparent)}.item-reward-inbox{background:linear-gradient(135deg,#facc151a,#22d3ee0d),#0f172ac7;border:1px solid #facc1542;border-radius:10px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;margin:0 0 12px;padding:10px 12px;display:grid;box-shadow:0 14px 34px #0206173d}.item-reward-inbox-copy{gap:3px;min-width:0;display:grid}.item-reward-inbox-kicker{align-items:center;gap:8px;min-width:0;display:flex}.item-reward-inbox-copy span{color:#facc15;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:6px;font-size:.67rem;font-weight:950;line-height:1;display:inline-flex}.item-reward-inbox-title{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.item-reward-inbox-timer{color:#fde68a;letter-spacing:0;white-space:nowrap;background:#02061770;border:1px solid #facc1547;border-radius:999px;flex:none;align-items:center;gap:4px;min-height:20px;padding:0 7px;font-size:.66rem;font-style:normal;font-weight:950;line-height:1;display:inline-flex;box-shadow:0 0 12px #facc151f}.item-reward-inbox-timer.is-urgent{color:#fecaca;border-color:#f871716b;box-shadow:0 0 14px #f8717133}.item-reward-inbox-copy strong{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:950;line-height:1.15;overflow:hidden}.item-reward-inbox-copy small{color:#cbd5e1c2;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:800;line-height:1.25;overflow:hidden}.item-reward-inbox-preview{align-items:center;gap:6px;display:flex}.item-reward-inbox-chip{color:#e2e8f0;background:#02061775;border:1px solid #94a3b82e;border-radius:999px;align-items:center;gap:4px;min-width:46px;padding:4px 7px;font-size:.68rem;font-weight:950;display:inline-flex}.item-reward-inbox-chip img{object-fit:contain;filter:drop-shadow(0 3px 6px #00000057);width:22px;height:22px}.item-reward-inbox-claim{color:#111827;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:linear-gradient(135deg,#fde047,#f59e0b);border:1px solid #facc1573;border-radius:10px;min-height:38px;padding:0 16px;font-size:.72rem;font-weight:950;box-shadow:0 10px 22px #f59e0b38}.item-reward-inbox-claim:active{transform:translateY(1px)scale(.98)}.storage-capacity-card{width:min(100%,300px);max-width:300px;margin-top:8px;padding:7px 9px}@media (width<=560px){.inventory-modal-header .inventory-capacity-card{flex-basis:100%;order:3}.inventory-modal-header .pokedex-modal-close{order:2}.item-reward-inbox{grid-template-columns:minmax(0,1fr) auto;gap:10px}.item-reward-inbox-copy small{white-space:normal}.item-reward-inbox-kicker{flex-direction:column;align-items:flex-start;gap:5px}.item-reward-inbox-timer{min-height:18px;padding:0 6px;font-size:.62rem}.item-reward-inbox-preview{order:3;grid-column:1/-1;padding-bottom:2px;overflow-x:auto}.item-reward-inbox-claim{grid-area:1/2/span 2;align-self:stretch}}.pokedex-modal-close{color:#cbd5e1;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b847;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;padding:0;display:grid}.pokedex-modal-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(126px,1fr));align-content:start;gap:10px;padding:clamp(12px,4vw,20px);display:grid;overflow-y:auto}.pokedex-modal-card{opacity:.3;cursor:pointer;background:linear-gradient(145deg,#ffffff0f 0%,#ffffff05 100%);border:1px solid #ffffff0d;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:176px;padding:10px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0003}.pokedex-modal-card>*{z-index:1}.pokedex-modal-card:before{content:"";opacity:0;z-index:0;pointer-events:none;background:linear-gradient(145deg,#ef444426 0%,#0000 100%);transition:opacity .2s;position:absolute;inset:0}.pokedex-modal-card.is-seen{opacity:1}.pokedex-modal-card.is-caught{background:linear-gradient(145deg,#ef444414 0%,#ffffff05 100%);border-color:#ef444480}.pokedex-modal-card.is-caught:before{opacity:1}.pokedex-modal-dex-num{color:var(--text-secondary);align-self:flex-start;font-size:.7rem;font-weight:900;line-height:1}.pokedex-modal-sprite{object-fit:contain;width:76px;height:68px;image-rendering:pixelated;filter:drop-shadow(0 7px 7px #0000008f);margin:6px 0;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.pokedex-modal-card:hover .pokedex-modal-sprite{transform:scale(1.15)}.pokedex-modal-sprite.is-silhouette{filter:brightness(0)}.pokedex-modal-unknown{color:#ffffff1a;justify-content:center;align-items:center;width:76px;height:68px;margin:6px 0;font-size:1.5rem;font-weight:900;display:flex}.pokedex-modal-name{color:#f8fafc;text-align:center;word-break:break-word;text-overflow:ellipsis;white-space:nowrap;width:100%;margin-top:auto;font-size:.82rem;font-weight:900;line-height:1.1;overflow:hidden}@media (width<=480px){.pokedex-modal-filters{flex-basis:100%;order:3;grid-template-columns:1fr}.pokedex-modal-close{order:2}.pokedex-modal-grid{padding:4px 12px calc(var(--safe-bottom) + 14px);grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}}.map-toast{top:calc(var(--safe-top) + 78px);z-index:12000;-webkit-backdrop-filter:blur(14px);color:#e2e8f0;text-align:center;pointer-events:none;background:#0f172ae0;border:1px solid #94a3b838;border-radius:999px;width:min(360px,100vw - 28px);padding:10px 18px;font-size:.88rem;font-weight:800;line-height:1.2;position:fixed;left:50%;translate:-50%;box-shadow:0 4px 24px #0000008c,inset 0 0 0 1px #ffffff0f}.map-toast--with-timer{border-radius:18px;flex-direction:column;align-items:center;gap:4px;padding:11px 18px 12px;display:flex}.map-toast-timer{color:#fef3c7;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:950}.map-toast--error{color:#fca5a5;background:#1e0808eb;border-color:#ef444473;box-shadow:0 4px 24px #0000008c,0 0 12px #ef44444d,inset 0 0 0 1px #ef44441a}.pending-boss-resume-button{right:calc(var(--safe-right) + 14px);bottom:calc(var(--safe-bottom) + 166px);z-index:11200;color:#e0f2fe;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);letter-spacing:.01em;background:linear-gradient(135deg,#0ea5e93d,#22c55e38),#070c18db;border:1px solid #7dd3fc57;border-radius:999px;align-items:center;gap:7px;max-width:calc(100vw - 28px);min-height:42px;padding:9px 11px;font-size:.76rem;font-weight:950;display:inline-flex;position:fixed;box-shadow:0 14px 34px #0208175c,0 0 18px #38bdf82e,inset 0 1px #ffffff1f}.pending-boss-resume-button strong{color:#bbf7d0;background:#22c55e3d;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.68rem;line-height:1;display:inline-grid}@media (width<=480px){.pending-boss-resume-button{right:calc(var(--safe-right) + 10px);bottom:calc(var(--safe-bottom) + 154px);min-height:38px;padding:8px 10px;font-size:.7rem}}.nearby-panel{right:calc(var(--safe-right) + var(--map-edge));bottom:calc(var(--safe-bottom) + 108px);z-index:1000;flex-direction:column;align-items:flex-end;display:flex;position:absolute}.nearby-popover{width:min(250px, calc(100vw - (var(--map-edge) * 2)));-webkit-backdrop-filter:blur(16px);background:#0508148c;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:10px;padding:14px}.nearby-title{text-align:center;margin-bottom:10px;font-size:1rem;line-height:1}.nearby-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.nearby-tile{flex-direction:column;align-items:center;min-width:0;display:flex}.nearby-pokemon-sprite{object-fit:contain;width:clamp(52px,14vw,64px);height:clamp(44px,12vw,56px);image-rendering:pixelated}.nearby-distance-bars{gap:2px;margin-top:2px;display:flex}.nearby-distance-bars span{background:#fff9;border-radius:2px;width:6px;height:8px}.nearby-empty{color:var(--text-secondary);text-align:center;grid-column:1/-1;padding:20px 0;font-size:.82rem;font-weight:700}.nearby-trigger{min-width:var(--touch-target);min-height:var(--touch-target);color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(14px);background:#05081480;border-radius:999px;padding:8px 12px;border:1px solid #ffffff1f!important}.nearby-trigger-icons{align-items:center;gap:4px;display:flex}.nearby-trigger-sprite{object-fit:contain;width:30px;height:26px;image-rendering:pixelated}.nearby-trigger-empty{white-space:nowrap;padding:4px;font-size:.8rem;font-weight:800}.joystick-panel{bottom:calc(var(--safe-bottom) + 148px);left:calc(var(--safe-left) + var(--map-edge))}.battle-screen{--battle-session-bg:url(/gym_battle_session_bg_day.png);isolation:isolate;background-color:#050816;background-image:var(--battle-session-bg);background-position:50%;background-repeat:no-repeat;background-size:cover}.battle-screen--tower{--battle-session-bg:url(/tower_battle_session_bg_day.png)}.battle-screen--tower.battle-time-night{--battle-session-bg:url(/tower_battle_session_bg_night.png)}.battle-screen--gym.battle-time-night{--battle-session-bg:url(/gym_battle_session_bg_night.png)}.battle-html-wrapper,.battle-html-wrapper>div{background:0 0!important;overflow:visible!important}.battle-scene-background{z-index:0;pointer-events:none;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.battle-screen canvas,.battle-scene-background{transition:filter .45s}.battle-sprite-layer{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.battle-combatant-slot{pointer-events:none;place-items:end center;display:grid;position:absolute}.battle-combatant-slot--opponent{z-index:2;width:clamp(166px,34vw,260px);height:clamp(160px,32vh,270px);top:clamp(124px,19vh,188px);right:clamp(6px,5vw,78px)}.battle-combatant-slot--opponent.battle-combatant-slot--boss{z-index:2;width:clamp(220px,48vw,380px);height:clamp(210px,39vh,370px);top:clamp(124px,17vh,176px);left:clamp(58%,61vw,64%);right:auto;translate:-50%}.battle-combatant-slot--player{z-index:3;width:clamp(132px,30vw,218px);height:clamp(128px,26vh,218px);bottom:clamp(190px,27vh,272px);left:clamp(18px,8vw,118px)}.battle-combatant-motion{transform-origin:bottom;place-items:end center;width:100%;height:100%;transition:transform .16s,opacity .22s,filter .16s;display:grid;position:relative;transform:translate(0,0)scale(1)}.battle-combatant-motion--player.battle-combatant-motion--attack{transform:translate(24%,-18%)scale(1.05)}.battle-combatant-motion--opponent.battle-combatant-motion--attack{transform:translate(-18%,16%)scale(1.04)}.battle-combatant-motion--dodgeLeft{transform:translate(-34px)scale(.98)}.battle-combatant-motion--dodgeRight{transform:translate(34px)scale(.98)}.battle-combatant-motion--hit{filter:sepia()hue-rotate(-50deg)saturate(4);transform:translate(0,0)scale(.96)}.battle-combatant-motion--faint{opacity:0;transform:translateY(30px)rotate(8deg)scale(.88)}.battle-combatant-ground{filter:blur(2px);opacity:.88;background:radial-gradient(#0206178c,#0206172e 58%,#0000 72%);border-radius:50%;width:68%;height:16%;position:absolute;bottom:4%;left:50%;translate:-50%}.battle-combatant-sprite-frame{z-index:1;place-items:end center;width:100%;height:100%;animation:3.2s ease-in-out infinite battleSpriteBob;display:grid;position:relative}.battle-combatant-motion--opponent .battle-combatant-sprite-frame{animation-delay:-1.6s}.battle-combatant-motion--attack .battle-combatant-sprite-frame,.battle-combatant-motion--hit .battle-combatant-sprite-frame,.battle-combatant-motion--faint .battle-combatant-sprite-frame{animation:none}.battle-combatant-sprite-dom{object-fit:contain;max-width:100%;max-height:100%;image-rendering:pixelated;transform-origin:bottom;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 18px 13px #00000075);display:block}.battle-combatant-sprite-dom--player{width:clamp(122px,28vw,204px)}.battle-combatant-sprite-dom--opponent{width:clamp(150px,32vw,238px)}.battle-combatant-sprite-dom--boss{filter:drop-shadow(0 22px 16px #00000080)drop-shadow(0 0 18px #f472b638);width:clamp(200px,46vw,352px)}.battle-combatant-sprite-dom--shiny{filter:drop-shadow(0 18px 13px #00000075)drop-shadow(0 0 18px #facc157a)}.battle-combatant-sprite-dom--boss.battle-combatant-sprite-dom--shiny{filter:drop-shadow(0 22px 16px #00000080)drop-shadow(0 0 18px #f472b638)drop-shadow(0 0 22px #facc157a)}@keyframes battleSpriteBob{0%,to{transform:translate(0,0)}50%{transform:translateY(-7px)}}.battle-screen.battle-weather-drizzle canvas,.battle-screen.battle-weather-rain canvas,.battle-screen.battle-weather-drizzle .battle-scene-background,.battle-screen.battle-weather-rain .battle-scene-background{filter:brightness(.98)saturate(.96)contrast(1.02)}.battle-screen.battle-weather-storm canvas,.battle-screen.battle-weather-storm .battle-scene-background{filter:brightness(.94)saturate(.94)contrast(1.06)}.battle-screen.battle-weather-snow canvas,.battle-screen.battle-weather-snow .battle-scene-background{filter:brightness(1.08)saturate(.82)contrast(.96)}.battle-screen.battle-weather-fog canvas,.battle-screen.battle-weather-cloudy canvas,.battle-screen.battle-weather-fog .battle-scene-background,.battle-screen.battle-weather-cloudy .battle-scene-background{filter:brightness(1.02)saturate(.88)contrast(.94)}.battle-hitbox{inset:0 0 calc(var(--safe-bottom) + 138px);z-index:10;touch-action:none;cursor:crosshair;position:absolute}.battle-run-action{top:calc(var(--safe-top) + var(--map-edge));left:calc(var(--safe-left) + var(--map-edge));z-index:20;position:absolute}.battle-mode-chip{top:calc(var(--safe-top) + var(--map-edge));z-index:20;color:#fff;text-align:center;-webkit-backdrop-filter:blur(14px);background:linear-gradient(145deg,#080f1fd1,#0206179e);border:1px solid #ffffff2e;border-radius:8px;place-items:center;min-width:min(220px,100vw - 180px);min-height:42px;padding:7px 14px;display:grid;position:absolute;left:50%;translate:-50%;box-shadow:0 14px 30px #02061757,inset 0 1px #ffffff1f}.battle-mode-chip span{text-transform:uppercase;font-size:.78rem;font-weight:900;line-height:1}.battle-mode-chip small{color:#fbbf24;text-transform:uppercase;margin-top:4px;font-size:.62rem;font-weight:900;line-height:1}.battle-health-panel{z-index:20;width:clamp(160px,42vw,210px);position:absolute}.battle-health-panel--opponent{top:calc(var(--safe-top) + 70px);right:calc(var(--safe-right) + var(--map-edge))}.battle-health-panel--player{bottom:calc(var(--safe-bottom) + 128px);left:calc(var(--safe-left) + var(--map-edge))}.battle-health-card{border-radius:12px;padding:10px 14px}.battle-health-name{color:#fff;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px 4px #00000080;max-width:100%;margin-bottom:8px;font-size:.9rem;font-weight:900;line-height:1;overflow:hidden}.battle-health-track{background:#00000080;border:1px solid #ffffff1a;border-radius:999px;width:100%;height:8px;overflow:hidden}.battle-health-fill{border-radius:inherit;height:100%;transition:width .3s cubic-bezier(.25,.8,.25,1)}.battle-health-fill--opponent{background:linear-gradient(90deg,#b91c1c,#ef4444);box-shadow:0 0 10px #ef444480}.battle-health-fill--player{background:linear-gradient(90deg,#15803d,#22c55e);box-shadow:0 0 10px #22c55e80}.battle-health-meta{color:#e2e8f0d1;text-align:right;margin-top:6px;font-size:.66rem;font-weight:800}.battle-health-name-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.battle-status-badge{letter-spacing:.06em;color:#fff;white-space:nowrap;border-radius:3px;flex-shrink:0;padding:1px 5px;font-size:.55rem;font-weight:900;line-height:1.5}.battle-status-badge--burn{background:#ef4444}.battle-status-badge--poison{background:#8b5cf6}.battle-status-badge--paralysis{color:#111;background:#eab308}.battle-status-badge--freeze{color:#111;background:#38bdf8}.battle-status-badge--confusion{background:#ec4899}.battle-team-strip{top:calc(var(--safe-top) + 76px);left:calc(var(--safe-left) + var(--map-edge));z-index:22;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0206178a;border:1px solid #ffffff1f;border-radius:12px;gap:6px;max-width:min(260px,100vw - 230px);padding:6px;display:flex;position:absolute;overflow-x:auto}.battle-team-member{opacity:.76;background:#0f172ab8;border:1px solid #94a3b838;border-radius:9px;flex:0 0 34px;place-items:center;width:34px;height:42px;display:grid;position:relative}.battle-team-member.is-active{opacity:1;border-color:#22c55eb8;box-shadow:0 0 12px #22c55e47}.battle-team-strip--opponent{right:calc(var(--safe-right) + var(--map-edge));left:auto;top:calc(var(--safe-top) + 132px)}.battle-team-strip--opponent .battle-team-member.is-active{border-color:#ef4444b8;box-shadow:0 0 12px #ef444447}.battle-team-member.is-fainted{filter:grayscale();opacity:.45}.battle-team-member img{object-fit:contain;width:28px;height:28px}.battle-team-member span{color:#e2e8f0;background:#0f172a;border-radius:50%;place-items:center;width:15px;height:15px;font-size:.55rem;font-weight:900;display:grid;position:absolute;top:-5px;right:-5px}.battle-team-hp{background:#0f172ae6;border-radius:999px;height:3px;position:absolute;bottom:4px;left:5px;right:5px;overflow:hidden}.battle-team-hp div{border-radius:inherit;background:#22c55e;height:100%}.battle-team-strip--opponent .battle-team-hp div{background:#ef4444}.battle-shields{gap:3px;margin:3px 0 2px;display:flex}.battle-shield-pip{background:#93c5fde6;border:1px solid #93c5fd80;border-radius:50%;width:9px;height:9px;display:block;box-shadow:0 0 4px #93c5fdb3}.battle-combat-text{z-index:20;color:#fcd34d;text-align:center;text-shadow:0 4px 15px #000c,0 0 10px #eab308;text-transform:uppercase;pointer-events:none;width:100%;padding:0 18px;font-size:clamp(1.15rem,6vw,1.8rem);font-style:italic;font-weight:900;line-height:1.1;position:absolute;top:40%}.battle-combatant-sprite{image-rendering:pixelated;filter:drop-shadow(0 16px 12px #0000006b);transform:scale(var(--battle-sprite-scale,1));transform-origin:bottom}.battle-combatant-sprite--shiny{filter:drop-shadow(0 16px 12px #0000006b)drop-shadow(0 0 16px #facc157a)}.battle-result-overlay{z-index:160;padding:calc(var(--safe-top) + 18px) calc(var(--safe-right) + 20px) calc(var(--safe-bottom) + 18px) calc(var(--safe-left) + 20px);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:auto;background:#0009;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.battle-result-panel{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:18px;width:min(400px,100%);padding:clamp(28px,8vw,40px) 20px;display:flex;position:relative}.battle-result-title{text-transform:uppercase;margin:0;font-size:clamp(2rem,10vw,2.5rem);font-weight:900;line-height:1}.battle-result-title.is-success{color:var(--success);text-shadow:0 0 20px var(--success)}.battle-result-title.is-danger{color:var(--danger);text-shadow:0 0 20px var(--danger)}.battle-result-button{width:100%;margin-top:8px}.reward-icon{--reward-icon-size:26px;width:var(--reward-icon-size);height:var(--reward-icon-size);color:#f8fafc;background:radial-gradient(circle at 34% 22%,#ffffff52,#0000 38%),linear-gradient(145deg,#1e293bdb,#020617b8);border-radius:999px;flex:none;place-items:center;display:inline-grid;box-shadow:inset 0 1px #ffffff2e,0 8px 16px #00000047}.reward-icon img{object-fit:contain;width:82%;height:82%;image-rendering:pixelated;filter:drop-shadow(0 3px 5px #00000070)}.reward-icon--xp{color:#bfdbfe;background:linear-gradient(145deg,#3b82f6eb,#1d4ed8c7)}.reward-icon--stardust{color:#f5d0fe;background:radial-gradient(circle at 32% 24%,#ffffff57,#0000 34%),radial-gradient(circle at 70% 78%,#38bdf847,#0000 42%),linear-gradient(145deg,#8b5cf6eb,#312e81d1)}.reward-icon--candy{color:#ffe4e6;background:radial-gradient(circle at 34% 24%,#ffffff5c,#0000 36%),linear-gradient(145deg,#f43f5ef0,#9f1239c7)}.reward-icon--damage{color:#fecaca;background:linear-gradient(145deg,#ef4444e0,#7f1d1dbd)}.reward-icon--item,.reward-icon--pokemon{background:linear-gradient(145deg,#fbbf2447,#0f172ac7)}.reward-icon--pokecoins{box-shadow:none;background:0 0}.reward-pill{color:#e2e8f0;background:linear-gradient(90deg,#ffffff14,#ffffff06),#0f172ab3;border:1px solid #ffffff1f;border-radius:999px;justify-content:flex-start;align-items:center;gap:8px;width:100%;min-width:0;padding:7px 10px 7px 8px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex;box-shadow:inset 0 1px #ffffff1a}.reward-pill>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.reward-pill--compact{gap:6px;width:auto;max-width:100%;padding:4px 9px 4px 5px;font-size:.74rem}.reward-pill--pokecoins{background:linear-gradient(90deg,#fbbf2426,#0f172ab8);border-color:#fbbf2452}.reward-pill--stardust{border-color:#c084fc47}.reward-pill--candy{border-color:#fb71854d}.reward-pill--item{border-color:#60a5fa38}.battle-reward-list{color:#fcd34d;gap:7px;width:100%;font-size:.88rem;font-weight:900;display:grid}.battle-reward-list .reward-pill{display:inline-flex}.battle-reward-list strong{color:#f9a8d4}.battle-controls{z-index:20;min-height:calc(var(--safe-bottom) + 130px);padding:0 calc(var(--safe-right) + var(--map-edge)) calc(var(--safe-bottom) + 20px) calc(var(--safe-left) + var(--map-edge));background:linear-gradient(#0000,#000000d1);justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;left:0;right:0}.battle-main-actions{justify-content:center;align-items:center;gap:clamp(10px,3vw,14px);display:flex}.battle-dodge{bottom:calc(var(--safe-bottom) + 36px);color:#fff;cursor:pointer;background:#0000007a;border:1px solid #ffffff29;border-radius:999px;min-width:80px;min-height:42px;padding:10px 12px;font-size:.82rem;font-weight:800;position:absolute}.battle-dodge--left{left:calc(var(--safe-left) + var(--map-edge))}.battle-dodge--right{right:calc(var(--safe-right) + var(--map-edge))}.battle-fast-button,.battle-charged-button{color:#fff;cursor:default;text-align:center;background:radial-gradient(#475569,#1f2937);border:4px solid #111;border-radius:50%;place-items:center;width:clamp(78px,21vw,92px);height:clamp(78px,21vw,92px);padding:9px;font-size:.76rem;font-weight:900;line-height:1.05;display:grid;position:relative}.battle-fast-button{cursor:pointer;background:radial-gradient(#38bdf8,#2563eb);border-color:#0f172a;box-shadow:0 0 18px #38bdf86b}.battle-fast-button:disabled{cursor:default;opacity:.58}.battle-charged-button{opacity:.58}.battle-charged-button.is-ready{cursor:pointer;opacity:1;background:radial-gradient(#a855f7,#7e22ce);box-shadow:0 0 20px #a855f7}.battle-fast-button small,.battle-charged-button small{color:#fff;background:#111;border-radius:999px;min-width:68px;padding:2px 6px;font-size:.68rem;line-height:1.2;position:absolute;bottom:-22px;left:50%;translate:-50%}@media (width<=520px){:root{--map-edge:12px;--map-icon-size:50px;--map-marker-scale:.92}.map-trainer-chip{--profile-card-width:clamp(209px, 67vw, 254px);--profile-card-height:48px;--profile-level-size:35px;--profile-right-art-size:20px;--profile-mascot-size:56px;--profile-inner-top:7px;--profile-inner-right:calc(var(--profile-right-art-size) + 10px);--profile-inner-bottom:7px;--profile-inner-left:calc(var(--profile-level-size) + 18px);min-width:199px;max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 254px);padding:4px calc(var(--profile-right-art-size) + 12px) 4px 5px;gap:8px}.map-trainer-chip:before{width:calc(var(--profile-level-size) + 11px);inset:4px auto 4px 5px}.map-trainer-chip:after{top:var(--profile-inner-top);right:var(--profile-inner-right);bottom:var(--profile-inner-bottom);left:var(--profile-inner-left)}.map-profile-pokeball-detail{right:6px}.map-profile-mascot-peek{left:calc(var(--profile-level-size) + 6px);top:calc(var(--profile-mascot-size) * -.9)}.map-profile-level-card{width:var(--profile-level-size);height:var(--profile-level-size);border-width:1.5px;margin-left:0}.map-profile-level-kicker{padding:1px 4px;font-size:.34rem}.map-profile-level-number{font-size:.69rem}.map-trainer-meta{gap:3px;min-width:0;padding:3px 9px 3px 10px;display:grid}.map-trainer-name{text-shadow:0 1px #ffffffe6;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:.61rem;font-weight:1000;overflow:hidden}.map-xp-track{border:1px solid #1f568f33;height:5px}.map-xp-fill{box-shadow:0 0 5px color-mix(in srgb, var(--team-color) 24%, transparent)}.map-unread-badge{border-color:#ffffff4d;min-width:21px;min-height:21px;padding:2px 6px;font-size:.64rem;top:-5px;right:3px}.map-location-bubble{--location-height:31px;--location-icon-size:22px;--location-copy-size:14px;--location-inner-top:5px;--location-inner-right:calc(var(--location-copy-size) + 12px);--location-inner-bottom:5px;--location-inner-left:calc(var(--location-icon-size) + 9px);min-width:144px;max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 190px);gap:5px;padding:3px 6px 3px 4px}.map-location-bubble-country{font-size:.52rem}.map-location-bubble-coords{font-size:.45rem}.map-location-bubble-copy{padding:2px 4px 2px 6px}.map-effect-timers{max-width:min(170px, calc(100vw - (var(--map-edge) * 2)));gap:5px}.map-effect-chip{border-radius:11px;gap:5px;min-width:136px;min-height:25px;padding:4px 7px 4px 5px;font-size:.58rem}.map-effect-chip-icon{width:16px;height:16px}.map-effect-chip-label{max-width:none}.map-effect-chip-time{min-width:34px;font-size:.62rem}.map-boss-reward-chip{width:144px;min-width:144px;max-width:144px}.map-boss-reward-chip.is-expanded{width:min(176px, calc(100vw - (var(--map-edge) * 2)));min-width:150px;max-width:min(176px, calc(100vw - (var(--map-edge) * 2)))}.map-boss-reward-chip .map-effect-chip-label{max-width:42px}.map-boss-reward-chip .map-effect-chip-time{min-width:46px;font-size:.6rem}.map-compass-button,.map-icon-button{width:38px;min-width:38px;height:38px;min-height:38px}.map-action-button-art{width:46px;height:46px}.map-gps-button{top:calc(var(--safe-top) + 70px)}.map-shop-button{top:calc(var(--safe-top) + 166px)}.map-guide-button{top:calc(var(--safe-top) + 214px)}.map-location-button{top:calc(var(--safe-top) + 118px)}.map-admin-button{top:calc(var(--safe-top) + 262px)}.map-raid-event-countdown{top:calc(var(--safe-top) + 58px);border-radius:15px;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;width:min(260px,100vw - 112px);min-height:48px;padding:6px 8px}.map-raid-event-orb{width:30px;height:30px}.map-raid-event-copy strong{font-size:.62rem}.map-raid-event-copy small{font-size:.58rem}.map-raid-event-timer{grid-column:auto;min-width:0}.map-raid-event-timer small{font-size:.52rem}.map-raid-event-timer b{font-size:1.58rem}.map-raid-event-countdown.is-live-burst .map-raid-event-timer b{font-size:.88rem}.map-raid-event-spark-2{left:38px}.event-raid-announcement-layer{top:calc(var(--safe-top) + 10px);padding-inline:calc(var(--safe-left) + 10px) calc(var(--safe-right) + 10px)}.event-raid-announcement-card{border-radius:15px;gap:7px;min-height:58px;padding:8px 9px 8px 8px}.event-raid-announcement-icon{width:34px;height:34px}.event-raid-announcement-copy strong{font-size:.76rem}.event-raid-announcement-copy small{font-size:.64rem}.event-raid-announcement-status{min-width:52px;padding:5px 7px;font-size:.56rem}.map-environment-chip{top:calc(var(--safe-top) + var(--map-edge));right:calc(var(--safe-right) + var(--map-edge));pointer-events:auto;cursor:pointer;gap:0;max-width:44px;min-height:38px;padding:6px 12px;transition:max-width .3s,gap .2s,padding .2s;overflow:hidden}.map-environment-chip.is-expanded{gap:7px;max-width:min(220px,52vw)}.map-environment-chip span{opacity:0;max-width:0;transition:opacity .25s,max-width .3s;overflow:hidden}.map-environment-chip.is-expanded span{opacity:1;max-width:160px}.map-environment-chip small{display:none}.map-ui-bottom{bottom:calc(var(--safe-bottom) + 10px)}.map-storage-button-wrap{top:-16px}.nearby-panel{bottom:calc(var(--safe-bottom) + 100px)}.nearby-popover{width:min(232px,100vw - 24px);padding:12px}.battle-health-panel{width:clamp(144px,44vw,178px)}.battle-mode-chip{top:calc(var(--safe-top) + 16px);min-width:132px;max-width:calc(100vw - 170px);padding-inline:10px}.battle-health-panel--opponent{top:calc(var(--safe-top) + 68px)}.battle-team-strip{top:calc(var(--safe-top) + 122px);max-width:min(180px,100vw - 196px)}.battle-team-strip--opponent{top:calc(var(--safe-top) + 116px);max-width:min(160px,100vw - 210px)}.battle-health-panel--player{bottom:calc(var(--safe-bottom) + 122px)}.battle-dodge{min-width:70px;padding-inline:10px;font-size:.76rem}.battle-combatant-slot--opponent{top:calc(var(--safe-top) + 120px);right:calc(var(--safe-right) + 4px);width:clamp(150px,42vw,190px);height:clamp(146px,29vh,198px)}.battle-combatant-slot--opponent.battle-combatant-slot--boss{top:calc(var(--safe-top) + 114px);width:clamp(188px,62vw,255px);height:clamp(180px,37vh,264px);left:62%}.battle-combatant-slot--player{bottom:calc(var(--safe-bottom) + 214px);left:calc(var(--safe-left) + clamp(24px, 12vw, 56px));width:clamp(114px,35vw,150px);height:clamp(112px,25vh,152px)}.battle-combatant-sprite-dom--player{width:clamp(106px,34vw,140px)}.battle-combatant-sprite-dom--opponent{width:clamp(134px,40vw,178px)}.battle-combatant-sprite-dom--boss{width:clamp(176px,58vw,242px)}.joystick-pad{width:96px;height:96px}.joystick-thumb{width:38px;height:38px}.run-toggle{min-width:68px;min-height:30px;font-size:.78rem}}@media (width<=380px){:root{--map-nav-icon-size:40px;--map-storage-size:80px}.map-trainer-name{font-size:.57rem}.map-trainer-chip{--profile-card-width:min(69vw, 224px);--profile-card-height:44px;--profile-level-size:33px;--profile-right-art-size:18px;--profile-mascot-size:51px;--profile-inner-top:6px;--profile-inner-right:calc(var(--profile-right-art-size) + 9px);--profile-inner-bottom:6px;--profile-inner-left:calc(var(--profile-level-size) + 17px);min-width:188px;max-width:min(calc(100vw - var(--safe-left) - var(--safe-right) - (var(--map-edge) * 2)), 224px);padding:4px calc(var(--profile-right-art-size) + 11px) 4px 5px;gap:7px}.map-profile-mascot-peek{left:calc(var(--profile-level-size) + 5px);top:calc(var(--profile-mascot-size) * -.9)}.map-xp-track{height:5px}.map-nav-label{max-width:58px;font-size:.58rem}.map-nav-cluster{gap:4px}.nearby-panel{bottom:calc(var(--safe-bottom) + 94px)}.player-avatar-3d{width:126px;height:188px;transform:translate(-50%,-72%)}.player-character-stage{width:126px;height:162px}.player-character-sprite{height:154px}.player-avatar-2d,.player-sprite-stage{width:88px;height:88px}.player-sprite-frame{transform:scale(1.24)}}@media (height<=640px){.joystick-panel{bottom:calc(var(--safe-bottom) + 130px);gap:7px}.joystick-pad{width:96px;height:96px}.joystick-thumb{width:38px;height:38px}.run-toggle{min-width:68px;min-height:30px;font-size:.78rem}.nearby-panel{bottom:calc(var(--safe-bottom) + 100px)}.battle-health-panel--player{bottom:calc(var(--safe-bottom) + 108px)}.battle-controls{min-height:calc(var(--safe-bottom) + 110px);padding-bottom:calc(var(--safe-bottom) + 14px)}.battle-dodge{bottom:calc(var(--safe-bottom) + 18px)}.battle-combatant-slot--opponent{top:calc(var(--safe-top) + 104px)}.battle-combatant-slot--opponent.battle-combatant-slot--boss{top:calc(var(--safe-top) + 98px)}.battle-combatant-slot--player{bottom:calc(var(--safe-bottom) + 172px)}}.player-marker{background:0 0;border:0}.profile-bg-3d{z-index:0;border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.profile-grid-floor{transform-origin:bottom;opacity:.6;background-image:linear-gradient(#6366f10b 1px,#0000 1px),linear-gradient(90deg,#6366f10b 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0;transform:perspective(500px)rotateX(28deg)translateY(30%)scaleY(1.6)}.profile-orb{filter:blur(70px);opacity:.11;border-radius:50%;position:absolute}.profile-orb-1{width:220px;height:220px;animation:9s ease-in-out infinite profile-orb-drift1;top:-80px;right:-60px}.profile-orb-2{width:160px;height:160px;animation:11s ease-in-out infinite profile-orb-drift2;bottom:0;left:-50px}.profile-orb-3{opacity:.08;width:130px;height:130px;animation:14s ease-in-out infinite profile-orb-drift3;top:45%;right:15%}.profile-orb-4{opacity:.07;width:100px;height:100px;animation:7s ease-in-out infinite reverse profile-orb-drift1;top:20%;left:25%}@keyframes profile-orb-drift1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-18px,26px)scale(1.08)}66%{transform:translate(14px,-14px)scale(.93)}}@keyframes profile-orb-drift2{0%,to{transform:translate(0)scale(1)}50%{transform:translate(22px,-18px)scale(1.12)}}@keyframes profile-orb-drift3{0%,to{transform:translate(0)}25%{transform:translate(12px,-22px)}75%{transform:translate(-10px,14px)}}.profile-stars{background-image:radial-gradient(1px 1px at 8% 15%,#ffffff8c 0%,#0000 100%),radial-gradient(1px 1px at 22% 72%,#fff6 0%,#0000 100%),radial-gradient(1.5px 1.5px at 38% 28%,#ffffff80 0%,#0000 100%),radial-gradient(1px 1px at 55% 88%,#ffffff59 0%,#0000 100%),radial-gradient(1px 1px at 67% 42%,#ffffff73 0%,#0000 100%),radial-gradient(1.5px 1.5px at 78% 18%,#ffffff8c 0%,#0000 100%),radial-gradient(1px 1px at 88% 65%,#ffffff61 0%,#0000 100%),radial-gradient(1px 1px at 14% 55%,#ffffff6b 0%,#0000 100%),radial-gradient(1px 1px at 46% 62%,#ffffff4d 0%,#0000 100%),radial-gradient(1.5px 1.5px at 92% 38%,#ffffff7a 0%,#0000 100%),radial-gradient(1px 1px at 30% 92%,#ffffff59 0%,#0000 100%),radial-gradient(1px 1px at 73% 78%,#fff6 0%,#0000 100%);animation:5s ease-in-out infinite profile-stars-twinkle;position:absolute;inset:0}@keyframes profile-stars-twinkle{0%,to{opacity:.7}50%{opacity:1}}.profile-vignette{background:radial-gradient(at 50% 30%,#0000 30%,#02040e8c 100%);position:absolute;inset:0}.profile-online-dot{background:#22c55e;border-radius:50%;flex-shrink:0;width:9px;height:9px;animation:2.2s ease-in-out infinite online-pulse;box-shadow:0 0 #22c55e88}.profile-trainer-panel{flex-direction:column;gap:12px;padding:16px 18px 22px;display:flex}.profile-xp-card{min-width:0}.profile-xp-row{color:#64748b;letter-spacing:.07em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;margin-bottom:7px;font-size:.72rem;font-weight:850;display:flex}.profile-xp-row strong{color:#a8b4c7;text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.74rem;font-weight:900;overflow:hidden}.profile-xp-track{width:100%;height:7px;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--team-color), transparent 78%);background:#ffffff12;border-radius:999px;overflow:hidden}.profile-xp-fill{border-radius:inherit;background:linear-gradient(90deg, color-mix(in srgb, var(--team-color), transparent 15%), var(--team-color), #fff);height:100%;box-shadow:0 0 14px color-mix(in srgb, var(--team-color), transparent 30%);transition:width .6s}.profile-wallet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.profile-wallet-card{border:1px solid color-mix(in srgb, var(--wallet-color), transparent 72%);background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--wallet-color), transparent 74%), transparent 44%), linear-gradient(145deg, #ffffff0f, #ffffff05), #0f172a8f;border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:12px;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffff14,0 10px 24px #0206173d}.profile-wallet-card.is-coins{--wallet-color:#f59e0b}.profile-wallet-card.is-stardust{--wallet-color:#a855f7}.profile-wallet-icon{flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.profile-wallet-card.is-stardust .profile-wallet-icon{color:#fef3c7;background:radial-gradient(circle at 30% 30%,#d8b4fe,#9333ea 62%,#581c87);border:2px solid #d8b4feb8;border-radius:50%;box-shadow:0 0 13px #a855f76b}.profile-wallet-copy{min-width:0}.profile-wallet-copy span{color:color-mix(in srgb, var(--wallet-color), white 32%);letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.62rem;font-weight:950;line-height:1;display:block;overflow:hidden}.profile-wallet-copy strong{color:#fff;text-overflow:ellipsis;text-shadow:0 0 12px color-mix(in srgb, var(--wallet-color), transparent 62%);white-space:nowrap;margin-top:4px;font-size:clamp(1rem,4.3vw,1.28rem);font-weight:950;line-height:1;display:block;overflow:hidden}.profile-stats-card{border:1px solid color-mix(in srgb, var(--team-color), transparent 76%);background:radial-gradient(circle at 95% 0%, color-mix(in srgb, var(--team-color), transparent 82%), transparent 42%), linear-gradient(145deg, #ffffff0b, #ffffff03), #0f172a8a;border-radius:18px;padding:13px;box-shadow:inset 0 1px #ffffff12,0 14px 34px #02061738}.profile-stats-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px;display:flex}.profile-stats-head h3{color:#9aa8bc;letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:950}.profile-rank-button{border:1px solid color-mix(in srgb, var(--team-color), white 14%);background:linear-gradient(135deg, var(--team-color), color-mix(in srgb, var(--team-color), #111827 30%));color:#fff;cursor:pointer;min-width:0;min-height:34px;font:inherit;box-shadow:0 8px 18px color-mix(in srgb, var(--team-color), transparent 72%);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 12px;font-size:.72rem;font-weight:950;line-height:1;display:inline-flex}.profile-rank-button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.profile-stat-cell{border:1px solid color-mix(in srgb, var(--stat-color), transparent 80%);background:linear-gradient(145deg, color-mix(in srgb, var(--stat-color), transparent 92%), #ffffff04), #0206173d;border-radius:13px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:54px;padding:8px;display:grid}.profile-stat-cell:last-child{grid-column:1/-1}.profile-stat-icon{background:color-mix(in srgb, var(--stat-color), transparent 82%);width:28px;height:28px;color:color-mix(in srgb, var(--stat-color), white 25%);border-radius:10px;place-items:center;display:grid}.profile-stat-cell div{min-width:0}.profile-stat-cell div>span{color:#63738b;letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.62rem;font-weight:950;line-height:1;display:block;overflow:hidden}.profile-stat-cell strong{color:#fff;text-overflow:ellipsis;text-shadow:0 0 14px color-mix(in srgb, var(--team-color), transparent 72%);white-space:nowrap;margin-top:5px;font-size:clamp(1.06rem,4.7vw,1.32rem);font-weight:950;line-height:1;display:block;overflow:hidden}@media (width<=380px){.profile-trainer-panel{gap:10px;padding:14px 12px 18px}.profile-xp-row{font-size:.66rem}.profile-xp-row strong{font-size:.68rem}.profile-wallet-grid{gap:8px}.profile-wallet-card{border-radius:14px;gap:8px;padding:10px 9px}.profile-wallet-icon{width:32px;height:32px}.profile-wallet-copy span{letter-spacing:.035em;font-size:.56rem}.profile-wallet-copy strong{font-size:clamp(.92rem,4.8vw,1.1rem)}.profile-stats-card{border-radius:16px;padding:11px}.profile-stats-head{gap:8px;margin-bottom:9px}.profile-stats-head h3{font-size:.64rem}.profile-rank-button{min-height:32px;padding-inline:9px;font-size:.66rem}.profile-stat-grid{gap:7px}.profile-stat-cell{grid-template-columns:24px minmax(0,1fr);gap:7px;min-height:48px;padding:7px}.profile-stat-icon{border-radius:8px;width:24px;height:24px}.profile-stat-cell div>span{font-size:.56rem}}.profile-volume-slider::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#fff;border:2px solid #fff9;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #00000080}input[type=range]::-webkit-slider-thumb{appearance:none;cursor:pointer;background:#fff;border:2px solid #fff9;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #00000080}input[type=range]::-moz-range-thumb{cursor:pointer;background:#fff;border:2px solid #fff9;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #00000080}.profile-signout-button{color:#fff;cursor:pointer;letter-spacing:0;background:linear-gradient(135deg,#ef4444f2,#be123ce6);border:1px solid #f8717173;border-radius:14px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;font-size:.92rem;font-weight:900;display:flex;box-shadow:0 12px 28px #7f1d1d61,inset 0 1px #ffffff2e}.profile-signout-button:hover{background:linear-gradient(135deg,#f87171fa,#dc2626f5);border-color:#fecaca9e}.profile-signout-icon{color:#fff;background:#ffffff29;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;box-shadow:inset 0 1px #fff3}@keyframes online-pulse{0%{box-shadow:0 0 #22c55e88}60%{box-shadow:0 0 0 5px #22c55e00}to{box-shadow:0 0 #22c55e00}}.player-range-ring{will-change:auto}.player-range-pulse{display:none}.player-range-ring-fill{border-color:color-mix(in srgb, var(--range-color), transparent 42%);background:radial-gradient(circle, color-mix(in srgb, var(--range-color), transparent 90%) 0 58%, transparent 72%);opacity:.42}.player-range-ring-edge{border-color:color-mix(in srgb, var(--range-color), transparent 55%);opacity:.28}.player-marker-ring{--team-color:#6366f1;background:radial-gradient(circle, #fffffff2 0 16%, transparent 18%), radial-gradient(circle, color-mix(in srgb, var(--team-color), white 22%) 0 36%, transparent 38%), radial-gradient(circle, #020617cc 0 58%, transparent 60%);border:2px solid color-mix(in srgb, var(--team-color), white 20%);width:48px;height:48px;box-shadow:0 0 18px var(--team-color), inset 0 0 16px #ffffff3d;border-radius:50%;position:relative}.player-marker-ring:before,.player-marker-ring:after{content:"";border-radius:inherit;border:2px solid var(--team-color);animation:2.2s infinite avatar-ring-pulse;position:absolute;inset:-4px}.player-marker-ring:after{animation-delay:1.1s}.player-marker-core{border-radius:inherit;background:#f8fafc;position:absolute;inset:17px;box-shadow:0 0 10px #fffc}.player-avatar-3d{--team-color:#22d3ee;--team-glow:#a5f3fc;--lean:0deg;--yaw:0deg;--heading:0deg;--vertical-scale:1;--stride-lift:0px;z-index:640;pointer-events:none;filter:drop-shadow(0 16px 24px #0206179e);flex-direction:column;align-items:center;width:164px;height:232px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-74%)}.player-character-stage{perspective:700px;pointer-events:none;justify-content:center;align-items:flex-end;width:164px;height:204px;display:flex;position:relative}.player-character-stage:before{content:"";z-index:0;background:linear-gradient(180deg, color-mix(in srgb, var(--team-color), transparent 76%), transparent 68%);filter:blur(13px);opacity:.85;border-radius:46% 46% 34% 34%;position:absolute;inset:10px 30px 8px}.player-character-shadow{filter:blur(7px);background:#02061775;border-radius:50%;width:72px;height:22px;position:absolute;bottom:8px}.player-character-ring{border:3px solid var(--team-color);width:94px;height:34px;box-shadow:0 0 18px var(--team-color), inset 0 0 12px color-mix(in srgb, var(--team-color), transparent 45%);border-radius:50%;animation:2.8s linear infinite character-ring-spin;position:absolute;bottom:10px}.player-direction-cue{z-index:1;width:92px;height:92px;transform:rotate(var(--heading));opacity:0;border-radius:50%;margin-left:-46px;transition:opacity .16s;position:absolute;bottom:-22px;left:50%}.player-direction-cue:before{content:"";border-top:3px solid var(--team-glow);border-right:3px solid var(--team-glow);width:13px;height:13px;filter:drop-shadow(0 0 8px var(--team-color));position:absolute;top:0;left:50%;transform:translate(-50%)rotate(-45deg)}.player-avatar-3d.is-moving .player-direction-cue{opacity:.95}.player-character-ring:before,.player-character-ring:after{content:"";border-radius:inherit;border-top:2px solid var(--team-glow);opacity:.8;position:absolute;inset:5px 18px}.player-character-ring:after{opacity:.45;inset:10px 30px}.player-character-sprite{z-index:2;width:auto;max-width:none;height:196px;transform:translateY(calc(2px + var(--stride-lift))) rotateY(var(--yaw)) rotateZ(var(--lean)) scaleY(var(--vertical-scale));transform-origin:50% 92%;filter:drop-shadow(0 12px 14px #0206178f) drop-shadow(0 0 10px color-mix(in srgb, var(--team-color), transparent 55%));will-change:transform;pointer-events:none;animation:2.4s ease-in-out infinite trainer-idle;position:relative}.player-avatar-3d.is-moving .player-character-sprite{animation:.34s ease-in-out infinite trainer-walk}.player-avatar-3d.is-running .player-character-sprite{animation-duration:.22s}.player-avatar-3d.is-north .player-character-sprite{filter:drop-shadow(0 12px 14px #0206178f) drop-shadow(0 0 12px color-mix(in srgb, var(--team-color), transparent 45%)) brightness(.92)}.player-avatar-3d.is-south .player-character-sprite{filter:drop-shadow(0 14px 16px #02061794) drop-shadow(0 0 14px color-mix(in srgb, var(--team-color), transparent 48%)) brightness(1.08)}.player-avatar-id{pointer-events:none;background:0 0;justify-content:center;align-items:center;margin-top:-24px;padding:4px 12px;display:flex}.player-avatar-id img{border:1px solid color-mix(in srgb, var(--team-color), white 35%);object-fit:cover;border-radius:50%;width:30px;height:30px}.player-avatar-id span{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:800;overflow:hidden}.player-avatar-id strong{color:#fff;text-transform:uppercase;letter-spacing:1px;text-shadow:0 0 10px var(--team-color), 0 0 20px #000c;font-size:.75rem;font-weight:900}@keyframes avatar-ring-pulse{0%{opacity:.75;transform:scale(.76)}to{opacity:0;transform:scale(1.9)}}@keyframes trainer-idle{0%,to{transform:translateY(calc(2px + var(--stride-lift))) rotateY(var(--yaw)) rotateZ(var(--lean)) scaleY(var(--vertical-scale))}50%{transform:translateY(calc(-4px + var(--stride-lift))) rotateY(var(--yaw)) rotateZ(var(--lean)) scaleY(var(--vertical-scale))}}@keyframes trainer-walk{0%,to{transform:translateY(calc(2px + var(--stride-lift))) rotateY(var(--yaw)) rotateZ(calc(var(--lean) - 1.5deg)) scaleX(1) scaleY(var(--vertical-scale))}50%{transform:translateY(calc(-8px + var(--stride-lift))) rotateY(var(--yaw)) rotateZ(calc(var(--lean) + 1.5deg)) scaleX(.985) scaleY(var(--vertical-scale))}}@keyframes character-ring-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width<=640px){.player-avatar-3d{width:142px;height:210px;transform:translate(-50%,-73%)}.player-character-stage{width:142px;height:180px}.player-character-sprite{height:172px}.player-character-ring{width:82px;height:29px}.player-direction-cue{width:82px;height:82px;margin-left:-41px;bottom:-22px}.player-avatar-id{grid-template-columns:26px minmax(0,1fr) auto;gap:6px;min-width:116px}.player-avatar-id img{width:26px;height:26px}}.player-avatar-2d{--team-color:#22d3ee;--team-glow:#a5f3fc;--sprite-image:url(/sprites/trainer-3d-full.png);--sprite-cols-total:14;--sprite-rows:4;--sprite-row:0;--sprite-duration:1s;z-index:640;pointer-events:none;filter:drop-shadow(0 12px 18px #0206179e);flex-direction:column;align-items:center;width:110px;height:110px;display:flex;position:absolute;top:0;left:0;transform:translate(-50%,-93%)}.trainer-select-screen{--trainer-panel:#080f22d6;--trainer-line:#7dd3fc38;--trainer-electric:#7dd3fc;--trainer-violet:#a78bfa;background:linear-gradient(#03081638,#030816d1),url(/ui/trainer-select-stage-bg-v2.png) 50%/cover no-repeat,linear-gradient(135deg,#123a42 0%,#182447 48%,#341936 100%);justify-content:center;align-items:center;padding:22px;overflow:hidden}.trainer-select-bg{pointer-events:none;background:radial-gradient(circle at 50% 40%,#7dd3fc2e,#0000 22%),radial-gradient(circle at 50% 88%,#a78bfa1f,#0000 30%),linear-gradient(90deg,#ffffff0b 1px,#0000 1px) 0 0/36px 36px,linear-gradient(#ffffff09 1px,#0000 1px) 0 0/36px 36px,radial-gradient(circle at 50% 18%,#7dd3fc2e,#0000 32%);position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000000e6,#0000 86%);mask-image:linear-gradient(#000000e6,#0000 86%)}.trainer-select-shell{isolation:isolate;border:1px solid var(--trainer-line);background:linear-gradient(180deg, #ffffff0f, transparent 24%), linear-gradient(145deg, #0c1326e6, #141630c7), var(--trainer-panel);-webkit-backdrop-filter:blur(22px)saturate(1.18);backdrop-filter:blur(22px)saturate(1.18);border-radius:22px;width:min(820px,100%);padding:30px;position:relative;box-shadow:0 28px 84px #00000085,inset 0 1px #ffffff24}.trainer-select-shell:before,.trainer-select-shell:after{content:"";pointer-events:none;position:absolute}.trainer-select-shell:before{z-index:0;border:1px solid #ffffff0f;border-radius:16px;inset:10px}.trainer-select-shell:after{z-index:0;border-radius:inherit;background:radial-gradient(circle at 50% 8%,#7dd3fc2e,#0000 26%),radial-gradient(circle at 20% 100%,#60a5fa1f,#0000 28%),radial-gradient(circle at 82% 100%,#fb71851a,#0000 28%);inset:0}.trainer-select-shell>*{z-index:1;position:relative}.trainer-select-header{text-align:center;margin-bottom:22px}.trainer-select-emblem{background:radial-gradient(circle at 50% 34%,#fff3,#0000 24%),linear-gradient(145deg,#60a5fa38,#0f172ac7);border:1px solid #7dd3fc4d;border-radius:16px;place-items:center;width:52px;height:52px;margin:0 auto 12px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff29,0 16px 32px #02061757,0 0 26px #60a5fa2e}.trainer-select-emblem:before{content:"";background:linear-gradient(#ef4444 0 47%,#111827 47% 53%,#f8fafc 53% 100%);border:2px solid #dbeafe;border-radius:50%;width:28px;height:28px;position:absolute}.trainer-select-emblem-core{z-index:1;background:#f8fafc;border:2px solid #111827;border-radius:50%;width:10px;height:10px;position:relative}.trainer-select-kicker{color:#bfdbfe;letter-spacing:0;text-transform:uppercase;background:#60a5fa1f;border:1px solid #7dd3fc3d;border-radius:999px;align-items:center;min-height:26px;padding:5px 11px;font-family:"Press Start 2P",cursive;font-size:.56rem;font-weight:700;line-height:1;display:inline-flex}.trainer-select-header h2{color:#f8fafc;letter-spacing:0;text-shadow:0 8px 28px #0206178a;margin:14px 0 0;font-size:clamp(1.6rem,4vw,2.15rem);font-weight:950;line-height:1.08}.trainer-select-header p{color:#e2e8f0c7;margin:9px 0 0;font-size:.92rem;font-weight:700}.trainer-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.trainer-choice{isolation:isolate;border:1px solid color-mix(in srgb, var(--trainer-accent), transparent 68%);background:linear-gradient(180deg, color-mix(in srgb, var(--trainer-accent), transparent 82%), transparent 40%), linear-gradient(145deg, #fff1, transparent 55%), #ffffff0d;color:#fff;cursor:pointer;border-radius:18px;place-items:center;gap:10px;min-height:266px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff1f,0 18px 42px #00000047}.trainer-choice:before{content:"";z-index:0;background-image:var(--trainer-card-art);opacity:.62;mix-blend-mode:screen;pointer-events:none;filter:saturate(1.08) drop-shadow(0 16px 22px color-mix(in srgb, var(--trainer-accent), transparent 74%));background-position:50%;background-repeat:no-repeat;background-size:contain;transition:opacity .2s,transform .2s,filter .2s;position:absolute;inset:8px 10px 18px;transform:translateY(1px)scale(1.04)}.trainer-choice:after{content:"";z-index:0;background:radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--trainer-accent), transparent 78%), transparent 44%), linear-gradient(145deg, color-mix(in srgb, var(--trainer-accent), transparent 88%), transparent 58%), linear-gradient(180deg, #ffffff0e, transparent 28%);pointer-events:none;position:absolute;inset:0}.trainer-choice.is-selected{border-color:color-mix(in srgb, var(--trainer-accent), white 25%);box-shadow:0 0 0 2px color-mix(in srgb, var(--trainer-accent), transparent 42%), 0 22px 52px color-mix(in srgb, var(--trainer-accent), transparent 72%), inset 0 1px 0 #ffffff29}.trainer-choice.is-selected:before{opacity:.78;filter:saturate(1.22) drop-shadow(0 20px 28px color-mix(in srgb, var(--trainer-accent), transparent 64%));transform:translateY(0)scale(1.07)}.trainer-choice-stage{z-index:1;place-items:end center;width:176px;height:174px;display:grid;position:relative}.trainer-choice-shadow{filter:blur(5px);background:#00000061;border-radius:50%;width:92px;height:20px;position:absolute;bottom:18px}.trainer-choice-sprite{z-index:1;background-image:var(--trainer-sheet);background-repeat:no-repeat;background-size:calc(var(--trainer-cols,14) * 100%) calc(var(--trainer-rows,4) * 100%);image-rendering:auto;transform-origin:50% 92%;filter:drop-shadow(0 14px 16px #00000073);background-position:46.1539% 0;width:64px;height:64px;margin-bottom:20px;animation:.58s steps(8,end) infinite trainer-select-preview;position:relative;transform:scale(2.25)}.trainer-choice-sprite.is-directional{width:var(--trainer-frame-width,184px);height:var(--trainer-frame-height,384px);background-size:calc(var(--trainer-cols,6) * 100%) calc(var(--trainer-rows,6) * 100%);transform:translateX(-50%) scale(var(--trainer-preview-scale,.38)) scaleX(var(--trainer-preview-scale-x,1)) scaleY(var(--trainer-preview-scale-y,1));transform-origin:50% 96%;background-position:0 0;margin-bottom:0;animation:.5s linear infinite trainer-directional-preview-x,3s linear infinite trainer-directional-preview-y;position:absolute;bottom:10px;left:50%}.trainer-choice-label{z-index:1;border:1px solid color-mix(in srgb, var(--trainer-accent), transparent 58%);letter-spacing:0;text-transform:uppercase;min-height:28px;color:color-mix(in srgb, var(--trainer-accent), white 48%);background:#02061770;border-radius:999px;justify-content:center;align-items:center;padding:0 14px;font-family:"Press Start 2P",cursive;font-size:.62rem;font-weight:900;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff14}.trainer-select-continue{letter-spacing:0;background:linear-gradient(#fff3,#0000 34%),linear-gradient(135deg,#8b5cf6,#7c3aed 48%,#6d28d9);border:1px solid #ffffff38;border-radius:999px;width:min(320px,100%);min-height:56px;margin:24px auto 0;font-size:1rem;display:block;box-shadow:0 14px 36px #7c3aed57,inset 0 2px #fff3}@keyframes trainer-select-preview{0%{background-position-x:46.1538%}to{background-position-x:107.692%}}@keyframes trainer-directional-preview-x{0%,16.66%{background-position-x:0%}16.67%,33.32%{background-position-x:20%}33.33%,49.99%{background-position-x:40%}50%,66.65%{background-position-x:60%}66.66%,83.32%{background-position-x:80%}83.33%,to{background-position-x:100%}}@keyframes trainer-directional-preview-y{0%,16.66%{background-position-y:0%}16.67%,33.32%{background-position-y:20%}33.33%,49.99%{background-position-y:40%}50%,66.65%{background-position-y:60%}66.66%,83.32%{background-position-y:80%}83.33%,to{background-position-y:100%}}.trainer-avatar-preview{width:var(--trainer-avatar-stage-width,42px);height:var(--trainer-avatar-stage-height,44px);isolation:isolate;flex-shrink:0;place-items:end center;display:inline-grid;position:relative;overflow:hidden}.trainer-avatar-preview__shadow{width:var(--trainer-avatar-shadow-width,28px);height:var(--trainer-avatar-shadow-height,7px);filter:blur(4px);background:#02061794;border-radius:50%;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.trainer-avatar-preview__sprite{left:50%;bottom:var(--trainer-avatar-bottom,4px);z-index:1;width:var(--trainer-avatar-frame-width,284px);height:var(--trainer-avatar-frame-height,384px);background-image:var(--trainer-avatar-sheet);background-repeat:no-repeat;background-size:calc(var(--trainer-avatar-cols,6) * 100%) calc(var(--trainer-avatar-rows,6) * 100%);image-rendering:auto;transform:translateX(-50%) scale(var(--trainer-avatar-scale,.11));transform-origin:50% 96%;filter:drop-shadow(0 9px 10px #02061780);background-position:0 0;position:absolute}.trainer-avatar-preview.is-animated .trainer-avatar-preview__sprite{animation:.375s linear infinite trainer-directional-preview-x,2.25s linear infinite trainer-directional-preview-y}.profile-trainer-avatar-wrap{flex-shrink:0;place-items:center;width:102px;height:104px;margin-block:-17px -12px;display:grid;position:relative}.profile-trainer-avatar-wrap:before{content:"";border:1px solid color-mix(in srgb, var(--team-color), transparent 54%);background:radial-gradient(circle at 50% 12%, color-mix(in srgb, var(--team-color), transparent 70%), transparent 58%), #02061761;border-radius:22px;position:absolute;inset:15px 12px 10px;box-shadow:inset 0 1px #ffffff1c,0 12px 26px #02061752}.profile-trainer-avatar-level{z-index:2;border:1px solid color-mix(in srgb, var(--team-color), white 18%);background:linear-gradient(135deg, color-mix(in srgb, var(--team-color), #020617 20%), #111827);color:#fff;min-width:35px;min-height:22px;box-shadow:0 8px 20px color-mix(in srgb, var(--team-color), transparent 72%);border-radius:999px;place-items:center;padding-inline:7px;font-size:.68rem;font-weight:950;line-height:1;display:inline-grid;position:absolute;bottom:8px;right:2px}.profile-trainer-email{color:#cbd5e1;background:#0f172a85;border:1px solid #94a3b838;border-radius:999px;align-items:center;gap:6px;max-width:min(100%,245px);min-height:23px;margin-top:7px;padding:3px 8px;font-size:.68rem;font-weight:760;line-height:1;display:inline-flex}.profile-trainer-email span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=640px){.trainer-select-shell{border-radius:18px;padding:18px}.trainer-select-shell:before{border-radius:13px;inset:8px}.trainer-select-emblem{width:46px;height:46px;margin-bottom:10px}.trainer-select-emblem:before{width:24px;height:24px}.trainer-select-kicker{min-height:24px;padding:5px 9px;font-size:.5rem}.trainer-select-header{margin-bottom:18px}.trainer-select-header h2{margin-top:12px;font-size:1.46rem}.trainer-select-header p{font-size:.84rem}.trainer-choice-grid{gap:12px}.trainer-choice{border-radius:16px;min-height:228px}.trainer-choice-stage{width:136px;height:146px}.trainer-choice-sprite{transform:scale(1.75)}.trainer-choice-sprite.is-directional{transform:translateX(-50%) scale(var(--trainer-preview-scale-mobile,.34)) scaleX(var(--trainer-preview-scale-x,1)) scaleY(var(--trainer-preview-scale-y,1));bottom:10px}.trainer-choice-label{min-height:26px;padding-inline:12px;font-size:.56rem}.trainer-select-continue{min-height:52px;margin-top:20px;font-size:.92rem}.profile-trainer-avatar-wrap{width:86px;height:92px;margin-block:-13px -10px}.profile-trainer-avatar-wrap .trainer-avatar-preview--profile{--trainer-avatar-stage-width:84px;--trainer-avatar-stage-height:90px;--trainer-avatar-scale:.2}.profile-trainer-avatar-level{min-width:31px;min-height:20px;padding-inline:6px;font-size:.62rem;bottom:7px;right:0}.profile-trainer-email{max-width:210px}}.player-sprite-stage{pointer-events:none;justify-content:center;align-items:flex-end;width:110px;height:110px;display:flex;position:relative}.player-sprite-shadow,.player-sprite-ring,.player-sprite-heading,.player-sprite-stage:before{display:none!important}.player-sprite-heading:before{content:"";border-top:3px solid var(--team-glow);border-right:3px solid var(--team-glow);width:13px;height:13px;filter:drop-shadow(0 0 8px var(--team-color));position:absolute;top:0;left:50%;transform:translate(-50%)rotate(-45deg)}.player-avatar-2d.is-up .player-sprite-heading{transform:rotate(0)}.player-avatar-2d.is-right .player-sprite-heading{transform:rotate(90deg)}.player-avatar-2d.is-down .player-sprite-heading{transform:rotate(180deg)}.player-avatar-2d.is-left .player-sprite-heading{transform:rotate(270deg)}.player-avatar-2d.is-moving .player-sprite-heading{opacity:.95}.player-sprite-frame{z-index:2;background-image:var(--sprite-image);background-repeat:no-repeat;background-size:calc(var(--sprite-cols-total,12) * 100%) calc(var(--sprite-rows,4) * 100%);background-position-y:var(--sprite-row-pos,0%);background-position-x:var(--sprite-start-pos,0%);image-rendering:auto;transform-origin:50% 92%;width:64px;height:64px;filter:drop-shadow(0 8px 8px #02061780) drop-shadow(0 0 6px color-mix(in srgb, var(--team-color), transparent 55%));margin-bottom:13px;position:relative;transform:scale(1.55)}.player-avatar-2d.is-moving .player-sprite-frame{animation:trainer-sprite-play var(--sprite-duration) steps(var(--sprite-frames,8), end) infinite}.player-avatar-2d.is-directional .player-sprite-frame{width:var(--sprite-frame-width,184px);height:var(--sprite-frame-height,384px);background-size:calc(var(--sprite-cols-total,6) * 100%) calc(var(--sprite-rows,6) * 100%);background-position-x:var(--sprite-frame-x,0%);background-position-y:var(--sprite-frame-y,0%);transform:scale(var(--sprite-render-scale,.38)) scaleX(var(--sprite-render-scale-x,1)) scaleY(var(--sprite-render-scale-y,1));transform-origin:50% 96%;contain:paint;will-change:background-position, transform;margin-bottom:-6px;animation:none}.player-avatar-2d.is-directional.is-moving .player-sprite-frame{animation:none}.player-avatar-2d.is-directional .player-sprite-frame-stack{z-index:2;pointer-events:none;position:absolute;inset:0}.player-avatar-2d.is-directional .player-sprite-frame-layer{opacity:.001;visibility:visible;transform:translateX(-50%) translateZ(0) scale(var(--sprite-render-scale,.32)) scaleX(var(--sprite-render-scale-x,1)) scaleY(var(--sprite-render-scale-y,1));will-change:opacity, background-position;transition:none}.player-avatar-2d.is-directional .player-sprite-frame-layer.is-active{opacity:1}.player-avatar-2d.is-boy-avatar.is-directional .player-sprite-stage,.player-avatar-2d.is-girl-avatar.is-directional .player-sprite-stage{width:168px;height:168px;display:block;position:relative}.player-avatar-2d.is-boy-avatar.is-directional .player-sprite-frame,.player-avatar-2d.is-girl-avatar.is-directional .player-sprite-frame{transform:translateX(-50%) translateZ(0) scale(var(--sprite-render-scale,.32)) scaleX(var(--sprite-render-scale-x,1)) scaleY(var(--sprite-render-scale-y,1));transform-origin:50% 96%;margin-bottom:0;position:absolute;bottom:10px;left:50%}.player-avatar-2d .player-avatar-id{z-index:3;margin-bottom:-20px}@keyframes trainer-sprite-play{0%{background-position-x:var(--sprite-start-pos,0%)}to{background-position-x:var(--sprite-end-pos,100%)}}@media (width<=640px){.player-avatar-2d{width:96px;height:96px;transform:translate(-50%,-92%)}.player-sprite-stage{width:96px;height:96px}.player-sprite-frame{margin-bottom:11px;transform:scale(1.35)}.player-avatar-2d.is-directional .player-sprite-frame{transform:scale(var(--sprite-render-scale-mobile,.34)) scaleX(var(--sprite-render-scale-x,1)) scaleY(var(--sprite-render-scale-y,1));margin-bottom:-4px}.player-avatar-2d.is-boy-avatar.is-directional .player-sprite-stage,.player-avatar-2d.is-girl-avatar.is-directional .player-sprite-stage{width:130px;height:142px}.player-avatar-2d.is-boy-avatar.is-directional .player-sprite-frame,.player-avatar-2d.is-girl-avatar.is-directional .player-sprite-frame{transform:translateX(-50%) translateZ(0) scale(var(--sprite-render-scale-mobile,.28)) scaleX(var(--sprite-render-scale-x,1)) scaleY(var(--sprite-render-scale-y,1));margin-bottom:0;bottom:10px}.player-sprite-ring{width:54px;height:18px}.player-sprite-heading{width:72px;height:72px;margin-left:-36px;bottom:-20px}}.overlay-container{z-index:2000;background:#0a0a1af2;flex-direction:column;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.overlay-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding:20px;display:flex}.overlay-content{flex:1;padding:20px;overflow-y:auto}.wild-pokemon-marker,.pokestop-marker,.gym-marker,.tower-marker{background:0 0;border:0}.wild-pokemon-pin,.pokestop-pin,.gym-pin,.tower-pin{all:unset;cursor:pointer;touch-action:manipulation;width:100%;height:100%;transform:scale(var(--map-marker-scale,1));transform-origin:50% 70%;display:block;position:relative}.wild-pokemon-halo{border:2px solid color-mix(in srgb, var(--rarity-color), white 26%);background:radial-gradient(circle, color-mix(in srgb, var(--rarity-color), transparent 82%) 0 42%, transparent 64%);width:64px;height:64px;box-shadow:0 0 18px color-mix(in srgb, var(--rarity-color), transparent 20%);border-radius:50%;animation:2.4s ease-in-out infinite map-pokemon-halo;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}.wild-pokemon-sprite{z-index:2;object-fit:contain;width:68px;height:56px;image-rendering:pixelated;filter:drop-shadow(0 8px 8px #020617b8);animation:1.9s ease-in-out infinite map-pokemon-bounce;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.wild-pokemon-shadow{filter:blur(3px);background:#02061785;border-radius:50%;width:42px;height:12px;animation:1.9s ease-in-out infinite map-pokemon-shadow;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.pokestop-pin{--pokestop-color:#38bdf8;--pokestop-glow:#38bdf89e;--pokestop-size:72px;filter:drop-shadow(0 12px 16px #02061799)}.pokestop-marker--simple,.pokestop-marker--compact{z-index:420!important}.pokestop-pin--simple,.pokestop-pin--compact{filter:none}.pokestop-simple-dot{border:2px solid color-mix(in srgb, var(--pokestop-color), white 30%);background:radial-gradient(circle at 36% 28%, #fffffff5 0 16%, transparent 18%), radial-gradient(circle, var(--pokestop-color) 0 58%, color-mix(in srgb, var(--pokestop-color), black 22%) 100%);box-shadow:0 0 0 2px #0206178a, 0 0 12px color-mix(in srgb, var(--pokestop-glow), transparent 22%);border-radius:50%;position:absolute;inset:4px}.pokestop-pin--simple.pokestop-lured .pokestop-simple-dot{background:radial-gradient(circle at 36% 28%,#fffffff5 0 16%,#0000 18%),radial-gradient(circle,#ec4899 0 58%,#9d174d 100%);border-color:#fbcfe8eb;box-shadow:0 0 0 2px #0206178a,0 0 16px #ec4899b8}.pokestop-compact-orb{border:2px solid color-mix(in srgb, var(--pokestop-color), white 28%);background:radial-gradient(circle at 35% 28%, #fffffff0 0 14%, transparent 16%), radial-gradient(circle, var(--pokestop-color) 0 54%, color-mix(in srgb, var(--pokestop-color), black 24%) 100%);width:32px;height:32px;box-shadow:0 8px 12px #02061780, 0 0 14px color-mix(in srgb, var(--pokestop-glow), transparent 26%);border-radius:50%;position:absolute;top:9px;left:50%;transform:translate(-50%)}.pokestop-compact-stem{background:linear-gradient(180deg, color-mix(in srgb, var(--pokestop-color), white 14%), color-mix(in srgb, var(--pokestop-color), black 34%));border-radius:999px;width:9px;height:18px;position:absolute;bottom:4px;left:50%;transform:translate(-50%);box-shadow:0 5px 8px #0206176b}.pokestop-pin--compact.pokestop-lured .pokestop-compact-orb{background:radial-gradient(circle at 35% 28%,#fffffff0 0 14%,#0000 16%),radial-gradient(circle,#ec4899 0 54%,#9d174d 100%);border-color:#fbcfe8eb;box-shadow:0 8px 12px #02061780,0 0 18px #ec4899b8}.pokestop-pin--compact.pokestop-lured .pokestop-compact-stem{background:linear-gradient(#f9a8d4,#be185d)}.pokestop-pin .pokestop-model{position:absolute;bottom:0;left:50%;transform:translate(-50%)}.pokestop-model{--pokestop-model-color:var(--pokestop-color,#38bdf8);--pokestop-model-glow:var(--pokestop-glow,#38bdf89e);--pokestop-deep:color-mix(in srgb, var(--pokestop-model-color), #0f3f9a 52%);--pokestop-bright:color-mix(in srgb, var(--pokestop-model-color), white 28%);--pokestop-shade:color-mix(in srgb, var(--pokestop-model-color), black 30%);width:var(--pokestop-size,72px);height:calc(var(--pokestop-size,72px) * 1.3);color:var(--pokestop-model-color);transform-style:preserve-3d;display:block;position:relative}.pokestop-model:after{content:"";z-index:-1;filter:blur(5px);background:#0206177a;border-radius:50%;width:58%;height:9%;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.pokestop-model__scene,.pokestop-model__svg{width:100%;height:100%;display:block}.pokestop-model__scene{transform-origin:50% 56%;transform-style:preserve-3d;perspective:700px;animation:3.8s ease-in-out infinite pokestop-model-float}.pokestop-model__svg{filter:drop-shadow(0 12px 18px #02061780);overflow:visible}.pokestop-model__field{fill:color-mix(in srgb, var(--pokestop-model-color), transparent 86%);stroke:color-mix(in srgb, var(--pokestop-bright), transparent 20%);stroke-width:2px;transform-box:view-box;transform-origin:100px 106px;animation:2.6s ease-in-out infinite pokestop-field-pulse}.pokestop-model__rotor{transform-box:view-box;transform-origin:100px 106px;transform-style:preserve-3d;backface-visibility:visible;will-change:transform}.pokestop-model.is-spinning .pokestop-model__rotor{animation:1.5s cubic-bezier(.16,.82,.26,1) both pokestop-rotor-spin}.pokestop-model.is-cooldown{--pokestop-model-color:#64748b;--pokestop-model-glow:#64748b61}.pokestop-model__outer-arc{fill:none;stroke:var(--pokestop-deep);stroke-width:13px;stroke-linecap:round;filter:drop-shadow(0 0 8px var(--pokestop-model-glow))}.pokestop-model__outer-arc--top{stroke:color-mix(in srgb, var(--pokestop-deep), white 8%)}.pokestop-model__outer-arc--bottom{stroke:color-mix(in srgb, var(--pokestop-deep), black 8%)}.pokestop-model__disc-rim{fill:color-mix(in srgb, var(--pokestop-model-color), transparent 88%);stroke:color-mix(in srgb, var(--pokestop-bright), transparent 8%);stroke-width:3px}.pokestop-model__disc-half{stroke:color-mix(in srgb, var(--pokestop-bright), white 18%);stroke-width:1.8px;filter:drop-shadow(0 4px 8px color-mix(in srgb, var(--pokestop-model-glow), transparent 18%))}.pokestop-model__disc-half--top{fill:var(--pokestop-bright)}.pokestop-model__disc-half--bottom{fill:color-mix(in srgb, var(--pokestop-model-color), #0369a1 20%)}.pokestop-model__inner-cup{fill:#020617eb;stroke:color-mix(in srgb, var(--pokestop-bright), transparent 28%);stroke-width:3px}.pokestop-model__core{fill:color-mix(in srgb, var(--pokestop-bright), white 22%);stroke:#ffffffa8;stroke-width:1.5px;filter:drop-shadow(0 0 12px color-mix(in srgb, var(--pokestop-model-color), white 28%))}.pokestop-model__shine{fill:none;stroke:#ffffff85;stroke-width:7px;stroke-linecap:round;opacity:.82}.pokestop-model__post{fill:var(--pokestop-shade);stroke:color-mix(in srgb, var(--pokestop-bright), transparent 18%);stroke-width:2px}.pokestop-model__base-shadow{fill:#02061752}.pokestop-model__base-left{fill:color-mix(in srgb, var(--pokestop-bright), white 14%)}.pokestop-model__base-right{fill:color-mix(in srgb, var(--pokestop-model-color), black 10%)}.pokestop-model__base-top{fill:color-mix(in srgb, var(--pokestop-bright), white 24%);opacity:.72}.pokestop-modal-overlay{z-index:9999;padding:calc(16px + var(--safe-top)) calc(14px + var(--safe-right)) calc(16px + var(--safe-bottom)) calc(14px + var(--safe-left));background:radial-gradient(circle at 50% 42%, color-mix(in srgb, var(--pokestop-rarity-color), transparent 82%) 0 24%, transparent 58%), #000000b8;-webkit-backdrop-filter:blur(8px);place-items:center;display:grid;position:absolute;inset:0}.pokestop-modal-panel{width:min(92vw,420px);max-height:calc(100dvh - 32px - var(--safe-top) - var(--safe-bottom));flex-direction:column;align-items:center;display:flex;overflow:hidden}.pokestop-modal-header{text-align:center;background:radial-gradient(circle at 50% 0%, color-mix(in srgb, var(--pokestop-rarity-color), transparent 76%), transparent 58%), color-mix(in srgb, var(--pokestop-rarity-color), transparent 90%);border-bottom:1px solid color-mix(in srgb, var(--pokestop-rarity-color), transparent 58%);width:100%;padding:clamp(16px,4vw,21px)}.pokestop-modal-rarity{border:1px solid color-mix(in srgb, var(--pokestop-rarity-color), white 10%);background:color-mix(in srgb, var(--pokestop-rarity-color), transparent 84%);min-height:22px;color:var(--pokestop-rarity-color);text-transform:uppercase;border-radius:999px;align-items:center;margin-bottom:8px;padding:2px 9px;font-size:.65rem;font-weight:900;display:inline-flex}.pokestop-modal-header h2{color:var(--pokestop-rarity-color);text-shadow:0 0 10px var(--pokestop-rarity-glow);overflow-wrap:anywhere;margin:0;font-size:clamp(1.1rem,4.8vw,1.55rem);line-height:1.15}.pokestop-modal-header p{color:#94a3b8;max-width:32ch;margin:6px auto 0;font-size:.8rem;font-weight:600;line-height:1.35}.pokestop-spin-stage{align-content:center;justify-items:center;width:100%;min-height:clamp(230px,54dvh,330px);padding:clamp(22px,6vw,38px) 20px clamp(16px,5vw,28px);display:grid;position:relative;overflow:hidden}.pokestop-spin-stage:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--pokestop-rarity-color), transparent 86%) 0 45%, transparent 70%), conic-gradient(from 20deg, transparent 0 18%, color-mix(in srgb, var(--pokestop-rarity-color), transparent 72%) 22% 34%, transparent 38% 68%, color-mix(in srgb, var(--pokestop-rarity-color), transparent 78%) 72% 86%, transparent 90%);filter:blur(.2px);opacity:.78;pointer-events:none;border-radius:50%;position:absolute;inset:12% 12% 8%}.pokestop-spin-button{all:unset;--pokestop-size:clamp(150px, 44vw, 214px);z-index:1;width:var(--pokestop-size);height:calc(var(--pokestop-size) * 1.3);cursor:pointer;touch-action:manipulation;transform-style:preserve-3d;place-items:center;display:grid;position:relative}.pokestop-spin-button .pokestop-model{--pokestop-size:clamp(150px, 44vw, 214px)}.pokestop-spin-button:not(:disabled):active .pokestop-model{transform:translateY(2px)scale(.98)}.pokestop-spin-button:disabled{cursor:default}.pokestop-spin-button.is-spinning:after{content:"";background:conic-gradient(from 90deg, transparent 0 24%, color-mix(in srgb, var(--pokestop-rarity-color), white 22%) 34%, transparent 48% 100%);box-shadow:0 0 28px var(--pokestop-rarity-glow);-webkit-mask-composite:xor;pointer-events:none;border-radius:50%;padding:2px;animation:.65s linear infinite pokestop-spin-burst;position:absolute;inset:11%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0)}.pokestop-spin-status{z-index:1;min-height:24px;color:var(--pokestop-rarity-color);text-align:center;text-transform:uppercase;text-shadow:0 0 10px var(--pokestop-rarity-glow);pointer-events:none;margin-top:8px;font-size:.78rem;font-weight:900;animation:1.5s ease-in-out infinite pokestop-prompt-pulse;position:relative}.pokestop-spin-status.is-cooldown{color:#f87171;text-shadow:none;animation:none}.pokestop-spin-status.is-cooldown div{font-size:.95rem}.pokestop-spin-status.is-cooldown span{color:#64748b;margin-top:1px;font-size:.7rem;font-weight:700;display:block}.pokestop-rewards-panel{background:#0000004d;border-top:1px solid #ffffff1a;width:100%;max-height:34dvh;padding:20px;overflow-y:auto}.pokestop-rewards-panel h3{color:#f8fafc;text-align:center;margin:0 0 15px}.pokestop-reward-grid{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.pokestop-reward{text-align:center;min-width:58px}.pokestop-reward-icon{background:radial-gradient(circle,#fff3 0%,#ffffff0d 100%);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;margin:0 auto;display:flex;box-shadow:0 0 15px #ffffff1a}.pokestop-reward-icon span{color:#fcd34d;font-size:.9rem;font-weight:900}.pokestop-reward-icon img{filter:drop-shadow(0 4px 6px #00000080);width:40px;height:40px}.pokestop-reward-count{color:#f8fafc;margin-top:5px;font-weight:800}.pokestop-modal-actions{flex-direction:column;gap:12px;width:100%;padding:20px;display:flex}.pokestop-modal-actions .btn-secondary{width:100%}@media (width<=420px){.pokestop-modal-panel{width:min(94vw,380px)}.pokestop-spin-stage{min-height:auto;padding:18px 14px 14px}.pokestop-spin-button,.pokestop-spin-button .pokestop-model{--pokestop-size:clamp(132px, 46vw, 170px)}.pokestop-reward-grid{gap:14px}}@media (height<=680px){.pokestop-modal-overlay{align-items:start;overflow-y:auto}.pokestop-modal-panel{max-height:none}.pokestop-modal-header{padding-block:13px}.pokestop-modal-header p{display:none}.pokestop-spin-stage{min-height:auto;padding-block:14px 10px}.pokestop-spin-button,.pokestop-spin-button .pokestop-model{--pokestop-size:clamp(120px, 32dvh, 170px)}.pokestop-rewards-panel{max-height:none}.pokestop-modal-actions{padding:14px}}@media (prefers-reduced-motion:reduce){.pokestop-model__field,.pokestop-model__scene,.pokestop-model__rotor,.gym-model-3d__stack,.gym-pulse,.gym-pulse:before,.gym-pulse:after,.tower-model-3d__stack,.tower-pulse,.tower-pulse:before,.tower-pulse:after,.pokestop-spin-button.is-spinning:after,.pokestop-spin-status{animation:none}}.battle-location-overlay{--battle-location-bg:url(/battle_bg.png);z-index:1800;overscroll-behavior:contain;padding:calc(var(--safe-top) + 18px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 18px) calc(var(--safe-left) + 16px);isolation:isolate;-webkit-overflow-scrolling:touch;background:#020617;justify-content:center;align-items:flex-start;display:flex;position:absolute;inset:0;overflow:hidden auto}.battle-location-overlay--tower{--battle-location-bg:url(/tower_room_bg.png)}.battle-location-overlay:before,.battle-location-overlay:after{content:"";pointer-events:none;position:fixed;inset:0}.battle-location-overlay:before{z-index:0;background-image:var(--battle-location-bg);background-position:50%;background-repeat:no-repeat;background-size:cover;transform:scale(1.02)}.battle-location-overlay:after{z-index:1;background:radial-gradient(circle at 50% 38%,#0f172a14,#0206176b 62%,#020617b3),linear-gradient(#02061733,#02061785)}.battle-location-panel{z-index:2;border-radius:14px;flex:none;width:min(390px,100%);margin-block:auto;padding:22px;position:relative;overflow:visible}.battle-location-panel--tower{background:radial-gradient(circle at 14% 10%,#ffffff14,#0000 26%),radial-gradient(circle at 8% 18%,#ff001333,#0000 34%),linear-gradient(145deg,#12192ef0,#121022f5);border-color:#f472b657;box-shadow:0 0 34px #ff001326,0 24px 70px #0000007a}.battle-location-panel--tower .battle-location-head{grid-template-columns:74px minmax(0,1fr);gap:16px}.battle-location-panel--gym{background:radial-gradient(circle at 13% 11%,#ffffff1a,#0000 28%),radial-gradient(circle at 12% 18%,#ff00132e,#0000 36%),linear-gradient(145deg,#10182cf0,#0c101ef5);border-color:#ffffff38;box-shadow:0 0 34px #ff00131f,0 24px 70px #0000007a}.battle-location-panel--gym .battle-location-head{grid-template-columns:72px minmax(0,1fr);gap:16px}.battle-location-close{color:#fff;cursor:pointer;background:#0f172a9e;border:1px solid #ffffff24;border-radius:8px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:12px;right:12px}.battle-location-head{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:14px;padding-right:34px;display:grid}.battle-location-emblem{color:#e0f2fe;background:radial-gradient(circle at 34% 24%,#ffffff38,#0000 30%),linear-gradient(145deg,#38bdf847,#0f172ac7);border:1px solid #ffffff2e;border-radius:12px;place-items:center;width:58px;height:58px;display:grid}.battle-location-panel--tower .battle-location-emblem{color:#fff;background:radial-gradient(circle at 34% 24%,#ffffff8a,#0000 28%),radial-gradient(circle at 50% 56%,#ff001338,#0000 58%),linear-gradient(145deg,#ffffff24,#3c11239e);border-color:#ffffff42;width:70px;height:70px;box-shadow:inset 0 1px #fff3,0 14px 26px #02061752,0 0 18px #ff001338}.battle-location-panel--gym .battle-location-emblem{color:#fff;background:radial-gradient(circle at 34% 24%,#ffffff7a,#0000 30%),radial-gradient(circle at 50% 45%,#ff001338,#0000 58%),linear-gradient(145deg,#ffffff1f,#1e293bb3);border-color:#ffffff3d;width:68px;height:68px;overflow:visible;box-shadow:inset 0 1px #ffffff2e,0 14px 26px #02061752}.battle-location-emblem--gym-model{overflow:visible}.battle-location-gym-model{width:68px;height:68px;display:block;position:relative}.battle-location-gym-model .gym-model-3d{--gym-model-size:62px;--gym-model-offset-x:-2px;top:50%;bottom:auto;transform:translate(-50%,-50%)}.battle-location-gym-model .gym-model-3d__stack{animation:3s ease-in-out infinite gym-lobby-model-float}.battle-location-gym-model .gym-model-3d__depth--5,.battle-location-gym-model .gym-model-3d__depth--4,.battle-location-gym-model .gym-model-3d__depth--3{display:none}.battle-location-gym-model .gym-model-3d__depth--2{opacity:.18;transform:translate3d(4px,4px,-2px)}.battle-location-gym-model .gym-model-3d__depth--1{opacity:.26;transform:translate3d(2px,2px,-1px)}.battle-location-gym-model .gym-model-3d__gloss{opacity:.24}.battle-location-gym-model .gym-model-3d__ground{opacity:.18;bottom:6%}.battle-location-emblem--tower-model{overflow:visible}.battle-location-tower-model{width:76px;height:76px;display:block;position:relative}.battle-location-tower-model .tower-model-3d{--tower-model-size:76px;top:-1px}.battle-location-tower-model .tower-model-3d__stack{animation:3s ease-in-out infinite tower-lobby-model-float}.battle-location-tower-model .tower-model-3d__depth{filter:none;opacity:.2}.battle-location-tower-model .tower-model-3d__depth--5,.battle-location-tower-model .tower-model-3d__depth--4,.battle-location-tower-model .tower-model-3d__depth--3{display:none}.battle-location-tower-model .tower-model-3d__depth--2{opacity:.18;transform:translate3d(4px,4px,-2px)}.battle-location-tower-model .tower-model-3d__depth--1{opacity:.26;transform:translate3d(2px,2px,-1px)}.battle-location-tower-model .tower-model-3d__gloss{opacity:.28}.battle-location-tower-model .tower-model-3d__ground{opacity:.22;bottom:9%}.battle-location-head span{color:#93c5fd;text-transform:uppercase;font-size:.68rem;font-weight:900;line-height:1}.battle-location-panel--tower .battle-location-head span,.battle-location-panel--gym .battle-location-head span{color:#ffb4bd}.battle-location-head h2{color:#fff;margin:5px 0 0;font-size:1.38rem;font-weight:900;line-height:1}.battle-location-actions{gap:10px;margin-top:20px;display:grid}.battle-location-inline-alert{color:#fecaca;background:#7f1d1d47;border:1px solid #f8717159;border-radius:12px;margin-top:12px;padding:10px 12px;font-size:.78rem;font-weight:850;line-height:1.35}.battle-location-inline-alert--info{color:#fde68a;background:#78350f3d;border-color:#fbbf2459}.battle-location-inline-alert__timer{color:#fef3c7;letter-spacing:.04em;text-transform:uppercase;margin-top:3px;font-size:.7rem;font-weight:900}.battle-location-team-preview{background:#0f172a6b;border:1px solid #22c55e3d;border-radius:12px;gap:8px;margin:-2px 0 12px;padding:10px;display:grid}.battle-location-team-preview__head{color:#bbf7d0;text-transform:uppercase;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:900;display:flex}.battle-location-team-preview__head strong{color:#86efac;background:#22c55e29;border-radius:999px;place-items:center;min-width:34px;height:22px;padding:0 7px;display:grid}.battle-location-team-preview__meta{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.battle-location-team-preview__list{grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:7px;display:grid}.battle-location-team-preview__member{background:#02061757;border:1px solid #94a3b829;border-radius:10px;place-items:center;min-height:54px;display:grid;position:relative}.battle-location-team-preview__member img{object-fit:contain;width:34px;height:34px}.battle-location-team-preview__member span{color:#94a3b8;font-size:.58rem;font-weight:900;position:absolute;top:4px;left:5px}.battle-location-team-preview__member strong{color:#e2e8f0;font-size:.62rem;font-weight:900}.battle-location-team-preview__actions{flex-wrap:wrap;gap:7px;display:flex}.battle-location-team-preview__button{color:#bbf7d0;cursor:pointer;min-width:0;min-height:32px;font:inherit;text-transform:uppercase;background:#22c55e1f;border:1px solid #22c55e57;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:.7rem;font-weight:900;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.battle-location-team-preview__button:hover,.battle-location-team-preview__button:focus-visible{color:#f0fdf4;background:#22c55e2e;border-color:#86efac94;outline:none}.battle-location-team-preview__button--quiet{color:#cbd5e1;background:#0f172a9e;border-color:#94a3b83d}.battle-location-gym-card{--gym-team-color:#ef4444;border:1px solid color-mix(in srgb, var(--gym-team-color) 38%, #ffffff1f);background:radial-gradient(circle at 10% 8%, color-mix(in srgb, var(--gym-team-color) 18%, transparent), transparent 34%), linear-gradient(145deg, #0f172abd, #0206177a);border-radius:14px;gap:12px;margin-bottom:18px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f,0 16px 32px #0206173d}.battle-location-gym-card:before{content:"";pointer-events:none;background:linear-gradient(90deg, color-mix(in srgb, var(--gym-team-color) 28%, transparent), transparent 42%), radial-gradient(circle at 78% 12%, #ffffff14, transparent 26%);opacity:.72;position:absolute;inset:0}.battle-location-gym-card>*{z-index:1;position:relative}.battle-location-gym-card__top{grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.battle-location-gym-avatar{border:1px solid color-mix(in srgb, var(--gym-team-color) 72%, #ffffff2e);background:radial-gradient(circle, color-mix(in srgb, var(--gym-team-color) 24%, transparent), #0f172a61);width:62px;height:62px;box-shadow:inset 0 1px 0 #ffffff1a, 0 0 18px color-mix(in srgb, var(--gym-team-color) 34%, transparent);border-radius:999px;place-items:center;display:grid;overflow:hidden}.battle-location-gym-avatar img{object-fit:contain;image-rendering:auto;width:78%;height:78%}.battle-location-gym-card__identity{min-width:0}.battle-location-gym-card__name{color:#f8fafc;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.02rem,4.8vw,1.3rem);font-weight:950;line-height:1.05;overflow:hidden}.battle-location-gym-card__meta{color:#cbd5e1;flex-wrap:wrap;gap:4px 8px;margin-top:4px;font-size:.78rem;font-weight:850;display:flex}.battle-location-gym-card__meta span:first-child{color:#f8fafc}.battle-location-gym-card__count{color:#cbd5e1;background:#0206176b;border:1px solid #ffffff1a;border-radius:999px;justify-content:center;align-items:baseline;min-width:52px;padding:6px 9px;display:inline-flex;box-shadow:inset 0 1px #ffffff0f}.battle-location-gym-card__count strong{color:#f8fafc;font-size:1.05rem;font-weight:950}.battle-location-gym-card__count span{color:#94a3b8;margin-left:3px;font-size:.7rem;font-weight:900}.battle-location-defender-team{grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:7px;margin:-4px 0 14px;display:grid}.battle-location-defender-team--gym{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}.battle-location-defender-team__member{min-height:58px;color:inherit;font:inherit;text-align:center;background:#02061747;border:1px solid #94a3b82e;border-radius:10px;place-items:center;padding:6px;display:grid;position:relative}.battle-location-defender-team__member span{color:#94a3b8;font-size:.58rem;font-weight:950;position:absolute;top:5px;left:6px}.battle-location-defender-team__member img{object-fit:contain;width:34px;height:34px}.battle-location-defender-team__member strong{color:#e2e8f0;font-size:.62rem;font-weight:900}.battle-location-defender-team__label{gap:1px;width:100%;min-width:0;display:grid}.battle-location-defender-team__label small{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;font-weight:800;display:block;overflow:hidden}.battle-location-defender-team__member--empty{color:#64748b;background:#0f172a38;border-style:dashed}.battle-location-defender-team__member--empty svg{color:#64748b}.battle-location-defender-team__member--empty strong{color:#94a3b8}.battle-location-defender-team__member--add{cursor:pointer;border-color:color-mix(in srgb, var(--gym-team-color) 42%, #94a3b838);background:radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--gym-team-color) 15%, transparent), transparent 58%), #0f172a47;transition:border-color .16s cubic-bezier(.23,1,.32,1),transform .16s cubic-bezier(.23,1,.32,1),background .16s}.battle-location-defender-team__member--add:hover{border-color:color-mix(in srgb, var(--gym-team-color) 72%, #fff3);background:radial-gradient(circle at 50% 28%, color-mix(in srgb, var(--gym-team-color) 24%, transparent), transparent 58%), #0f172a61}.battle-location-defender-team__member--add:active{transform:scale(.97)}.battle-location-gym-card__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.battle-location-gym-owner{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:5px;min-width:0;font-size:.76rem;font-weight:850;display:inline-flex}.battle-location-gym-owner strong{color:#e2e8f0;text-overflow:ellipsis;white-space:nowrap;max-width:130px;font-weight:950;overflow:hidden}.battle-location-gym-owner em{background:color-mix(in srgb, var(--gym-team-color) 22%, #0f172a80);color:color-mix(in srgb, var(--gym-team-color) 72%, #fff);letter-spacing:.02em;border-radius:7px;padding:3px 7px;font-size:.62rem;font-style:normal;font-weight:950}.battle-location-gym-protection{color:#fbbf24;background:#fbbf2417;border:1px solid #fbbf242e;border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:.7rem;font-weight:900;display:inline-flex}@media (width<=380px){.battle-location-gym-card{padding:12px}.battle-location-gym-card__top{grid-template-columns:54px minmax(0,1fr) auto;gap:10px}.battle-location-gym-avatar{width:54px;height:54px}.battle-location-defender-team--gym{gap:6px}.battle-location-defender-team__member{min-height:54px;padding:5px}}.battle-location-action{color:#e2e8f0;cursor:pointer;text-align:left;background:#0f172a8f;border:1px solid #ffffff29;border-radius:10px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;min-height:50px;padding:0 14px;font-size:.88rem;font-weight:900;display:grid}.battle-location-action:disabled{color:#94a3b8;cursor:not-allowed;opacity:.72;box-shadow:none;background:#1e293b85;border-color:#94a3b829}.battle-location-action--primary{color:#fff;background:linear-gradient(135deg,#0ea5e957,#2563eb3d);border-color:#38bdf861}.battle-location-panel--tower .battle-location-action--primary{background:radial-gradient(circle at 12% 20%,#ffffff24,#0000 34%),linear-gradient(135deg,#db272780,#581c8752);border-color:#ff78827a;box-shadow:inset 0 1px #ffffff1f,0 12px 24px #02061738}.battle-location-panel--gym .battle-location-action--primary{background:radial-gradient(circle at 12% 20%,#ffffff24,#0000 34%),linear-gradient(135deg,#dc262670,#4755693d);border-color:#ff788270;box-shadow:inset 0 1px #ffffff1f,0 12px 24px #02061738}.battle-location-panel .battle-location-action:disabled,.battle-location-panel .battle-location-action--primary:disabled{color:#94a3b8;cursor:not-allowed;opacity:.72;box-shadow:none;background:#1e293b85;border-color:#94a3b829}@media (width<=520px),(height<=760px){.battle-location-overlay{padding:calc(var(--safe-top) + 10px) calc(var(--safe-right) + 10px) calc(var(--safe-bottom) + 12px) calc(var(--safe-left) + 10px)}.battle-location-panel{border-radius:12px;width:min(390px,100%);padding:16px}.battle-location-close{width:32px;height:32px;top:10px;right:10px}.battle-location-panel--tower .battle-location-head,.battle-location-panel--gym .battle-location-head{grid-template-columns:58px minmax(0,1fr);gap:12px;padding-right:34px}.battle-location-panel--tower .battle-location-emblem,.battle-location-panel--gym .battle-location-emblem{border-radius:11px;width:58px;height:58px}.battle-location-tower-model,.battle-location-gym-model{width:64px;height:64px}.battle-location-tower-model .tower-model-3d{--tower-model-size:64px}.battle-location-gym-model .gym-model-3d{--gym-model-size:56px}.battle-location-head span{font-size:.6rem;line-height:1.12}.battle-location-head h2{font-size:clamp(1.12rem,5vw,1.32rem);line-height:1.05}.battle-location-panel--tower .battle-location-defender-panel,.battle-location-panel--gym .battle-location-defender-panel{margin-top:14px!important}.battle-location-raid-summary{border-radius:14px!important;margin-bottom:14px!important;padding:12px!important}.battle-location-raid-summary__row{gap:12px!important;margin-bottom:12px!important}.battle-location-raid-summary__avatar{flex:0 0 58px;width:58px!important;height:58px!important}.battle-location-raid-summary__title{font-size:clamp(1rem,4.8vw,1.18rem)!important;line-height:1.05!important}.battle-location-raid-summary__hp{overflow-wrap:anywhere;margin-top:2px;font-size:clamp(.76rem,3.65vw,.9rem)!important;line-height:1.2!important}.battle-location-actions{gap:9px;margin-top:14px}.battle-location-team-preview{border-radius:11px;gap:7px;margin:-2px 0 10px;padding:9px}.battle-location-team-preview__list{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.battle-location-team-preview__member{border-radius:9px;min-height:50px}.battle-location-team-preview__member img{width:30px;height:30px}.battle-location-action{min-height:48px;padding-inline:12px;font-size:.82rem}.battle-location-raid-pass-row{margin-bottom:8px!important;padding:7px 12px!important}}@media (width<=380px),(width<=520px) and (height<=700px){.battle-location-overlay{padding:calc(var(--safe-top) + 8px) calc(var(--safe-right) + 8px) calc(var(--safe-bottom) + 10px) calc(var(--safe-left) + 8px)}.battle-location-panel{padding:14px}.battle-location-panel--tower .battle-location-head,.battle-location-panel--gym .battle-location-head{grid-template-columns:52px minmax(0,1fr);gap:10px}.battle-location-panel--tower .battle-location-emblem,.battle-location-panel--gym .battle-location-emblem{width:52px;height:52px}.battle-location-tower-model,.battle-location-gym-model{width:58px;height:58px}.battle-location-tower-model .tower-model-3d{--tower-model-size:58px}.battle-location-gym-model .gym-model-3d{--gym-model-size:52px}.battle-location-team-preview__list{grid-template-columns:repeat(3,minmax(0,1fr))}}.gym-pin{--gym-color:#ff0013;--gym-model-size:78px;--gym-model-offset-x:-3px;--gym-pulse-offset-x:0px}.gym-pulse,.gym-model-3d{position:absolute;transform:translate(-50%)}.gym-pulse{left:calc(50% + var(--gym-pulse-offset-x,0px));z-index:0;pointer-events:none;background:#ff00133d;border-radius:50%;width:28px;height:10px;bottom:8px;box-shadow:0 0 14px #ff001375}.gym-pulse:before,.gym-pulse:after{content:"";opacity:0;background:radial-gradient(#ff00132e 0 24%,#0000 68%);border:1.5px solid #ffffff8a;border-radius:50%;animation:2s ease-out infinite gym-pin-pulse;position:absolute;inset:-5px -12px;transform:scale(.5)}.gym-pulse:after{border-color:#ff00136b;animation-delay:.72s}.gym-pin .gym-model-3d{z-index:1;bottom:14px}.gym-pin .gym-model-3d__depth{filter:brightness(.66)saturate(1.05)}.gym-pin .gym-model-3d__depth--5,.gym-pin .gym-model-3d__depth--4{display:none}.gym-pin .gym-model-3d__depth--3{opacity:.16;transform:translate3d(3px,4px,-3px)}.gym-pin .gym-model-3d__depth--2{opacity:.2;transform:translate3d(2px,3px,-2px)}.gym-pin .gym-model-3d__depth--1{opacity:.24;transform:translate3d(1px,1px,-1px)}.gym-pin .gym-model-3d__ground{display:none}.gym-model-3d{left:calc(50% + var(--gym-model-offset-x,0px));width:var(--gym-model-size,88px);height:calc(var(--gym-model-size,88px) * 1.32);pointer-events:none;transform-style:preserve-3d;perspective:760px;display:block}.gym-model-3d__stack{transform-style:preserve-3d;transform-origin:50% 72%;isolation:isolate;animation:3.2s ease-in-out infinite gym-model-float;position:absolute;inset:0}.gym-model-3d__face,.gym-model-3d__depth{object-fit:contain;transform-origin:50% 72%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.gym-model-3d__depth{z-index:1;opacity:.54;filter:brightness(.45)saturate(1.2)}.gym-model-3d__depth--5{opacity:.3;transform:translate3d(8px,9px,-5px)}.gym-model-3d__depth--4{opacity:.36;transform:translate3d(6px,7px,-4px)}.gym-model-3d__depth--3{opacity:.42;transform:translate3d(5px,5px,-3px)}.gym-model-3d__depth--2{opacity:.48;transform:translate3d(3px,4px,-2px)}.gym-model-3d__depth--1{opacity:.54;transform:translate3d(2px,2px,-1px)}.gym-model-3d__face{z-index:5}.gym-model-3d__gloss{z-index:3;filter:blur(1px);opacity:.36;pointer-events:none;background:linear-gradient(135deg,#ffffff6b,#fff0);border-radius:999px 999px 45% 45%;width:42%;height:18%;position:absolute;top:10%;left:22%;transform:rotate(-16deg)}.gym-model-3d__ground{z-index:-1;filter:blur(5px);background:#0206176b;border-radius:50%;width:56%;height:10%;position:absolute;bottom:5%;left:50%;transform:translate(-50%)}.tower-pin{--tower-color:#ff0013;--tower-model-size:94px}.tower-pulse,.tower-model-3d{position:absolute;left:50%;transform:translate(-50%)}.tower-pulse{z-index:0;pointer-events:none;background:#ff001347;border-radius:50%;width:26px;height:10px;bottom:8px;box-shadow:0 0 14px #ff001385}.tower-pulse:before,.tower-pulse:after{content:"";opacity:0;background:radial-gradient(#ff001333 0 24%,#0000 68%);border:1.5px solid #ffffff94;border-radius:50%;animation:2s ease-out infinite tower-pin-pulse;position:absolute;inset:-5px -12px;transform:scale(.5)}.tower-pulse:after{border-color:#ff001375;animation-delay:.72s}.tower-pin .tower-model-3d{z-index:1;bottom:1px}.tower-pin .tower-model-3d__depth{filter:brightness(.58)saturate(.95)}.tower-pin .tower-model-3d__depth--5,.tower-pin .tower-model-3d__depth--4,.tower-pin .tower-model-3d__depth--3,.tower-pin .tower-model-3d__depth--2{display:none}.tower-pin .tower-model-3d__depth--1{opacity:.18;transform:translate3d(1px,1px,-1px)}.tower-pin .tower-model-3d__ground{display:none}.tower-model-3d{width:var(--tower-model-size,94px);height:calc(var(--tower-model-size,94px) * 1.05);pointer-events:none;transform-style:preserve-3d;perspective:760px;display:block}.tower-model-3d__stack{transform-style:preserve-3d;transform-origin:50% 72%;isolation:isolate;animation:3.1s ease-in-out infinite tower-model-float;position:absolute;inset:0}.tower-model-3d__face,.tower-model-3d__depth{object-fit:contain;transform-origin:50% 72%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;display:block;position:absolute;inset:0}.tower-model-3d__depth{z-index:1;opacity:.82;filter:brightness(0)saturate()}.tower-model-3d__depth--5{opacity:.46;transform:translate3d(8px,9px,-5px)}.tower-model-3d__depth--4{opacity:.54;transform:translate3d(6px,7px,-4px)}.tower-model-3d__depth--3{opacity:.62;transform:translate3d(5px,5px,-3px)}.tower-model-3d__depth--2{opacity:.7;transform:translate3d(3px,4px,-2px)}.tower-model-3d__depth--1{opacity:.78;transform:translate3d(2px,2px,-1px)}.tower-model-3d__face{z-index:5}.tower-model-3d__gloss{z-index:3;filter:blur(1px);opacity:.44;pointer-events:none;background:linear-gradient(135deg,#ffffff75,#fff0);border-radius:999px 999px 45% 45%;width:35%;height:17%;position:absolute;top:12%;left:22%;transform:rotate(-19deg)}.tower-model-3d__ground{z-index:-1;filter:blur(5px);background:#0206177a;border-radius:50%;width:58%;height:12%;position:absolute;bottom:5%;left:51%;transform:translate(-50%)}@keyframes map-pokemon-bounce{0%,to{transform:translate(-50%,-50%)}50%{transform:translate(-50%,calc(-50% - 8px))}}@keyframes map-pokemon-halo{0%,to{opacity:.8;transform:translate(-50%,-50%)scale(.9)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}}@keyframes map-pokemon-shadow{0%,to{opacity:.52;transform:translate(-50%)scale(1)}50%{opacity:.34;transform:translate(-50%)scale(.76)}}@keyframes pokestop-field-pulse{0%,to{opacity:.48;transform:scale(.9)}50%{opacity:.95;transform:scale(1.06)}}@keyframes pokestop-model-float{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-3px)scale(1.012)}}@keyframes gym-model-float{0%,to{transform:translate(0,0)rotateY(-6deg)scale(1)}50%{transform:translateY(-4px)rotateY(-12deg)scale(1.015)}}@keyframes gym-lobby-model-float{0%,to{transform:translate(0,0)rotateY(-4deg)scale(1)}50%{transform:translateY(-2px)rotateY(-9deg)scale(1.02)}}@keyframes tower-model-float{0%,to{transform:translate(0,0)rotateX(0)rotateY(-7deg)scale(1)}50%{transform:translateY(-4px)rotateX(3deg)rotateY(-13deg)scale(1.015)}}@keyframes tower-lobby-model-float{0%,to{transform:translate(0,0)rotateY(-4deg)scale(1)}50%{transform:translateY(-2px)rotateY(-9deg)scale(1.025)}}@keyframes pokestop-rotor-spin{0%{transform:perspective(680px)rotateY(0)scale(1)}18%{transform:perspective(680px)rotateY(-22deg)scale(1.02)}46%{transform:perspective(680px)rotateY(190deg)scale(1.05)}74%{transform:perspective(680px)rotateY(382deg)scale(1.04)}to{transform:perspective(680px)rotateY(720deg)scale(1)}}@keyframes pokestop-spin-burst{0%{opacity:.92;transform:rotate(0)}to{opacity:.92;transform:rotate(360deg)}}@keyframes weather-rain-fall{0%{transform:translate(6%,-24%)skew(-12deg)}to{transform:translate(-10%,28%)skew(-12deg)}}@keyframes weather-rain-fall-soft{0%{transform:translate(4%,-18%)skew(-9deg)}to{transform:translate(-7%,24%)skew(-9deg)}}@keyframes weather-snow-fall{0%{transform:translate(-2%,-18%)}to{transform:translate(4%,24%)}}@keyframes weather-snow-fall-near{0%{transform:translate(3%,-20%)}to{transform:translate(-5%,26%)}}@keyframes weather-mist-drift{0%,to{transform:translate(-4%)scale(1)}50%{transform:translate(4%,1%)scale(1.04)}}@keyframes weather-gust-sweep{0%,to{opacity:.14;transform:translate(-10%)}45%,60%{opacity:.32;transform:translate(8%,-1%)}}@keyframes weather-storm-flash{0%,68%,to{opacity:0}70%{opacity:.34}72%{opacity:.06}74%{opacity:.22}78%{opacity:0}}@keyframes pokestop-prompt-pulse{0%,to{opacity:.68;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}@keyframes gym-pin-pulse{0%{opacity:.62;transform:scale(.45)}70%{opacity:0;transform:scale(1.42)}to{opacity:0;transform:scale(1.42)}}@keyframes tower-pin-pulse{0%{opacity:.64;transform:scale(.45)}70%{opacity:0;transform:scale(1.42)}to{opacity:0;transform:scale(1.42)}}.items-modal-shell{z-index:9999;-webkit-backdrop-filter:blur(16px);background:#0f172ac7;flex-direction:column;display:flex;position:absolute;inset:0}.items-header{padding:calc(var(--safe-top) + 20px) calc(var(--safe-right) + 24px) 20px calc(var(--safe-left) + 24px);background:linear-gradient(#02061799 0%,#02061700 100%);border-bottom:1px solid #94a3b826;justify-content:space-between;align-items:center;display:flex}.items-header h2{color:#f8fafc;text-transform:uppercase;letter-spacing:2.5px;text-shadow:0 2px 4px #0006;margin:0;font-size:1.4rem;font-weight:800}.items-close-button{color:#cbd5e1;cursor:pointer;background:#0f172ab8;border:1px solid #94a3b847;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;padding:0;transition:all .2s;display:grid}.items-close-button:active{background:#94a3b833;transform:scale(.9)}.items-grid-container{flex:1;padding:clamp(12px,4vw,20px);overflow-y:auto}.items-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));align-content:start;gap:12px;display:grid}.item-card{background:linear-gradient(145deg,#ffffff0a 0%,#ffffff03 100%);border:1px solid #ffffff0d;border-radius:12px;align-items:center;gap:16px;padding:14px 18px;transition:all .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.item-card>*{z-index:1}.item-card:before{content:"";opacity:0;z-index:0;pointer-events:none;background:linear-gradient(145deg,#38bdf826 0%,#0000 100%);transition:opacity .2s;position:absolute;inset:0}.item-card:hover:before,.item-card:active:before{opacity:1}.item-card-icon{object-fit:contain;filter:drop-shadow(0 4px 6px #0006);width:52px;height:52px}.item-card-info{flex:1}.item-card-name{color:#f8fafc;margin-bottom:2px;font-size:1.1rem;font-weight:800}.item-card-desc{color:#94a3b8;font-size:.8rem;line-height:1.3}.item-card-qty{color:#38bdf8;text-align:center;background:#02061766;border:1px solid #38bdf833;border-radius:20px;min-width:50px;padding:4px 12px;font-size:1.2rem;font-weight:900}@media (width<=640px){.items-grid{grid-template-columns:1fr;gap:10px}.item-card{gap:12px;padding:12px 14px}.item-card-icon{width:44px;height:44px}.item-card-name{font-size:1.05rem}.item-card-qty{min-width:44px;padding:4px 10px;font-size:1.1rem}}.item-card.item-card--active{background:linear-gradient(145deg,#1e1432b3,#0f0a1ee6);border-color:#a855f766;box-shadow:0 0 20px #a855f726}.item-card-actions{flex-direction:column;align-items:center;gap:8px;display:flex}.item-use-btn{color:#fff;cursor:pointer;text-transform:uppercase;background:linear-gradient(135deg,#a855f7,#6366f1);border:1px solid #fff3;border-radius:12px;align-items:center;gap:4px;padding:6px 12px;font-size:.75rem;font-weight:800;transition:all .2s;display:flex;box-shadow:0 4px 10px #a855f74d}.item-use-btn:active{transform:scale(.95)}.item-use-btn--active{box-shadow:none;cursor:default;opacity:.7;background:#ffffff1a}.item-discard-btn{color:#fecaca;cursor:pointer;letter-spacing:0;text-transform:uppercase;background:linear-gradient(#f871711f,#7f1d1d24),#0f172a75;border:1px solid #f8717147;border-radius:10px;justify-content:center;align-items:center;gap:4px;min-width:86px;min-height:30px;padding:5px 10px;font-size:.68rem;font-weight:900;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.item-discard-btn:active{transform:scale(.96)}.item-discard-panel{max-width:min(420px,100vw - 24px)}.item-discard-body{gap:14px;padding:14px;display:grid}.item-discard-preview{background:#ffffff0b;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:12px;padding:12px;display:grid}.item-discard-preview img{object-fit:contain;filter:drop-shadow(0 8px 12px #00000061);width:58px;height:58px}.item-discard-preview strong,.item-discard-preview span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.item-discard-preview strong{color:#f8fafc;font-size:1.05rem;font-weight:950}.item-discard-preview span{color:#94a3b8;margin-top:3px;font-size:.78rem;font-weight:800}.item-discard-stepper{grid-template-columns:42px minmax(0,1fr) 42px;gap:8px;display:grid}.item-discard-stepper button,.item-discard-stepper input,.item-discard-quick-row button,.item-discard-actions button{border-radius:10px;min-width:0;font-weight:900}.item-discard-stepper button,.item-discard-quick-row button{color:#e2e8f0;cursor:pointer;background:#ffffff0e;border:1px solid #94a3b82e}.item-discard-stepper button{place-items:center;height:42px;display:grid}.item-discard-stepper input{color:#f8fafc;text-align:center;font-variant-numeric:tabular-nums;background:#02061785;border:1px solid #38bdf83d;width:100%;height:42px;font-size:1.08rem}.item-discard-quick-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.item-discard-quick-row button{color:#bae6fd;min-height:34px}.item-discard-actions{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:10px;display:grid}.item-discard-actions button{cursor:pointer;border:1px solid #ffffff1a;min-height:42px}.item-discard-cancel{color:#cbd5e1;background:#ffffff0e}.item-discard-confirm{color:#fff7ed;background:linear-gradient(135deg,#ef4444,#f97316);box-shadow:0 10px 22px #ef444438}.item-discard-stepper button:disabled,.item-discard-quick-row button:disabled,.item-discard-actions button:disabled{cursor:not-allowed;opacity:.55}.item-target-overlay{z-index:1200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#020617ad;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;inset:0}.item-target-panel{background:#0f172af5;border:1px solid #38bdf82e;border-radius:16px;flex-direction:column;width:min(520px,100%);max-height:min(640px,100vh - 28px);display:flex;overflow:hidden;box-shadow:0 24px 70px #0000006b}.item-target-header{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;display:flex}.item-target-header span{color:#38bdf8;letter-spacing:0;text-transform:uppercase;font-size:.68rem;font-weight:900;display:block}.item-target-header h3{color:#f8fafc;margin:3px 0 2px;font-size:1.18rem;line-height:1.15}.item-target-header p{color:#94a3b8;margin:0;font-size:.78rem;line-height:1.35}.item-target-meta{align-items:center;gap:8px;margin-top:9px;display:inline-flex}.item-target-meta strong,.item-target-meta em{border-radius:999px;align-items:center;min-height:24px;padding:3px 9px;font-size:.7rem;font-style:normal;font-weight:900;line-height:1;display:inline-flex}.item-target-meta strong{color:#bae6fd;background:#0ea5e924;border:1px solid #38bdf847}.item-target-meta em{color:#bbf7d0;background:#22c55e1c;border:1px solid #22c55e38}.item-target-header button{color:#e2e8f0;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:10px;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.item-target-list{gap:10px;padding:14px;display:grid;overflow-y:auto}.item-target-card{appearance:none;color:#e2e8f0;width:100%;min-width:0;height:auto;min-height:86px;font:inherit;text-align:left;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff14;border-radius:12px;grid-template-columns:58px minmax(0,1fr) minmax(72px,auto);align-items:center;gap:12px;padding:12px;line-height:normal;transition:border-color .18s,background .18s,transform .18s,opacity .18s;display:grid;position:relative;overflow:hidden}.item-target-card:after{content:"";opacity:0;pointer-events:none;position:absolute;inset:-20%;transform:translate(-52%)rotate(18deg)}.item-target-card:disabled{cursor:default}.item-target-card.is-applying{opacity:.84;background:#0ea5e91f;border-color:#38bdf861}.item-target-card.is-heal-feedback{background:#16653438;border-color:#22c55e8a;animation:.9s both item-target-heal-pulse}.item-target-card.is-revive-feedback{background:#713f1242;border-color:#facc1594;animation:.9s both item-target-revive-pulse}.item-target-card.is-heal-feedback:after,.item-target-card.is-revive-feedback:after{opacity:1;animation:.82s both item-target-shimmer}.item-target-card.is-heal-feedback:after{background:linear-gradient(90deg,#0000,#86efac52,#0000)}.item-target-card.is-revive-feedback:after{background:linear-gradient(90deg,#0000,#fde04761,#0000)}.item-target-card img{object-fit:contain;filter:drop-shadow(0 5px 8px #00000061);flex:none;width:58px;min-width:58px;height:58px;min-height:58px;transition:transform .22s,filter .22s;display:block}.item-target-card.is-heal-feedback img,.item-target-card.is-revive-feedback img{filter:drop-shadow(0 8px 12px #22c55e52);transform:translateY(-2px)scale(1.08)}.item-target-card.is-revive-feedback img{filter:drop-shadow(0 8px 14px #facc155c)}.item-target-info{align-content:center;align-self:stretch;gap:5px;min-width:0;padding-block:2px;display:grid}.item-target-info span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-target-info strong{color:#f8fafc;text-overflow:clip;white-space:normal;word-break:break-word;font-size:1rem;line-height:1.18;display:block;overflow:visible}.item-target-info span{color:#94a3b8;font-size:.76rem;font-weight:700;line-height:1.2;display:block}.item-target-hp-track{background:#0f172adb;border-radius:999px;height:5px;overflow:hidden}.item-target-hp-track div{border-radius:inherit;background:linear-gradient(90deg,#22c55e,#38bdf8);height:100%;transition:width .35s}.item-target-card.is-heal-feedback .item-target-hp-track,.item-target-card.is-revive-feedback .item-target-hp-track{box-shadow:0 0 0 1px #22c55e38,0 0 16px #22c55e47}.item-target-card.is-revive-feedback .item-target-hp-track{box-shadow:0 0 0 1px #facc1538,0 0 16px #facc154d}.item-target-hp{color:#bae6fd;text-align:center;white-space:nowrap;background:#02061747;border:1px solid #38bdf82e;border-radius:999px;place-self:center end;min-width:68px;padding:5px 8px;font-size:.76rem;font-weight:900}.item-target-empty{text-align:center;background:#0f172a6b;border:1px dashed #94a3b83d;border-radius:14px;gap:5px;padding:18px;display:grid}.item-target-empty strong{color:#f8fafc;font-size:.95rem;font-weight:950}.item-target-empty span{color:#94a3b8;font-size:.76rem;font-weight:750;line-height:1.35}@keyframes item-target-heal-pulse{0%{transform:scale(1);box-shadow:0 0 #22c55e00}38%{transform:scale(1.018);box-shadow:0 0 24px #22c55e47}to{transform:scale(1);box-shadow:0 0 #22c55e00}}@keyframes item-target-revive-pulse{0%{transform:scale(1);box-shadow:0 0 #facc1500}35%{transform:scale(1.022);box-shadow:0 0 28px #facc1557}to{transform:scale(1);box-shadow:0 0 #facc1500}}@keyframes item-target-shimmer{0%{transform:translate(-62%)rotate(18deg)}to{transform:translate(62%)rotate(18deg)}}@media (width<=420px){.item-target-overlay{align-items:center;padding:10px}.item-target-panel{border-radius:14px;max-height:min(560px,100vh - 20px)}.item-target-card{grid-template-columns:50px minmax(0,1fr);gap:10px;min-height:82px;padding:11px}.item-target-card img{width:50px;min-width:50px;height:50px;min-height:50px}.item-target-hp{grid-column:2;justify-self:start;min-width:0}}.incense-spawn .wild-pokemon-pin{--rarity-color:#a855f7!important}.incense-swirl{pointer-events:none;border:2px dashed #a855f799;border-radius:50%;animation:6s linear infinite incense-swirl-spin;position:absolute;inset:-12px}.incense-swirl:before{content:"";border:2px dotted #ec489980;border-radius:50%;animation:4s linear infinite reverse incense-swirl-spin;position:absolute;inset:4px}@keyframes incense-swirl-spin{to{transform:rotate(360deg)}}.lure-spawn .wild-pokemon-pin{--rarity-color:#ec4899!important}.lure-swirl{pointer-events:none;background:radial-gradient(circle,#ec48994d 0%,#0000 70%);border-radius:50%;animation:2s ease-in-out infinite alternate lure-pulse;position:absolute;inset:-8px}@keyframes lure-pulse{0%{opacity:.6;transform:scale(.8)}to{opacity:1;transform:scale(1.2)}}.pokestop-lured{--pokestop-color:#ec4899!important;--pokestop-glow:#ec489999!important}.lure-petals{pointer-events:none;z-index:-1;filter:drop-shadow(0 0 8px #ec4899cc);background-image:radial-gradient(circle at 50% 10%,#ec4899 4px,#0000 5px),radial-gradient(circle at 90%,#f472b6 3px,#0000 4px),radial-gradient(circle at 50% 90%,#db2777 4px,#0000 5px),radial-gradient(circle at 10%,#ec4899 3px,#0000 4px);width:100px;height:100px;animation:4s linear infinite lure-petals-spin;position:absolute;top:10px;left:50%;transform:translate(-50%)}.pokestop-lure-timer{z-index:5;color:#fff;letter-spacing:0;text-align:center;font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(8px);pointer-events:none;background:#4c052abd;border:1px solid #ffffff6b;border-radius:999px;min-width:42px;padding:3px 7px;font-size:10px;font-weight:950;line-height:1;position:absolute;top:6px;left:50%;transform:translate(-50%);box-shadow:0 4px 10px #00000042,0 0 10px #ec489973}@keyframes lure-petals-spin{to{transform:translate(-50%)rotate(360deg)}}.pokestop-lure-badge{color:#fbcfe8;text-transform:uppercase;background:#ec489926;border:1px solid #ec48994d;border-radius:20px;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;font-size:.75rem;font-weight:800;display:flex}.pokestop-lure-badge strong{color:#fff;font-variant-numeric:tabular-nums;background:#ffffff2e;border-radius:999px;padding:2px 7px;font-size:.72rem}.btn-lure{color:#fff;letter-spacing:.5px;cursor:pointer;text-transform:uppercase;background:linear-gradient(135deg,#db2777,#9d174d);border:1px solid #fff3;border-top-color:#ffffff59;border-radius:30px;justify-content:center;align-items:center;gap:10px;width:100%;padding:14px 20px;font-size:1.05rem;font-weight:800;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;box-shadow:0 8px 25px #db277773,inset 0 2px #ffffff26}.btn-lure:active{transform:scale(.96);box-shadow:0 2px 10px #db277759}.pokestop-spin-button.is-lured:before{content:"";width:calc(var(--pokestop-size) * 1.3);height:calc(var(--pokestop-size) * 1.3);z-index:-1;pointer-events:none;background:radial-gradient(circle,#ec489980 0%,#ec489926 35%,#0000 70%);border-radius:50%;animation:2.5s ease-in-out infinite alternate lure-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.player-incense-pulse{pointer-events:none;border:2px solid #ec4899cc;border-radius:50%;width:60px;height:60px;animation:2s ease-out infinite incense-wave;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes incense-wave{0%{opacity:1;border-width:4px;width:20px;height:20px;box-shadow:0 0 10px #ec4899cc,inset 0 0 10px #ec4899cc}to{opacity:0;border-width:1px;width:120px;height:120px;box-shadow:0 0 30px #ec489900,inset 0 0 30px #ec489900}}.pokestop-modal-lure-petals-container{pointer-events:none;z-index:0;opacity:.7;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 15% 85%,#0000);mask-image:linear-gradient(#0000,#000 15% 85%,#0000)}.pokestop-modal-lure-petals{will-change:background-position;background-image:radial-gradient(circle at 10% 20%,#ec4899cc 0 1.5px,#0000 2.5px),radial-gradient(circle at 30% 60%,#db277799 0 1.2px,#0000 2px),radial-gradient(circle at 70% 30%,#f472b6b3 0 1.8px,#0000 2.8px),radial-gradient(circle at 90% 80%,#ec4899e6 0 1.5px,#0000 2.5px);background-size:150px 180px;animation:10s linear infinite pokestop-lure-fall;position:absolute;inset:-20%}.pokestop-modal-lure-petals--near{will-change:background-position;background-image:radial-gradient(circle at 20% 30%,#f472b6e6 0 2.5px,#0000 3.5px),radial-gradient(circle at 60% 15%,#ec4899b3 0 2px,#0000 3px),radial-gradient(circle at 85% 65%,#db2777cc 0 2.2px,#0000 3.2px);background-size:200px 220px;animation:7s linear infinite pokestop-lure-fall-near;position:absolute;inset:-20%}@keyframes pokestop-lure-fall{0%{background-position:0 0}to{background-position:150px 180px}}@keyframes pokestop-lure-fall-near{0%{background-position:0 0}to{background-position:-200px 220px}}.leaflet-div-icon-overflow{background:0 0!important;border:none!important;overflow:visible!important}.tower-boss-avatar-wrapper{z-index:10;pointer-events:none;filter:drop-shadow(0 0 10px #ff5050e6)drop-shadow(0 0 20px #ff000080);width:60px;height:60px;animation:3s ease-in-out infinite alternate bossFloat;position:absolute;top:4px;left:50%;transform:translate(-50%)}.tower-boss-avatar{object-fit:contain;image-rendering:auto;width:100%;height:100%}@keyframes bossFloat{0%{filter:drop-shadow(0 0 8px #ff5050b3);transform:translate(-50%)translateY(0)scale(1)}to{filter:drop-shadow(0 0 18px #ff5050);transform:translate(-50%)translateY(-6px)scale(1.08)}}.shop-panel{flex-direction:column;gap:14px;padding:20px;display:flex}.shop-header{justify-content:space-between;align-items:center;margin-bottom:2px;display:flex}.shop-header-title{align-items:center;gap:8px;display:flex}.shop-header-title span{color:#f1f5f9;font-size:15px;font-weight:800}.shop-coin-badge{background:#f59e0b1f;border:1px solid #f59e0b4d;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;transition:background .2s;display:flex}.shop-coin-badge .shop-coin-symbol{color:#fbbf24;font-size:14px;font-weight:900}.shop-coin-badge .shop-coin-amount{color:#fbbf24;font-size:14px;font-weight:800;transition:transform .26s cubic-bezier(.23,1,.32,1)}.shop-coin-badge .shop-coin-label{color:#94a3b8;margin-left:2px;font-size:11px}.shop-section-label{letter-spacing:.5px;text-transform:uppercase;color:#475569;align-items:center;gap:10px;margin-top:2px;font-size:11px;font-weight:800;display:flex}.shop-section-label:after{content:"";background:#ffffff0f;flex:1;height:1px}.shop-flash{text-align:center;border-radius:10px;padding:8px 16px;font-size:13px;font-weight:700;animation:.32s cubic-bezier(.23,1,.32,1) both shopFlashIn}.shop-flash--ok{color:#86efac;background:#22c55e1f;border:1px solid #22c55e4d}.shop-flash--err{color:#fca5a5;background:#ef44441f;border:1px solid #ef44444d}@keyframes shopFlashIn{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.shop-card-grid{grid-template-columns:repeat(auto-fit,minmax(168px,1fr));gap:10px;display:grid}.shop-redeem-card{background:linear-gradient(135deg,#facc151a,#0ea5e914),#0f172ab8;border:1px solid #facc1538;border-radius:14px;grid-template-columns:minmax(0,1fr) minmax(190px,1.2fr);align-items:center;gap:12px;padding:14px;display:grid;box-shadow:inset 0 1px #ffffff0f}.shop-redeem-copy{min-width:0}.shop-redeem-kicker{color:#fde68a;text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:6px;font-size:10px;font-weight:900;display:flex}.shop-redeem-title{color:#f8fafc;margin-top:4px;font-size:14px;font-weight:900}.shop-redeem-action{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.shop-redeem-input{color:#f8fafc;text-transform:uppercase;background:#0206178a;border:1px solid #ffffff1f;border-radius:10px;outline:none;width:100%;min-width:0;height:38px;padding:0 12px;font-size:13px;font-weight:900}.shop-redeem-input:focus{border-color:#facc1585;box-shadow:0 0 0 3px #facc151f}.shop-redeem-input::placeholder{color:#475569}.shop-redeem-btn{height:38px}.shop-redeem-inline-feedback{overflow-wrap:anywhere;border-radius:10px;grid-column:1/-1;padding:9px 11px;font-size:12px;font-weight:850;line-height:1.35}.shop-redeem-inline-feedback--ok{color:#86efac;background:#22c55e1a;border:1px solid #22c55e47}.shop-redeem-inline-feedback--err{color:#fca5a5;background:#ef44441a;border:1px solid #ef444442}.shop-redeem-receipt{background:linear-gradient(135deg,#22c55e1f,#0ea5e912),#0f172ac2;border:1px solid #22c55e47;border-radius:14px;grid-template-columns:34px minmax(0,1fr) 30px;align-items:start;gap:10px;padding:12px;display:grid;box-shadow:inset 0 1px #ffffff12,0 10px 26px #02061733}.shop-redeem-receipt-icon{color:#86efac;background:#22c55e29;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.shop-redeem-receipt-body{min-width:0}.shop-redeem-receipt-kicker{color:#86efac;letter-spacing:.6px;text-transform:uppercase;font-size:10px;font-weight:900}.shop-redeem-receipt-title{color:#f8fafc;overflow-wrap:anywhere;margin-top:3px;font-size:14px;font-weight:950}.shop-redeem-receipt-summary{color:#cbd5e1;overflow-wrap:anywhere;margin-top:5px;font-size:13px;font-weight:800;line-height:1.35}.shop-redeem-receipt-time{color:#64748b;margin-top:6px;font-size:11px;font-weight:800}.shop-redeem-receipt-dismiss{color:#94a3b8;cursor:pointer;background:#02061757;border:1px solid #ffffff1a;border-radius:10px;place-items:center;width:30px;height:30px;display:grid}.shop-redeem-log{background:#0f172a8a;border:1px solid #ffffff14;border-radius:14px;flex-direction:column;gap:7px;padding:12px;display:flex}.shop-redeem-log-title{color:#a5b4fc;letter-spacing:.6px;text-transform:uppercase;font-size:11px;font-weight:900}.shop-redeem-log-row{background:#02061757;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 9px;display:grid}.shop-redeem-log-reward{color:#cbd5e1;overflow-wrap:anywhere;min-width:0;font-size:12px;font-weight:800;line-height:1.3}.shop-redeem-log-time{color:#64748b;white-space:nowrap;font-size:11px;font-weight:800}.shop-package-grid{grid-template-columns:repeat(auto-fit,minmax(224px,1fr));gap:12px;display:grid}.shop-package-card{background:radial-gradient(circle at 14% 0%, var(--package-accent-soft), transparent 36%), linear-gradient(145deg, #0f172ad6, #0f172a7a);border:1px solid #ffffff14;border-radius:14px;min-width:0;padding:14px;transition:transform .22s cubic-bezier(.23,1,.32,1),border-color .2s,box-shadow .2s;animation:.4s cubic-bezier(.23,1,.32,1) both shopCardFadeIn;position:relative;overflow:hidden;transform:translateY(0);box-shadow:inset 0 1px #ffffff0d}.shop-package-card:before{content:"";pointer-events:none;opacity:0;z-index:3;background:linear-gradient(120deg,#0000 0%,#ffffff0f 42%,#0000 62%);position:absolute;inset:0;transform:translate(-100%)}.shop-package-card:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(90deg,#0f172ae6 0%,#0f172ac2 48%,#0f172a70 100%),linear-gradient(#02061729,#0206175c);position:absolute;inset:0}.shop-package-card--ready{border-color:var(--package-accent-line)}.shop-package-art{pointer-events:none;opacity:.65;transform-origin:50%;filter:saturate(.9)drop-shadow(0 14px 22px #0000002e);z-index:0;width:156px;height:100px;position:absolute;top:18px;right:-28px;transform:rotate(-4deg)}.shop-package-art img{object-fit:contain;width:100%;height:100%}.shop-package-top,.shop-package-desc,.shop-package-items,.shop-package-bottom{z-index:2;position:relative}.shop-package-top{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.shop-package-emblem{border:1px solid var(--package-accent-line);background:#ffffff0e;border-radius:13px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 10px 22px #00000029}.shop-package-emblem img{object-fit:contain;width:34px;height:34px}.shop-package-heading{min-width:0}.shop-package-kicker{color:var(--package-accent);text-transform:uppercase;letter-spacing:.8px;align-items:center;gap:4px;font-size:9px;font-weight:900;line-height:1;display:flex}.shop-package-title{color:#f8fafc;white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:15px;font-weight:950;line-height:1.15;overflow:hidden}.shop-package-count{color:#cbd5e1;white-space:nowrap;background:#0f172ab8;border:1px solid #ffffff17;border-radius:999px;align-self:start;padding:4px 7px;font-size:10px;font-weight:900}.shop-package-desc{color:#cbd5e1;text-shadow:0 1px 8px #0206179e;min-height:30px;margin-top:10px;font-size:11px;font-weight:650;line-height:1.35}.shop-package-items{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:12px;display:grid}.shop-package-item{background:#0206177a;border:1px solid #ffffff13;border-radius:10px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;padding:6px;display:grid}.shop-package-item-icon{background:#ffffff0b;border-radius:8px;place-items:center;width:24px;height:24px;display:grid}.shop-package-item-icon img{object-fit:contain;width:21px;height:21px}.shop-package-item-name{color:#e2e8f0;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:10px;font-weight:800;overflow:hidden}.shop-package-item-count{color:#f8fafc;font-size:10px;font-weight:950}.shop-package-bottom{grid-template-columns:auto minmax(104px,1fr);align-items:center;gap:10px;margin-top:12px;display:grid}.shop-package-price{color:#fbbf24;align-items:baseline;gap:3px;font-size:16px;font-weight:950;display:inline-flex}.shop-package-price span{font-size:12px}.shop-coin-card{isolation:isolate;background:radial-gradient(circle at 12% 0,#fbbf2433,#0000 38%),radial-gradient(circle at 92% 12%,#3b82f624,#0000 36%),linear-gradient(150deg,#0f172af0,#0f172a94);border:1px solid #fbbf2433;border-radius:16px;min-width:0;padding:13px;transition:transform .22s cubic-bezier(.23,1,.32,1),border-color .2s,box-shadow .2s;animation:.4s cubic-bezier(.23,1,.32,1) both shopCardFadeIn;position:relative;overflow:hidden;transform:translateY(0);box-shadow:inset 0 1px #ffffff12,0 12px 28px #02061738}.shop-coin-card:before{content:"";pointer-events:none;opacity:.7;z-index:0;background:linear-gradient(125deg,#0000 0%,#ffffff17 40%,#0000 58%),radial-gradient(circle at 18% 82%,#f59e0b29,#0000 34%);position:absolute;inset:0}.shop-coin-card-shine{pointer-events:none;z-index:0;background:radial-gradient(circle,#fbbf244d,#0000 68%);border-radius:999px;width:116px;height:116px;position:absolute;top:-42px;right:-42px}.shop-coin-card-payment-watermark{opacity:.13;transform-origin:50%;pointer-events:none;z-index:0;mix-blend-mode:screen;filter:saturate(1.08)contrast(1.04);place-items:center;width:360px;height:112px;display:grid;position:absolute;bottom:-34px;right:-94px;transform:rotate(-42deg)}.shop-coin-card-payment-watermark img{object-fit:contain;width:100%;height:auto}.shop-coin-card>:not(.shop-coin-card-shine):not(.shop-coin-card-payment-watermark){z-index:1;position:relative}.shop-coin-card-topline{color:#fef3c7;text-transform:uppercase;letter-spacing:.45px;white-space:nowrap;background:#0206176b;border:1px solid #ffffff12;border-radius:999px;align-items:center;gap:5px;max-width:100%;min-height:18px;padding:4px 8px;font-size:9px;font-weight:900;line-height:1;display:inline-flex}.shop-coin-card-inner{align-items:center;gap:9px;margin:10px 0 8px;display:flex}.shop-coin-card-icon{background:radial-gradient(circle at 38% 26%,#ffffff61,#0000 28%),#f59e0b2e;border:1px solid #fbbf243d;border-radius:12px;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid;box-shadow:0 8px 18px #f59e0b29}.shop-coin-card-info-amount{color:#f8fafc;font-size:13px;font-weight:900}.shop-coin-card-info-price{color:#fbbf24;font-size:12px;font-weight:900}.shop-storage-card{background:#0ea5e90f;border:1px solid #0ea5e938;border-radius:14px;min-width:0;padding:13px;transition:transform .22s cubic-bezier(.23,1,.32,1),border-color .2s,box-shadow .2s;animation:.4s cubic-bezier(.23,1,.32,1) both shopCardFadeIn;transform:translateY(0)}.shop-storage-card--maxed{opacity:.7;border-color:#94a3b824}.shop-storage-card-inner{align-items:center;gap:9px;margin-bottom:9px;display:flex}.shop-storage-card-icon{color:#7dd3fc;background:#0ea5e926;border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.shop-storage-title{color:#f8fafc;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:900;overflow:hidden}.shop-storage-count{color:#94a3b8;font-size:11px;font-weight:800}.shop-progress-track{background:#0f172ad9;border-radius:999px;height:7px;margin-bottom:8px;overflow:hidden}.shop-progress-fill{background:#38bdf8;border-radius:999px;height:100%;transition:width .5s cubic-bezier(.23,1,.32,1)}.shop-progress-fill--critical{background:#ef4444}.shop-storage-desc{color:#64748b;min-height:30px;font-size:11px;line-height:1.35}.shop-item-row{background:#0f172a73;border:1px solid #ffffff0f;border-radius:14px;align-items:center;gap:14px;padding:14px;transition:transform .22s cubic-bezier(.23,1,.32,1),border-color .22s,box-shadow .22s;animation:.38s cubic-bezier(.23,1,.32,1) both shopItemSlideIn;display:flex;transform:translateY(0)}.shop-item-row--affordable{border-color:#ffffff1f}.shop-item-icon{background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;transition:border-color .2s;display:flex;position:relative}.shop-item-badge{color:#fff;letter-spacing:.3px;border-radius:8px;padding:2px 5px;font-size:9px;font-weight:800;position:absolute;top:-6px;right:-6px;box-shadow:0 2px 6px #00000040}.shop-item-icon img{object-fit:contain;image-rendering:auto;width:34px;height:34px}.shop-item-info{flex:1;min-width:0}.shop-item-name-row{align-items:center;gap:8px;margin-bottom:3px;display:flex}.shop-item-name{color:#f1f5f9;font-size:14px;font-weight:800}.shop-item-owned{color:#64748b;background:#ffffff0d;border-radius:6px;padding:1px 6px;font-size:11px}.shop-item-desc{color:#64748b;font-size:11px;line-height:1.4}.shop-item-price-row{align-items:center;gap:4px;margin-top:6px;display:flex}.shop-item-price-symbol{color:#fbbf24;font-size:13px;font-weight:900}.shop-item-price-amount{color:#fbbf24;font-size:14px;font-weight:800}.shop-item-price-label{color:#475569;font-size:11px}.shop-buy-btn{cursor:pointer;color:#fff;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;min-width:64px;min-height:38px;padding:8px 16px;font-size:13px;font-weight:800;transition:transform .16s cubic-bezier(.23,1,.32,1),box-shadow .2s,opacity .2s,background .2s;display:inline-flex;position:relative;overflow:hidden}.shop-buy-btn:active:not(:disabled){transform:scale(.97)}.shop-buy-btn:disabled{cursor:not-allowed;color:#64748b;opacity:.6;box-shadow:none!important;background:#334155!important}.shop-buy-btn--maxed{opacity:.5;color:#64748b!important;background:#334155!important}.shop-buy-btn--amber{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 12px #f59e0b40}.shop-buy-btn--stripe{color:#07111f;background:radial-gradient(circle at 16% 10%,#ffffff94,#0000 22%),linear-gradient(135deg,#fbbf24,#f59e0b 48%,#22c55e);border:1px solid #fef3c76b;grid-template-columns:minmax(0,1fr);align-items:center;gap:0;min-height:44px;padding:7px 14px;display:grid;box-shadow:0 8px 18px #f59e0b47,inset 0 1px #ffffff61}.shop-buy-btn--stripe:before{content:"";border-radius:inherit;pointer-events:none;z-index:0;background:linear-gradient(#ffffff47,#0000 52%),radial-gradient(circle at 92% 18%,#ffffff57,#0000 25%);position:absolute;inset:1px}.shop-stripe-buy-main{z-index:1;letter-spacing:.2px;justify-content:center;align-items:center;gap:6px;min-width:0;font-weight:950;display:inline-flex;position:relative}.shop-buy-btn--blue{background:linear-gradient(135deg,#0ea5e9,#2563eb);box-shadow:0 4px 12px #0ea5e940}.shop-buy-btn--primary{background:linear-gradient(135deg, var(--shop-accent), var(--shop-accent-dim));box-shadow:0 4px 12px var(--shop-accent-shadow)}.shop-buy-btn--package{background:radial-gradient(circle at 13% 24%, #ffffff9e, transparent 24%), linear-gradient(135deg, var(--package-accent), var(--package-accent-dim));color:#06111f;width:100%;min-width:0;min-height:42px;box-shadow:0 6px 16px var(--package-accent-shadow);isolation:isolate;grid-template-columns:38px minmax(0,1fr) 16px;align-items:center;gap:6px;padding:6px 10px 6px 6px;display:grid;overflow:hidden}.shop-buy-btn--package:before{content:"";border-radius:inherit;pointer-events:none;mix-blend-mode:screen;z-index:0;background:linear-gradient(#ffffff57,#0000 48%),radial-gradient(circle at 86% 15%,#ffffff42,#0000 26%);position:absolute;inset:1px}.shop-package-buy-art{z-index:1;place-items:center;width:38px;height:31px;display:grid;position:relative;overflow:visible}.shop-package-buy-art img{object-fit:contain;filter:drop-shadow(0 6px 6px #02061738);width:58px;height:38px;transform:translate(-9px)scale(1.14)}.shop-package-buy-label{white-space:nowrap;text-overflow:ellipsis;z-index:1;justify-self:center;min-width:0;position:relative;overflow:hidden}.shop-package-buy-spark{opacity:.82;z-index:1;justify-self:end;position:relative}.shop-buy-btn--full{width:100%;margin-top:10px}.shop-buy-btn--purchasing{pointer-events:none}.shop-buy-btn--purchasing:after{content:"";border-radius:inherit;background:linear-gradient(90deg,#0000 0%,#ffffff1f 50%,#0000 100%);animation:1.2s ease-in-out infinite shopBtnShimmer;position:absolute;inset:0}@keyframes shopBtnShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.shop-buy-btn--success{animation:.36s cubic-bezier(.23,1,.32,1) both shopBuyPop;background:linear-gradient(135deg,#22c55e,#16a34a)!important}@keyframes shopBuyPop{0%{transform:scale(.96)}50%{transform:scale(1.04)}to{transform:scale(1)}}@keyframes shopCardFadeIn{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes shopItemSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (hover:hover) and (pointer:fine){.shop-coin-card:hover{border-color:#f59e0b61;transform:translateY(-2px);box-shadow:0 8px 24px #f59e0b1a}.shop-storage-card:not(.shop-storage-card--maxed):hover{border-color:#0ea5e961;transform:translateY(-2px);box-shadow:0 8px 24px #0ea5e91a}.shop-package-card:hover{border-color:var(--package-accent-line);transform:translateY(-2px);box-shadow:0 12px 28px #0000002e}.shop-package-card:hover:before{opacity:1;transition:transform .65s cubic-bezier(.23,1,.32,1),opacity .2s;transform:translate(100%)}.shop-item-row:hover{border-color:#ffffff21;transform:translateY(-1px);box-shadow:0 6px 20px #00000026}.shop-item-row:hover .shop-item-icon{border-color:#ffffff29}.shop-buy-btn:not(:disabled):hover{filter:brightness(1.08);transform:translateY(-1px)}.shop-buy-btn--amber:not(:disabled):hover{box-shadow:0 6px 18px #f59e0b59}.shop-buy-btn--stripe:not(:disabled):hover{box-shadow:0 10px 24px #f59e0b57,inset 0 1px #ffffff6b}.shop-buy-btn--blue:not(:disabled):hover{box-shadow:0 6px 18px #0ea5e959}.shop-buy-btn--primary:not(:disabled):hover{box-shadow:0 6px 18px var(--shop-accent-shadow)}.shop-buy-btn--package:not(:disabled):hover{box-shadow:0 8px 20px var(--package-accent-shadow)}}.shop-footer{text-align:center;color:#334155;margin-top:4px;font-size:11px;line-height:1.5}@media (width<=520px){.shop-panel{padding:16px}.shop-card-grid,.shop-redeem-card,.shop-redeem-action{grid-template-columns:1fr}.shop-redeem-btn{width:100%}.shop-redeem-receipt{grid-template-columns:32px minmax(0,1fr) 28px;gap:8px}.shop-redeem-log-row{grid-template-columns:1fr;gap:4px}.shop-redeem-log-time{white-space:normal}.shop-coin-card{padding:12px}.shop-buy-btn--stripe{grid-template-columns:minmax(0,1fr);min-height:42px;padding:7px 12px}.shop-coin-card-payment-watermark{opacity:.12;width:326px;bottom:-30px;right:-84px}.shop-package-grid{grid-template-columns:1fr}.shop-package-art{opacity:.48;width:134px;height:86px;top:24px;right:-34px}.shop-package-top{grid-template-columns:38px minmax(0,1fr) auto;gap:8px}.shop-package-emblem{border-radius:12px;width:38px;height:38px}.shop-package-title{font-size:14px}.shop-package-count{padding-inline:6px;font-size:9px}.shop-package-items{grid-template-columns:1fr}.shop-package-bottom{grid-template-columns:1fr;gap:8px}.shop-package-price{justify-content:center}.shop-buy-btn--package{grid-template-columns:34px minmax(0,1fr) 14px;min-height:40px}.shop-package-buy-art img{width:52px;height:34px}}@media (prefers-reduced-motion:reduce){.shop-coin-card,.shop-package-card,.shop-storage-card,.shop-item-row{animation:none!important}.shop-buy-btn{transition:none!important}.shop-buy-btn--purchasing:after{animation:none}.shop-flash{animation:none!important}}
