*,:before,:after{box-sizing:border-box}html,body{overscroll-behavior:none;background:#090d19;width:100%;height:100%;margin:0;padding:0;overflow:hidden}body{color:#f3f6ff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:none;font-family:Nunito Variable,ui-rounded,system-ui,sans-serif;font-weight:700;position:fixed;inset:0}#game{outline:none;width:100%;height:100%;display:block;position:fixed;inset:0}#ui{z-index:1;pointer-events:none;font-size:clamp(11px,2.63158vh,30px);line-height:1.35;position:fixed;inset:0;overflow:hidden}#ui button,#ui input,#ui select,#ui textarea,#ui a,#ui [data-pointer]{pointer-events:auto}#ui input,#ui textarea{-webkit-user-select:text;user-select:text}button,input,select,textarea{font:inherit;color:inherit}noscript{z-index:3;color:#f3f6ff;place-items:center;display:grid;position:fixed;inset:0}.core-fullscreen-button{top:max(.6em, env(safe-area-inset-top));right:max(.6em, env(safe-area-inset-right));z-index:2;width:2.2em;height:2.2em;font-size:var(--ui-font-size,16px);color:#f3f6ff;cursor:pointer;pointer-events:auto;opacity:.9;background:#0b1020b8;border:.1em solid #a0bcff73;border-radius:.22em;place-items:center;padding:0;transition:opacity .16s ease-out,background-color .11s ease-out,color .11s ease-out;display:grid;position:fixed;box-shadow:0 .18em #04071059}.core-fullscreen-button[hidden]{display:none}.core-fullscreen-button svg{fill:none;stroke:currentColor;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:1.25em;height:1.25em}.core-fullscreen-button:hover{opacity:1;color:#04211e;background:#25e2d0;border-color:#25e2d0}.core-fullscreen-button:active{transform:translateY(.08em)}.is-pointer-idle .core-fullscreen-button,.is-pointer-idle .core-fullscreen-button:hover{opacity:.25;color:#f3f6ff;background:#0b1020b8;border-color:#a0bcff73;transform:none}.is-pointer-idle,.is-pointer-idle *{cursor:none!important}@media (prefers-reduced-motion:reduce){.core-fullscreen-button{transition:none}}.touch-controls{display:none}@media (hover:none) and (pointer:coarse){.touch-controls{z-index:2;padding:0 max(1rem, env(safe-area-inset-right)) max(.8rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));pointer-events:none;justify-content:space-between;align-items:flex-end;display:flex;position:fixed;inset:0}.touch-dpad,.touch-actions{pointer-events:none;width:min(34vw,11rem);height:min(34vw,11rem);position:relative}.touch-button{color:#f3f6ff;pointer-events:auto;touch-action:none;opacity:.78;background:#0b102094;border:.13rem solid #a0bcff99;border-radius:50%;place-items:center;width:3.4rem;height:3.4rem;padding:0;font:900 1.25rem/1 Nunito Variable,ui-rounded,system-ui,sans-serif;display:grid;position:absolute;box-shadow:0 .2rem #04071073}.touch-button:active{color:#04211e;opacity:1;background:#25e2d0;border-color:#25e2d0;transform:translateY(.12rem)}.touch-up{top:0;left:50%;translate:-50%}.touch-down{bottom:0;left:50%;translate:-50%}.touch-left{top:50%;left:0;translate:0 -50%}.touch-right{top:50%;right:0;translate:0 -50%}.touch-confirm{bottom:1rem;right:0}.touch-cancel{bottom:0;right:4.2rem}.touch-run{width:2.8rem;height:2.8rem;font-size:.9rem;bottom:5rem;right:1.2rem}.touch-menu{width:2.8rem;height:2.8rem;font-size:1rem;bottom:4.3rem;right:5.1rem}}.pk-dialogue{--pk-dialogue-lines:3;z-index:50;width:min(58em,100% - 2.6em);font-family:var(--pk-font);pointer-events:none;position:absolute;bottom:1.3em;left:50%;transform:translate(-50%)}.pk-dialogue--overlay{z-index:60}.pk-dialogue-panel{border-radius:var(--pk-radius);border-top-color:var(--pk-accent);opacity:0;visibility:hidden;transition:opacity var(--pk-fast) ease-in, transform var(--pk-fast) ease-in, visibility 0s linear var(--pk-fast);align-items:center;gap:1.1em;padding:1.05em 1.5em .95em 1.3em;display:flex;position:relative;transform:translateY(.6em)}.pk-panel.pk-dialogue-panel{background:linear-gradient(to top left, var(--pk-line-strong) 0 50%, transparent 50%) bottom right / 1.1em 1.1em no-repeat, linear-gradient(180deg, #25e2d01a, #25e2d000 2.4em),  #0b1020f7;border-top-width:.16em}.pk-dialogue.is-open .pk-dialogue-panel{opacity:1;visibility:visible;transition:opacity var(--pk-med) ease-out, transform var(--pk-med) var(--pk-ease), visibility 0s;transform:none}.pk-dialogue-name{letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--pk-on-accent);background:linear-gradient(90deg, var(--pk-accent) 0 calc(100% - .95em), var(--pk-warm) calc(100% - .95em));clip-path:polygon(.55em 0,100% 0,calc(100% - .55em) 100%,0 100%);padding:.2em 1.5em .16em 1.2em;font-size:.92em;font-style:italic;font-weight:900;line-height:1.3;position:absolute;top:0;left:1.2em;translate:0 -72%}.pk-dialogue-name[hidden],.pk-dialogue-portrait[hidden]{display:none}.pk-dialogue-name.is-swapped{animation:pk-name-swap .13s var(--pk-ease) both}@keyframes pk-name-swap{0%{opacity:0;transform:translate(-.5em)}to{opacity:1;transform:none}}.pk-dialogue-portrait{border-radius:var(--pk-radius-sm);background:var(--pk-hatch), linear-gradient(160deg, #2c3a5e, #182038);width:6.2em;height:6.2em;box-shadow:inset 0 0 0 var(--pk-hair) var(--pk-line-strong);clip-path:polygon(0 0,100% 0,100% calc(100% - .9em),calc(100% - .9em) 100%,0 100%);flex:none;position:relative;overflow:hidden}.pk-dialogue-portrait canvas{width:100%;height:100%;display:block}.pk-dialogue-text{min-width:0;height:calc(1.46em * var(--pk-dialogue-lines));letter-spacing:0;color:var(--pk-on-surface);flex:1;font-size:1.32em;font-weight:700;line-height:1.46;position:relative;overflow:hidden}.pk-word{overflow-wrap:anywhere;white-space:normal;max-width:100%;display:inline-block}.pk-ch{opacity:0}.pk-ch.is-on{opacity:1}.pk-dialogue-more{background:var(--pk-accent);width:.95em;height:.8em;-webkit-mask:var(--pk-caret-shape) center / contain no-repeat;mask:var(--pk-caret-shape) center / contain no-repeat;opacity:0;transition:opacity .1s ease-out;position:absolute;bottom:.7em;right:1.25em;rotate:90deg}.pk-dialogue.is-waiting .pk-dialogue-more{opacity:1;animation:.8s steps(2,jump-none) infinite pk-more-tick}@keyframes pk-more-tick{0%,to{translate:0 -.1em}50%{translate:0 .14em}}.pk-choice{transform-origin:100% 100%;min-width:9em;max-width:min(26em,100%);animation:pk-choice-in .13s var(--pk-ease) both;padding:.5em;position:absolute;bottom:calc(100% + .7em);right:0}.pk-choice--solo{bottom:0}.pk-choice .pk-list{max-height:16em;font-size:1.1em}.pk-choice .pk-list-item{padding-right:1.3em}@keyframes pk-choice-in{0%{opacity:0;transform:translateY(.4em)}to{opacity:1;transform:none}}.pk-toast-stack{z-index:80;width:min(24em,100% - 2.4em);font-family:var(--pk-font);pointer-events:none;flex-direction:column;align-items:flex-end;display:flex;position:absolute;top:3.3em;right:1.2em}.pk-toast{box-sizing:border-box;pointer-events:none;max-width:100%;animation:pk-toast-in .15s var(--pk-ease) both;align-items:center;gap:.7em;margin-bottom:.5em;padding:.4em 1.3em .4em .4em;font-size:.95em;font-weight:800;line-height:1.25;transition:opacity .14s ease-in,transform .14s ease-in,max-height .16s ease-in-out .1s,margin .16s ease-in-out .1s,padding .16s ease-in-out .1s,border-width .16s ease-in-out .1s;display:flex}.pk-panel.pk-toast{border-radius:var(--pk-radius-sm);border-color:var(--pk-line-strong);background:linear-gradient(to top left, var(--pk-toast-color,var(--pk-muted)) 0 50%, transparent 50%) bottom right / .7em .7em no-repeat, var(--pk-surface-glass)}.pk-toast.is-leaving{opacity:0;border-width:0;margin-bottom:0;padding-top:0;padding-bottom:0;overflow:hidden;transform:translate(2em)}.pk-toast-icon{color:#0a1020;background:var(--pk-toast-color,var(--pk-muted));clip-path:polygon(0 0,100% 0,100% 100%,.5em 100%,0 calc(100% - .5em));border-radius:.14em;flex:none;justify-content:center;align-items:center;width:2em;height:2em;display:flex}.pk-toast-icon svg{width:1.25em;height:1.25em}.pk-toast[data-kind=quest]{--pk-toast-color:var(--pk-warm)}.pk-toast[data-kind=item]{--pk-toast-color:var(--pk-accent)}.pk-toast[data-kind=save]{--pk-toast-color:var(--pk-exp)}.pk-toast[data-kind=info]{--pk-toast-color:var(--pk-muted)}.pk-toast-text{overflow-wrap:anywhere;min-width:0}@keyframes pk-toast-in{0%{opacity:0;transform:translate(2em)}to{opacity:1;transform:none}}.pk-creature-card{z-index:40;opacity:0;pointer-events:none;width:min(35em,100% - 2.6em);transition:opacity var(--pk-med) ease-out, transform var(--pk-med) var(--pk-ease);align-items:stretch;gap:1.2em;padding:.9em;display:flex;position:absolute;top:9%;left:50%;transform:translate(-50%,.6em)}.pk-panel.pk-creature-card{--pk-panel-signal:var(--pk-species-color,var(--pk-accent))}.pk-creature-card.is-open{opacity:1;transform:translate(-50%)}.pk-creature-art{border-radius:var(--pk-radius-sm);background:var(--pk-hatch), radial-gradient(circle at 50% 56%, color-mix(in srgb, var(--pk-species-color,#9fd17a) 62%, #fff) 0, color-mix(in srgb, var(--pk-species-color,#9fd17a) 70%, #16203a) 46%, color-mix(in srgb, var(--pk-species-color,#9fd17a) 26%, #121a30) 100%);width:10.5em;height:10.5em;box-shadow:inset 0 0 0 .12em color-mix(in srgb, var(--pk-species-color,#9fd17a) 70%, #fff);clip-path:polygon(0 0,calc(100% - 1.1em) 0,100% 1.1em,100% 100%,1.1em 100%,0 calc(100% - 1.1em));flex:none;justify-content:center;align-items:center;display:flex;position:relative}.pk-creature-art:after{content:"";background:#060a166b;border-radius:50%;width:56%;height:8%;position:absolute;bottom:9%;left:22%}.pk-creature-art img{z-index:1;object-fit:contain;width:86%;height:86%;animation:2.6s ease-in-out infinite pk-creature-bob;position:relative}.pk-creature-art img[hidden]{display:none}.pk-creature-missing{z-index:1;color:#f3f6ff66;font-size:4em;font-weight:900;position:relative}.pk-creature-info{flex-direction:column;flex:1;justify-content:center;gap:.35em;min-width:0;display:flex}.pk-creature-heading{align-items:baseline;gap:.55em;display:flex}.pk-creature-name{letter-spacing:.04em;text-transform:uppercase;font-size:1.6em;font-style:italic;font-weight:900;line-height:1.1}.pk-creature-dex{letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--pk-muted);font-size:.9em;font-weight:900}.pk-creature-types{flex-wrap:wrap;align-items:center;gap:.4em;font-size:1.1em;display:flex}.pk-creature-category{letter-spacing:.1em;text-transform:uppercase;color:var(--pk-muted);font-size:.78em;font-weight:900}.pk-creature-desc{margin:.1em 0 0;font-size:1em;font-weight:700;line-height:1.4}@keyframes pk-creature-bob{0%,to{translate:0}50%{translate:0 -.3em}}@media (prefers-reduced-motion:reduce){.pk-dialogue-panel,.pk-dialogue.is-open .pk-dialogue-panel,.pk-creature-card,.pk-toast{transition-duration:1ms;transition-delay:0s}.pk-choice,.pk-toast,.pk-dialogue-name.is-swapped{animation-duration:1ms}.pk-dialogue.is-waiting .pk-dialogue-more,.pk-creature-art img{animation:none}}.pk-caption{z-index:45;pointer-events:none;text-align:center;opacity:0;width:min(34em,100% - 3em);transition:opacity var(--pk-caption-fade,.65s) ease-in-out, transform var(--pk-caption-fade,.65s) var(--pk-ease);flex-direction:column;align-items:center;gap:.7em;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(.5em - 50%))}.pk-caption.is-in{opacity:1;transform:translate(-50%,-50%)}.pk-caption.is-cut{transition:none}.pk-caption__text{color:var(--pk-on-surface);font-family:var(--pk-font);letter-spacing:.03em;text-shadow:0 0 .9em #04060cf2,0 .08em .3em #04060ce6;margin:0;font-size:1.45em;font-style:italic;font-weight:700;line-height:1.35}.pk-caption__mark{align-items:center;gap:.75em;display:flex}.pk-caption__mark:before,.pk-caption__mark:after{content:"";background:linear-gradient(90deg, transparent, var(--pk-line-strong));width:3.2em;height:.08em}.pk-caption__mark:after{background:linear-gradient(90deg, var(--pk-line-strong), transparent)}.pk-caption__mark>i{background:var(--pk-accent);width:.42em;height:.42em;box-shadow:0 0 .7em var(--pk-accent-ring);rotate:45deg}@media (prefers-reduced-motion:reduce){.pk-caption{transform:translate(-50%,-50%)}}.pk-influence{white-space:nowrap;color:inherit;align-items:baseline;gap:.28em;font-weight:900;display:inline-flex}.pk-influence-glyph{text-align:center;font-variant-emoji:text;width:1.15em;color:color-mix(in srgb, var(--pk-influence,var(--pk-muted)) 72%, #fff);flex:none;font-weight:400;display:inline-block}.pk-influence-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.pk-stage-badge{letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;color:var(--pk-muted);background:var(--pk-surface-raised);box-shadow:inset 0 0 0 var(--pk-hair) var(--pk-line-strong);border-radius:.14em;flex:none;align-items:center;gap:.5em;padding:.24em .65em .18em .55em;font-size:.64em;font-weight:900;line-height:1.2;display:inline-flex}.pk-stage-pips{gap:.2em;display:inline-flex}.pk-stage-pips i{background:var(--pk-line-strong);width:.34em;height:.8em;transform:skew(-20deg)}.pk-stage-pips i.is-on{background:var(--pk-accent)}.pk-species-line{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:.3em .55em;max-width:100%;display:flex}.pk-species-line .pk-stage-badge{font-size:.76em}.pk-creature-types .pk-stage-badge{font-size:.6em}.pk-creature-future{letter-spacing:.01em;color:var(--pk-muted);margin:.15em 0 0;font-size:.82em;font-style:italic;font-weight:800}.pk-creature-future b{color:var(--pk-accent-ink);font-style:normal;font-weight:900}.pk-growth{flex-direction:column;gap:.75em;display:flex}.pk-growth-block+.pk-growth-block{border-top:.12em solid var(--pk-line);padding-top:.65em}.pk-growth-head{align-items:center;gap:.6em;min-height:1.3em;margin-bottom:.45em;display:flex}.pk-growth-title{letter-spacing:var(--pk-track-label);text-transform:uppercase;color:var(--pk-muted);margin:0;font-size:.7em;font-weight:900}.pk-growth-note{margin-left:auto}.pk-growth-empty{color:var(--pk-muted);margin:0;font-size:.92em;font-weight:700;line-height:1.45}.pk-attune-rows{grid-template-columns:repeat(2,minmax(0,1fr));gap:.36em 1.6em;display:grid}.pk-attune-row{grid-template-columns:6.4em minmax(0,1fr);align-items:center;gap:.5em;font-size:.9em;display:grid}.pk-attune-track,.pk-evo-odds-track{background:var(--pk-surface-sunken);height:.5em;margin-inline:.1em;position:relative;overflow:hidden;transform:skew(-20deg);box-shadow:inset 0 0 0 .07em #a0bcff4d}.pk-attune-track:after,.pk-evo-odds-track:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 calc(10% - .09em),#060a15d1 calc(10% - .09em) 10%);position:absolute;inset:0}.pk-attune-fill,.pk-evo-odds-fill{background-color:color-mix(in srgb, var(--pk-influence,var(--pk-evo-glow,var(--pk-accent))) 82%, #fff);height:100%;animation:pk-evo-grow .16s var(--pk-ease) both;background-image:linear-gradient(#fff6 0 34%,#fff0 34%)}@keyframes pk-evo-grow{0%{width:0}}.pk-evo-stirs{letter-spacing:.05em;margin:0;font-size:.98em;font-style:italic;font-weight:900}.pk-evo-hint{color:var(--pk-muted);margin:.1em 0 0;font-size:.78em;font-style:italic;font-weight:700;line-height:1.32}.pk-evo-hint--lone{margin-top:.3em;font-size:.9em}.pk-evo-rows{flex-direction:column;gap:.36em;display:flex}.pk-evo-row{border-radius:var(--pk-radius-sm);background:var(--pk-surface-raised);box-shadow:inset 0 0 0 var(--pk-hair) var(--pk-line-strong);grid-template-columns:2.9em minmax(0,1fr) 11.5em;align-items:center;gap:.75em;padding:.3em .75em .3em .35em;display:grid}.pk-evo-art{background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--pk-evo-glow,var(--pk-accent)) 58%, #26324f), #151d33 82%);width:2.9em;height:2.9em;box-shadow:inset 0 0 0 var(--pk-hair) color-mix(in srgb, var(--pk-evo-glow,var(--pk-accent)) 55%, transparent);border-radius:.14em;place-items:center;display:grid;position:relative}.pk-evo-art .pk-sprite{width:86%;height:86%}.pk-evo-art.is-silhouette .pk-sprite>img{filter:brightness(0) opacity(.86) drop-shadow(0 0 .14em color-mix(in srgb, var(--pk-evo-glow,var(--pk-accent)) 70%, #fff))}.pk-evo-art.is-silhouette .pk-sprite-missing{font-size:1.2em}.pk-evo-lock{width:1.25em;height:1.25em;color:var(--pk-on-surface);background:var(--pk-surface);box-shadow:0 0 0 var(--pk-hair) var(--pk-line-strong);border-radius:.14em;place-items:center;display:grid;position:absolute;bottom:-.3em;right:-.3em}.pk-evo-lock>svg{width:.78em;height:.78em}.pk-evo-text{min-width:0}.pk-evo-name{letter-spacing:.05em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:.92em;font-weight:900;line-height:1.2;overflow:hidden}.pk-evo-row:not(.is-known) .pk-evo-name{letter-spacing:.12em;color:var(--pk-muted)}.pk-evo-needs{color:var(--pk-muted);margin:.1em 0 0;padding:0;font-size:.78em;font-weight:800;line-height:1.32;list-style:none}.pk-evo-need:first-letter{text-transform:uppercase}.pk-evo-need .pk-influence{color:var(--pk-on-surface)}.pk-evo-row.is-locked{background:var(--pk-hatch);box-shadow:inset 0 0 0 var(--pk-hair) var(--pk-line);grid-template-columns:2.9em minmax(0,1fr)}.pk-evo-row.is-locked .pk-evo-art.is-silhouette .pk-sprite>img{filter:brightness(0)opacity(.5)}.pk-evo-row.is-locked .pk-evo-art:not(.is-silhouette) .pk-sprite>img{filter:grayscale()opacity(.6)}.pk-evo-odds{grid-template-columns:minmax(0,1fr) 2.6em;align-items:center;gap:.5em;display:grid}.pk-evo-odds-value{text-align:right;font-variant-numeric:tabular-nums;font-size:.92em;font-weight:900}.pk-evo-lean{justify-content:flex-end;align-items:center;gap:.5em;display:flex}.pk-evo-lean-pips{gap:.22em;display:inline-flex}.pk-evo-lean-pips i{background:var(--pk-line-strong);width:.95em;height:.42em;transform:skew(-20deg)}.pk-evo-lean[data-lean=faint] .pk-evo-lean-pips i:nth-child(-n+1),.pk-evo-lean[data-lean=leaning] .pk-evo-lean-pips i:nth-child(-n+2),.pk-evo-lean[data-lean=strong] .pk-evo-lean-pips i{background:color-mix(in srgb, var(--pk-evo-glow,var(--pk-accent)) 78%, #fff)}.pk-evo-lean-word{letter-spacing:.11em;text-transform:uppercase;min-width:5.6em;color:var(--pk-muted);font-size:.68em;font-weight:900}.pk-evo-lean[data-lean=strong] .pk-evo-lean-word{color:var(--pk-on-surface)}.pk-evo-rows--dense{gap:.26em}.pk-evo-rows--dense .pk-evo-row{grid-template-columns:2.3em minmax(0,1fr) 11.5em;padding-block:.2em}.pk-evo-rows--dense .pk-evo-row.is-locked{grid-template-columns:2.3em minmax(0,1fr)}.pk-evo-rows--dense .pk-evo-art{width:2.3em;height:2.3em}.pk-evo-rows--dense .pk-evo-hint{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-reduced-motion:reduce){.pk-attune-fill,.pk-evo-odds-fill{animation-duration:1ms}}
