@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(./dm-sans-latin-Xz1IZZA0.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(./fraunces-latin-Di3tPVNY.woff2) format("woff2")}:root{--ink: #182647;--panel: #fffdf5;--panel-line: #26375b;--teal: #176c69;--focus: #f56562;color:#182647;background:#b8dfe0;font-family:DM Sans,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}.game-frame,.game-frame button,.game-frame canvas,.game-frame img,.game-header,.game-header button,.game-header a{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.game-frame img,.game-frame canvas{-webkit-user-drag:none;user-drag:none;touch-action:manipulation}.game-frame button,.game-header button,.game-header a{touch-action:manipulation}.game-frame .control-button,.game-frame .action-button{touch-action:none}.game-frame input,.game-frame textarea,.game-frame [contenteditable=true],.game-frame [contenteditable=""]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}body{margin:0;min-width:320px;min-height:100dvh;overflow:hidden}button{font:inherit;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.app-shell{width:100dvw;height:100dvh;min-height:0;min-height:100dvh;background:linear-gradient(90deg,rgb(255 255 255 / 17%) 1px,transparent 1px) 0 0 / 18px 18px,linear-gradient(rgb(255 255 255 / 13%) 1px,transparent 1px) 0 0 / 18px 18px,radial-gradient(circle at 6% 4%,rgb(255 255 255 / 50%) 0 2px,transparent 3px) 0 0 / 25px 25px,linear-gradient(150deg,#ccebe5,#f8f0d6 54%,#e8c8b2)}.game-header{position:fixed;z-index:4;top:0;right:0;left:0;min-height:68px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;padding-right:max(76px,calc(env(safe-area-inset-right) + 66px));border-bottom:1px solid rgb(255 255 255 / 24%);background:linear-gradient(180deg,#182647d1,#18264700);color:#fffdf5;pointer-events:none}.wordmark{color:#fffdf5;font-family:Fraunces,Georgia,serif;font-size:clamp(1.55rem,6vw,2rem);font-weight:700;letter-spacing:-.06em;line-height:1;text-decoration:none;pointer-events:auto}.status-copy{min-width:0}.location-label,.hint-label{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-label{font-size:.81rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hint-label{color:#fffdf5d9;font-size:.74rem;margin-top:2px}.header-menu,.icon-button{border:0;border-radius:12px;background:#fffdf5;box-shadow:0 3px #a4beb7;color:#176c69;cursor:pointer}.header-menu{width:44px;height:44px;font-size:1.25rem;pointer-events:auto;background:#fffdf5d1}.header-menu{display:none}.header-menu:active,.icon-button:active{transform:translateY(2px);box-shadow:0 1px #a4beb7}.game-main{position:fixed;inset:0;width:100dvw;height:100dvh;max-width:none;margin:0;padding:0}.game-frame{position:relative;width:100%;height:100%;overflow:hidden;border:0;border-radius:0;background:#67bca9;box-shadow:none}.game-mount{width:100%;height:100%}.game-mount canvas{display:block;image-rendering:pixelated}.dialogue-panel{position:absolute;right:10px;bottom:10px;left:10px;z-index:3;padding:14px 16px 12px;border:3px solid #26375b;border-radius:10px;background:#fffdf5;box-shadow:inset 0 0 0 2px #c9d2e0,0 4px #26375b7a}.is-hidden{display:none!important}.dialogue-speaker{margin:0 0 5px;color:#dc605d;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dialogue-text{margin:0;font-size:clamp(.96rem,3.7vw,1.1rem);line-height:1.35}.dialogue-choices{display:grid;gap:7px;margin-top:12px}.dialogue-choice,.dialogue-continue{min-height:44px;padding:8px 12px;border:2px solid #1e7774;border-radius:10px;background:#e2f2ec;color:#174b50;cursor:pointer;font-weight:700;text-align:left}.dialogue-choice:hover,.dialogue-continue:hover{background:#c1e6db}.dialogue-continue{display:block;margin:12px 0 0 auto;min-width:118px;text-align:center}.dialogue-continue[hidden]{display:none}.pause-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;padding:18px;background:#0f404099}.pause-menu{width:min(100%,365px);padding:22px;border:4px solid #195d61;border-radius:18px;background:#fff9e9;box-shadow:0 8px #104e54}.pause-title-row{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.eyebrow{margin:0 0 3px;color:#db5e5c;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.pause-menu h1{margin:0;color:#195d61;font-family:Fraunces,Georgia,serif;font-size:1.65rem;line-height:1.05}.icon-button{width:44px;height:44px;font-size:1.6rem;line-height:1}.pause-copy{margin:17px 0;color:#50696a;font-size:.92rem;line-height:1.4}.pause-bag{margin:0 0 15px;padding:9px;border:2px solid #8ba4ba;border-radius:11px;background:#e2f2ecb3}.pause-bag-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:#195d61}.pause-bag-heading h2{margin:0;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase}.pause-bag-heading span{color:#557072;font-size:.64rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.pause-bag-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;margin-top:7px}.pause-bag-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:5px;min-width:0;min-height:31px;color:#174b50;font-size:.72rem;font-weight:700}.pause-bag-icon{width:28px;height:28px;object-fit:contain;image-rendering:auto}.pause-bag-item>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pause-bag-count{color:#557072;font-size:.67rem;white-space:nowrap}.pause-bag-empty{grid-column:1 / -1;margin:1px 0;color:#557072;font-size:.72rem}.pause-actions{display:grid;gap:9px}.menu-action{min-height:46px;border:2px solid #1d7774;border-radius:11px;background:#ecf6ed;color:#174b50;cursor:pointer;font-weight:700}.menu-action:hover{background:#d5eee4}.menu-action-primary{border-color:#d95857;background:#ed7870;color:#fffdf5}.menu-action-primary:hover{background:#df605e}.menu-action[hidden]{display:none}.battle-overlay,.party-overlay,.box-overlay{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:10px;overflow:auto;background:#152342ba}.battle-shell,.party-shell,.box-shell{width:min(100%,660px);border:4px solid #26375b;border-radius:12px;background:#fffdf5;box-shadow:inset 0 0 0 3px #c9d2e0,0 7px #16213c}.battle-shell{padding:14px}.battle-kicker{display:inline-block;margin:0 0 5px;padding:3px 6px;border-radius:4px;background:#d65854;color:#fffdf5;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.battle-title,.party-title{margin:0;color:#26375b;font-family:Fraunces,Georgia,serif;font-size:clamp(1.15rem,5vw,1.65rem);line-height:1.05}.battle-field{display:grid;grid-template-columns:1fr 1fr;gap:9px;min-height:166px;margin-top:10px;padding:7px;border:2px solid #6280a1;border-radius:8px;background:linear-gradient(155deg,#bde6da 0 48%,#a6d7b9 49% 64%,#f4d99c 65%)}.battle-creature{display:flex;min-width:0}.battle-creature-enemy{align-items:flex-start}.battle-creature-player{align-items:flex-end}.battle-card{width:100%;display:flex;flex-direction:column;justify-content:space-between;gap:6px;padding:8px;border:2px solid #536c93;border-radius:8px;background:#fffdf5e5}.battle-card-player{flex-direction:column-reverse}.battle-name-row{display:flex;align-items:baseline;justify-content:space-between;gap:4px;color:#182647;font-size:.78rem}.battle-name-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.battle-level,.battle-hp{color:#526584;font-size:.67rem;white-space:nowrap}.battle-hp{display:block;margin-top:3px;text-align:right}.battle-subtitle{display:block;margin-top:3px;color:#526584;font-size:.58rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.hp-meter{height:9px;overflow:hidden;border:1px solid #26375b;border-radius:2px;background:#d9e4dc}.hp-fill{display:block;height:100%;transition:width .2s ease}.hp-fill-high{background:#3da879}.hp-fill-mid{background:#e6af4d}.hp-fill-low{background:#dc605d}.battle-status{display:inline-block;margin-top:4px;padding:2px 4px;border-radius:3px;background:#e9ba63;color:#563e20;font-size:.58rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.battle-stage{display:flex;min-height:58px;align-items:end;justify-content:center;border-bottom:5px solid rgb(34 128 100 / 35%)}.battle-card-player .battle-stage{align-items:start;border-color:#da605d61}.battle-portrait,.party-portrait{display:grid;overflow:hidden;place-items:center;background:linear-gradient(135deg,#e67c73,#ffc46b);color:#fffdf5;font-family:Fraunces,Georgia,serif;font-size:2rem;font-weight:700}.battle-portrait{width:59px;height:59px;border:3px solid #26375b;border-radius:8px 8px 43% 43%;box-shadow:0 4px #26375b40}.battle-portrait img,.party-portrait img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.battle-log-wrap{display:flex;align-items:center;gap:8px;min-height:52px;margin-top:10px;padding:9px 10px;border:2px solid #26375b;border-radius:7px;background:#fffdf5;box-shadow:inset 0 0 0 2px #dbe0e9}.battle-log{flex:1;margin:0;color:#182647;font-size:.86rem;line-height:1.25}.battle-continue{flex:none;min-height:44px;padding:6px 9px;border:2px solid #536c93;border-radius:6px;background:#e5eff5;color:#182647;cursor:pointer;font-size:.75rem;font-weight:700}.battle-continue[hidden]{display:none}.battle-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px}.battle-action,.move-button,.battle-back{min-height:44px;border:2px solid #1d7774;border-radius:9px;background:#e2f2ec;color:#174b50;cursor:pointer;font-weight:700}.battle-action:hover,.move-button:hover,.battle-back:hover{background:#ccebe1}.battle-action:disabled,.move-button:disabled,.party-member:disabled{cursor:not-allowed;opacity:.56}.battle-action-primary{border-color:#d95857;background:#ed7870;color:#fffdf5}.battle-action-primary:hover{background:#df605e}.battle-submenu{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:10px}.battle-submenu-title{grid-column:1 / -1;margin:0;color:#557072;font-size:.74rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.move-button{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:7px 9px;text-align:left}.move-meta{color:#557072;font-size:.67rem;font-weight:500;white-space:nowrap}.battle-item-icon{width:24px;height:24px;flex:0 0 auto;object-fit:contain;image-rendering:auto}.battle-back{grid-column:1 / -1;background:#fff9e9}.party-shell{padding:18px}.party-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.party-message{margin:13px 0 9px;color:#50696a;font-size:.86rem}.party-list{display:grid;gap:7px}.party-member{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;min-height:58px;padding:7px 9px;border:2px solid #1d7774;border-radius:10px;background:#edf6ee;color:#174b50;cursor:pointer;text-align:left}.party-member:hover{background:#d6ece2}.party-portrait{width:38px;height:38px;border:2px solid #195d61;border-radius:11px;font-size:1.1rem}.party-member-copy{display:grid;gap:2px}.party-member-copy strong{font-size:.85rem}.party-member-copy span,.party-health{color:#557072;font-size:.69rem}.party-health{font-weight:700}.party-empty{margin:10px 0;color:#557072;text-align:center}.box-shell{padding:18px}.box-message{margin:13px 0 9px;color:#50696a;font-size:.86rem}.box-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.box-section{min-width:0;padding:9px;border:2px solid #8ba4ba;border-radius:10px;background:#edf6ee}.box-section h2{margin:0 0 7px;color:#195d61;font-size:.77rem;letter-spacing:.04em;text-transform:uppercase}.box-list{display:grid;gap:7px;max-height:238px;overflow:auto}.box-member{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:8px;min-height:52px;padding:6px 7px;border:2px solid #1d7774;border-radius:9px;background:#fffdf5;color:#174b50;cursor:pointer;text-align:left}.box-member:hover,.box-member.is-selected{background:#ccebe1}.box-member.is-selected{border-color:#d95857;box-shadow:inset 0 0 0 1px #ed7870}.box-portrait{display:grid;width:34px;height:34px;place-items:center;border:2px solid #195d61;border-radius:10px;background:linear-gradient(135deg,#e67c73,#ffc46b);color:#fffdf5;font-family:Fraunces,Georgia,serif;font-size:1rem;font-weight:700}.box-member-copy{display:grid;min-width:0;gap:2px}.box-member-copy strong,.box-member-copy span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.box-member-copy strong{font-size:.8rem}.box-member-copy span,.box-empty,.box-page-status{color:#557072;font-size:.67rem}.box-empty{margin:12px 0;text-align:center}.box-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin-top:8px}.box-pagination[hidden]{display:none}.box-page-status{margin:0;text-align:center;white-space:nowrap}.box-page-button{min-height:44px;border:2px solid #1d7774;border-radius:8px;background:#fffdf5;color:#174b50;cursor:pointer;font-size:.72rem;font-weight:700}.box-page-button:disabled{cursor:not-allowed;opacity:.55}.box-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}.box-actions .menu-action{min-height:52px;padding:6px;font-size:.75rem;line-height:1.15}.box-actions .menu-action:disabled{cursor:not-allowed;opacity:.55}.touch-controls{position:absolute;inset:0;z-index:5;pointer-events:none;user-select:none;-webkit-user-select:none}.dpad{display:grid;grid-template-columns:repeat(3,48px);grid-template-rows:repeat(3,48px);gap:3px;filter:drop-shadow(0 8px 13px rgb(4 31 54 / 25%))}.control-button,.action-button{border:0;cursor:pointer;pointer-events:auto;touch-action:none}.control-button{border:1px solid rgb(129 239 255 / 66%);border-radius:15px;background:linear-gradient(145deg,#eefeff61,#58bed333);box-shadow:inset 0 1px #ffffff7f,0 3px #0e5b734d,0 0 15px #53e6ff38;color:#dffaff;font-size:1rem;text-shadow:0 1px 2px #082c44,0 0 5px #082c44;-webkit-text-stroke:.35px #082c44;backdrop-filter:blur(10px) saturate(145%);-webkit-backdrop-filter:blur(10px) saturate(145%)}.control-button:active{transform:translateY(2px) scale(.96);box-shadow:inset 0 1px #ffffff7f,0 1px #0e5b734d,0 0 18px #53e6ff66;background:#80e9f766}.dpad-up{grid-column:2;grid-row:1}.dpad-left{grid-column:1;grid-row:2}.dpad-core{grid-column:2;grid-row:2;border:1px solid rgb(135 241 255 / 45%);border-radius:17px;background:radial-gradient(circle at 32% 28%,#ffffff70,#45b2cd30 58%,#176c8c3d);box-shadow:inset 0 1px #ffffff7f,0 0 13px #53e6ff33;backdrop-filter:blur(10px) saturate(145%)}.dpad-right{grid-column:3;grid-row:2}.dpad-down{grid-column:2;grid-row:3}.dpad{position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:max(14px,env(safe-area-inset-left))}.action-controls{position:absolute;right:max(16px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:flex-end;gap:10px;filter:drop-shadow(0 8px 15px rgb(4 20 56 / 28%))}.action-button{display:grid;place-items:center;border:1px solid rgb(222 245 255 / 62%);border-radius:50%;color:#fff;font-size:1.45rem;font-weight:800;line-height:.9;text-shadow:0 1px 2px #091944,0 0 5px #091944;-webkit-text-stroke:.35px #091944;backdrop-filter:blur(12px) saturate(145%);-webkit-backdrop-filter:blur(12px) saturate(145%)}.action-button span{display:block;margin-top:2px;font-size:.56rem;font-weight:700;letter-spacing:.08em;line-height:1;text-transform:uppercase}.action-button:active{transform:translateY(2px) scale(.96)}.action-button-a{width:74px;height:74px;background:radial-gradient(circle at 32% 25%,rgb(255 255 255 / 48%),transparent 21%),linear-gradient(145deg,#43b9ff85,#385beb59);box-shadow:inset 0 1px #ffffff8f,inset 0 -10px 18px #2036b12b,0 4px #17309747,0 0 20px #53b6ff45}.action-button-b{width:58px;height:58px;margin-bottom:13px;background:radial-gradient(circle at 32% 25%,rgb(255 255 255 / 42%),transparent 21%),linear-gradient(145deg,#cb66ff6e,#6a47e147);box-shadow:inset 0 1px #ffffff85,inset 0 -9px 15px #401baa29,0 4px #472a9f40,0 0 18px #c773ff3b;font-size:1.2rem}.action-button-a:active{box-shadow:inset 0 1px #ffffff8f,0 1px #17309747,0 0 23px #53b6ff6b}.action-button-b:active{box-shadow:inset 0 1px #ffffff85,0 1px #472a9f40,0 0 21px #c773ff66}.touch-menu{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(15px,env(safe-area-inset-right));width:50px;min-height:50px;display:grid;place-items:center;gap:0;padding:5px;border:1px solid rgb(198 245 255 / 54%);border-radius:16px;background:linear-gradient(145deg,#e5fcff4f,#5cadcc2b);box-shadow:inset 0 1px #ffffff7a,0 5px 14px #041f3638,0 0 15px #53e6ff26;color:#e7fbff;cursor:pointer;font-weight:800;pointer-events:auto;text-shadow:0 1px 4px rgb(5 53 74 / 70%);touch-action:manipulation;backdrop-filter:blur(10px) saturate(145%);-webkit-backdrop-filter:blur(10px) saturate(145%)}.touch-menu span{font-size:1.2rem;line-height:.8}.touch-menu small{font-size:.52rem;letter-spacing:.08em;line-height:1;text-transform:uppercase}.touch-menu:active{transform:translateY(2px) scale(.96);box-shadow:inset 0 1px #ffffff7a,0 2px 8px #041f3633}.kanto-preview .game-header{min-height:64px;padding-top:max(7px,env(safe-area-inset-top));padding-bottom:7px;background:linear-gradient(90deg,rgb(22 47 63 / 50%),rgb(22 47 63 / 24%) 58%,transparent 84%);border-bottom-color:#ffffff1f}.kanto-preview .wordmark,.kanto-preview .location-label,.kanto-preview .hint-label{text-shadow:0 1px 3px rgb(16 42 49 / 80%)}.kanto-preview .control-button{background:linear-gradient(145deg,#eefeff4a,#58bed321);backdrop-filter:blur(5px) saturate(125%);-webkit-backdrop-filter:blur(5px) saturate(125%)}.kanto-preview .action-button-a{background:radial-gradient(circle at 32% 25%,rgb(255 255 255 / 38%),transparent 21%),linear-gradient(145deg,#43b9ff61,#385beb40)}.kanto-preview .action-button-b{border-color:#eeddffe0;background:radial-gradient(circle at 32% 25%,rgb(255 255 255 / 42%),transparent 21%),linear-gradient(145deg,#cb66ff66,#6a47e14f);box-shadow:inset 0 1px #ffffffa1,inset 0 -8px 13px #401baa36,0 3px #472a9f59,0 0 16px #e1a0ff57}.dialogue-panel{z-index:4}.game-frame:has(.dialogue-panel:not(.is-hidden)) .touch-controls{visibility:hidden;pointer-events:none}@media(min-width:640px){.game-header{padding-right:max(76px,calc(env(safe-area-inset-right) + 66px));padding-left:24px}.dialogue-panel{right:18px;bottom:18px;left:18px;padding:18px 20px 15px}.dpad{grid-template-columns:repeat(3,52px);grid-template-rows:repeat(3,52px)}.action-button-a{width:82px;height:82px}.action-button-b{width:64px;height:64px}.battle-shell{padding:18px}.battle-field{min-height:192px;gap:16px;padding:12px}.battle-card{padding:10px}.battle-stage{min-height:72px}.battle-portrait{width:74px;height:74px}.battle-name-row{font-size:.92rem}.battle-hp,.battle-level{font-size:.74rem}.battle-actions{grid-template-columns:repeat(4,1fr)}.battle-submenu,.party-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:359px){.dpad{grid-template-columns:repeat(3,42px);grid-template-rows:repeat(3,42px)}.action-controls{gap:8px}.action-button-a{width:64px;height:64px}.action-button-b{width:50px;height:50px;margin-bottom:10px}}@media(max-width:639px){.battle-overlay,.party-overlay,.box-overlay,.pause-overlay{position:fixed;z-index:20;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.pause-overlay{place-items:start center;overflow:auto}.pause-menu{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}.battle-overlay,.party-overlay,.box-overlay{place-items:end center}.battle-shell,.party-shell,.box-shell{max-height:calc(100dvh - 24px);overflow:auto}.battle-shell{width:min(100%,470px);padding:12px}.battle-field{min-height:132px;margin-top:7px}.battle-card{padding:6px}.battle-stage{min-height:46px}.battle-portrait{width:48px;height:48px}.battle-name-row{font-size:.72rem}.battle-level,.battle-hp{font-size:.6rem}.battle-log-wrap{min-height:46px;margin-top:7px;padding:7px 8px}.battle-log{font-size:.79rem}.battle-actions,.battle-submenu{margin-top:7px}.battle-action,.move-button,.battle-back{min-height:44px}.box-shell{width:min(100%,470px);padding:14px}.box-columns{grid-template-columns:1fr;gap:8px}.box-list{grid-template-columns:repeat(2,minmax(0,1fr));max-height:118px}.box-member{grid-template-columns:28px 1fr;gap:6px;min-height:45px;padding:5px}.box-portrait{width:28px;height:28px;font-size:.85rem}.box-member-copy strong{font-size:.72rem}.box-member-copy span{font-size:.61rem}.box-actions{grid-template-columns:1fr;margin-top:9px}.box-actions .menu-action{min-height:44px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.game-frame:after{position:absolute;inset:0;z-index:2;pointer-events:none;border:0;border-radius:0;content:""}.header-menu,.icon-button,.dialogue-choice,.dialogue-continue,.menu-action,.battle-action,.move-button,.battle-back,.party-member,.box-member,.box-page-button{transition:transform .12s ease,background-color .12s ease,box-shadow .12s ease}.dialogue-choice,.dialogue-continue,.menu-action,.battle-action,.move-button,.battle-back,.party-member,.box-member,.box-page-button{box-shadow:0 2px #174b502e}.dialogue-choice:active,.dialogue-continue:active,.menu-action:active,.battle-action:active,.move-button:active,.battle-back:active,.party-member:active,.box-member:active,.box-page-button:active{transform:translateY(1px);box-shadow:0 1px #174b502e}.box-member.is-selected{box-shadow:inset 0 0 0 1px #ed7870,0 2px #174b502e}.control-button{border:2px solid rgb(23 108 105 / 14%)}.action-button{border:2px solid rgb(255 255 255 / 45%)}@media(max-width:639px){.battle-log{font-size:.83rem;line-height:1.3}.box-member-copy strong{font-size:.75rem}.box-member-copy span{font-size:.64rem}}@media(max-width:460px){.game-header{align-items:center;min-height:84px}.hint-label{overflow:visible;text-overflow:clip;white-space:normal;line-height:1.28}}@media(orientation:landscape)and (max-height:520px)and (max-width:1023px){.dialogue-panel{right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));left:max(10px,env(safe-area-inset-left))}.pause-overlay,.battle-overlay,.party-overlay,.box-overlay{overflow:auto;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));place-items:start center}.pause-menu,.battle-shell,.party-shell,.box-shell{max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto}.battle-shell{padding:8px}.battle-kicker{margin-bottom:2px;padding:2px 5px}.battle-title{font-size:1.15rem}.battle-field{min-height:126px;margin-top:5px;padding:5px;gap:6px}.battle-card{padding:5px;gap:2px}.battle-stage{min-height:44px}.battle-portrait{width:44px;height:44px}.battle-log-wrap{min-height:42px;margin-top:5px;padding:5px 7px}.battle-actions,.battle-submenu{margin-top:5px;gap:5px}.game-header{min-height:48px;height:48px;padding:2px max(10px,env(safe-area-inset-right)) 2px max(10px,env(safe-area-inset-left));padding-right:max(70px,calc(env(safe-area-inset-right) + 60px));gap:8px}.wordmark{font-size:1.3rem}.hint-label{display:none}.header-menu{width:44px;height:44px}.dpad{grid-template-columns:repeat(3,44px);grid-template-rows:repeat(3,44px);gap:3px}.action-controls{gap:9px}.action-button-a{width:58px;height:58px}.action-button-b{width:48px;height:48px;margin-bottom:10px}.touch-menu{top:max(4px,env(safe-area-inset-top))}}.game-frame:has(.pause-overlay:not(.is-hidden)) .touch-controls,.game-frame:has(.battle-overlay:not(.is-hidden)) .touch-controls,.game-frame:has(.party-overlay:not(.is-hidden)) .touch-controls,.game-frame:has(.box-overlay:not(.is-hidden)) .touch-controls{z-index:21;visibility:visible;pointer-events:none}.game-frame:has(.pause-overlay:not(.is-hidden)) .dpad,.game-frame:has(.battle-overlay:not(.is-hidden)) .dpad,.game-frame:has(.party-overlay:not(.is-hidden)) .dpad,.game-frame:has(.box-overlay:not(.is-hidden)) .dpad,.game-frame:has(.pause-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.battle-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.party-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.box-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.pause-overlay:not(.is-hidden)) .touch-menu,.game-frame:has(.battle-overlay:not(.is-hidden)) .touch-menu,.game-frame:has(.party-overlay:not(.is-hidden)) .touch-menu,.game-frame:has(.box-overlay:not(.is-hidden)) .touch-menu{visibility:hidden;pointer-events:none}.game-frame:has(.pause-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.battle-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.party-overlay:not(.is-hidden)) .action-button-a,.game-frame:has(.box-overlay:not(.is-hidden)) .action-button-a{display:none}.game-frame:has(.pause-overlay:not(.is-hidden)) .action-controls,.game-frame:has(.battle-overlay:not(.is-hidden)) .action-controls,.game-frame:has(.party-overlay:not(.is-hidden)) .action-controls,.game-frame:has(.box-overlay:not(.is-hidden)) .action-controls{pointer-events:none}.game-frame:has(.pause-overlay:not(.is-hidden)) #touch-b,.game-frame:has(.battle-overlay:not(.is-hidden)) #touch-b,.game-frame:has(.party-overlay:not(.is-hidden)) #touch-b,.game-frame:has(.box-overlay:not(.is-hidden)) #touch-b{visibility:hidden;pointer-events:none}.game-frame:has(.pause-overlay:not(.is-hidden)) #touch-b,.game-frame:has(.box-overlay:not(.is-hidden)) #touch-b,.game-frame:has(.party-overlay:not(.is-hidden) #party-close:not([hidden])) #touch-b,.game-frame:has(.battle-overlay:not(.is-hidden) #battle-moves:not(.is-hidden)) #touch-b,.game-frame:has(.battle-overlay:not(.is-hidden) #battle-bag:not(.is-hidden)) #touch-b{visibility:visible;pointer-events:auto}.game-frame:has(.pause-overlay:not(.is-hidden)) .pause-overlay,.game-frame:has(.battle-overlay:not(.is-hidden)) .battle-overlay,.game-frame:has(.party-overlay:not(.is-hidden)) .party-overlay,.game-frame:has(.box-overlay:not(.is-hidden)) .box-overlay{padding-bottom:max(96px,calc(20px + env(safe-area-inset-bottom)))}.capture-tutorial-overlay{position:absolute;inset:0;z-index:9;display:grid;place-items:center;padding:14px;overflow:auto;background:#152342c2}.capture-tutorial-overlay.is-hidden{display:none}.capture-tutorial-shell{width:min(100%,500px);padding:16px;border:4px solid #26375b;border-radius:12px;background:#fffdf5;box-shadow:inset 0 0 0 3px #c9d2e0,0 7px #16213c}.capture-tutorial-eyebrow{display:inline-block;margin:0 0 5px;padding:3px 6px;border-radius:4px;background:#d65854;color:#fffdf5;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.capture-tutorial-shell h2{margin:0;color:#26375b;font-family:Fraunces,Georgia,serif;font-size:clamp(1.15rem,5vw,1.65rem);line-height:1.05}.capture-tutorial-scene{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;min-height:148px;margin-top:10px;padding:12px;overflow:hidden;border:2px solid #6280a1;border-radius:8px;background:linear-gradient(155deg,#bde6da 0 48%,#a6d7b9 49% 64%,#f4d99c 65%)}.capture-tutorial-old-man{z-index:1;width:48px;height:64px;align-self:end;justify-self:start;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 4px 0 rgb(34 128 100 / 35%))}.capture-tutorial-ball{z-index:3;width:24px;height:24px;margin-bottom:27px;border:0;border-radius:50%;background:center / contain no-repeat url(../art/items/poke-ball.png)}.capture-tutorial-weedle{z-index:2;width:72px;height:72px;align-self:end;justify-self:end;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 4px 0 rgb(34 128 100 / 35%))}.capture-tutorial-weedle.is-missing-art{display:grid;place-items:center;border:3px solid #536c93;border-radius:45% 45% 38% 38%;background:linear-gradient(145deg,#dac77a,#a79648)}.capture-tutorial-weedle-label{position:absolute;right:10px;bottom:8px;z-index:4;padding:2px 4px;border-radius:3px;background:#fffdf5e0;color:#26375b;font-size:.58rem;font-weight:800}.capture-tutorial-copy{min-height:48px;margin:10px 0;padding:9px 10px;border:2px solid #26375b;border-radius:7px;box-shadow:inset 0 0 0 2px #dbe0e9;color:#182647;font-size:.88rem;line-height:1.3}.capture-tutorial-continue{width:100%;min-height:48px;border:2px solid #1d7774;border-radius:9px;background:#e2f2ec;color:#174b50;cursor:pointer;font-weight:700}.capture-tutorial-continue:hover,.capture-tutorial-continue:focus-visible{background:#ccebe1}.capture-tutorial-overlay[data-phase=throw] .capture-tutorial-ball{animation:capture-tutorial-throw .75s ease-in-out both}.capture-tutorial-overlay[data-phase=caught] .capture-tutorial-weedle,.capture-tutorial-overlay[data-phase=finish] .capture-tutorial-weedle{animation:capture-tutorial-caught .38s ease-out both}.capture-tutorial-overlay[data-phase=caught] .capture-tutorial-ball,.capture-tutorial-overlay[data-phase=finish] .capture-tutorial-ball{margin-bottom:5px;animation:capture-tutorial-click .65s ease-in-out both}@keyframes capture-tutorial-throw{0%{transform:translate(-84px,36px) scale(.75)}55%{transform:translate(32px,-50px) scale(1.08)}to{transform:translate(72px,28px) scale(.9)}}@keyframes capture-tutorial-caught{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.25)}}@keyframes capture-tutorial-click{0%,35%,70%,to{transform:translate(0)}17%,52%,85%{transform:translate(4px)}}@media(max-width:639px){.capture-tutorial-overlay{position:fixed;z-index:20;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.capture-tutorial-shell{width:min(100%,470px)}.capture-tutorial-scene{min-height:124px}}@media(prefers-reduced-motion:reduce){.capture-tutorial-overlay *{animation:none!important}}
