.not-found-layout{align-items:stretch}.not-found-game-board{--route-progress:0%;isolation:isolate;background:radial-gradient(circle at 14% 12%,oklch(1 0 0/.18),transparent 24%),linear-gradient(180deg,#172554,#14532d 62%,#0f3d2e);touch-action:none}.not-found-game-board:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(circle at 16% 18%,oklch(1 0 0/.16) 0 .16rem,transparent .18rem),radial-gradient(circle at 84% 26%,oklch(1 0 0/.12) 0 .12rem,transparent .14rem),linear-gradient(90deg,oklch(1 0 0/.06) 1px,transparent 0),linear-gradient(180deg,oklch(1 0 0/.05) 1px,transparent 0);background-size:auto,auto,40px 40px,40px 40px;pointer-events:none}.not-found-game-canvas{position:relative;z-index:1;display:block;width:100%;height:100%;image-rendering:pixelated}.not-found-game-board--hit{animation:notFoundBoardShake .18s steps(2)}.not-found-game-progress{width:var(--route-progress)}.not-found-stage{background:radial-gradient(circle at 72% 18%,color-mix(in oklab,var(--primary) 24%,white 76%) 0,transparent 22%),linear-gradient(180deg,color-mix(in oklab,var(--background) 64%,white 36%) 0,color-mix(in oklab,var(--background) 82%,white 18%) 44%,color-mix(in oklab,var(--background) 90%,black 10%) 100%)}.not-found-scene{position:relative;min-height:100%;overflow:hidden;border-radius:.95rem;isolation:isolate;background:linear-gradient(180deg,color-mix(in oklab,var(--primary) 12%,transparent) 0,transparent 34%),linear-gradient(180deg,color-mix(in oklab,var(--background) 38%,white 62%) 0,color-mix(in oklab,var(--background) 66%,white 34%) 56%,color-mix(in oklab,var(--background) 86%,black 14%) 100%)}.not-found-scene:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,oklch(1 0 0/.26),transparent 30%),radial-gradient(circle at 50% 80%,oklch(1 0 0/.14),transparent 38%);opacity:.7;pointer-events:none}.not-found-grass,.not-found-hill,.not-found-horizon,.not-found-particle,.not-found-path,.not-found-pokeball,.not-found-sign,.not-found-sky,.not-found-tilemap,.not-found-trainer{position:absolute}.not-found-sky{inset:0;background:radial-gradient(circle at 18% 14%,oklch(1 0 0/.95) 0 .5rem,transparent .55rem),radial-gradient(circle at 70% 20%,oklch(1 0 0/.9) 0 .35rem,transparent .4rem),radial-gradient(circle at 82% 28%,oklch(1 0 0/.7) 0 .2rem,transparent .25rem),linear-gradient(180deg,color-mix(in oklab,var(--primary) 10%,white 90%) 0,color-mix(in oklab,var(--background) 70%,white 30%) 55%,color-mix(in oklab,var(--background) 88%,black 12%) 100%)}.not-found-sun{position:absolute;top:1.5rem;right:2rem;width:clamp(4rem,8vw,6rem);aspect-ratio:1;border-radius:9999px;background:radial-gradient(circle at 35% 35%,oklch(1 0 0/.95),color-mix(in oklab,var(--primary) 52%,white 48%) 48%,color-mix(in oklab,var(--primary) 78%,#fb923c 22%) 100%);box-shadow:0 0 0 1px oklch(1 0 0/.42),0 0 60px color-mix(in oklab,var(--primary) 24%,transparent);opacity:.92;animation:notFoundPulse 4.8s ease-in-out infinite}.not-found-cloud{top:1.4rem;height:2.2rem;width:6rem;border-radius:9999px;background:oklch(1 0 0/.68);filter:blur(.2px);opacity:.82;animation:notFoundCloudDrift 18s linear infinite}.not-found-cloud:after,.not-found-cloud:before{content:"";position:absolute;background:inherit;border-radius:inherit}.not-found-cloud:before{inset:-.55rem auto auto .8rem;width:2.75rem;height:2.5rem}.not-found-cloud:after{inset:-.25rem 1rem auto auto;width:2rem;height:1.9rem}.not-found-cloud--one{left:15%;animation-delay:-7s;animation-duration:24s}.not-found-cloud--two{left:55%;top:3.8rem;transform:scale(.86);animation-delay:-12s;animation-duration:28s}.not-found-horizon{inset:auto 0 32% 0;height:18%;background:linear-gradient(180deg,transparent 0,color-mix(in oklab,var(--primary) 10%,transparent) 42%,transparent 100%);opacity:.8}.not-found-hill{bottom:22%;border-radius:9999px 9999px 0 0;filter:saturate(1.05);animation:notFoundDrift 14s ease-in-out infinite}.not-found-hill--back{left:-8%;width:58%;height:36%;background:linear-gradient(180deg,color-mix(in oklab,var(--primary) 22%,#9ca3af 78%),color-mix(in oklab,var(--foreground) 18%,#64748b 82%));opacity:.45}.not-found-hill--front{right:-8%;width:56%;height:30%;background:linear-gradient(180deg,color-mix(in oklab,var(--primary) 32%,#fb923c 68%),color-mix(in oklab,var(--primary) 16%,#7c2d12 84%));opacity:.54;animation-delay:-5s;animation-duration:16s}.not-found-path{inset:auto 0 0 0;height:28%;background:linear-gradient(180deg,color-mix(in oklab,var(--background) 16%,transparent) 0,transparent 18%,color-mix(in oklab,var(--background) 34%,#cbd5e1 66%) 100%),linear-gradient(90deg,oklch(1 0 0/.08) 0 1px,transparent 1px 32px),linear-gradient(180deg,oklch(1 0 0/.05) 0 1px,transparent 1px 32px);background-size:100% 100%,32px 32px,32px 32px;box-shadow:inset 0 1px 0 oklch(1 0 0/.36)}.not-found-tilemap{inset:auto 0 0 0;height:24%;background:linear-gradient(180deg,transparent 0,color-mix(in oklab,var(--primary) 10%,transparent) 100%),repeating-linear-gradient(90deg,oklch(1 0 0/.18) 0 1px,transparent 1px 32px),repeating-linear-gradient(180deg,oklch(1 0 0/.1) 0 1px,transparent 1px 32px),linear-gradient(180deg,color-mix(in oklab,var(--foreground) 8%,#94a3b8 92%) 0,color-mix(in oklab,var(--foreground) 18%,#64748b 82%) 100%);opacity:.9;transform:translateY(2px);mask-image:linear-gradient(180deg,oklch(0 0 0/0),black 18%,black)}.not-found-grass{bottom:16%;width:9rem;height:5rem;background:radial-gradient(circle at 16% 100%,color-mix(in oklab,var(--accent) 26%,#166534 74%) 0 .35rem,transparent .36rem),radial-gradient(circle at 34% 100%,color-mix(in oklab,var(--accent) 32%,#15803d 68%) 0 .45rem,transparent .46rem),radial-gradient(circle at 50% 100%,color-mix(in oklab,var(--accent) 20%,#166534 80%) 0 .38rem,transparent .39rem),radial-gradient(circle at 68% 100%,color-mix(in oklab,var(--accent) 28%,#16a34a 72%) 0 .4rem,transparent .41rem),radial-gradient(circle at 86% 100%,color-mix(in oklab,var(--accent) 24%,#166534 76%) 0 .34rem,transparent .35rem);background-repeat:repeat-x;background-size:2.1rem 100%;opacity:.74;animation:notFoundGrassSway 5.4s ease-in-out infinite}.not-found-grass--left{left:1rem}.not-found-grass--right{right:1rem;transform:scaleX(-1);animation-delay:-2.1s}.not-found-sign{left:clamp(1rem,6vw,3rem);bottom:24%;width:5.25rem;height:7rem;display:flex;align-items:flex-start;justify-content:center;animation:notFoundSignBob 3.2s ease-in-out infinite}.not-found-sign__post{width:.55rem;height:100%;border-radius:9999px;background:linear-gradient(180deg,color-mix(in oklab,var(--foreground) 14%,#7c4a12 86%),color-mix(in oklab,var(--foreground) 24%,#4b2f10 76%));box-shadow:inset 0 1px 0 oklch(1 0 0/.18)}.not-found-sign__board{position:absolute;top:.2rem;width:100%;border-radius:.8rem;border:1px solid color-mix(in oklab,var(--glass-border) 74%,#4b2f10 26%);background:linear-gradient(180deg,color-mix(in oklab,var(--primary) 22%,#fbbf24 78%) 0,color-mix(in oklab,var(--primary) 12%,#f59e0b 88%) 100%);color:color-mix(in oklab,var(--foreground) 20%,#3f1d00 80%);font-size:.7rem;font-weight:900;letter-spacing:.22em;line-height:1;text-align:center;padding:.9rem .25rem 1rem;text-indent:.22em;box-shadow:var(--glass-inset)}.not-found-pokeball{right:clamp(1rem,5vw,3rem);bottom:18%;width:4.25rem;aspect-ratio:1;border-radius:9999px;border:2px solid oklch(.16 .022 60/.92);background:linear-gradient(180deg,#ef4444 0 49%,#111827 49% 52%,#f8fafc 52% 100%);box-shadow:0 14px 24px -18px oklch(.16 .022 60/.65),inset 0 1px 0 oklch(1 0 0/.34);transform-origin:50% 72%;animation:notFoundRoll 6s steps(18) infinite}.not-found-pokeball:after,.not-found-pokeball:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.not-found-pokeball:before{background:linear-gradient(135deg,oklch(1 0 0/.4),transparent 28%);opacity:.62}.not-found-pokeball:after{inset:38% 0 auto 0;height:.35rem;background:oklch(.16 .022 60/.94)}.not-found-pokeball__band,.not-found-pokeball__button,.not-found-pokeball__shine{position:absolute;left:50%;transform:translateX(-50%)}.not-found-pokeball__shine{top:18%;width:32%;height:16%;border-radius:9999px;background:oklch(1 0 0/.52);transform:translateX(-50%) rotate(-18deg)}.not-found-pokeball__band{top:50%;width:100%;height:.32rem;background:oklch(.16 .022 60/.98);transform:translateX(-50%) translateY(-50%)}.not-found-pokeball__button{top:50%;width:1rem;height:1rem;border-radius:9999px;background:linear-gradient(180deg,#f8fafc,#e5e7eb);border:2px solid oklch(.16 .022 60/.96);transform:translate(-50%,-50%);box-shadow:inset 0 1px 0 oklch(1 0 0/.9)}.not-found-trainer{left:50%;bottom:16%;width:4.75rem;height:6rem;transform:translateX(-50%);animation:notFoundFloat 4.6s steps(12) infinite}.not-found-trainer__shadow{position:absolute;left:50%;bottom:.1rem;width:3.5rem;height:.7rem;border-radius:9999px;background:oklch(.16 .022 60/.2);filter:blur(.1rem);transform:translateX(-50%) scale(1.08)}.not-found-trainer__body{bottom:.9rem;width:1.55rem;height:2.5rem;border-radius:.7rem .7rem .45rem .45rem;background:linear-gradient(180deg,#60a5fa 0 32%,#1d4ed8 32% 100%);box-shadow:inset 0 1px 0 oklch(1 0 0/.28)}.not-found-trainer__body,.not-found-trainer__head{position:absolute;left:50%;transform:translateX(-50%)}.not-found-trainer__head{bottom:3rem;width:1.5rem;height:1.5rem;border-radius:9999px;background:linear-gradient(180deg,#f8d7b3,#eab08a);box-shadow:0 .2rem 0 oklch(.16 .022 60/.12)}.not-found-trainer__cap{position:absolute;left:50%;bottom:4rem;width:1.9rem;height:.85rem;transform:translateX(-50%);border-radius:9999px 9999px .3rem .3rem;background:linear-gradient(180deg,#ef4444 0 58%,#111827 58% 100%);box-shadow:inset 0 1px 0 oklch(1 0 0/.2)}.not-found-particle{width:.4rem;height:.4rem;border-radius:9999px;background:color-mix(in oklab,var(--primary) 65%,white 35%);box-shadow:0 0 16px color-mix(in oklab,var(--primary) 55%,transparent);opacity:.8;animation:notFoundParticleDrift 6s ease-in-out infinite}.not-found-particle--one{left:22%;bottom:30%;animation-delay:-1s}.not-found-particle--two{left:62%;bottom:36%;animation-delay:-3s}.not-found-particle--three{left:74%;bottom:26%;animation-delay:-4.5s}.not-found-mini-banner{display:inline-flex;align-items:center;gap:.5rem;border-radius:9999px;border:1px solid oklch(1 0 0/.16);background:oklch(.16 .022 60/.62);padding:.35rem .75rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 14px 24px -18px oklch(.16 .022 60/.4)}.not-found-mini-board{--route-progress:10%}.not-found-mini-board:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 18%,oklch(1 0 0/.06) 0 .08rem,transparent .09rem),radial-gradient(circle at 74% 30%,oklch(1 0 0/.05) 0 .1rem,transparent .11rem),radial-gradient(circle at 42% 64%,oklch(1 0 0/.04) 0 .07rem,transparent .08rem);opacity:.55;pointer-events:none;mix-blend-mode:screen}.not-found-mini-board:after{content:"";position:absolute;inset:auto .75rem .75rem .75rem;height:.35rem;border-radius:9999px;background:linear-gradient(90deg,color-mix(in oklab,var(--primary) 82%,white 18%),color-mix(in oklab,var(--primary) 55%,#fbbf24 45%));opacity:.72;transform-origin:left center;transform:scaleX(var(--route-progress))}.not-found-mini-board--hit{animation:notFoundBoardShake .22s steps(2)}.not-found-mini-entity{pointer-events:none;position:absolute;image-rendering:pixelated;shape-rendering:crispEdges}.not-found-mini-entity--berry{animation:notFoundBerryPulse 1.35s steps(6) infinite}.not-found-mini-entity--great{animation:notFoundGreatGlow 1.4s ease-in-out infinite}.not-found-mini-entity--hazard{animation:notFoundHazardBob 1.1s steps(6) infinite}.not-found-mini-entity--runner{animation-duration:.85s}.not-found-mini-prop{pointer-events:none;opacity:.92;filter:saturate(.96) brightness(.95)}.not-found-mini-prop--tree{animation:notFoundMiniBob 2.3s steps(6) infinite;transform-origin:center bottom}.not-found-mini-prop--tree-right{animation-delay:-.9s}.not-found-mini-prop--lamp{animation:notFoundLampGlow 2.8s ease-in-out infinite;transform-origin:center bottom}.not-found-mini-prop--rock{animation:notFoundRockDrift 5.4s ease-in-out infinite;transform-origin:center bottom}.not-found-mini-sprite{image-rendering:pixelated;shape-rendering:crispEdges}.not-found-mini-player{animation:notFoundMiniBob 1.15s steps(6) infinite;transform-origin:center bottom}.not-found-mini-target{animation:notFoundMiniPulse .9s steps(4) infinite;transform-origin:center}.not-found-pixel-scene{display:block;width:100%;height:100%;min-height:inherit;image-rendering:pixelated;shape-rendering:crispEdges;filter:saturate(1.08) contrast(1.08)}.not-found-pixel-stars{animation:notFoundPixelTwinkle 2.4s steps(6) infinite;transform-box:fill-box;transform-origin:center}.not-found-pixel-clouds{animation:notFoundCloudDrift 22s linear infinite;transform-box:fill-box;transform-origin:center}.not-found-pixel-grass{animation:notFoundGrassSway 4.8s steps(8) infinite}.not-found-pixel-grass,.not-found-sign-group{transform-box:fill-box;transform-origin:center bottom}.not-found-sign-group{animation:notFoundSignBob 3.2s steps(6) infinite}.not-found-sign-text{fill:#3f1d00;font-size:8px;font-weight:900;letter-spacing:.14em;font-family:var(--font-body)}.not-found-trainer-sprite{animation:notFoundFloat 3.8s steps(10) infinite;transform-box:fill-box;transform-origin:center bottom}.not-found-pokeball-sprite{animation:notFoundRoll 5.8s steps(18) infinite;transform-box:fill-box;transform-origin:center center}.not-found-pixel-particles{animation:notFoundParticleDrift 5.5s ease-in-out infinite;transform-box:fill-box;transform-origin:center}@keyframes notFoundCloudDrift{0%{transform:translate3d(-12%,0,0)}50%{transform:translate3d(12%,-.35rem,0)}to{transform:translate3d(-12%,0,0)}}@keyframes notFoundDrift{0%,to{transform:translateY(0)}50%{transform:translateY(-.45rem)}}@keyframes notFoundPulse{0%,to{transform:scale(1);filter:saturate(1)}50%{transform:scale(1.04);filter:saturate(1.12)}}@keyframes notFoundGrassSway{0%,to{transform:skewX(0deg) translateY(0)}50%{transform:skewX(-4deg) translateY(-.12rem)}}@keyframes notFoundSignBob{0%,to{transform:translateY(0)}50%{transform:translateY(-.28rem)}}@keyframes notFoundRoll{0%{transform:translate3d(-26%,0,0) rotate(0deg)}25%{transform:translate3d(-6%,-.1rem,0) rotate(90deg)}50%{transform:translate3d(16%,.1rem,0) rotate(180deg)}75%{transform:translate3d(38%,-.1rem,0) rotate(270deg)}to{transform:translate3d(62%,0,0) rotate(1turn)}}@keyframes notFoundFloat{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-.35rem)}}@keyframes notFoundParticleDrift{0%,to{transform:translateY(0) scale(1);opacity:.4}50%{transform:translateY(-.9rem) scale(1.3);opacity:.9}}@keyframes notFoundPixelTwinkle{0%,to{opacity:.52;transform:translateY(0)}50%{opacity:1;transform:translateY(-.12rem)}}@keyframes notFoundMiniBob{0%,to{transform:translateY(0)}50%{transform:translateY(-.12rem)}}@keyframes notFoundMiniPulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.08);filter:brightness(1.1)}}@keyframes notFoundBoardShake{0%{transform:translateX(0)}25%{transform:translateX(-2px) translateY(-1px)}50%{transform:translateX(2px) translateY(1px)}75%{transform:translateX(-1px) translateY(0)}to{transform:translateX(0)}}@keyframes notFoundBerryPulse{0%,to{transform:translateY(0) scale(1);filter:saturate(1)}50%{transform:translateY(-1px) scale(1.08);filter:saturate(1.2)}}@keyframes notFoundGreatGlow{0%,to{filter:brightness(1) drop-shadow(0 0 0 oklch(.55 .16 250/0))}50%{filter:brightness(1.1) drop-shadow(0 0 12px oklch(.55 .16 250/.35))}}@keyframes notFoundHazardBob{0%,to{transform:translateY(0)}50%{transform:translateY(-1px)}}@keyframes notFoundLampGlow{0%,to{transform:translateY(0) scale(1);filter:brightness(1)}50%{transform:translateY(-1px) scale(1.04);filter:brightness(1.18)}}@keyframes notFoundRockDrift{0%,to{transform:translateX(0) translateY(0)}50%{transform:translateX(1px) translateY(-1px)}}@media (prefers-reduced-motion:reduce){.not-found-cloud,.not-found-grass,.not-found-hill,.not-found-mini-player,.not-found-mini-prop,.not-found-mini-target,.not-found-particle,.not-found-pixel-clouds,.not-found-pixel-grass,.not-found-pixel-particles,.not-found-pixel-stars,.not-found-pokeball,.not-found-pokeball-sprite,.not-found-sign,.not-found-sign-group,.not-found-sun,.not-found-trainer,.not-found-trainer-sprite{animation:none!important;transform:none!important}}