:root{--ink:#181818;--paper:#f8f8f0;--light:#e8f0d0;--dark:#7fa65a;--sel:#f0d040;--last:#f0d04059;--sq:max(var(--min-sq), calc(min(100vw - var(--gutter), 100dvh - var(--chrome)) / 8));--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{background:var(--paper);color:var(--ink);margin:0;font:16px/1.3 ui-monospace,Menlo,Consolas,monospace}html:lang(ja),html:lang(ja) body,html:lang(ja) button,html:lang(ja) select{line-break:strict;font-family:ui-monospace,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Yu Gothic,Meiryo,Noto Sans CJK JP,Noto Sans JP,sans-serif}html:lang(zh-Hans),html:lang(zh-Hans) body,html:lang(zh-Hans) button,html:lang(zh-Hans) select{line-break:strict;font-family:ui-monospace,PingFang SC,Hiragino Sans GB,Microsoft YaHei UI,Microsoft YaHei,Noto Sans CJK SC,Noto Sans SC,sans-serif}#app{box-sizing:border-box;flex-direction:column;align-items:center;height:100dvh;display:flex;overflow:hidden}header.game-header{width:calc(var(--sq) * 8);justify-content:space-between;align-items:center;gap:6px;margin-bottom:4px;display:flex}header.game-header button{min-height:44px;font:inherit;border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:4px;padding:0 10px;font-size:13px}header.game-header button[hidden]{visibility:hidden;display:inline-block}h1{white-space:nowrap;margin:4px 0;font-size:14px}.turn{text-align:center;flex:1;margin:0;font-size:13px}main{flex-direction:column;align-items:center;gap:6px;display:flex}.board{grid-template-columns:repeat(8, var(--sq));grid-template-rows:repeat(8, var(--sq));border:3px solid var(--ink);touch-action:none;-webkit-user-select:none;user-select:none;outline:none;display:grid}.sq{justify-content:center;align-items:flex-end;display:flex;position:relative}.sq.light{background:var(--light)}.sq.dark{background:var(--dark)}.sq.last:before,.sq.selected:before{content:"";background:var(--last);position:absolute;inset:0}.sq.selected:before{background:#f0d04099}.sq.focus{outline-offset:-3px;outline:3px solid #3050f0}.sq.dot:after{content:"";width:calc(var(--sq) * var(--dot));height:calc(var(--sq) * var(--dot));pointer-events:none;z-index:2;background:#18181859;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sq.capture:after{content:"";pointer-events:none;z-index:2;border:4px solid #c82828b3;border-radius:50%;position:absolute;inset:4%}.sq.check{animation:pulse var(--pulse) ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:inset 0 0 #dc1e1ee6}50%{box-shadow:inset 0 0 0 calc(var(--sq) / 2) #dc1e1e99}}.piece{z-index:1;width:calc(var(--sq) * var(--piece-scale));height:calc(var(--sq) * var(--piece-scale));object-fit:contain;object-position:bottom;image-rendering:pixelated;pointer-events:none;position:relative}.piece.hop{animation:.18s ease-out hop}@keyframes hop{50%{transform:translateY(calc(var(--hop) * -1))}}.piece.dragging{z-index:10;transition:none}.glyph{width:calc(var(--sq) * var(--glyph));height:calc(var(--sq) * var(--glyph));z-index:3;pointer-events:none;position:absolute;bottom:1px;right:1px}.glyph text{fill:var(--ink);stroke:var(--paper);stroke-width:1px;paint-order:stroke;font-size:18px}.piece.blast-off{animation:blast var(--end-anim) ease-in forwards}@keyframes blast{to{transform:translateY(-120vh)rotate(1080deg)scale(.2)}}.piece.faint{animation:faint var(--end-anim) ease-in forwards}@keyframes faint{to{opacity:0;transform:translateY(30%)}}.textbox{width:calc(var(--sq) * 8);border:4px double var(--ink);background:#fff;border-radius:6px;min-height:72px;padding:6px 10px;position:relative}.tb-main{text-transform:none;margin:0;font-weight:700}.tb-caption{color:#505050;margin:4px 0 0;font-size:12px}.tb-tick{font-size:10px;animation:1s steps(2,end) infinite blink;position:absolute;bottom:4px;right:8px}@keyframes blink{50%{opacity:0}}.overlay{z-index:50;background:#00000059;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.overlay[hidden]{display:none}.panel{border:4px double var(--ink);text-align:center;background:#fff;border-radius:6px;max-width:calc(100vw - 16px);padding:12px;position:relative}.panel p{margin:0 0 8px;font-weight:700}.panel button{min-width:44px;min-height:44px;font:inherit;border:2px solid var(--ink);background:var(--paper);cursor:pointer;border-radius:4px}.promo-row{gap:6px;display:flex}.promo-row button{flex-direction:column;align-items:center;width:76px;padding:4px;display:flex}.promo-row img{object-fit:contain;width:56px;height:56px;image-rendering:pixelated}.promo-row span{font-size:9px}.promo .cancel{border-radius:50%;position:absolute;top:-14px;right:-14px}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.battle{z-index:40;background:rgba(0, 0, 0, calc(.55 * var(--dim,1)));justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.battle[hidden]{display:none}.screen{aspect-ratio:320/288;border:4px solid var(--ink);background:#f8f8f0;border-radius:6px;width:min(100vw - 16px,480px,111.111dvh - 17.7778px);position:relative;overflow:hidden}.screen canvas{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;position:absolute;inset:0}.mon{aspect-ratio:1;width:34%;position:absolute;transform:translate(-50%,-50%)}.mon img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.mon.mirror img{transform:scaleX(-1)}.mon.evo{width:40%}.mon.evo img{filter:brightness(0)}.hp{border:2px solid var(--ink);background:#fff;border-radius:4px;width:40%;height:7px;position:absolute}.hp[hidden]{display:none}.hp span{height:100%;display:block}.hp-far{top:8%;left:6%}.hp-near{top:56%;right:6%}.battle-text{width:auto;min-height:22%;position:absolute;bottom:2%;left:2%;right:2%}.cam{position:absolute;inset:0}.trainer{aspect-ratio:1;width:30%;position:absolute}.trainer[hidden]{display:none}.trainer img{width:100%;height:100%;image-rendering:pixelated;object-fit:contain}.trainer img[hidden]{display:none}.t-near{top:34%;left:-2%}.t-far{top:4%;right:-2%}.trainer .say{white-space:nowrap;border:2px solid var(--ink);background:#fff;border-radius:10px;padding:1px 6px;font-size:clamp(11px,3.4vw,15px);font-weight:700;position:absolute;top:4%;left:50%;transform:translate(-50%)}.trainer .say:empty,.trainer.still img{display:none}.trainer.still .say{top:40%}.screen .hp{z-index:1}.screen.impact{background:#fff}.screen.impact .mon img{filter:brightness(0)}.screen.impact canvas,.screen.impact .hp,.screen.impact .battle-text{visibility:hidden}.anime-banner{z-index:2;letter-spacing:1px;color:#f8e030;border:4px solid var(--ink);box-shadow:4px 4px 0 var(--ink);white-space:nowrap;pointer-events:none;background:#e03030;padding:4px 14px;font-size:clamp(16px,5vw,26px);font-style:italic;font-weight:900;animation:.22s ease-out banner-slam;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)rotate(-6deg)}.anime-banner[hidden]{display:none}@keyframes banner-slam{0%{opacity:0;transform:translate(-50%,-50%)rotate(-6deg)scale(2.2)}to{opacity:1;transform:translate(-50%,-50%)rotate(-6deg)scale(1)}}.quick-fx{z-index:30;pointer-events:none;image-rendering:pixelated;position:fixed}.quick-fx[hidden]{display:none}.stage{flex-direction:column;flex:auto;align-items:center;width:100%;min-height:0;display:flex;overflow:hidden}.game-view{flex-direction:column;align-items:center;display:flex;position:relative}.menu{flex-direction:column;flex:auto;align-items:center;gap:12px;width:min(100vw - 16px,420px);min-height:0;padding:12px 0 8px;display:flex}.screen-splash{cursor:pointer;justify-content:center}.logo{text-align:center}.logo h1{white-space:normal;margin:0;font-size:28px}.logo .sub{color:#c03028;margin:4px 0 0;font-weight:700}.credit{font-size:14px}.hint{color:#606060;font-size:12px;animation:1.2s steps(2,end) infinite blink}.kings{gap:24px;display:flex}.menu-sprite{object-fit:contain;width:96px;height:96px;image-rendering:pixelated}.buttons{flex-direction:column;gap:8px;width:100%;display:flex}.menu button{min-height:48px;font:inherit;border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:6px;font-weight:700}.menu button.primary{background:#f8d030;min-height:60px;font-size:20px}.menu button.secondary{width:50%}.menu button.level,.menu button.card{flex-direction:column;align-items:center;padding:6px;display:flex}.menu small{color:#505050;font-size:12px;font-weight:400}.cards{gap:10px;width:100%;display:flex}.cards .card{flex:1}h2{margin:4px 0;font-size:18px}h3{margin:4px 0 0;font-size:15px}.rules{margin:0;font-size:14px}.legend{flex-direction:column;gap:2px;width:100%;display:flex}.legend-row{text-align:center;grid-template-columns:56px 1fr 56px;align-items:center;font-size:13px;display:grid}.legend-head{font-size:12px}.legend-sprite{object-fit:contain;width:52px;height:52px;image-rendering:pixelated}.settings{flex-direction:column;gap:6px;width:100%;display:flex}.setting{border-bottom:1px solid #d0d0c0;justify-content:space-between;align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex}.setting input[type=checkbox]{width:24px;height:24px}.setting select{font:inherit;min-height:36px}.site-footer{color:#606060;text-align:center;margin-top:auto;padding:8px 0;font-size:10px}.site-footer p{margin:2px 0}.site-footer a{color:inherit}.intro{z-index:45;cursor:pointer;background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.intro img{object-fit:contain;width:120px;height:120px;image-rendering:pixelated}.end-buttons{justify-content:center;gap:8px;display:flex}.end-buttons button{padding:0 14px}.toast{background:var(--ink);color:#fff;z-index:60;border-radius:6px;padding:8px 14px;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.reactions{width:calc(var(--sq) * 8);flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.reactions[hidden]{display:none}.reactions button{min-height:44px;font:inherit;border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:4px;padding:0 8px;font-size:12px}.reactions .resign{background:#f0d0d0}.code-row{gap:8px;width:100%;display:flex}.code-input{min-width:0;min-height:48px;font:inherit;letter-spacing:6px;text-transform:uppercase;text-align:center;border:3px solid var(--ink);border-radius:6px;flex:1;font-size:22px}.room-code{letter-spacing:10px;margin:8px 0;font-size:44px;font-weight:700}.online-message{text-align:center;font-size:16px}.swap{justify-content:center;align-items:center;gap:6px;margin-bottom:8px;font-size:14px;display:flex}.sq.hint:after{content:"";pointer-events:none;z-index:2;border:4px solid #f0a020;border-radius:4px;animation:.8s steps(2,end) infinite blink;position:absolute;inset:2px}.puzzle-bar{width:calc(var(--sq) * 8);flex-direction:column;gap:4px;font-size:12px;display:flex}.puzzle-bar[hidden]{display:none}.puzzle-bar p{margin:0}.puzzle-bar .rating{font-weight:700}.puzzle-buttons{gap:4px;display:flex}.puzzle-buttons select,.puzzle-buttons button{min-height:44px;font:inherit;border:2px solid var(--ink);background:#fff;border-radius:4px}.puzzle-buttons select{flex:1;min-width:0}.puzzle-buttons button{cursor:pointer;padding:0 10px}.kanto-map{flex-direction:column;gap:6px;width:100%;display:flex}.kanto-map .node{border:3px solid var(--ink);text-align:left;border-radius:6px;flex-direction:column;justify-content:center;min-height:48px;padding:6px 10px;display:flex}.kanto-map .town{background:#f8e8c0;font-weight:700}.kanto-map .gym{color:#606060;background:#e8e8e8;border-style:dashed;font-weight:700}.kanto-map .route{background:#d8f0c0}.kanto-map .route.locked{color:#909090;background:#f0f0f0}.menu .small,.kanto-map .small{margin:0;font-size:11px;font-weight:400}.map-top{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;display:flex}.map-top p{text-align:center;width:100%;margin:0}.map-top button{flex:1}.dex-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:6px;width:100%;display:grid}.dex-cell{text-align:center;flex-direction:column;align-items:center;font-size:9px;display:flex}.dex-sprite{object-fit:contain;width:56px;height:56px;image-rendering:pixelated}.silhouette{filter:brightness(0)opacity(.35)}.team-row{gap:6px}.team-row span{flex:1}.team-row select{max-width:45%}.team-sprite{object-fit:contain;width:40px;height:40px;image-rendering:pixelated}.panel.encounter img{object-fit:contain;width:120px;height:120px;image-rendering:pixelated}.star-badge{z-index:3;font-size:calc(var(--sq) * .2);color:#f0c020;text-shadow:0 0 2px #181818,0 0 2px #181818;pointer-events:none;position:absolute;top:0;left:1px}.mon[data-stars="1"] img{filter:drop-shadow(0 0 4px #f0c020)}.mon[data-stars="2"] img{filter:drop-shadow(0 0 6px #40a0f0)drop-shadow(0 0 2px #40a0f0)}.mon[data-stars="3"] img{filter:drop-shadow(0 0 8px #e040e0)drop-shadow(0 0 3px #e040e0)}.mon.mirror[data-stars] img{transform:scaleX(-1)}.panel.story{text-align:left;cursor:pointer;max-width:480px;margin:0 auto;position:fixed;bottom:16px;left:8px;right:8px}.panel.story .story-text{min-height:3.6em;font-weight:700}.panel.story .tb-tick,.trainer-intro .tb-tick{text-align:right;font-size:10px;display:block;position:static}.kanto-map .node.rival{background:#f8d8d0}.kanto-map .node.here{outline:3px solid #f0a020}.trainers{flex-direction:column;gap:4px;width:100%;font-size:13px;font-weight:700;display:flex}.trainer-row{border-bottom:1px solid #d0d0c0;padding:4px 0}.cleared{color:#307030;font-weight:700}.menu button.secondary-wide{width:100%}.trainer-card{border:4px double var(--ink);background:#fffbe8;border-radius:8px;width:100%;padding:10px}.trainer-card p{margin:4px 0}.trainer-card .level{font-size:20px;font-weight:700}.badges{gap:6px;margin:4px 0;display:flex}.badge{border:2px solid var(--ink);border-radius:50%;width:24px;height:24px}.badge.empty{background:#e0e0e0}.dex-cell{font:inherit;cursor:default;color:inherit;background:0 0;border:none;padding:2px}.dex-cell.caught{cursor:pointer}.dex-cell small{color:gray;font-size:8px}.panel.dex-detail{width:min(100vw - 16px,360px);max-height:calc(100dvh - 32px);overflow:auto}.panel.dex-detail p{font-weight:400}.panel.dex-detail .candy{font-weight:700}.encounter.shiny img{filter:drop-shadow(0 0 6px #f8e030)}.shiny-note{color:#c08000}@keyframes slide-in{0%{opacity:0;transform:translate(120%)}to{opacity:1;transform:none}}.trainer-sprite{flex:none;justify-content:center;align-items:flex-end;width:80px;height:80px;display:flex}.trainer-sprite img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.trainer-sprite.big{width:128px;height:128px}.trainer-sprite.sil{position:relative}.trainer-sprite.sil:before{content:"";background:#303030;border-radius:50%;width:28%;height:28%;position:absolute;top:14%;left:36%}.trainer-sprite.sil:after{content:"";background:#303030;border-radius:40% 40% 6px 6px;width:56%;height:48%;position:absolute;bottom:0;left:22%}.story-trainer{z-index:51;position:fixed;bottom:150px;left:50%;transform:translate(-50%)}.panel.story.inline{width:100%;position:static}.intro-stage{justify-content:center;align-items:flex-end;gap:12px;min-height:140px;display:flex}.intro-mon{animation:.4s ease-out both slide-in}.name-step{align-items:flex-start;gap:10px;width:100%;display:flex}.name-step .buttons{flex:1}@keyframes bounce{0%,to{transform:none}40%{transform:translateY(-10px)}}.menu-sprite.bounce:hover,.card:active .menu-sprite.bounce,.card:focus-visible .menu-sprite.bounce{animation:.45s ease-in-out infinite bounce}.menu-sprite,.dex-sprite,.team-sprite{background:50%/contain no-repeat}.cards .card{min-width:0}.cards .card .menu-sprite{aspect-ratio:1;width:100%;max-width:96px;height:auto}.trainer-intro{flex-direction:column;align-items:center;gap:4px;display:flex}.goal-card h3{margin:0 0 6px}.goal-card .pips{letter-spacing:6px;margin:6px 0 2px;font-size:22px}.team-notice{text-align:left;margin-bottom:6px}.why{color:#806020;margin:-2px 0 4px}.lesson-head{align-items:center;gap:8px;display:flex}.lesson-goal{font-weight:700}.mini-board{border:3px solid var(--ink);grid-template-rows:repeat(8,30px);grid-template-columns:repeat(8,30px);display:grid}.mini-sq{justify-content:center;align-items:center;display:flex}.mini-sq.light{background:var(--light)}.mini-sq.dark{background:var(--dark)}.mini-sq.last{box-shadow:inset 0 0 0 3px #f0a020}.mini-sq img{width:28px;height:28px;image-rendering:pixelated}.puzzle-banner{white-space:pre-line;border:2px solid var(--ink);background:#fff7d0;border-radius:4px;margin:0;padding:4px 6px;font-weight:700}.badge.won{border-color:#181818}.badge.boulder{background:#a0a0a0}.badge.cascade{background:#58a8f8}.badge.thunder{background:#f8d030}.badge.rainbow{background:linear-gradient(135deg,#f87070,#f8d030,#70d070,#58a8f8)}.badge.soul{background:#e070c0}.badge.marsh{background:#d0b030}.badge.volcano{background:#f06030}.badge.earth{background:#60b060}.hof-team{flex-wrap:wrap;justify-content:center}.hof-team .menu-sprite{width:72px;height:72px}.kanto-map .node.gym{color:inherit;background:#e8e0f8;border-style:solid}.kanto-map .node.gym.locked,.kanto-map .node.locked{color:#909090;background:#f0f0f0}.kanto-map .node.optional{background:#fff4e0;border-style:dashed}.kanto-map .node.challenge,.kanto-map .node.drill{background:#fff4e0}.kanto-map .node.league,.kanto-map .node.champion{background:#f8e0e0}.badge-line.won{color:#307030;font-weight:700}.board-wrap{position:relative}.review-layer{pointer-events:none;z-index:5;width:100%;height:100%;position:absolute;inset:0}.review{border:3px solid var(--ink);background:#fff;border-radius:6px;flex-direction:column;gap:4px;padding:6px;display:flex}.review[hidden]{display:none}.review-text{margin:0;font-size:13px;font-weight:700}.review-nav,.review-acts{gap:6px;display:flex}.review-btn{min-width:56px;min-height:48px;font:inherit;border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:6px;flex:1;font-size:15px;font-weight:700}.review-btn[hidden]{display:none}.review-btn.continue{background:#f8d030}.review-btn:disabled{opacity:.4}.screen-title:before{content:"";z-index:-1;background-color:var(--paper);background-image:radial-gradient(circle at 25% 25%,#7fa65a2e 0 10%,#0000 11%),radial-gradient(circle at 75% 75%,#f0d04033 0 10%,#0000 11%);background-size:64px 64px;animation:40s linear infinite hub-scroll;position:fixed;inset:0}@keyframes hub-scroll{to{background-position:64px 64px}}.hub-top{flex-wrap:wrap;gap:8px;width:100%;display:flex}.hub-top>*{flex:160px}.hub-continue,.hub-card,.hub-manual{min-height:56px;font:inherit;border:3px solid var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:10px;flex-direction:column;justify-content:center;align-items:flex-start;padding:6px 12px;display:flex}.hub-continue{background:#f8d030}.hub-continue span,.hub-card span{font-size:12px;font-weight:400}.hub-card .badges{gap:3px;margin-top:2px;display:flex}.hub-card .badge{border-width:1px;width:12px;height:12px}.menu button.hub-manual{align-items:center}.hub-zones{flex-direction:column;gap:32px;width:100%;margin-top:8px;display:flex}.hub-zone{flex-direction:column;gap:8px;display:flex}.zone-title{letter-spacing:3px;color:#505050;align-items:flex-end;gap:8px;margin:4px 0 0;font-size:15px;display:flex}.zone-oak{width:40px;height:40px}.tile-wrap{position:relative}.tile{width:100%;min-height:76px;font:inherit;text-align:left;color:var(--ink);border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:8px 44px 8px 10px;transition:filter .12s ease-out;display:flex}button:active:not(:disabled){filter:brightness(.9)}.lang-btn[aria-busy=true]{opacity:.6;cursor:progress;transition:opacity .12s ease-out .3s}.sq .pending{opacity:.5}.reactions{align-content:center}.reactions.net-over{visibility:hidden}.reactions .net-ask{align-self:center;padding:0 4px;font-weight:700}.end-buttons button.asked{background:var(--sel);box-shadow:0 0 0 3px var(--ink)}@media (prefers-reduced-motion:no-preference){.end-buttons button.asked{animation:1.2s ease-in-out infinite alternate netboot-asked}}@keyframes netboot-asked{0%{box-shadow:0 0 0 2px var(--ink)}to{box-shadow:0 0 0 5px var(--ink)}}.tile:active{filter:brightness(.9)}.tile:hover{filter:brightness(.97)}.tile:focus-visible,.tile-help:focus-visible,.hub-top button:focus-visible,.manual-tab:focus-visible{outline-offset:2px;outline:4px solid #3050f0}.tile-kanto,.tile-journey{background:#fff4d0}.tile-pic{flex:none;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.tile-icon{image-rendering:pixelated}.tile-icon.item-icon{object-fit:contain;width:60px;height:60px}.sheet-icon{image-rendering:pixelated;background-repeat:no-repeat;flex:none;display:inline-block}.tile-icon.pixel-svg{flex:none}.help-icon{width:30px;height:30px;image-rendering:pixelated}.tile-text{flex-direction:column;gap:2px;min-width:0;display:flex}.tile-title{font-size:16px;font-weight:700}.tile-sub{font-size:12px;line-height:1.3}.tile-chip{border:2px solid var(--ink);background:#e8f0d0;border-radius:999px;align-self:flex-start;margin-top:2px;padding:0 8px;font-size:11px;font-weight:700}.tile-tip{display:none}@media (hover:hover) and (min-width:900px){.tile:hover .tile-tip{z-index:20;white-space:pre-line;background:var(--ink);color:#fff;border-radius:6px;padding:6px 8px;font-size:11px;display:block;position:absolute;top:calc(100% + 6px);left:12px;right:12px}}.tile-help{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;min-height:0;padding:0;display:flex;position:absolute;top:6px;right:6px}.menu .tile-help{min-height:36px}.tile-help .help-icon{width:30px;height:30px}.menu button.hub-manual{flex-direction:row;gap:8px}@media (prefers-reduced-motion:reduce){.screen-title:before{animation:none}}.screen-howto{width:min(100vw - 16px,560px)}.manual-tabs{gap:4px;width:100%;padding-bottom:4px;display:flex;overflow-x:auto}.menu button.manual-tab{background:#f0ead0;border-radius:8px 8px 0 0;flex:none;min-height:44px;padding:0 10px;font-size:12px}.menu button.manual-tab[aria-selected=true]{background:#f8d030}.manual-page{border:4px double var(--ink);background:#fffbe8;border-radius:8px;flex-direction:column;align-items:center;gap:8px;width:100%;padding:12px;display:flex;position:relative}.manual-page[hidden]{display:none}.page-num{color:#806020;font-size:11px;position:absolute;top:6px;right:10px}.manual-rules{align-self:stretch;margin:0;padding-left:18px;font-size:13px}.manual-rules li{margin:4px 0}.fx-demo{aspect-ratio:320/288;border:3px solid var(--ink);background:#f8f8f0;border-radius:6px;width:240px;position:relative;overflow:hidden}.fx-demo img{width:34%;image-rendering:pixelated;position:absolute}.fx-demo .fx-a{bottom:8%;left:10%}.fx-demo .fx-d{top:10%;right:10%}.fx-demo canvas{width:100%;height:100%;position:absolute;inset:0}.board,.board-wrap,.mini-board,.review-layer,.mini-board .mini-sq{direction:ltr}.shelf{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.cartridge{border:4px solid var(--ink);cursor:pointer;width:150px;height:170px;font:inherit;box-shadow:0 6px 0 var(--ink);border-radius:10px 10px 4px 4px;flex-direction:column;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.cartridge.yellow{background:#f8d030}.cartridge.blue{color:#fff;background:#4a88e0}.cartridge:active{filter:brightness(.9)}.cart-notch{background:var(--paper);border:4px solid var(--ink);border-top:none;border-radius:0 0 6px 6px;width:46px;height:14px;position:absolute;top:-4px;left:50%;transform:translate(-50%)}.cart-label{color:var(--ink);border:3px solid var(--ink);text-align:center;background:#fff;border-radius:6px;flex-direction:column;align-items:center;gap:4px;min-width:110px;margin:18px 10px 0;padding:10px 8px;display:flex}.cart-label b{letter-spacing:2px;font-size:20px}.cart-label small{font-size:11px}.cart-pins{background:repeating-linear-gradient(90deg,#d0a020 0 6px,#0000 6px 10px);height:10px;position:absolute;bottom:6px;left:18px;right:18px}.cartridge.blue .cart-pins{background:repeating-linear-gradient(90deg,#d0a020 0 6px,#0000 6px 10px)}.cart-ribbon{color:#fff;border:2px solid var(--ink);letter-spacing:1px;white-space:nowrap;pointer-events:none;background:#e04040;border-radius:3px;padding:3px 8px;font-size:12px;font-weight:900;position:absolute;top:8px;right:-12px;transform:rotate(10deg)}[dir=rtl] .cart-ribbon{left:-12px;right:auto;transform:rotate(-10deg)}.cart-label small.cart-for{font-style:italic}.screen-shelf .shelf{grid-template-columns:auto auto;place-content:center;display:grid}.screen-shelf .shelf .cartridge{align-self:stretch;height:auto;min-height:min(170px,26dvh);padding-bottom:22px}@media (max-height:560px){.cart-label small.cart-for{display:none}}.start-text{flex-direction:column;display:flex}.start-sub{letter-spacing:0;font-size:12px;font-weight:400}.lang-row{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.menu button.lang-btn{min-width:96px}.menu button.lang-btn.on{background:#f8d030}.setting.lang-setting,.setting.cart-setting{flex-direction:column;align-items:stretch}.hold-btn{min-height:52px;font:inherit;border:3px solid var(--ink);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff;border-radius:8px;font-weight:700;position:relative;overflow:hidden}.hold-fill{background:#f8d030;width:0;position:absolute;inset:0 auto 0 0}.hold-text{position:relative}.lang-top{flex-direction:column;align-items:flex-end;gap:6px;display:flex;position:relative}.hub-top>.lang-top{flex:none}.menu button.lang-code{letter-spacing:1px;border:3px solid var(--ink);background:#fff;border-radius:10px;min-width:56px;min-height:52px;font-size:18px;font-weight:700}.lang-pop{top:58px;z-index:5;background:var(--paper);border:3px solid var(--ink);width:max-content;max-width:90vw;box-shadow:0 4px 0 var(--ink);border-radius:10px;padding:8px;position:absolute;inset-inline-end:0}.lang-pop[hidden]{display:none}.hub-top .lang-pop{inset-inline:0 auto}.lang-pop{max-width:min(90vw,360px)}.yellow-top{justify-content:flex-end;gap:8px;width:100%;display:flex}.yellow-levels{flex-direction:column;gap:12px;width:100%;display:flex}.big-level{min-height:84px;font:inherit;border:4px solid var(--ink);box-shadow:0 5px 0 var(--ink);cursor:pointer;background:#fff;border-radius:18px;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;display:flex}.big-level b{font-size:26px}.big-level .stars{color:#d8a000;-webkit-text-stroke:1px var(--ink);font-size:28px}.big-level.default{background:#f8d030}.big-level:focus-visible{outline-offset:2px;outline:4px solid #3050f0}.profile-list{flex-direction:column;gap:12px;width:100%;display:flex}.profile-slot{border:3px solid var(--ink);background:#fff;border-radius:14px;flex-direction:column;gap:6px;padding:8px;display:flex}.profile-slot.current{box-shadow:0 0 0 4px #3050f0}.profile-slot.cart-yellow{background:#fff6c8}.profile-slot.cart-blue{background:#e0ecff}.menu button.profile-pick{text-align:start;background:0 0;border:none;align-items:center;gap:12px;width:100%;min-height:72px;display:flex}.profile-sprite{flex:none;width:56px;height:56px}.profile-info{flex-direction:column;gap:2px;display:flex}.profile-info b{font-size:20px}.profile-tools{flex-wrap:wrap;gap:6px;display:flex}.profile-tools>*{flex:120px}.profile-confirm{flex-basis:100%;margin:0;font-weight:700}.save-box{border:3px solid var(--ink);box-sizing:border-box;background:#fff;border-radius:12px;flex-direction:column;gap:8px;width:100%;padding:10px;display:flex}.save-box h3,.save-box p{margin:0}.save-protected{font-weight:700}.save-row{flex-wrap:wrap;gap:6px;display:flex}.save-row>*{flex:140px}.save-code{letter-spacing:2px;font-size:20px;font-weight:700}.save-code[hidden]{display:none}.save-note{font-size:13px}.install-box{flex-direction:column;gap:8px;width:100%;display:flex}.install-box>button{width:100%;min-height:48px}.install-box p{text-align:center;margin:0}.install-status{font-weight:700}.install-hint,.install-result,.install-progress{font-size:14px}.install-steps{flex:100%;margin:0;padding:0;list-style:none}.install-steps li{margin:4px 0}.save-code-input{min-height:44px;font:inherit;letter-spacing:2px;text-transform:uppercase;border:2px solid var(--ink);border-radius:6px;padding:0 8px;font-size:18px}.hub-note{box-sizing:border-box;border:3px dashed var(--ink);background:#fffbe0;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:8px 12px;display:flex}.hub-note p{flex:200px;margin:0}.note-buttons{flex:none;gap:6px;display:flex}.menu .note-buttons button{min-width:72px;padding:0 12px}.screen-yellow{gap:16px}.yellow-gear{border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;justify-content:center;align-self:flex-end;align-items:center;width:52px;height:52px;display:flex}.gear-icon{width:32px;height:32px}.big-tile{width:100%;min-height:150px;font:inherit;border:4px solid var(--ink);box-shadow:0 6px 0 var(--ink);cursor:pointer;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.big-tile b{font-size:30px}.big-tile span{font-size:15px}.big-tile:active{filter:brightness(.9)}.big-play{background:#f8d030}.big-learn{background:#c8e8a0}.big-friend{background:#a8d0f8}.big-mon{width:80px;height:80px;image-rendering:pixelated;background:50%/contain no-repeat}.path-list{flex-direction:column;gap:8px;width:100%;display:flex}.path-step{min-height:60px;font:inherit;text-align:start;border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:6px 12px;font-size:17px;display:flex}.path-step.done{background:#e8f0d0}.path-step.locked{color:#909090;cursor:default;background:#f0f0f0}.path-num{border:3px solid var(--ink);background:#f8d030;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.path-bar{width:calc(var(--sq) * 8);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.path-bar[hidden]{display:none}.path-bar p{flex:100%;margin:0;font-weight:700}.path-bar button{min-height:56px;font:inherit;border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;flex:1;font-size:18px;font-weight:700}.path-bar button.primary{background:#f8d030}.path-bar button[hidden]{display:none}.sq.star:after{content:"★";font-size:calc(var(--sq) * .7);color:#f0b020;text-shadow:0 0 3px #181818;pointer-events:none;z-index:2;justify-content:center;align-items:center;animation:1s steps(2,end) infinite blink;display:flex;position:absolute;inset:0}.panel.sticker img{width:120px;height:120px}body.cart-yellow .tb-main{font-size:20px}body.cart-yellow .textbox{min-height:56px}@media (prefers-reduced-motion:reduce){.sq.star:after{animation:none}}.code-error{color:#c03028;min-height:1.2em;margin:0;font-size:13px;font-weight:700}.sq{overflow:hidden}.sq:has(.dragging){overflow:visible}.piece.trimmed{object-fit:fill;object-position:0 0;max-width:none;position:absolute}.chip{z-index:3;width:max(18px, calc(var(--sq) * .42));height:max(18px, calc(var(--sq) * .42));font-size:max(12px, calc(var(--sq) * .3));pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-weight:700;line-height:1;display:flex;position:absolute;top:2px;left:2px}.chip-w{color:#181818;background:#fff;border:2px solid #181818}.chip-b{color:#fff;background:#181818;border:2px solid #fff;box-shadow:0 0 0 1px #181818}.classic{font-size:calc(var(--sq) * .82);z-index:1;pointer-events:none;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.classic-w{color:#fff;-webkit-text-stroke:1.5px #181818;paint-order:stroke fill}.classic-b{color:#181818}.sq.legend-hl:before{content:"";z-index:2;pointer-events:none;background:#f0a02040;position:absolute;inset:0;box-shadow:inset 0 0 0 4px #f0a020}.legend-strip{width:calc(var(--sq) * 8);flex-direction:column;gap:4px;display:flex}.legend-strip[hidden]{display:none}.legend-team{align-items:center;gap:4px;padding-bottom:2px;display:flex;overflow-x:auto}.legend-team-name{writing-mode:vertical-rl;flex:none;font-size:10px;transform:rotate(180deg)}.legend-item{min-height:44px;font:inherit;border:2px solid var(--ink);cursor:pointer;text-align:start;background:#fff;border-radius:8px;flex:none;align-items:center;gap:4px;padding:2px 6px 2px 2px;display:flex;position:relative}.legend-item.on{background:#f8d030}.legend-mon{width:32px;height:32px;image-rendering:pixelated}.legend-item .chip.legend-chip{border-width:1.5px;width:20px;height:20px;font-size:13px;position:static}.legend-text{flex-direction:column;font-size:10px;line-height:1.2;display:flex}.legend-text b{font-size:11px}.plate{box-sizing:border-box;border:3px solid var(--ink);background:#fff;border-radius:10px;align-items:center;gap:8px;width:100%;min-height:52px;padding:0 8px;transition:opacity .6s;display:flex;position:relative}.plate[hidden]{display:none}.plate-top{margin-bottom:4px}.plate-bottom{flex-direction:row-reverse;margin-top:4px}.plate .plate-sprite{flex:none;width:48px;height:48px}.plate .plate-sprite img{width:100%;height:100%;image-rendering:pixelated;object-fit:contain}.plate-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;overflow:hidden}.plate-title{font-size:12px}.plate-say{top:-12px;border:2px solid var(--ink);background:#fff;border-radius:10px;padding:1px 8px;font-size:13px;font-weight:700;display:none;position:absolute;inset-inline-start:56px}.plate.saying .plate-say{animation:1.4s forwards say-fade;display:block}@keyframes say-fade{0%,70%{opacity:1}to{opacity:0}}.plate-bubble{top:-10px;text-align:center;color:#fff;border:2px solid var(--ink);background:#e03030;border-radius:50%;width:22px;height:22px;font-weight:900;line-height:20px;display:none;position:absolute;inset-inline-start:40px}.plate.check .plate-bubble{display:block}.plate.hop .plate-sprite{animation:.36s ease-out plate-hop}.plate.shake .plate-sprite{animation:.36s linear plate-shake}.plate.lost{opacity:.35}@keyframes plate-hop{40%{transform:translateY(-12px)}}@keyframes plate-shake{20%,60%{transform:translate(-4px)}40%,80%{transform:translate(4px)}}@media (prefers-reduced-motion:reduce){.plate.hop .plate-sprite,.plate.shake .plate-sprite{animation:none}.plate.lost{opacity:1}}@media (min-width:900px){.plate .plate-sprite{width:96px;height:96px}.plate{min-height:100px}}.panel.piece-card{text-align:center}.panel.piece-card h3{margin:4px 0}.faceoff{align-items:flex-start;gap:8px;width:100%;display:flex}.faceoff>.buttons,.faceoff>.yellow-levels{flex:1;min-width:0}.faceoff-me{text-align:center;flex-direction:column;flex:none;align-items:center;gap:2px;width:64px;font-size:12px;display:flex;position:sticky;top:8px}.faceoff-me .faceoff-sprite{width:64px;height:64px}.faceoff-me .faceoff-sprite img,.opponent-sprite img{width:100%;height:100%;image-rendering:pixelated;object-fit:contain}.opponent{text-align:start;align-items:center;gap:6px;margin-top:4px;display:flex}.opponent-sprite{flex:none;width:48px;height:48px}.opponent-text{flex-direction:column;line-height:1.15;display:flex}.opponent-text small{font-size:12px;font-weight:400}.opponent-text .stars{color:#d8a000;-webkit-text-stroke:1px var(--ink)}.big-level .opponent{margin:0}.big-level .opponent-sprite{width:56px;height:56px}.code-dots{opacity:.35;justify-content:center;gap:3px;margin-top:4px;display:flex}.code-dots.active{opacity:1}.code-dot{border:1.5px solid var(--ink);background:#fff;border-radius:50%;width:7px;height:7px}.code-dot.on{background:var(--ink)}.code-dots.shake{animation:.36s linear plate-shake}.yellow-top .code-dots{align-self:center;margin:0 auto 0 0}.big-team{background:#f8c0d8}.book-icon{width:80px;height:80px}.yslots{grid-template-columns:repeat(5,1fr);gap:6px;width:100%;display:grid}.yslot{font:inherit;border:3px solid var(--ink);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;align-items:center;padding:4px 0;display:flex;position:relative}.yslot.on{background:#f8d030;box-shadow:0 0 0 3px #3050f0}.yslot .menu-sprite{width:56px;height:56px}.yslot-glyph{font-size:22px;line-height:1}.ystickers{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:6px;width:100%;display:grid}.ysticker{border:2px solid var(--ink);cursor:pointer;background:#fff;border-radius:10px;padding:2px}.ysticker.on{background:#c8e8a0}.ysticker .menu-sprite{width:56px;height:56px}.ynext{box-sizing:border-box;border:3px dashed var(--ink);background:#fffbe0;border-radius:12px;align-items:center;gap:8px;width:100%;padding:6px 10px;display:flex}.ynext p{margin:0;font-weight:700}@media (prefers-reduced-motion:reduce){.code-dots.shake{animation:none}}html.fit .game-view{box-sizing:border-box;flex:auto;width:100%;min-height:0;padding:8px 4px;overflow:hidden}html.fit header.game-header{width:calc(var(--sq) * 8 + 6px);flex:none;margin-bottom:6px}html.fit header.game-header button{min-height:40px}.legend-toggle[hidden]{display:none!important}html.fit main{gap:6px}html.fit .plate{width:calc(var(--sq) * 8 + 6px);flex-direction:row;flex:none;height:56px;min-height:0;margin:0;overflow:visible}html.fit .plate .plate-sprite{width:48px;height:48px}.plate-who{flex:0 auto;align-items:center;gap:6px;min-width:0;max-width:48%;display:flex}.plate.no-trainer .plate-who{display:none}.plate-msg{-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;min-width:0;margin:0;font-size:13px;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.plate-msg:empty{display:none}.plate-bottom .plate-msg{display:block}.plate .textbox{-webkit-line-clamp:2;background:0 0;border:none;border-radius:0;-webkit-box-orient:vertical;width:auto;min-height:0;padding:0 16px 0 0;font-size:13px;line-height:1.25;display:-webkit-box;position:static;overflow:hidden}.plate .textbox p{margin:0;display:inline}.plate .tb-caption{margin-inline-start:4px;font-size:11px}.plate .tb-tick{inset-inline-end:6px;position:absolute;bottom:3px;right:auto}html.fit-icons .plate-name{display:none}html.fit-icons .plate-who{max-width:none}html.fit:not(.fit-wide) .legend-strip{width:calc(var(--sq) * 8 + 6px);flex-direction:row;flex:none;gap:8px;overflow-x:auto}html.fit:not(.fit-wide) .legend-team{flex:none;overflow:visible}html.fit:not(.fit-wide) .legend-item{min-height:38px}html.fit-drawer .legend-strip{display:none}html.fit-drawer.legend-open .legend-strip{z-index:30;background:var(--paper);border:3px solid var(--ink);width:auto;max-height:60dvh;box-shadow:0 4px 0 var(--ink);border-radius:10px;flex-direction:column;padding:8px;display:flex;position:fixed;bottom:8px;left:8px;right:8px;overflow:auto}html.fit-wide main>header.game-header{width:calc(var(--sq) * 8 + 6px);grid-area:1/1;margin:0}html.fit-wide main{grid-template-rows:auto auto;grid-template-columns:auto 260px;align-content:start;align-items:start;gap:6px 16px;display:grid}html.fit-wide main>.board-wrap{grid-area:2/1}.side-col{width:260px;max-height:var(--side-h,100%);overscroll-behavior:contain;flex-direction:column;grid-area:1/2/span 2;gap:6px;display:flex;overflow-y:auto}.side-col>*{flex:none;width:100%}html.fit-wide .side-col>.legend-strip{flex:0 auto;min-height:0;overflow-y:auto}html.fit-wide .legend-team{flex-direction:column;align-items:stretch;overflow:visible}html.fit-wide .legend-team-name{writing-mode:horizontal-tb;font-size:12px;transform:none}html.fit-wide .reactions,html.fit-wide .puzzle-bar,html.fit-wide .path-bar{width:100%}.sq .ground{pointer-events:none;z-index:0;border-radius:50%;height:18%;position:absolute;bottom:4%;left:14%;right:14%}.ground-w{background:radial-gradient(closest-side,#e82828bf,#e8282800)}.ground-b{background:radial-gradient(closest-side,#181828cc,#18182800)}html.fit-wide .side-col>.plate{width:100%}html.fit-icons .plate{height:40px}html.fit-icons .plate .plate-sprite{width:34px;height:34px}html.fit-icons header.game-header button{min-height:34px}html.fit-icons header.game-header{margin-bottom:4px}.screen-level,.screen-yellow-levels,.screen-shelf{gap:6px;padding:8px 0}.screen-shelf{overscroll-behavior:contain;overflow-y:auto}.screen-level h2,.screen-yellow-levels h2,.screen-shelf h2,.screen-shelf h3{margin:0}.screen-level>.menu-body,.screen-yellow-levels>.menu-body{flex:auto}.screen-level .faceoff,.screen-yellow-levels .faceoff{flex:1 0 auto}.screen-level .faceoff>.buttons,.screen-yellow-levels .faceoff>.yellow-levels,.screen-level .menu-body>.buttons,.screen-yellow-levels .menu-body>.yellow-levels{grid-template-rows:repeat(4,minmax(max-content,1fr));gap:6px;display:grid}.screen-level .menu-body>.buttons,.screen-yellow-levels .menu-body>.yellow-levels{flex:1 0 auto}.screen-level .faceoff>.buttons,.screen-yellow-levels .faceoff>.yellow-levels{flex:1 1 0;align-self:stretch;min-width:0}.menu button.level{justify-content:center;gap:2px;min-height:0;padding:4px}.yellow-levels .big-level{min-height:0}@media (max-height:760px){.menu button.level>small{display:none}.opponent-sprite{width:40px;height:40px}.big-level .opponent-sprite{width:44px;height:44px}.loadout .loadout-mon{width:26px;height:26px}}@media (max-height:560px){.opponent-text small,.opponent .loadout{display:none}.faceoff-me .faceoff-sprite{width:44px;height:44px}.big-level b,.big-level .stars{font-size:20px}}.screen-shelf .shelf{flex:auto;align-items:center;gap:12px;min-height:0}.screen-shelf .cartridge{width:min(150px,42vw);height:min(170px,26dvh)}.screen-shelf .lang-row{gap:4px}.screen-shelf .lang-btn{min-width:0;min-height:36px;padding:0 8px;font-size:13px}@media (max-height:560px){.screen-shelf h3{display:none}.screen-shelf .lang-btn{min-height:30px;font-size:12px}}.loadout{gap:2px;margin-inline-start:6px;display:flex}.loadout .loadout-mon{width:32px;height:32px}html.fit-wide .plate{height:auto;min-height:72px}.gb-box{box-sizing:border-box;border:4px double var(--ink);outline:3px solid var(--ink);outline-offset:-11px;background:#f8f8f0;border-radius:2px;padding:14px 18px;position:relative;box-shadow:inset 0 0 0 2px #f8f8f0}.gb-box:before,.gb-box:after{content:"";background:var(--ink);width:6px;height:6px;box-shadow:calc(100% + 0px) 0 0 var(--ink);position:absolute;top:-2px;left:-2px}.gb-box:before{box-shadow:none}.gb-box:after{left:auto;right:-2px}.screen-start{justify-content:center;gap:16px}.start-list{flex-direction:column;gap:4px;width:min(100%,380px);display:flex}.menu button.start-item{text-align:start;letter-spacing:1px;background:0 0;border:none;align-items:center;gap:10px;min-height:52px;padding:4px 8px;font-size:clamp(18px,5vw,24px);font-weight:900;display:flex}.start-cursor{visibility:hidden;width:1em}.start-item.on .start-cursor,.start-item:focus-visible .start-cursor{visibility:visible}.menu button.start-item:focus-visible{outline:none}.summary{align-items:center;gap:12px;width:min(100%,380px);display:flex}.summary .summary-sprite{flex:none;width:64px;height:64px}.summary .summary-sprite img{width:100%;height:100%;image-rendering:pixelated;object-fit:contain}.summary-rows{grid-template-columns:auto 1fr;gap:2px 12px;margin:0;font-weight:700;display:grid}.summary-rows dt{letter-spacing:1px;margin:0}.summary-rows dd{text-align:end;margin:0}@media (min-width:900px){.screen-start{flex-flow:wrap;justify-content:center;align-items:flex-start;padding-top:18vh}}.replace-list{flex-direction:column;gap:10px;width:100%;display:flex}.replace-row{flex-direction:column;gap:6px;display:flex}.replace-row .summary{width:100%}.duo-cols{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.duo-col{flex-direction:column;gap:6px;display:flex}.duo-col h3{text-align:center;margin:0}.menu button.duo-pick.on{background:#f8d030;box-shadow:0 0 0 3px #3050f0}.sq.faded-move .piece,.sq.faded-move .classic,.sq.faded-move .chip{opacity:.4}.sq .coord{z-index:4;font-size:max(9px, calc(var(--sq) * .2));pointer-events:none;opacity:.75;font-weight:700;line-height:1;position:absolute}.sq .coord-rank{top:2px;left:2px}.sq .coord-file{bottom:1px;right:2px}.sq.dark .coord{color:#f0f0e0}.sq.light .coord{color:#406030}.i18n-mark{color:#fff;cursor:pointer;vertical-align:middle;background:#3050f0;border-radius:6px;margin-inline-start:4px;padding:0 4px;font-size:12px;font-weight:400;line-height:1.4;display:inline-block}.i18n-panel{z-index:100;text-align:left;direction:ltr;background:#fff;border:3px solid #3050f0;border-radius:10px;flex-direction:column;gap:6px;max-height:70dvh;padding:10px;font-size:14px;display:flex;position:fixed;bottom:8px;left:8px;right:8px;overflow:auto}.i18n-panel p{margin:0}.i18n-panel textarea{min-height:70px;font:inherit}.i18n-panel textarea,.i18n-panel input{box-sizing:border-box;width:100%}.feedback-box{flex-direction:column;align-items:center;width:100%;display:flex}.feedback-form{flex-direction:column;gap:6px;width:100%;display:flex}.feedback-form p{margin:0;font-weight:700}.feedback-form textarea{min-height:56px;font:inherit;box-sizing:border-box;width:100%}.feedback-kinds{gap:6px;display:flex}.feedback-kinds button{flex:1}.trainer-sprite.loading{position:relative}.trainer-sprite.loading img{opacity:0}.trainer-sprite.loading:before{content:"";background:#303030;border-radius:50%;width:28%;height:28%;position:absolute;top:14%;left:36%}.trainer-sprite.loading:after{content:"";background:#303030;border-radius:40% 40% 8% 8%;width:48%;height:54%;position:absolute;top:40%;left:26%}.sq.strike{animation:.36s ease-out both loading-strike}@keyframes loading-strike{0%{box-shadow:inset 0 0 0 100vmax #fff0}30%{box-shadow:inset 0 0 0 100vmax #ffffffb3}to{box-shadow:inset 0 0 0 100vmax #e030304d}}@keyframes loading-strike-fade{to{background-color:var(--loading-strike)}}.loadout-still{flex:none;position:relative;overflow:hidden}.loadout-still>img{width:100%;height:100%;image-rendering:pixelated;position:absolute}@media (prefers-reduced-motion:reduce){.sq.strike{animation:loading-strike-fade var(--reduced-fade) ease-out both}.sq.light.strike{--loading-strike:#e6b6a0}.sq.dark.strike{--loading-strike:#9c834d}@supports (color:color-mix(in srgb, red, blue)){.sq.light.strike{--loading-strike:color-mix(in srgb, var(--light) 70%, #e03030)}.sq.dark.strike{--loading-strike:color-mix(in srgb, var(--dark) 70%, #e03030)}}}.start-btn{min-width:64px;min-height:44px;font:inherit;letter-spacing:1px;color:var(--ink);border:4px double var(--ink);cursor:pointer;background:#f8f8f0;border-radius:2px;flex:none;padding:0 8px;font-size:13px;font-weight:900}.start-btn[hidden]{display:none}.start-btn.corner{top:calc(6px + env(safe-area-inset-top));z-index:25;position:fixed;inset-inline-end:calc(6px + max(env(safe-area-inset-left), env(safe-area-inset-right)))}.hub-top>.start-btn,.yellow-top>.start-btn{flex:none}header.game-header .turn{text-overflow:ellipsis;white-space:nowrap;text-align:center;flex:auto;min-width:0;overflow:hidden}.start-overlay{z-index:60;background:#00000040;position:fixed;inset:0}.start-pop{top:56px;width:min(300px,100vw - 16px);max-height:calc(100dvh - 72px);position:absolute;inset-inline-end:8px;overflow:auto}.start-pop .start-item{width:100%;font:inherit;text-align:start;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;min-height:44px;font-size:18px;font-weight:900;display:flex}.start-pop .start-item.on .start-cursor,.start-pop .start-item:focus-visible .start-cursor,.start-pop .start-item:hover .start-cursor{visibility:visible}.menu button.newgame-back{top:calc(8px + env(safe-area-inset-top));z-index:25;min-height:44px;padding:0 12px;font-size:14px;position:fixed;inset-inline-start:calc(8px + max(env(safe-area-inset-left), env(safe-area-inset-right)))}.screen-quick .start-list .start-item{min-height:56px}html.fit header.game-header .start-btn{min-height:44px}.menu.has-newgame-back{padding-top:60px}.plate-name{white-space:nowrap;align-items:baseline;min-width:0;display:flex;overflow:hidden}.plate-name b{text-overflow:ellipsis;min-width:0;overflow:hidden}.plate-name .plate-sep,.plate-name .plate-title{white-space:pre;flex:none}html.fit-wide .plate-who{max-width:62%}html.fit-wide .plate-name{font-size:12px}header.game-header{position:relative}header.game-header .turn{max-width:var(--turn-w,calc(100% - 2 * 120px));pointer-events:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}header.game-header>.start-btn{margin-inline-start:auto}.plate-who{overflow:hidden}.plate-who .plate-name{flex:0 auto}.plate-who{max-width:66%}.plate-name b{min-width:4ch}.plate-name .plate-sep{white-space:normal;margin:0 4px}.plate-name .plate-title{white-space:nowrap}html.fit-wide .plate{flex-wrap:wrap;align-content:center;row-gap:2px;padding-top:4px;padding-bottom:4px}html.fit-wide .plate-who{flex:100%;max-width:100%}html.fit-wide .plate .plate-sprite{width:44px;height:44px}html.fit-wide .plate-msg{flex:100%;font-size:12px}.plate .textbox{max-height:3.9em;display:block}.plate .textbox .tb-main{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.plate .textbox .tb-caption{display:none}.hub-top>.hub-controls{flex-direction:column;flex:none;gap:6px;display:flex}.hub-controls .start-btn{min-width:56px;padding:0 6px}.hub-controls>.lang-top{align-items:stretch}.hub-controls .lang-code,.hub-controls .start-btn{width:100%}.big-level{flex-wrap:wrap;align-content:center;row-gap:4px}.big-level>b{order:1}.big-level>.stars{order:2}.big-level>.opponent{flex:100%;order:3;min-width:0}.big-level .opponent b{font-size:15px}.big-level .opponent-text{min-width:0}.big-level .opponent-text b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.big-level .loadout{margin-inline-start:auto}@media (max-width:420px){.big-level{column-gap:8px;padding:6px 12px}.big-level>b{font-size:22px}.big-level>.stars{white-space:nowrap;font-size:20px}.big-level .opponent-sprite{width:40px;height:40px}.big-level .opponent b{font-size:13px}.big-level .opponent-text small{white-space:nowrap;font-size:11px}.big-level .loadout .loadout-mon{width:24px;height:24px}}header.game-header button:disabled{opacity:.45;cursor:default}.panel.end .end-winner{margin:0 0 6px;font-weight:700}.end-sticker{justify-content:center;align-items:center;gap:8px;margin:0 0 8px;display:flex}.end-sticker p{margin:0;font-weight:700}.end-sticker-sprite{object-fit:contain;width:56px;height:56px;image-rendering:pixelated;background:50%/contain no-repeat}header.game-header .turn.moves-low{color:#c02020}.intro .intro-note{margin:6px 0 0;font-size:13px}.promo-row img.promo-sprite{background:50%/contain no-repeat}.start-pop .start-item.start-close{border-top:2px solid var(--ink);margin-top:4px}.start-pop .start-item.start-close .start-cursor{visibility:visible}.code-dots{opacity:0;transition:opacity .6s}.code-dots.active{opacity:1;transition:none}@keyframes star-pulse{50%{filter:brightness(1.25);transform:scale(1.18)}}.sq.star:after{animation:1.1s ease-in-out infinite star-pulse}@media (prefers-reduced-motion:reduce){.sq.star:after{animation:none}.code-dots{transition:none}}@media (min-width:900px) and (min-height:640px){.chip.big{width:calc(var(--sq) * .36);height:calc(var(--sq) * .36);font-size:calc(var(--sq) * .25);top:2px;left:2px;transform:none}}header.game-header .turn.objective{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:calc(100% - 160px);font-weight:700;line-height:1.15;display:-webkit-box}.plate-you{color:#fff;border:2px solid var(--ink);background:#e03030;border-radius:8px;flex:none;padding:1px 6px;font-size:11px;font-weight:900}.puzzle-banner.pop{animation:.36s ease-out pip-pop}@keyframes pip-pop{40%{transform:scale(1.06)}}.rating-up{color:#186018;border:2px solid var(--ink);background:#d8f0c0;border-radius:10px;align-self:center;margin:0;padding:0 8px;font-weight:700}.rating-up[hidden]{display:none}.solved-stamp{z-index:5;color:#fff;border:4px solid var(--ink);box-shadow:4px 4px 0 var(--ink);box-sizing:border-box;white-space:nowrap;max-width:calc(100% - 16px);animation:solved-stamp-in var(--stamp-edge,.18s) ease-out both, solved-stamp-out var(--stamp-edge,.18s) ease-in calc(var(--stamp-ms,.9s) - var(--stamp-edge,.18s)) forwards;pointer-events:none;background:#30a030;border-radius:8px;padding:4px 16px;font-size:clamp(22px,8vw,40px);font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-8deg)}@keyframes solved-stamp-in{0%{opacity:0;transform:translate(-50%,-50%)rotate(-8deg)scale(1.8)}to{opacity:1;transform:translate(-50%,-50%)rotate(-8deg)scale(1)}}@keyframes solved-stamp-out{0%{opacity:1;transform:translate(-50%,-50%)rotate(-8deg)scale(1)}to{opacity:0;transform:translate(-50%,-50%)rotate(-8deg)scale(1)}}.coach{z-index:44;pointer-events:none;position:fixed;inset:0}.coach[hidden]{display:none}.coach-spot{border:3px solid #f8d030;border-radius:8px;position:fixed;box-shadow:0 0 0 9999px #0000004d}.coach-spot[hidden]{display:none}.coach-bubble{box-sizing:border-box;border:3px solid var(--ink);background:#fff;border-radius:10px;padding:8px 12px;font-size:15px;font-weight:700;position:fixed}.coach-bubble:after{content:"";left:calc(var(--arrow,50%) - 8px);border:8px solid #0000;width:0;height:0;position:absolute}.coach-bubble.below:after{border-bottom-color:var(--ink);top:-16px}.coach-bubble.above:after{border-top-color:var(--ink);bottom:-16px}.coach-text{margin:0 0 4px}.coach-tap{text-align:end;font-size:11px;font-weight:400;display:block}@media (prefers-reduced-motion:reduce){.puzzle-banner.pop{animation:none}}.map-strip .badge.badge-new{position:relative}.map-strip .badge.badge-new:after{content:"";box-shadow:0 0 0 2px var(--ink);border:3px solid #f8d030;border-radius:50%;position:absolute;inset:-7px}@media (prefers-reduced-motion:no-preference){.map-strip .badge.badge-new:after{animation:.6s ease-in-out 4 alternate both puzzle-badge-pulse}}@media (prefers-reduced-motion:reduce){.map-strip .badge.badge-new:after{animation:fade-in var(--reduced-fade) linear both}}@keyframes puzzle-badge-pulse{0%{opacity:.6;transform:scale(.85)}to{opacity:1;transform:scale(1.25)}}html.fit-wide .review .review-acts{flex-wrap:wrap}html.fit-wide .review .review-acts .review-btn{min-width:max-content}html:not(.fit-wide) .review .review-acts .review-btn{white-space:normal;overflow-wrap:break-word;flex:1 1 0;min-width:44px;line-height:1.1}@media (max-width:340px){html:not(.fit-wide) .review .review-acts .review-btn{font-size:12px}}html,body{overscroll-behavior:none;height:100%;overflow:hidden}#app{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.menu>*{flex:none}.menu>.menu-body{overscroll-behavior:contain;flex-direction:column;flex:0 auto;align-items:center;gap:12px;width:calc(100% + 16px);min-height:0;margin-inline:-8px;padding:4px 8px 10px;display:flex;overflow:hidden auto}.menu-body>*{flex-shrink:0}.menu>.menu-actions{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.menu-actions>button{max-width:100%}.menu .menu-actions>button.secondary{width:50%;min-width:min(160px,100%)}.screen-splash>.menu-body,.screen-start>.menu-body{justify-content:center}.screen-splash>.menu-body{flex-grow:1}@media (max-width:600px){body:has(>.start-btn.corner:not([hidden])) .menu{padding-top:60px}}@media (max-width:740px){body:has(>.start-btn.corner:not([hidden])) .screen-howto{padding-top:60px}}html.fit-short.fit-land body:has(>.start-btn.corner:not([hidden])) .menu>:first-child:is(h2){padding-inline:84px}.screen-start>.menu-body{gap:16px}@media (min-width:900px){.screen-start{padding-top:12px}}html.fit-land .screen-start{width:min(100vw - 16px,820px)}html.fit-land .screen-start>.menu-body{flex-direction:row;justify-content:center;align-items:center}html.fit-land .screen-start .start-list,html.fit-land .screen-start .summary{flex:0 380px;min-width:0}.screen-title{width:min(100vw - 16px,1120px)}.screen-title>.logo{margin:0}.screen-title .hub-zones{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:20px 24px;margin-top:0;display:grid}@media (min-width:1000px){.screen-title .hub-zones{grid-template-columns:repeat(3,1fr)}}.screen-yellow{width:min(100vw - 16px,760px)}.screen-yellow>.menu-body{flex-flow:wrap;align-content:flex-start;align-items:stretch;gap:16px}.screen-yellow>.menu-body>*{flex:300px;min-width:0}.screen-yellow .big-tile{min-height:clamp(96px,22dvh,150px)}html.fit-short .menu{gap:8px;padding-top:8px}html.fit-short .menu h2{margin:0;font-size:16px}html.fit-short .logo h1{font-size:20px}html.fit-short .screen-title .logo .sub{display:none}html.fit-short .screen-title .hub-zones{gap:12px 16px}html.fit-short .tile{min-height:56px;padding-block:4px}html.fit-short .tile-pic,html.fit-short .tile-icon.item-icon{width:40px;height:40px}html.fit-short .hub-zone{gap:6px}html.fit-short .big-tile{min-height:0;padding:6px}html.fit-short .big-tile .big-mon,html.fit-short .big-tile .book-icon{width:48px;height:48px}html.fit-short .big-tile b{font-size:22px}html.fit-short.fit-land .screen-yellow .big-tile{flex-direction:row;gap:12px}html.fit-short.fit-land .screen-name{width:min(100vw - 16px,640px)}html.fit-short.fit-land .name-step .buttons{grid-template-columns:repeat(2,1fr);display:grid}html.fit-short.fit-land .screen-card{width:min(100vw - 16px,640px)}html.fit-short.fit-land .trainer-card{grid-template-columns:auto 1fr;align-items:center;column-gap:16px;display:grid}html.fit-short.fit-land .trainer-card>:first-child{grid-row:1/span 9}html.fit-short .intro-stage{min-height:0}html.fit-short.fit-land .screen-oak .menu-body>.cards,html.fit-short.fit-land .screen-team .cards{max-width:520px}html.fit-short .cards .card .menu-sprite{max-width:64px}html.fit-short .menu button.primary{min-height:48px;font-size:18px}header.game-header .turn{white-space:normal;-webkit-line-clamp:2;text-overflow:clip;-webkit-box-orient:vertical;line-height:1.15;display:-webkit-box;overflow:hidden}html.turn-flow header.game-header .turn{flex:1 1 0;max-width:none;font-size:12px;position:static;transform:none}html.turn-flow header.game-header>.start-btn{margin-inline-start:0}html.turn-row header.game-header{flex-wrap:wrap;row-gap:2px}html.turn-row header.game-header .turn{-webkit-line-clamp:2;flex:100%;order:9}html.turn-row header.game-header>.start-btn{margin-inline-start:auto}html.fit:not(.fit-wide) header.game-header>button:not(.start-btn){white-space:normal;flex:0 auto;min-width:0;padding:0 6px;line-height:1.1}.plate-bottom .plate-msg{overflow:visible}html.fit.turn-row:not(.fit-wide) header.game-header>button:not(.start-btn){flex:1 1 0}.plate .textbox{overflow:visible}html.fit .plate.tight .textbox .tb-main,html.fit .plate.tight .plate-msg{-webkit-line-clamp:4;font-size:10.5px;line-height:1.15}.dex-cell,.cards .card{overflow-wrap:anywhere}@media (max-width:360px){.cards .card{font-size:14px}}.plate.no-title .plate-sep,.plate.no-title .plate-title{display:none}html.fit-wide .plate-name{flex-wrap:wrap}html.fit-wide .plate-name .plate-sep{display:none}html.fit-wide .plate-name .plate-title{flex:100%}.plate-msg{-webkit-line-clamp:3}html.fit:not(.fit-wide) .plate .textbox,html.fit:not(.fit-wide) .plate-msg{font-size:12px;line-height:1.2}html.fit-icons:not(.fit-wide) .plate-bottom{height:52px}html.fit-icons.fit-wide .plate{min-height:56px}html.fit-icons.fit-wide .plate .plate-sprite{width:40px;height:40px}html.fit-icons.fit-wide .plate-name{display:flex}html.fit-bar-compact .puzzle-bar .rating,html.fit-bar-compact .puzzle-bar .step{display:none}html.fit-bar-compact .review{flex-flow:wrap;padding:4px}html.fit-bar-compact .review-text{flex:100%;font-size:12px}html.fit-bar-compact .review-nav,html.fit-bar-compact .review-acts{flex:auto}html.fit-bar-compact .review-btn{min-width:44px;min-height:44px;padding:0 4px;font-size:13px}html.fit-bar-compact .puzzle-banner{padding:2px 4px;font-size:11px}html.fit-bar-over .puzzle-bar:not([hidden]),html.fit-bar-over .path-bar:not([hidden]){z-index:20;left:calc(4px + env(safe-area-inset-left));right:calc(4px + env(safe-area-inset-right));bottom:calc(4px + env(safe-area-inset-bottom));background:var(--paper);border:3px solid var(--ink);border-radius:8px;width:auto;max-height:50dvh;padding:4px;position:fixed;overflow-y:auto;box-shadow:0 -2px #00000026}.review-btn{white-space:nowrap;padding:0 4px}.review-nav .review-btn.replay{flex:1.8 auto}@media (max-width:380px){.review-btn{min-width:44px;font-size:13px}}:root{--tap:44px}@media (pointer:coarse),(max-width:900px){button,select,.menu button,.start-btn,.tile-help,.menu .tile-help,.legend-item,.legend-toggle,.screen-shelf .lang-btn,html.fit header.game-header button,html.fit-icons header.game-header button{min-height:var(--tap)}.tile-help,.menu .tile-help{width:var(--tap);height:var(--tap)}html.fit:not(.fit-wide) .legend-item,.setting select,.puzzle-buttons select{min-height:var(--tap)}.setting input[type=checkbox]{width:var(--tap);height:var(--tap);flex:none;margin:0}input[type=range]{min-height:var(--tap)}.site-footer a{min-height:var(--tap);align-items:center;padding:0 8px;display:inline-flex}.dex-cell,.yslot,.ysticker{min-width:var(--tap);min-height:var(--tap)}.menu button.lang-btn{min-width:var(--tap)}}.map-strip{flex-direction:column;align-items:center;gap:2px;width:100%;display:flex}.map-strip p{margin:0}.journey-bar{border:2px solid var(--ink);background:#fff;border-radius:5px;width:min(100%,320px);height:10px;overflow:hidden}.journey-bar span{background:#58b040;height:100%;display:block}.map-legend{text-align:center;color:#505050;margin:0}.kanto-map .node.cleared{min-height:44px;padding:4px 10px}.kanto-map .node-row{align-items:center;gap:8px;width:100%;display:flex}.kanto-map .node-row b{flex:1}.kanto-map .node-row .badge{width:18px;height:18px}.stamp{color:#307030;letter-spacing:1px;background:#fff;border:2px solid #307030;border-radius:4px;padding:0 5px;font-size:11px;font-weight:700;display:inline-block;transform:rotate(-6deg)}.stamp-now .stamp{animation:cleared-stamp-in var(--map-stamp,.4s) cubic-bezier(.2, 1.6, .4, 1) both}@keyframes cleared-stamp-in{0%{opacity:0;transform:rotate(-6deg)scale(2.4)}to{opacity:1;transform:rotate(-6deg)scale(1)}}.kanto-map .node.current{border-width:4px;outline:3px solid #f0a020;gap:6px;min-height:0;padding:8px 10px;box-shadow:0 0 0 6px #f0a02033}.kanto-map .node.current .node-name{width:100%;min-height:44px;font:inherit;text-align:start;cursor:pointer;color:inherit;background:0 0;border:0;align-items:center;gap:8px;padding:0;font-size:18px;display:flex}.kanto-map .node.current .pointer{color:#d07010;animation:1s ease-in-out infinite pointer-nudge}@keyframes pointer-nudge{50%{transform:translate(4px)}}.kanto-map .map-next{width:100%;min-height:52px;font:inherit;border:3px solid var(--ink);cursor:pointer;background:#f8d030;border-radius:6px;font-size:16px;font-weight:700}.kanto-map .node.locked .unlock{color:#606060}.map-more{text-align:center;color:#606060;margin:4px 0 0}.screen-route .trainer-row{align-items:center;gap:8px;display:flex}.screen-route .trainer-row .row-sprite{width:40px;height:40px}.screen-route .trainer-row .trainer-name{flex:1}.screen-route .trainer-row .check{color:#307030}.screen-route .trainer-row.next{background:#fff4c8}.progress-card{cursor:pointer;flex-direction:column;align-items:center;gap:6px;width:min(92vw,360px);display:flex}.progress-card .card-title{font-size:20px}.progress-card p{margin:0}.progress-card .pips{letter-spacing:6px;font-size:22px}.progress-card .badge-line{align-items:center;gap:6px;display:flex}.progress-card .stamp{font-size:14px}.progress-card .open{color:#307030;font-weight:700}.progress-card .tb-tick{align-self:flex-end;position:static}.warmup-intro{flex-direction:column;align-items:center;gap:8px;width:min(92vw,380px);display:flex}.warmup-intro p{margin:0;font-weight:700}.start-next{border-bottom:2px solid var(--ink);margin:0 0 4px;padding:4px 8px;font-size:14px;font-weight:700}.summary{flex-wrap:wrap}.summary-next{flex-basis:100%;margin:0;font-weight:700}@media (prefers-reduced-motion:reduce){.kanto-map .node.current .pointer{animation:none}}.catch-stage{justify-content:center;display:flex;position:relative}.catch-ball{box-sizing:border-box;border:3px solid var(--ink);background:linear-gradient(#e03030 0 44%, var(--ink) 44% 56%, #fff 56%);pointer-events:none;border-radius:50%;width:30px;height:30px;margin:-15px 0 0 -15px;position:absolute;top:50%;left:50%}.catch-ball:after{content:"";box-sizing:border-box;border:2px solid var(--ink);background:#fff;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;position:absolute;top:50%;left:50%}.encounter.throwing .catch-ball{animation:journey-ball-fly calc(var(--catch-beat) * .25) ease-out both, journey-ball-wobble calc(var(--catch-beat) * .18) ease-in-out calc(var(--catch-beat) * .3) 3 both}.encounter.throwing.fled .catch-ball{animation:journey-ball-fly calc(var(--catch-beat) * .25) ease-out both, journey-ball-wobble calc(var(--catch-beat) * .18) ease-in-out calc(var(--catch-beat) * .3) 2 both, journey-ball-pop calc(var(--catch-beat) * .12) ease-out calc(var(--catch-beat) * .7) both}.encounter.throwing .catch-stage img{animation:journey-mon-in calc(var(--catch-beat) * .1) ease-in calc(var(--catch-beat) * .2) both}.encounter.throwing.fled .catch-stage img{animation:journey-mon-in calc(var(--catch-beat) * .1) ease-in calc(var(--catch-beat) * .2) both, journey-mon-out calc(var(--catch-beat) * .15) ease-out calc(var(--catch-beat) * .72) forwards}@keyframes journey-ball-fly{0%{transform:translateY(200px)rotate(-540deg)scale(.6)}to{transform:none}}@keyframes journey-ball-wobble{25%{transform:rotate(-20deg)}75%{transform:rotate(20deg)}}@keyframes journey-ball-pop{to{opacity:0;transform:scale(1.5)}}@keyframes journey-mon-in{to{opacity:0;transform:scale(.1)}}@keyframes journey-mon-out{0%{opacity:0;transform:scale(.1)}to{opacity:1;transform:none}}.enc-gain{margin:2px 0 0;font-size:13px;font-weight:700}.dex-note{margin:0;font-weight:700}.dex-detail .changed{border-radius:4px;animation:1.2s ease-out both journey-changed}@keyframes journey-changed{0%{background-color:#ffec78f2}to{background-color:#ffec7800}}.gift-card .menu-sprite{align-self:center}.cards .card[hidden]{visibility:hidden}.cards .card:disabled{color:inherit}.overlay>.panel.handover{animation:journey-handover var(--card-in) ease-out both}.overlay>.panel.handover .slide-in{animation:none}@keyframes journey-handover{0%{transform:scale(.94)}70%{transform:scale(1.03)}to{transform:none}}@keyframes journey-handover-fade{0%{opacity:.6}}@media (prefers-reduced-motion:reduce){.encounter.throwing .catch-ball,.encounter.throwing.fled .catch-ball{animation:fade-in var(--reduced-fade) linear both}.encounter.throwing .catch-stage img,.encounter.throwing.fled .catch-stage img{animation:fade-out var(--reduced-fade) linear forwards}.dex-detail .changed{background-color:#ffec7899;animation:none}.overlay>.panel.handover{animation:journey-handover-fade var(--reduced-fade) linear both}}.plate .textbox{padding:0;padding-inline-end:16px}.plate .tb-tick{left:auto;right:auto;inset-inline-end:6px}.warmup-intro .end-buttons{flex-direction:column;align-items:stretch;width:100%}.warmup-intro .end-buttons button{min-height:48px}.story-trainer.slide-in{animation-name:story-slide-in}@keyframes story-slide-in{0%{opacity:0;transform:translate(60vw)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.story-trainer.slide-in{animation:none}}.story-trainer.sil{position:fixed}.chip.big{width:max(22px, calc(var(--sq) * .44));height:max(22px, calc(var(--sq) * .44));font-size:max(14px, calc(var(--sq) * .32));top:1px;left:1px;transform:none}.piece.faded{opacity:1}html{--dir:1}html[dir=rtl]{--dir:-1}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.screen-cover{z-index:49;pointer-events:auto;position:fixed;inset:0;overflow:hidden}.cover-screen{background:var(--paper)}.cover-area,.cover-first{background:#fff}.cover-bar{background:var(--ink);height:12.6%;position:absolute;left:0;right:0}.cover-bar:nth-child(2){top:12.5%}.cover-bar:nth-child(3){top:25%}.cover-bar:nth-child(4){top:37.5%}.cover-bar:nth-child(5){top:50%}.cover-bar:nth-child(6){top:62.5%}.cover-bar:nth-child(7){top:75%}.cover-bar:nth-child(8){top:87.5%}.cover-label{text-align:center;color:var(--ink);margin:0;font-weight:700;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.cover-label[hidden]{display:none}.cover-battle .cover-label{color:#fff}.board-dip{z-index:6;background:var(--paper);opacity:0;pointer-events:auto;position:absolute;inset:0}.overlay{transition:background-color var(--dim-in) ease-out}.overlay:not([hidden]){animation:dim-in var(--dim-in) ease-out}.overlay.clear{background-color:#0000}@keyframes dim-in{0%{background-color:#0000}}.overlay>.panel,.intro>.panel{animation:card-in var(--card-in) ease-out both}@keyframes card-in{0%{opacity:0;transform:scale(.94)}50%{opacity:1}70%{transform:scale(1.03)}to{opacity:1;transform:none}}.overlay>.panel.story{animation:story-in var(--story-in) ease-out both}@keyframes story-in{0%{opacity:0;transform:translateY(12px)}}.story-text.line-in{animation:fade-in var(--line-in) ease-out both}[data-guard]:not([data-ready]) .tb-tick{visibility:hidden}.slide-in{animation:slide-in var(--trainer-in) ease-out both}@media (prefers-reduced-motion:no-preference){[dir=rtl] .slide-in{animation-name:slide-in-rtl}[dir=rtl] .story-trainer.slide-in{animation-name:story-slide-in-rtl}}@keyframes slide-in-rtl{0%{opacity:0;transform:translate(-120%)}to{opacity:1;transform:none}}@keyframes story-slide-in-rtl{0%{opacity:0;transform:translate(calc(-50% - 60vw))}to{opacity:1;transform:translate(-50%)}}html.fit-wide main{grid-template-rows:auto 1fr}.trainer-spot{color:var(--ink);border:3px solid var(--ink);animation:spot-pop var(--spot) ease-out both;pointer-events:none;background:#fff;border-radius:8px;padding:0 12px;font-size:32px;font-weight:900;line-height:1.2;position:fixed;top:40%;left:50%;transform:translate(-50%,-100%)}@keyframes spot-pop{0%{opacity:0;transform:translate(-50%,-60%)scale(.4)}30%{opacity:1;transform:translate(-50%,-100%)scale(1.2)}45%,to{opacity:1;transform:translate(-50%,-100%)scale(1)}}.review.review-in{animation:fade-in var(--review-in) ease-out both}.review.gone,.path-bar.gone{visibility:hidden}.review-layer>*{animation:fade-in var(--arrow-in) ease-out both}.piece.miss-shake{animation:miss-shake var(--shake) linear}@keyframes miss-shake{20%,60%{translate:-4px}40%,80%{translate:4px}}.overlay>.panel.win-card{animation:win-slam var(--win-card-in) ease-out both}@keyframes win-slam{0%{opacity:0;transform:scale(1.5)rotate(-4deg)}60%{opacity:1;transform:scale(.96)rotate(0)}to{opacity:1;transform:none}}.win-card .pip{animation:pip-light var(--card-in) ease-out both;animation-delay:calc(var(--win-card-in) + var(--i,0) * var(--pip-step));display:inline-block}@keyframes pip-light{0%{opacity:.15;transform:scale(.5)}}.badge-card .badge-big{width:96px;height:96px;animation:badge-spin var(--badge-in) ease-out both;border-width:4px;position:relative;overflow:hidden}@keyframes badge-spin{0%{transform:scale(0)rotate(-180deg)}70%{transform:scale(1.15)rotate(0)}to{transform:none}}.badge-card .badge-big:after{content:"";animation:badge-shine var(--badge-shine) ease-in-out var(--badge-in) both;background:linear-gradient(105deg,#0000 35%,#ffffffd9 50%,#0000 65%);position:absolute;inset:0;transform:translate(-120%)}[dir=rtl] .badge-card .badge-big:after{background:linear-gradient(-105deg,#0000 35%,#ffffffd9 50%,#0000 65%);transform:translate(120%)}@media (prefers-reduced-motion:no-preference){[dir=rtl] .badge-card .badge-big:after{animation-name:badge-shine-rtl}}@keyframes badge-shine{0%{transform:translate(-120%)}to{transform:translate(120%)}}@keyframes badge-shine-rtl{0%{transform:translate(120%)}to{transform:translate(-120%)}}.unlock-card .stamp,.town-card .stamp{animation:cleared-stamp-in var(--map-stamp) cubic-bezier(.2, 1.6, .4, 1) var(--card-in) both}.kanto-map .node.stamp-now{animation:row-flash var(--cleared-row) ease-in-out}.kanto-map .node.stamp-wait .stamp{visibility:hidden}@keyframes row-flash{0%,50%,to{box-shadow:inset 0 0 0 999px #ffec7800}25%,75%{box-shadow:inset 0 0 0 999px #ffec78a6}}.kanto-map .node.current.next-pulse{animation:next-pulse calc(var(--next-pulse) / 2) ease-in-out 2}@keyframes next-pulse{50%{transform:scale(1.04);box-shadow:0 0 0 10px #f0a02059}}.cheer{z-index:6;pointer-events:none;width:0;height:0;position:absolute}.cheer-star{color:#f0c020;font-size:calc(var(--sq) * .4);text-shadow:0 0 2px var(--ink);animation:cheer var(--cheer) ease-out both;line-height:1;position:absolute;top:0;left:0}@keyframes cheer{0%{opacity:1;transform:translate(-50%, -50%) rotate(var(--a)) translateY(0) scale(.4)}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--a)) translateY(calc(var(--sq) * -.9)) scale(1)}}.path-bar button.fade-in{animation:fade-in var(--line-in) ease-out both}.path-progress.pop{animation:.36s ease-out pip-pop}.overlay>.panel.sticker{animation:sticker-in var(--sticker-in) ease-out both}@keyframes sticker-in{0%{opacity:0;transform:scale(.5)}60%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:none}}.panel.sticker img{animation:sticker-hop calc(var(--sticker-in) / 2) ease-out var(--sticker-in) 2}@keyframes sticker-hop{40%{transform:translateY(-14px)}}.path-step.path-new{animation:path-new calc(var(--path-new) / 2) ease-in-out var(--screen-in) 2}@keyframes path-new{50%{transform:scale(1.05);box-shadow:0 0 0 6px #f8d03099}}@media (prefers-reduced-motion:reduce){.overlay:not([hidden]){animation-duration:var(--reduced-fade)}.overlay{transition-duration:var(--reduced-fade)}.overlay>.panel,.overlay>.panel.story,.overlay>.panel.win-card,.overlay>.panel.sticker,.intro>.panel,.slide-in,.story-trainer.slide-in,.trainer-spot,.review.review-in,.story-text.line-in,.path-bar button.fade-in,.review-layer>*,.unlock-card .stamp,.town-card .stamp,.stamp-now .stamp,.badge-card .badge-big{animation:fade-in var(--reduced-fade) linear both}.solved-stamp{animation:fade-in var(--reduced-fade) linear both, fade-out var(--reduced-fade) linear calc(var(--stamp-ms) - var(--reduced-fade)) forwards}.win-card .pip,.panel.sticker img,.badge-card .badge-big:after,.piece.miss-shake,.cheer,.path-progress.pop,.path-step.path-new,.kanto-map .node.next-pulse,.kanto-map .node.stamp-now,.piece.hop{animation:none}.piece.blast-off,.piece.faint{animation:fade-out var(--reduced-fade) linear forwards}}
