:root{--color-paper:#f4ead1;--color-paper-light:#fffaf0;--color-paper-deep:#e8d8b8;--color-ink:#303342;--color-ink-soft:#656474;--color-coral:#d96858;--color-coral-dark:#a94742;--color-grass:#668f62;--color-grass-dark:#3f684a;--color-sky:#82b6c3;--color-sky-light:#d7eced;--color-gold:#d5aa4f;--color-indigo:#474b72;--color-line:#4b41363d;--color-line-strong:#4137306b;--font-body:"Avenir Next","Nunito Sans","Trebuchet MS",system-ui,sans-serif;--font-display:"Pokemon GB","Courier New",monospace;--space-1:0.35rem;--space-2:0.55rem;--space-3:0.8rem;--space-4:1rem;--space-5:1.35rem;--space-6:1.75rem;--space-7:2.4rem;--radius-sm:0.65rem;--radius-md:0.95rem;--radius-lg:1.35rem;--radius-xl:1.8rem;--radius-pill:999px;--shadow-resting:0 5px 0 #4b3a2d1f,0 14px 30px #362d2921;--shadow-raised:0 7px 0 #4b3a2d24,0 22px 48px #2d27282e;--shadow-inset:inset 0 0 0 1px #ffffff94;--paper-texture:radial-gradient(circle at 18% 22%,#825b320d 0 1px,#0000 1.4px),radial-gradient(circle at 74% 68%,#54483a0a 0 1px,#0000 1.5px),linear-gradient(115deg,#ffffff47,#0000 44%)}*{box-sizing:border-box}body,html{background:#e8d8b8;background:var(--color-paper-deep);min-width:320px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#303342;color:var(--color-ink);font-family:Avenir Next,Nunito Sans,Trebuchet MS,system-ui,sans-serif;font-family:var(--font-body);margin:0}a,button{-webkit-tap-highlight-color:transparent}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #474b72;outline:3px solid var(--color-indigo);outline-offset:3px}::selection{background:#474b72;background:var(--color-indigo);color:#fffaf0;color:var(--color-paper-light)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}code{font-family:var(--font-display)}@font-face{font-display:swap;font-family:Pokemon GB;font-style:normal;font-weight:400;src:url(/static/media/PokemonGb-RAeo.6211ee48ea626f34681e.ttf) format("truetype")}.battle-scene{--hud-height:clamp(11rem,25vh,15rem);--scene-pad:clamp(0.75rem,1.8vw,1.25rem);display:flex;flex-direction:column;isolation:isolate;min-height:100vh;min-height:100svh;overflow:hidden;position:relative;width:100%}.battle-scene.is-section-active{height:100svh;overflow:hidden}.battle-background{background-position:50%;background-repeat:no-repeat;background-size:cover;inset:0;position:absolute;z-index:0}.battle-stage{flex:1 1 auto;min-height:0;position:relative;z-index:1}.enemy-group{position:absolute;right:clamp(1rem,4vw,4rem);top:clamp(2.25rem,6vh,5rem);width:clamp(11rem,20vw,17rem);z-index:2}.player-group{bottom:calc(var(--scene-pad)*-1);left:clamp(.35rem,3.8vw,3rem);position:absolute;width:clamp(14rem,25vw,21rem);z-index:3}.enemy-trainer,.player-trainer{display:block;height:auto;image-rendering:pixelated}.enemy-trainer{width:100%;z-index:1}.player-trainer{width:100%}.battle-ui{grid-gap:0;align-items:stretch;box-sizing:border-box;display:grid;gap:0;grid-template-columns:minmax(0,1.55fr) minmax(16rem,1fr);height:var(--hud-height);isolation:isolate;padding:0;position:relative;z-index:4}.command-menu,.dialogue-box{box-sizing:border-box;display:flex;height:100%;min-width:0;padding:clamp(.35rem,.9vw,.55rem)}.dialogue-box{background:#2d2d32;border-radius:clamp(.5rem,1vw,.85rem);font-family:Pokemon GB,monospace;letter-spacing:.02em}.dialogue-box-border{background:#d1af50;border-radius:clamp(.35rem,.8vw,.65rem);padding:clamp(.45rem,1vw,.8rem)}.dialogue-box-border,.dialogue-box-inner{box-sizing:border-box;display:flex;height:100%;width:100%}.dialogue-box-inner{align-items:center;background:#3473b4;border-radius:.25rem;box-shadow:inset 0 0 0 clamp(.28rem,.7vw,.55rem) #d7e6f2;padding:clamp(1rem,1.8vw,1.6rem)}.dialogue-text{color:#f8f8fa;font-size:clamp(1.6rem,3.35vw,3.35rem);line-height:1.18;margin:0;max-width:11ch}.command-menu{background:#2d2d32;border-radius:clamp(.5rem,1vw,.85rem)}.command-menu-border{background:#8079a6;border-radius:clamp(.35rem,.8vw,.65rem);display:flex;padding:clamp(.45rem,1vw,.8rem)}.command-menu-border,.command-menu-inner{box-sizing:border-box;height:100%;width:100%}.command-menu-inner{grid-gap:clamp(.2rem,.55vw,.4rem);align-items:center;background:#f3f1f4;border-radius:.25rem;display:grid;gap:clamp(.2rem,.55vw,.4rem);grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));padding:clamp(.8rem,1.4vw,1.1rem)}.command-menu-button{align-items:center;appearance:none;background:#0000;border:0;color:#2c2c33;cursor:pointer;display:flex;font-family:Pokemon GB,monospace;font-size:clamp(1rem,2vw,1.95rem);height:100%;justify-content:flex-start;line-height:1;min-width:0;overflow:hidden;padding-left:1.05em;position:relative;white-space:nowrap;width:100%}.command-menu-button:focus-visible{border-radius:.15rem;outline:2px solid #3473b4;outline-offset:-1px}.command-menu-button.is-selected:before{content:"\25B6";font-size:.8em;left:0;position:absolute;top:50%;transform:translateY(-50%)}@media (max-width:1100px){.battle-scene{--hud-height:clamp(10rem,28vh,13.5rem)}.enemy-group{right:clamp(.5rem,2.5vw,2rem);top:clamp(1.75rem,4vh,3.5rem);width:clamp(10rem,20vw,14rem)}.player-group{bottom:calc(var(--scene-pad)*-1);left:clamp(.25rem,2vw,1.5rem);width:clamp(12rem,23vw,16rem)}.dialogue-text{font-size:clamp(1.35rem,3vw,2.7rem)}.command-menu-button{font-size:clamp(.95rem,1.8vw,1.55rem)}}@media (max-width:780px){.battle-scene{--hud-height:auto}.enemy-group{right:clamp(.35rem,2vw,.85rem);top:clamp(.75rem,2vh,1.5rem);width:clamp(8.5rem,25vw,11rem)}.player-group{bottom:calc(var(--scene-pad)*-1);left:clamp(.2rem,2vw,.75rem);width:clamp(9.5rem,31vw,12rem)}.battle-ui{grid-template-columns:1fr;height:auto}.command-menu,.dialogue-box{min-height:clamp(7.5rem,22vh,10rem)}.dialogue-text{font-size:clamp(1.1rem,5.4vw,2rem)}.command-menu-button{font-size:clamp(.85rem,3.6vw,1.15rem)}}.battle-stage .enemy-group,.battle-stage .player-group,.battle-ui{transition:opacity .26s ease,filter .26s ease,transform .26s ease}.battle-stage.is-section-active{z-index:10}.battle-stage.is-section-active .enemy-group,.battle-stage.is-section-active .player-group{filter:saturate(.62) brightness(.76);opacity:.24}.battle-ui.is-panel-open{filter:saturate(.62) brightness(.72);opacity:.24}.section-transition-layer{inset:0;pointer-events:none;position:fixed;z-index:20}.section-transition-layer.is-active>*{pointer-events:auto}.section-overlay{align-items:center;background:radial-gradient(circle at 50% 44%,#61678e33,#0000 46%),#252938;display:flex;inset:0;justify-content:center;overflow:auto;overscroll-behavior:contain;padding:clamp(.8rem,2.5vw,2rem);position:absolute}.section-overlay-tone{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(180deg,hsla(0,0%,100%,.015),#00000014);inset:0;pointer-events:none;position:absolute}.placeholder-overlay-panel{background:var(--paper-texture),var(--color-paper-light);border:1px solid var(--color-line-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-raised);color:var(--color-ink);padding:clamp(1.2rem,2.2vw,1.8rem);position:relative;width:min(100%,34rem);z-index:1}.placeholder-overlay-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.placeholder-overlay-kicker{color:var(--color-coral-dark);font-family:var(--font-display);font-size:clamp(.62rem,.9vw,.78rem);margin:0 0 .45rem}.placeholder-overlay-header h2{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(1rem,1.6vw,1.4rem);margin:0}.placeholder-overlay-copy{font-size:1rem;line-height:1.65;margin:1rem 0 0}.placeholder-overlay-close{appearance:none;background:var(--color-indigo);border:1px solid var(--color-line);border-radius:var(--radius-md);box-shadow:0 3px 0 #2325383d;color:var(--color-paper-light);cursor:pointer;font-family:var(--font-display);font-size:.68rem;min-height:2.75rem;padding:.8rem 1rem}@media (max-width:700px){.section-overlay{align-items:flex-start;padding:.65rem}}@media (prefers-reduced-motion:reduce){.battle-stage .enemy-group,.battle-stage .player-group,.battle-ui{transition:none}.section-overlay-tone{-webkit-backdrop-filter:none;backdrop-filter:none}}.about-overlay{align-items:center}.about-card-shell{max-height:calc(100svh - 2rem);position:relative;width:min(100%,68rem);z-index:1}.about-card-shadow{background:#080a1052;border-radius:50%;bottom:-.75rem;filter:blur(16px);height:2rem;left:6%;pointer-events:none;position:absolute;right:6%}.about-card-page,.about-card-shell-motion{position:relative;width:100%}.about-card-face{overflow:hidden}.about-card-front{background:radial-gradient(circle at 22% 18%,rgba(83,67,48,.035) 0 1px,#0000 1.4px),#f7f0de;background-size:6rem 6rem;border:1px solid #2b2b3473;border-radius:.45rem;box-shadow:0 22px 70px #05070d4d;color:var(--color-ink);max-height:calc(100svh - 2rem);overflow-y:auto;padding:clamp(1.25rem,3vw,2.5rem);position:relative}.about-card-front:before{color:#474b7233;content:"TRAINER / 001";font-family:var(--font-display);font-size:.58rem;letter-spacing:.16em;position:absolute;right:-3.55rem;top:50%;transform:rotate(90deg)}.about-card-header{align-items:flex-start;border-bottom:1px solid #3033423d;display:flex;gap:1.5rem;justify-content:space-between;padding-bottom:clamp(1rem,2vw,1.5rem)}.about-card-kicker{color:var(--color-coral-dark);font-family:var(--font-display);font-size:clamp(.56rem,.68vw,.66rem);letter-spacing:.08em;line-height:1.5;margin:0 0 .65rem;text-transform:uppercase}.about-card-title{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(1.15rem,2.1vw,1.85rem);line-height:1.35;margin:0}.about-card-role{color:var(--color-ink-soft);font-size:clamp(.86rem,1vw,.98rem);font-weight:600;margin:.6rem 0 0}.about-card-action,.about-card-close{appearance:none;font-family:var(--font-display);font-size:clamp(.55rem,.66vw,.64rem);line-height:1.4;text-decoration:none}.about-card-close{background:#0000;border:0;border-bottom:2px solid var(--color-indigo);border-radius:0;color:var(--color-indigo);cursor:pointer;flex:0 0 auto;min-height:2.75rem;padding:.7rem 0}.about-card-close:focus-visible,.about-card-close:hover{border-bottom-color:var(--color-coral-dark);color:var(--color-coral-dark)}.about-card-body{grid-gap:clamp(1.5rem,3.5vw,3.25rem);display:grid;gap:clamp(1.5rem,3.5vw,3.25rem);grid-template-columns:minmax(13rem,.78fr) minmax(0,1.65fr);padding-top:clamp(1.25rem,2.8vw,2.2rem)}.about-card-portrait{display:flex;flex-direction:column;gap:1.1rem;min-width:0}.about-card-portrait-frame{align-items:flex-end;background:linear-gradient(180deg,#cfe5e7 0 68%,#829e75 68% 100%);border:1px solid #3033425c;border-radius:.15rem;display:flex;justify-content:center;min-height:16rem;overflow:hidden;padding:1rem .75rem 1.6rem;position:relative}.about-card-portrait-frame:before{background:#6f8d68;border-radius:50%;bottom:2rem;content:"";height:2.3rem;left:-10%;position:absolute;right:-10%}.about-card-portrait-stamp{color:#a94742ad;font-family:var(--font-display);font-size:.56rem;position:absolute;right:.85rem;top:.85rem}.about-card-portrait-image{filter:drop-shadow(0 .4rem 0 rgba(56,67,53,.16));image-rendering:pixelated;position:relative;width:min(100%,10.5rem);z-index:1}.about-card-portrait-caption{bottom:.45rem;color:#303342ad;font-size:.68rem;font-style:italic;position:absolute;right:.8rem;z-index:2}.about-card-tagline{border-left:2px solid var(--color-gold);color:var(--color-ink-soft);margin:0;padding-left:.9rem}.about-card-tagline p{font-family:Georgia,Times New Roman,serif;font-size:clamp(.88rem,1.08vw,1rem);line-height:1.55;margin:0}.about-card-tagline cite{color:var(--color-coral-dark);display:block;font-size:.73rem;font-style:normal;font-weight:700;margin-top:.55rem}.about-card-content{min-width:0}.about-card-meta{grid-gap:0;border-bottom:1px solid #3033423d;border-top:1px solid #3033423d;display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 1.4rem}.about-card-meta div{padding:.85rem 1rem .85rem 0}.about-card-meta div+div{border-left:1px solid #3033422e;padding-left:1rem}.about-card-meta dt{color:var(--color-grass-dark);font-family:var(--font-display);font-size:.52rem;line-height:1.4;margin-bottom:.35rem;text-transform:uppercase}.about-card-bio,.about-card-meta dd{margin:0}.about-card-meta dd{color:var(--color-ink);font-size:clamp(.82rem,.95vw,.92rem);font-weight:650;line-height:1.4}.about-card-bio{color:var(--color-ink);font-size:clamp(.95rem,1.12vw,1.07rem);line-height:1.72;max-width:60ch}.about-card-section-heading{align-items:center;color:var(--color-coral-dark);display:flex;font-family:var(--font-display);font-size:.54rem;gap:.8rem;line-height:1.4;margin-top:1.4rem;text-transform:uppercase}.about-card-section-heading span:last-child{color:#30334247;flex:1 1 auto;letter-spacing:.24em;overflow:hidden;white-space:nowrap}.about-card-tags{border-bottom:1px solid #30334233;display:flex;flex-wrap:wrap;gap:.45rem 1.2rem;list-style:none;margin:0;padding:.85rem 0 1.2rem}.about-card-tags li{align-items:center;color:var(--color-grass-dark);display:inline-flex;font-family:var(--font-display);font-size:clamp(.5rem,.62vw,.59rem);gap:.45rem;line-height:1.4}.about-card-tags li span{color:var(--color-coral-dark);font-family:var(--font-body);font-size:.72rem;font-weight:800}.about-card-actions{display:flex;flex-wrap:wrap;gap:1.4rem;margin-top:1.25rem}.about-card-action{align-items:center;border-bottom:2px solid var(--color-indigo);color:var(--color-indigo);display:inline-flex;gap:1.1rem;min-height:2.75rem;padding:.6rem 0}.about-card-action:focus-visible,.about-card-action:hover{border-bottom-color:var(--color-coral-dark);color:var(--color-coral-dark)}.about-card-handnote{color:#474b72b3;font-size:.78rem;font-style:italic;margin:1rem 0 0}@media (max-width:760px){.about-overlay{align-items:flex-start}.about-card-front,.about-card-shell{max-height:none}.about-card-body{grid-template-columns:1fr}.about-card-portrait{align-items:start;display:grid;grid-template-columns:minmax(10rem,.75fr) minmax(0,1fr)}}@media (max-width:520px){.about-card-front{padding:1rem}.about-card-title{font-size:1rem}.about-card-role{max-width:22ch}.about-card-meta,.about-card-portrait{grid-template-columns:1fr}.about-card-meta div+div{border-left:0;border-top:1px solid #30334229;padding-left:0}}.blog-overlay{align-items:center}.pokedex-shell{background:radial-gradient(circle at 22% 18%,#53433008 0 1px,#0000 1.4px),#f6efdd;background-size:6rem 6rem;border:1px solid #2a2c377a;border-radius:.45rem;box-shadow:0 24px 72px #04060c57;color:var(--color-ink);display:flex;flex-direction:column;height:min(calc(100svh - 2rem),44rem);overflow:hidden;padding:clamp(1.2rem,2.6vw,2rem);position:relative;width:min(100%,76rem);z-index:1}.pokedex-shell-lights{bottom:22%;display:flex;flex-direction:column;justify-content:space-around;left:.45rem;position:absolute;top:22%}.pokedex-light,.pokedex-light--green,.pokedex-light--primary,.pokedex-light--red,.pokedex-light--yellow{background:#474b7259;border-radius:50%;display:block;height:.35rem;width:.35rem}.pokedex-shell-header{align-items:flex-start;border-bottom:1px solid #30334247;display:flex;gap:1rem;justify-content:space-between;padding:0 0 1rem .3rem}.pokedex-panel-kicker,.pokedex-panel-subtitle,.pokedex-readout-label,.pokedex-record-action,.pokedex-record-id,.pokedex-record-kicker,.pokedex-shell-kicker{font-family:var(--font-display)}.pokedex-shell-kicker{color:var(--color-coral-dark);font-size:clamp(.54rem,.66vw,.64rem);letter-spacing:.07em;line-height:1.45;margin:0 0 .48rem;text-transform:uppercase}.pokedex-shell-title{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(.88rem,1.2vw,1.08rem);line-height:1.4;margin:0}.pokedex-shell-helper{color:var(--color-ink-soft);font-size:clamp(.78rem,.92vw,.88rem);font-weight:600;margin:.45rem 0 0}.pokedex-shell-close{appearance:none;background:#0000;border:0;border-bottom:2px solid var(--color-indigo);border-radius:0;color:var(--color-indigo);cursor:pointer;flex:0 0 auto;font-family:var(--font-display);font-size:.6rem;line-height:1.4;min-height:2.75rem;padding:.68rem 0}.pokedex-shell-close:focus-visible,.pokedex-shell-close:hover{border-bottom-color:var(--color-coral-dark);color:var(--color-coral-dark)}.pokedex-shell-body{display:grid;flex:1 1 auto;grid-template-columns:minmax(17rem,.8fr) minmax(0,1.5fr);min-height:0}.blog-overlay-layout{display:contents}.pokedex-index-panel,.pokedex-record-panel{min-height:0;min-width:0}.pokedex-index-panel{border-right:1px solid #30334238;display:flex;flex-direction:column;padding:1.1rem 1.1rem 0 .3rem}.pokedex-record-panel{padding:1.1rem 0 0 1.5rem}.pokedex-panel-header{border-bottom:1px solid #3033422e;padding-bottom:.75rem}.pokedex-panel-kicker{color:var(--color-indigo);font-size:.53rem;line-height:1.4;margin:0}.pokedex-panel-subtitle{color:var(--color-ink-soft);font-family:var(--font-body);font-size:.76rem;margin:.35rem 0 0}.pokedex-entry-list{min-height:0;overflow-y:auto;scrollbar-gutter:stable}.pokedex-entry-list::-webkit-scrollbar{width:.4rem}.pokedex-entry-list::-webkit-scrollbar-track{background:#3033420f}.pokedex-entry-list::-webkit-scrollbar-thumb{background:#474b725c}.blog-entry-row{grid-gap:.45rem;align-items:start;appearance:none;background:#0000;border:0;border-bottom:1px solid #30334229;border-radius:0;color:var(--color-ink);cursor:pointer;display:grid;gap:.45rem;grid-template-columns:.6rem 2rem minmax(0,1fr);min-height:4.6rem;padding:.75rem .4rem;position:relative;text-align:left;transition:background-color .14s ease,padding-left .14s ease;width:100%}.blog-entry-row:hover{background:#ffffff3d}.blog-entry-row.is-selected{background:#82b6c31f;padding-left:.68rem}.blog-entry-row.is-selected:before{background:var(--color-sky);content:"";inset:0 auto 0 0;position:absolute;width:.2rem}.blog-entry-row-cursor{background:#82b6c359;border-radius:50%;height:.34rem;margin-top:.28rem;width:.34rem}.blog-entry-row.is-selected .blog-entry-row-cursor{background:var(--color-sky)}.blog-entry-row-number{color:var(--color-coral-dark);font-family:var(--font-display);font-size:.47rem;line-height:1.5}.blog-entry-row-body{grid-gap:.22rem;display:grid;gap:.22rem;min-width:0}.blog-entry-row-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-ink);display:-webkit-box;font-size:clamp(.8rem,.92vw,.9rem);font-weight:720;line-height:1.32;overflow:hidden}.blog-entry-row-date{color:var(--color-ink-soft);font-size:.7rem}.pokedex-record-content{display:grid;grid-template-rows:auto minmax(10rem,1fr) auto auto;height:100%;min-height:0}.pokedex-record-header{align-items:flex-start;border-bottom:1px solid #3033422e;display:flex;gap:1rem;justify-content:space-between;padding-bottom:.8rem}.pokedex-record-kicker{color:var(--color-coral-dark);font-size:.5rem;line-height:1.4;margin:0 0 .36rem;text-transform:uppercase}.pokedex-record-title{color:var(--color-indigo);font-size:clamp(.88rem,1.05vw,1rem);line-height:1.4;margin:0}.pokedex-record-meta{grid-gap:.3rem;display:grid;flex:0 0 auto;gap:.3rem;justify-items:end}.pokedex-record-id{color:var(--color-sky);font-size:.47rem}.pokedex-record-date{color:var(--color-ink-soft);font-size:.7rem}.pokedex-record-screen{border-bottom:1px solid #3033422e;min-height:0;padding:.9rem 0}.pokedex-record-screen-inner{background:var(--color-sky-light);border:1px solid #3033423d;border-radius:.15rem;height:100%;min-height:10rem;overflow:hidden;position:relative;width:100%}.pokedex-record-screen-grid,.pokedex-record-screen-image{inset:0;position:absolute}.pokedex-record-screen-image{height:100%;object-fit:cover;width:100%}.pokedex-record-screen-grid{opacity:0}.pokedex-record-screen-inner:after{background:linear-gradient(180deg,#0000,#21242f85);content:"";height:32%;inset:auto 0 0;position:absolute}.pokedex-record-screen-label{bottom:.55rem;color:#fff;font-family:var(--font-display);font-size:.47rem;left:.65rem;line-height:1.4;position:absolute;z-index:2}.pokedex-record-readout{border-bottom:1px solid #3033422e;padding:.85rem 0}.pokedex-readout-label{color:var(--color-grass-dark);font-size:.5rem;line-height:1.4;margin:0 0 .42rem;text-transform:uppercase}.pokedex-readout-copy{color:var(--color-ink);font-size:clamp(.82rem,.94vw,.92rem);line-height:1.58;margin:0}.pokedex-record-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding-top:.7rem}.pokedex-record-action{align-items:center;border-bottom:2px solid var(--color-grass-dark);color:var(--color-indigo);display:inline-flex;font-size:.52rem;gap:.6rem;line-height:1.4;min-height:2.75rem;text-decoration:none}.pokedex-record-action-note{color:var(--color-ink-soft);font-size:.72rem;font-style:italic}@media (max-width:700px){.blog-overlay{align-items:flex-start}.pokedex-shell{height:calc(100svh - 1.3rem);padding:1rem;width:min(100%,40rem)}.pokedex-shell-lights{display:none}.pokedex-shell-body{grid-template-columns:1fr;overflow-y:auto}.pokedex-index-panel{border-bottom:1px solid #30334238;border-right:0;padding:1rem 0}.pokedex-entry-list{max-height:18rem}.pokedex-record-panel{padding:1rem 0 0}.pokedex-record-content{grid-template-rows:auto auto auto auto}.pokedex-record-screen-inner{aspect-ratio:16/10}}@media (max-width:480px){.pokedex-record-actions,.pokedex-record-header{align-items:flex-start;flex-direction:column}.pokedex-record-meta{justify-items:start}}.connect-overlay{align-items:center}.contact-shell{background:linear-gradient(90deg,#5d7b830d 1px,#0000 0),#f7f0de;background-size:2.3rem 100%;border:1px solid #2a2c377a;border-radius:.45rem;box-shadow:0 24px 72px #04060c57;color:var(--color-ink);display:flex;flex-direction:column;min-height:min(calc(100svh - 2rem),32rem);overflow:hidden;padding:clamp(1.2rem,2.8vw,2.2rem);position:relative;width:min(100%,60rem);z-index:1}.contact-shell-header{align-items:flex-start;border-bottom:1px solid #30334247;display:flex;gap:1rem;justify-content:space-between;padding-bottom:1rem}.contact-detail-action,.contact-detail-label,.contact-menu-item-label,.contact-shell-close,.contact-shell-kicker,.contact-shell-title,.contact-subpanel-kicker{font-family:var(--font-display)}.contact-shell-kicker{color:var(--color-coral-dark);font-size:clamp(.54rem,.66vw,.64rem);letter-spacing:.07em;line-height:1.45;margin:0 0 .48rem;text-transform:uppercase}.contact-shell-title{color:var(--color-indigo);font-size:clamp(.86rem,1.15vw,1.02rem);line-height:1.45;margin:0}.contact-shell-helper{color:var(--color-ink-soft);font-size:clamp(.8rem,.94vw,.9rem);font-weight:600;margin:.46rem 0 0}.contact-shell-close{appearance:none;background:#0000;border:0;border-bottom:2px solid var(--color-indigo);border-radius:0;color:var(--color-indigo);cursor:pointer;flex:0 0 auto;font-size:.6rem;line-height:1.4;min-height:2.75rem;padding:.68rem 0}.contact-shell-close:focus-visible,.contact-shell-close:hover{border-bottom-color:var(--color-coral-dark);color:var(--color-coral-dark)}.contact-shell-body{flex:1 1 auto;min-height:0}.contact-layout{display:grid;grid-template-columns:minmax(15rem,.72fr) minmax(0,1.35fr);height:100%;min-height:0}.contact-detail-panel,.contact-menu-panel{min-height:0;min-width:0;padding-top:1.15rem}.contact-menu-panel{border-right:1px solid #30334238;padding-right:1.25rem}.contact-detail-panel{display:flex;flex-direction:column;gap:0;padding-left:1.5rem}.contact-subpanel-header{border-bottom:1px solid #3033422e;padding-bottom:.72rem}.contact-subpanel-kicker{color:var(--color-coral-dark);font-size:.52rem;line-height:1.4;margin:0;text-transform:uppercase}.contact-subpanel-copy{color:var(--color-ink-soft);font-size:.78rem;margin:.35rem 0 0}.contact-menu-list{min-height:0}.contact-menu-item{grid-gap:.65rem;align-items:center;appearance:none;background:#0000;border:0;border-bottom:1px solid #30334229;border-radius:0;color:var(--color-ink);cursor:pointer;display:grid;gap:.65rem;grid-template-columns:.55rem 2.3rem minmax(0,1fr);min-height:5.3rem;padding:.78rem .35rem;position:relative;text-align:left;transition:background-color .14s ease,padding-left .14s ease;width:100%}.contact-menu-item:hover{background:#ffffff38}.contact-menu-item.is-selected{background:#d968581a;padding-left:.65rem}.contact-menu-item.is-selected:before{background:var(--color-coral);content:"";inset:0 auto 0 0;position:absolute;width:.2rem}.contact-menu-item-cursor{background:#d9685852;border-radius:50%;height:.32rem;width:.32rem}.contact-menu-item.is-selected .contact-menu-item-cursor{background:var(--color-coral)}.contact-detail-badge,.contact-menu-item-icon{color:var(--color-indigo);display:grid;font-family:var(--font-display);font-size:.48rem;height:2.3rem;place-items:center;width:2.3rem}.contact-menu-item-icon{border:1px solid #30334240}.contact-menu-item-copy{grid-gap:.22rem;display:grid;gap:.22rem;min-width:0}.contact-menu-item-label{color:var(--color-indigo);font-size:.55rem;line-height:1.45}.contact-detail-description,.contact-detail-meta,.contact-detail-note,.contact-menu-item-meta{color:var(--color-ink-soft);font-size:clamp(.8rem,.92vw,.89rem);line-height:1.55}.contact-menu-item-meta{font-size:.73rem}.contact-detail-header{align-items:flex-start;display:flex;flex-direction:row;gap:1rem;justify-content:space-between}.contact-detail-title{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(.68rem,.84vw,.8rem);line-height:1.45;margin:.34rem 0 0}.contact-detail-badge{border-bottom:1px solid var(--color-coral);color:var(--color-coral-dark)}.contact-detail-body{flex:1 1 auto;min-height:0}.contact-detail-readout{grid-gap:1rem;border-bottom:1px solid #30334229;display:grid;gap:1rem;grid-template-columns:7.5rem minmax(0,1fr);padding:.9rem 0}.contact-detail-label{color:var(--color-grass-dark);font-size:.49rem;line-height:1.45;margin:0;text-transform:uppercase}.contact-detail-description,.contact-detail-meta,.contact-detail-note{margin:0}.contact-detail-actions{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding-top:1rem}.contact-detail-action,.contact-detail-action.is-disabled{align-items:center;border-bottom:2px solid var(--color-grass-dark);color:var(--color-indigo);display:inline-flex;font-size:.53rem;line-height:1.4;min-height:2.75rem;text-decoration:none}.contact-detail-action:after{color:var(--color-grass-dark);content:"↗";margin-left:.8rem}.contact-detail-action.is-disabled{cursor:not-allowed;opacity:.55}.contact-detail-note{font-size:.72rem;font-style:italic}@media (max-width:700px){.connect-overlay{align-items:flex-start}.contact-shell{height:calc(100svh - 1.3rem);padding:1rem;width:min(100%,40rem)}.contact-layout{grid-template-columns:1fr;overflow-y:auto}.contact-menu-panel{border-bottom:1px solid #30334238;border-right:0;padding-right:0}.contact-detail-panel{padding:1rem 0 0}}@media (max-width:480px){.contact-detail-readout{gap:.35rem;grid-template-columns:1fr}.contact-detail-actions{align-items:flex-start;flex-direction:column}}.projects-overlay{align-items:center}.projects-overlay-layout{background:#f6efdd;border:1px solid #2a2c377a;border-radius:.45rem;box-shadow:0 24px 72px #04060c57;display:grid;grid-template-columns:minmax(0,1fr);height:min(calc(100svh - 2rem),45rem);overflow:hidden;position:relative;transition:width .22s ease;width:min(100%,32rem);z-index:1}.projects-overlay-layout.is-detail-open{grid-template-columns:minmax(20rem,24rem) minmax(0,1fr);width:min(100%,78rem)}.party-panel,.project-detail-panel{min-height:0;min-width:0}.party-panel{background:radial-gradient(circle at 22% 18%,#53433008 0 1px,#0000 1.4px),#f6efdd;background-size:6rem 6rem;color:var(--color-ink);display:flex;flex-direction:column;overflow:hidden;padding:clamp(1.1rem,2vw,1.55rem);position:relative;z-index:2}.projects-overlay-layout.is-detail-open .party-panel{border-right:1px solid #3033423d}.party-panel-header{align-items:flex-start;border-bottom:1px solid #30334247;display:flex;gap:1rem;justify-content:space-between;padding-bottom:1rem}.party-panel-kicker{color:var(--color-coral-dark);font-size:clamp(.54rem,.66vw,.64rem);letter-spacing:.07em;margin:0 0 .48rem;text-transform:uppercase}.party-panel-kicker,.party-panel-title{font-family:var(--font-display);line-height:1.45}.party-panel-title{color:var(--color-indigo);font-size:clamp(.8rem,1vw,.94rem);margin:0}.party-panel-helper{color:var(--color-ink-soft);font-size:.8rem;line-height:1.4;margin:.45rem 0 0}.party-panel-close,.project-detail-close,.project-detail-link{appearance:none;font-family:var(--font-display);font-size:clamp(.53rem,.64vw,.61rem);line-height:1.4}.party-panel-close,.project-detail-close{background:#0000;border:0;border-bottom:2px solid var(--color-indigo);border-radius:0;color:var(--color-indigo);cursor:pointer;flex:0 0 auto;min-height:2.75rem;padding:.68rem 0}.party-panel-close:focus-visible,.party-panel-close:hover,.project-detail-close:focus-visible,.project-detail-close:hover{border-bottom-color:var(--color-coral-dark);color:var(--color-coral-dark)}.party-panel-list{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:.7rem .7rem 1.1rem .15rem;scrollbar-gutter:stable}.party-panel-list::-webkit-scrollbar,.project-detail-scroll::-webkit-scrollbar{width:.45rem}.party-panel-list::-webkit-scrollbar-track,.project-detail-scroll::-webkit-scrollbar-track{background:#30334212}.party-panel-list::-webkit-scrollbar-thumb,.project-detail-scroll::-webkit-scrollbar-thumb{background:#474b7261}.party-entry{--project-accent:var(--color-coral);grid-gap:.8rem;align-items:center;appearance:none;background:linear-gradient(108deg,#ffffffb8,#fffcf3eb 64%,#f1e9d6e0),#fbf6e9;border:0;border-radius:1.35rem .5rem 1.35rem .65rem;box-shadow:0 1px 0 #fffc inset,0 .45rem 1.05rem #2e2a2717,-.18rem .2rem 0 color-mix(in srgb,var(--project-accent) 22%,#0000);color:var(--color-ink);cursor:pointer;display:grid;gap:.8rem;grid-template-columns:4.75rem minmax(0,1fr);isolation:isolate;margin:.65rem 0 0 1.15rem;min-height:7.2rem;padding:.9rem 1rem .9rem .35rem;position:relative;text-align:left;transform:translateZ(0);transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s ease,background-color .22s ease;width:calc(100% - 1.15rem)}.party-entry:hover{box-shadow:0 1px 0 #ffffffd6 inset,0 .7rem 1.35rem #2e2a271f,-.26rem .25rem 0 color-mix(in srgb,var(--project-accent) 30%,#0000);transform:translate3d(.35rem,-.08rem,0)}.party-entry.is-selected{box-shadow:0 1px 0 #ffffffe6 inset,0 .85rem 1.55rem #2e2a2724,-.32rem .28rem 0 color-mix(in srgb,var(--project-accent) 42%,#0000);transform:translate3d(.62rem,-.1rem,0)}.party-entry-route{background:linear-gradient(102deg,color-mix(in srgb,var(--project-accent) 24%,#0000) 0,color-mix(in srgb,var(--project-accent-soft) 74%,#0000) 42%,color-mix(in srgb,var(--project-accent-soft) 28%,#0000) 76%,#0000 100%);border-radius:50% 72% 58% 44%/46% 54% 64% 52%;bottom:.8rem;left:-.85rem;opacity:.78;overflow:hidden;position:absolute;top:.7rem;transform:rotate(-2.5deg) skewX(-7deg);transform-origin:left center;transition:width .24s cubic-bezier(.2,.8,.2,1),opacity .2s ease,transform .24s cubic-bezier(.2,.8,.2,1);width:68%;z-index:-1}.party-entry-route:after{background:linear-gradient(90deg,var(--project-accent),#0000 92%);border-radius:999px;content:"";height:2px;left:46%;opacity:.58;position:absolute;right:-25%;top:61%;transform:rotate(3deg)}.party-entry.is-selected .party-entry-route,.party-entry:hover .party-entry-route{opacity:.96;transform:rotate(-1deg) skewX(-4deg);width:82%}.party-entry-fold{background:linear-gradient(135deg,#0000 47%,#6f644f2e 48% 53%,color-mix(in srgb,var(--project-accent-soft) 72%,#eee3ca) 54%);bottom:-1px;clip-path:polygon(100% 0,100% 100%,0 100%);height:1.15rem;position:absolute;right:-1px;transition:width .22s ease,height .22s ease;width:1.15rem;z-index:2}.party-entry.is-selected .party-entry-fold{height:1.55rem;width:1.55rem}.party-entry:focus-visible{outline:none}.party-entry:focus-visible .party-entry-number{background:var(--color-indigo);border-radius:.18rem 58% .18rem 58%;box-shadow:0 0 0 3px #f6efdd;color:#fffaf0;display:grid;left:-.9rem;min-height:1.45rem;min-width:1.45rem;padding:.18rem;place-items:center;top:.52rem}.project-detail-link:focus-visible{outline:3px solid var(--color-indigo);outline-offset:3px}.party-entry-number{color:var(--project-accent);font-family:var(--font-display);font-size:.48rem;left:-.72rem;line-height:1;position:absolute;top:.72rem;transform:rotate(-4deg);transition:left .18s ease,top .18s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease;z-index:3}.party-entry-media{display:grid;height:4.9rem;place-items:center;position:relative;transform:translateX(-.72rem) translateY(.08rem);transition:transform .24s cubic-bezier(.2,.8,.2,1);width:4.9rem;z-index:2}.party-entry-media img{filter:drop-shadow(0 .45rem 0 rgba(54,49,43,.11));image-rendering:pixelated;max-height:100%;max-width:100%;object-fit:contain}.party-entry.is-selected .party-entry-media,.party-entry:hover .party-entry-media{transform:translateX(-.78rem) translateY(-.2rem)}.party-entry-body{grid-gap:.3rem;display:grid;gap:.3rem;min-width:0;padding:.28rem 0 .1rem;position:relative;z-index:1}.party-entry-header{display:block;padding-right:4.8rem}.party-entry-title{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(.57rem,.7vw,.66rem);line-height:1.45}.party-entry-status{border-bottom:1px solid color-mix(in srgb,var(--project-accent) 70%,#0000);color:var(--project-accent);font-family:var(--font-display);font-size:.43rem;line-height:1.4;padding:.18rem .12rem .22rem;position:absolute;right:.05rem;text-transform:uppercase;top:-.45rem;transform:rotate(2deg)}.party-entry-subtitle{color:var(--color-ink-soft);font-size:clamp(.76rem,.88vw,.85rem);font-weight:650;line-height:1.35}.party-entry-companion{color:color-mix(in srgb,var(--project-accent) 78%,#393844);font-size:.7rem;font-style:italic;line-height:1.3;transform:rotate(-1deg);transform-origin:left center}.project-detail-panel{--project-accent:var(--color-coral);display:flex;height:100%;min-height:0;position:relative;z-index:1}.project-detail-inner{background:linear-gradient(90deg,rgba(93,123,131,.055) 1px,#0000 0),#faf5e8;background-size:2.2rem 100%;color:var(--color-ink);display:flex;flex:1 1 auto;flex-direction:column;min-height:0;min-width:0;padding:clamp(1.1rem,2.4vw,2rem)}.project-detail-header{align-items:flex-start;border-bottom:1px solid #30334247;display:flex;gap:1.25rem;justify-content:space-between;padding-bottom:1rem}.project-detail-heading{align-items:center;display:flex;gap:1rem;min-width:0}.project-detail-companion{display:grid;flex:0 0 auto;height:4.5rem;place-items:center;width:4.5rem}.project-detail-companion img{image-rendering:pixelated;max-height:100%;max-width:100%;object-fit:contain}.project-detail-kicker{color:var(--project-accent);font-size:clamp(.51rem,.63vw,.6rem);letter-spacing:.06em;margin:0 0 .4rem;text-transform:uppercase}.project-detail-kicker,.project-detail-title{font-family:var(--font-display);line-height:1.45}.project-detail-title{color:var(--color-indigo);font-size:clamp(.8rem,1.18vw,1.05rem);margin:0}.project-detail-summary{color:var(--color-ink-soft);font-size:clamp(.8rem,.92vw,.9rem);font-weight:600;line-height:1.45;margin:.42rem 0 0;max-width:52ch}.project-detail-close{white-space:nowrap}.project-detail-scroll{grid-gap:0;align-content:start;display:grid;flex:1 1 auto;gap:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.7rem;scrollbar-gutter:stable}.project-detail-meta{border-bottom:1px solid #30334229;display:flex;flex-wrap:wrap;gap:1.2rem;padding:.9rem 0}.project-detail-status,.project-detail-type{color:var(--project-accent);font-family:var(--font-display);font-size:.5rem;line-height:1.4;text-transform:uppercase}.project-detail-type{color:var(--color-indigo)}.project-detail-section{grid-gap:.6rem;border-bottom:1px solid #30334229;display:grid;gap:.6rem;padding:1rem 0}.project-detail-section h4{color:var(--project-accent);font-family:var(--font-display);font-size:clamp(.52rem,.64vw,.61rem);letter-spacing:.06em;line-height:1.45;margin:0;text-transform:uppercase}.project-detail-description,.project-detail-notes dd,.project-detail-role,.project-detail-section p{color:var(--color-ink);font-size:clamp(.86rem,1vw,.97rem);line-height:1.65;margin:0}.project-detail-role{color:var(--color-ink-soft)}.project-detail-gallery{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-gallery-item{aspect-ratio:16/10;background:#fffaf0;border:1px solid #30334238;border-radius:.15rem;margin:0;overflow:hidden}.project-detail-gallery-item.is-portrait{aspect-ratio:3/4}.project-detail-gallery-item img{display:block;height:100%;object-fit:contain;width:100%}.project-detail-stack{display:flex;flex-wrap:wrap;gap:.35rem 1rem;list-style:none;margin:0;padding:0}.project-detail-stack li{color:var(--color-indigo);font-family:var(--font-display);font-size:clamp(.49rem,.59vw,.57rem);line-height:1.5}.project-detail-stack li:before{color:var(--project-accent);content:"#";margin-right:.18rem}.project-detail-notes{grid-gap:1.3rem;display:grid;gap:1.3rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.project-detail-notes div{border-left:2px solid color-mix(in srgb,var(--project-accent) 52%,#0000);padding-left:.8rem}.project-detail-notes dt{color:var(--color-indigo);font-family:var(--font-display);font-size:.49rem;line-height:1.4;margin-bottom:.35rem;text-transform:uppercase}.project-detail-lesson{position:relative}.project-detail-links{display:flex;flex-wrap:wrap;gap:1.3rem}.project-detail-link{align-items:center;border-bottom:2px solid var(--project-accent);color:var(--color-indigo);display:inline-flex;gap:.9rem;min-height:2.75rem;text-decoration:none}.project-detail-link:after{color:var(--project-accent);content:"↗"}@media (max-width:980px){.projects-overlay-layout.is-detail-open{grid-template-columns:minmax(18rem,20rem) minmax(0,1fr)}.party-entry-status{display:none}.party-entry-header{padding-right:0}}@media (max-width:760px){.projects-overlay{align-items:flex-start}.projects-overlay-layout,.projects-overlay-layout.is-detail-open{grid-template-columns:1fr;height:calc(100svh - 1.3rem);width:min(100%,40rem)}.projects-overlay-layout.is-detail-open .party-panel{display:none}.project-detail-panel{height:100%}}@media (max-width:520px){.party-panel,.project-detail-inner{padding:1rem}.party-entry{grid-template-columns:4.15rem minmax(0,1fr);margin-left:.8rem;min-height:6.7rem;padding-right:.75rem;width:calc(100% - .8rem)}.party-entry-media{height:4.35rem;transform:translateX(-.58rem);width:4.35rem}.party-entry.is-selected,.party-entry:hover{transform:translate3d(.25rem,-.06rem,0)}.project-detail-companion{height:3.5rem;width:3.5rem}.project-detail-gallery,.project-detail-notes{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.party-entry,.party-entry-fold,.party-entry-media,.party-entry-number,.party-entry-route,.projects-overlay-layout{transition:none}}
/*# sourceMappingURL=main.9ad19215.css.map*/