body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@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-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 .22s ease,filter .22s ease,transform .22s ease}.battle-stage.is-section-active .enemy-group,.battle-stage.is-section-active .player-group{filter:blur(1.5px) saturate(.72) brightness(.8);opacity:.42}.battle-ui.is-panel-open{filter:saturate(.72) brightness(.68)}.battle-ui.is-panel-open:before{background:#070c166b;content:"";inset:0;pointer-events:none;position:absolute;z-index:-1}.battle-ui.is-panel-open .command-menu-button:disabled{cursor:default}.section-transition-layer{inset:0;pointer-events:none;position:absolute;z-index:5}.section-transition-layer.is-active>*{pointer-events:auto}.section-overlay{align-items:center;display:flex;inset:0;justify-content:center;overflow:hidden;padding:clamp(1rem,2vw,1.5rem);position:absolute}.section-overlay-tone{background:radial-gradient(circle at 50% 46%,#f5f8ff14,#0000 36%),linear-gradient(180deg,#0a101e14,#0a101e4d);inset:0;pointer-events:none;position:absolute}.placeholder-overlay-panel{background:linear-gradient(145deg,#ffffff1f,#0000 36%),linear-gradient(135deg,#1e2b63,#304c9f 42%,#183061);border:3px solid #d5be6edb;border-radius:1.2rem;box-shadow:0 20px 44px #080e2057,inset 0 0 0 3px #f4f6fc2e;color:#eef3ff;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:#f3dc88;font-family:Pokemon GB,monospace;font-size:clamp(.68rem,.95vw,.9rem);margin:0 0 .45rem}.placeholder-overlay-header h2{font-family:Pokemon GB,monospace;font-size:clamp(1.05rem,1.85vw,1.7rem);margin:0}.placeholder-overlay-copy{font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.98rem,1.08vw,1.06rem);line-height:1.55;margin:1rem 0 0}.placeholder-overlay-close{appearance:none;background:#0c132e52;border:0;border-radius:.8rem;box-shadow:inset 0 0 0 2px #ffffff1f;color:#fff5d0;cursor:pointer;font-family:Pokemon GB,monospace;font-size:clamp(.74rem,.9vw,.92rem);padding:.9rem 1rem}.placeholder-overlay-close:focus-visible,.placeholder-overlay-close:hover{background:#0c132e80}.placeholder-overlay-close:focus-visible{outline:2px solid #f3dc88;outline-offset:2px}@media (max-width:780px){.section-overlay{align-items:flex-start;padding:1rem .75rem .75rem}}@media (prefers-reduced-motion:reduce){.battle-stage .enemy-group,.battle-stage .player-group,.battle-ui{transition:none}}.about-overlay{align-items:center}.about-card-shell{aspect-ratio:1.56/1;perspective:1800px;position:relative;width:min(100%,clamp(30rem,60vw,54rem))}.about-card-shadow{background:radial-gradient(circle,#070c165c,#0000 72%);bottom:clamp(.3rem,1vh,.8rem);filter:blur(18px);height:14%;left:50%;pointer-events:none;position:absolute;transform:translateX(-50%);width:72%}.about-card-shell-motion{will-change:transform,opacity}.about-card-3d,.about-card-shell-motion{height:100%;position:relative;transform-style:preserve-3d;width:100%}.about-card-3d{will-change:transform}.about-card-3d.is-reduced-motion{transform-style:flat}.about-card-face{backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:clamp(1rem,1.8vw,1.5rem);inset:0;overflow:hidden;position:absolute}.about-card-front{background:linear-gradient(145deg,#ffffff1f,#0000 36%),linear-gradient(135deg,#1e2b63,#304c9f 42%,#183061);border:3px solid #d5be6edb;box-shadow:0 20px 44px #080e2057,inset 0 0 0 3px #f4f6fc2e;color:#eef3ff;display:flex;flex-direction:column;padding:clamp(1rem,2.2vw,1.6rem)}.about-card-front:after{background:linear-gradient(110deg,#0000 18%,#ffffff29 34%,#0000 50%),linear-gradient(180deg,#0000 60%,#090e202e);content:"";inset:0;pointer-events:none;position:absolute}.about-card-back{background:linear-gradient(140deg,#ffffff24,#0000 30%),linear-gradient(135deg,#0f1c4e,#162a6d 48%,#0d1b48);border:3px solid #9b89cbe6;box-shadow:0 20px 44px #080e2057,inset 0 0 0 3px #ffffff1f;color:#eef3ff;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(1rem,2.2vw,1.6rem);transform:rotateY(180deg)}.about-card-back-grid{background-image:linear-gradient(#ffffff14 1px,#0000 0),linear-gradient(90deg,#ffffff14 1px,#0000 0);background-size:1.1rem 1.1rem;inset:0;opacity:.26;position:absolute}.about-card-back-badges,.about-card-back-core{position:relative;z-index:1}.about-card-back-core{grid-gap:.75rem;align-self:center;display:grid;gap:.75rem;justify-items:center;text-align:center}.about-card-back-label,.about-card-back-subtitle{font-family:Pokemon GB,monospace;font-size:clamp(.7rem,1vw,.95rem);letter-spacing:.08em}.about-card-back-mark{aspect-ratio:1;background:radial-gradient(circle at 30% 30%,#ffffff42,#0000 38%),linear-gradient(135deg,#bea8ffcc,#4e6fdcf2);border-radius:999px;box-shadow:inset 0 0 0 2px #fff3;color:#fff4cb;display:grid;font-family:Pokemon GB,monospace;font-size:clamp(1.8rem,3vw,2.8rem);place-items:center;width:clamp(5.5rem,10vw,7.5rem)}.about-card-back-badges{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.about-card-back-badge{background:#ffffff1a;border:1px solid #ffffff24;border-radius:999px;font-family:Pokemon GB,monospace;font-size:clamp(.6rem,.9vw,.8rem);padding:.45rem .75rem}.about-card-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;position:relative;z-index:1}.about-card-kicker{color:#f3dc88;font-family:Pokemon GB,monospace;font-size:clamp(.68rem,.95vw,.9rem);margin:0 0 .45rem}.about-card-title{font-family:Pokemon GB,monospace;font-size:clamp(1.05rem,1.85vw,1.7rem);line-height:1.2;margin:0}.about-card-role{color:#edf2ffd6;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.9rem,1.2vw,1.05rem);margin:.45rem 0 0}.about-card-action,.about-card-close{appearance:none;border:0;cursor:pointer;font-family:Pokemon GB,monospace}.about-card-close{background:#0c132e52;border-radius:.8rem;box-shadow:inset 0 0 0 2px #ffffff1f;color:#fff5d0;font-size:clamp(.74rem,.9vw,.92rem);padding:.9rem 1rem}.about-card-close:focus-visible,.about-card-close:hover{background:#0c132e80}.about-card-action:focus-visible,.about-card-close:focus-visible{outline:2px solid #f3dc88;outline-offset:2px}.about-card-body{grid-gap:clamp(1rem,1.8vw,1.35rem);display:grid;flex:1 1 auto;gap:clamp(1rem,1.8vw,1.35rem);grid-template-columns:minmax(10rem,.95fr) minmax(0,1.3fr);margin-top:clamp(.8rem,1.4vw,1.1rem);min-height:0;position:relative;z-index:1}.about-card-portrait{grid-gap:.8rem;display:grid;gap:.8rem}.about-card-content,.about-card-portrait-frame{background:#08112b38;border-radius:1rem;box-shadow:inset 0 0 0 2px #ffffff1a}.about-card-portrait-frame{align-items:flex-end;background:linear-gradient(180deg,#ffffff1f,#0000 60%),linear-gradient(180deg,#070c1c14,#070c1c4d);display:flex;justify-content:center;min-height:0;padding:1rem .75rem 0}.about-card-portrait-image{image-rendering:pixelated;width:min(100%,clamp(8rem,12vw,10rem))}.about-card-tagline{background:#08112b38;border-radius:1rem;box-shadow:inset 0 0 0 2px #ffffff1a;color:#edf2ffe6;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.92rem,1.08vw,1rem);line-height:1.45;margin:0;padding:.9rem 1rem}.about-card-content{display:flex;flex-direction:column;gap:.95rem;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:clamp(.9rem,1.6vw,1.2rem);scrollbar-gutter:stable}.about-card-content::-webkit-scrollbar{width:.55rem}.about-card-content::-webkit-scrollbar-track{background:#0a122d2e;border-radius:999px}.about-card-content::-webkit-scrollbar-thumb{background:#f5dc888c;border-radius:999px}.about-card-meta{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.about-card-meta div{background:#ffffff14;border-radius:.9rem;padding:.8rem .9rem}.about-card-meta dt{color:#f3dc88;font-family:Pokemon GB,monospace;font-size:clamp(.62rem,.85vw,.76rem);margin-bottom:.45rem}.about-card-bio,.about-card-meta dd{font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;margin:0}.about-card-meta dd{color:#f4f7ffeb;font-size:clamp(.88rem,1vw,.98rem);line-height:1.35}.about-card-bio{color:#f4f7fff0;font-size:clamp(.95rem,1.08vw,1.02rem);line-height:1.52}.about-card-tags{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.about-card-tags li{background:#f3dc8824;border-radius:999px;box-shadow:inset 0 0 0 1px #f3dc882e;color:#fff5cf;font-family:Pokemon GB,monospace;font-size:clamp(.62rem,.78vw,.75rem);padding:.5rem .7rem}.about-card-actions{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:auto}.about-card-action{background:#ffffff1a;border-radius:.85rem;box-shadow:inset 0 0 0 2px #ffffff1f;color:#f8fbff;font-size:clamp(.7rem,.9vw,.82rem);padding:.85rem .95rem}.about-card-action:focus-visible,.about-card-action:hover{background:#f3dc8833}@media (max-width:980px){.about-card-shell{width:min(100%,clamp(27rem,72vw,46rem))}.about-card-body{grid-template-columns:minmax(9rem,.8fr) minmax(0,1.2fr)}.about-card-title{font-size:clamp(.98rem,1.7vw,1.35rem)}.about-card-bio,.about-card-meta dd,.about-card-tagline{font-size:.9rem}}@media (max-width:780px){.about-overlay{align-items:flex-start}.about-card-shell{aspect-ratio:auto;min-height:22rem;width:min(100%,34rem)}.about-card-3d,.about-card-face,.about-card-shell-motion{min-height:22rem}.about-card-back,.about-card-front{padding:.95rem}.about-card-body{grid-template-columns:1fr}.about-card-portrait{align-items:stretch;grid-template-columns:minmax(8rem,9rem) 1fr}.about-card-portrait-frame{padding-top:.5rem}.about-card-tagline{align-items:center;display:flex}.about-card-actions,.about-card-meta{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.about-card-shadow{filter:blur(10px)}}.blog-overlay{align-items:center}.pokedex-shell{background:linear-gradient(180deg,#d8443d,#b62b29);border:4px solid #251e21;border-radius:1.7rem;box-shadow:0 22px 48px #080e2047,inset 0 0 0 3px #fff4de24;display:flex;flex-direction:column;gap:1rem;height:min(100%,clamp(30rem,78vh,42rem));padding:clamp(1rem,1.8vw,1.3rem);position:relative;width:min(100%,clamp(56rem,88vw,80rem));z-index:1}.pokedex-shell:before{border-radius:1.15rem;box-shadow:inset 0 0 0 2px #4a110e3d;content:"";inset:clamp(.75rem,1.2vw,.95rem);pointer-events:none;position:absolute}.pokedex-shell-lights{align-items:center;display:flex;gap:.5rem}.pokedex-light{border-radius:999px;box-shadow:inset 0 0 0 2px #221b1d47,0 1px 0 #ffffff57;display:block}.pokedex-light--primary{background:radial-gradient(circle at 35% 35%,#f8fdff 0,#9fe1ff 38%,#4c91e7 100%);height:3rem;width:3rem}.pokedex-light--green,.pokedex-light--red,.pokedex-light--yellow{height:.95rem;width:.95rem}.pokedex-light--red{background:radial-gradient(circle at 35% 35%,#ffd7d4 0,#ee6c62 100%)}.pokedex-light--yellow{background:radial-gradient(circle at 35% 35%,#fff4c7 0,#e4bf4a 100%)}.pokedex-light--green{background:radial-gradient(circle at 35% 35%,#dcffd6 0,#60c76f 100%)}.pokedex-shell-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.pokedex-panel-kicker,.pokedex-panel-subtitle,.pokedex-readout-label,.pokedex-record-action,.pokedex-record-id,.pokedex-record-kicker,.pokedex-shell-kicker{font-family:Pokemon GB,monospace}.pokedex-shell-kicker{color:#fff7e5c2;font-size:clamp(.66rem,.86vw,.8rem);margin:0 0 .45rem}.pokedex-shell-title{font-size:clamp(1rem,1.35vw,1.2rem);margin:0}.pokedex-shell-close,.pokedex-shell-title{color:#fff8ec;font-family:Pokemon GB,monospace}.pokedex-shell-close{appearance:none;background:#331a1c;border:0;border-radius:.9rem;box-shadow:inset 0 0 0 2px #fff4de1f;cursor:pointer;font-size:clamp(.64rem,.78vw,.74rem);padding:.85rem .95rem}.pokedex-shell-close:focus-visible,.pokedex-shell-close:hover{background:#261214}.blog-entry-row:focus-visible,.pokedex-record-action:focus-visible,.pokedex-shell-close:focus-visible{outline:2px solid #fff4d3;outline-offset:2px}.pokedex-shell-body{grid-gap:1rem;display:grid;flex:1 1 auto;gap:1rem;grid-template-columns:minmax(18rem,.92fr) minmax(0,1.4fr);min-height:0}.blog-overlay-layout{display:contents;min-height:0}.pokedex-index-panel,.pokedex-record-panel{background:#f4f1e8;border:3px solid #45393b;border-radius:1.2rem;box-shadow:inset 0 0 0 3px #ffffff9e,inset 0 0 0 7px #b0a79638;min-height:0;min-width:0}.pokedex-index-panel{display:flex;flex-direction:column;gap:.85rem;padding:.95rem}.pokedex-panel-header{background:linear-gradient(180deg,#d8edf4,#bfd9e2);border-radius:.9rem;box-shadow:inset 0 0 0 2px #464f532e;display:flex;flex-direction:column;gap:.3rem;padding:.75rem .8rem}.pokedex-panel-kicker{color:#2b2f35;font-size:clamp(.58rem,.68vw,.64rem);margin:0}.pokedex-panel-subtitle{color:#2b2f35bd;font-size:clamp(.52rem,.62vw,.58rem);margin:0}.pokedex-entry-list{grid-gap:.55rem;display:grid;gap:.55rem;min-height:0;overflow-y:auto;padding-right:.15rem;scrollbar-gutter:stable}.pokedex-entry-list::-webkit-scrollbar{width:.5rem}.pokedex-entry-list::-webkit-scrollbar-track{background:#4c404424;border-radius:999px}.pokedex-entry-list::-webkit-scrollbar-thumb{background:#d24b3f8c;border-radius:999px}.blog-entry-row{grid-gap:.7rem;align-items:start;appearance:none;background:linear-gradient(180deg,#fbfaf5,#ece6d9);border:0;border-radius:1rem;box-shadow:0 3px 0 #5f53552e,inset 0 0 0 2px #625a5238;color:#2c2930;cursor:pointer;display:grid;gap:.7rem;grid-template-columns:auto auto minmax(0,1fr);padding:.85rem .9rem;position:relative;text-align:left;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease;width:100%}.blog-entry-row:hover{background:linear-gradient(180deg,#fffdf7,#f0eadf)}.blog-entry-row.is-selected{background:linear-gradient(180deg,#fff8ea,#f5dfad);box-shadow:0 4px 0 #5f535533,inset 0 0 0 3px #d24b3f8c;transform:translateX(.35rem)}.blog-entry-row-cursor{border-bottom:.42rem solid #0000;border-left:0;border-right:.6rem solid #0000;border-top:.42rem solid #0000;height:0;margin-top:.2rem;width:0}.blog-entry-row.is-selected .blog-entry-row-cursor{border-right-color:#d3473b}.blog-entry-row-number{color:#d3473b;font-size:clamp(.58rem,.68vw,.64rem);margin-top:.06rem}.blog-entry-row-body{grid-gap:.2rem;display:grid;gap:.2rem;min-width:0}.blog-entry-row-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#252228;display:-webkit-box;font-size:clamp(.92rem,1vw,1rem);font-weight:700;line-height:1.28;overflow:hidden}.blog-entry-row-date,.blog-entry-row-title{font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif}.blog-entry-row-date{color:#362f35ad;font-size:clamp(.76rem,.84vw,.82rem)}.pokedex-record-panel{padding:.95rem}.pokedex-record-content{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-rows:auto minmax(12rem,1.1fr) auto auto;height:100%;min-height:0}.pokedex-record-actions,.pokedex-record-header,.pokedex-record-readout,.pokedex-record-screen{background:#d9e7ea;border-radius:.95rem;box-shadow:inset 0 0 0 2px #44494f29}.pokedex-record-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;padding:.85rem .95rem}.pokedex-record-kicker{color:#d3473b;font-size:clamp(.58rem,.68vw,.64rem);margin:0 0 .4rem}.pokedex-record-title{color:#252228;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(1rem,1.18vw,1.12rem);font-weight:700;line-height:1.32;margin:0}.pokedex-record-meta{grid-gap:.35rem;display:grid;gap:.35rem;justify-items:end}.pokedex-record-id{background:#2f343c;border-radius:999px;color:#fff8ec;font-size:clamp(.52rem,.62vw,.58rem);padding:.45rem .6rem}.pokedex-record-date{color:#2c2930b3;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.78rem,.86vw,.84rem)}.pokedex-record-screen{background:linear-gradient(180deg,#dbecef,#bed5dc);padding:.8rem}.pokedex-record-screen-inner{align-content:start;background:linear-gradient(180deg,#1d252f,#2f3945);border-radius:.8rem;box-shadow:inset 0 0 0 2px #131c2233,inset 0 0 0 6px #e7f5f81f;display:grid;height:100%;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;object-position:center;width:100%}.pokedex-record-screen-grid{background-image:linear-gradient(#ffffff14 1px,#0000 0),linear-gradient(90deg,#ffffff14 1px,#0000 0);background-size:1rem 1rem;opacity:.16}.pokedex-record-screen-inner:after{background:linear-gradient(180deg,#0000,#060a10b8);content:"";height:38%;inset:auto 0 0;position:absolute}.pokedex-record-screen-label{background:#12182057;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff1f;font-family:Pokemon GB,monospace;font-size:clamp(.54rem,.62vw,.6rem);padding:.45rem .6rem;position:relative;width:fit-content;z-index:1}.pokedex-record-readout{background:linear-gradient(180deg,#f8fbfc,#e5eef1);padding:.9rem .95rem}.pokedex-readout-label{color:#d3473b;font-size:clamp(.56rem,.64vw,.6rem);margin:0 0 .55rem}.pokedex-readout-copy{color:#302c35;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.95rem,1.02vw,1rem);line-height:1.58;margin:0}.pokedex-record-actions{align-items:center;background:linear-gradient(180deg,#e8ecee,#d7e0e2);display:flex;gap:1rem;justify-content:space-between;padding:.8rem .95rem}.pokedex-record-action{align-items:center;background:linear-gradient(180deg,#ef6450,#cb4135);border-radius:.85rem;box-shadow:0 3px 0 #671f1b5c,inset 0 0 0 2px #fff4de29;color:#fff8ec;display:inline-flex;font-size:clamp(.6rem,.72vw,.68rem);justify-content:center;padding:.85rem 1rem;text-decoration:none}.pokedex-record-action:focus-visible,.pokedex-record-action:hover{background:linear-gradient(180deg,#f27360,#d3483b)}.pokedex-record-action-note{color:#312c34b3;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:.88rem}@media (max-width:980px){.pokedex-shell{height:min(100%,clamp(28rem,76vh,38rem));width:min(100%,70rem)}.pokedex-shell-body{grid-template-columns:minmax(16rem,18rem) minmax(0,1fr)}}@media (max-width:780px){.blog-overlay{align-items:flex-start}.pokedex-shell{height:auto;width:min(100%,34rem)}.pokedex-shell-header{align-items:flex-start}.pokedex-shell-body{grid-template-columns:1fr}.pokedex-index-panel{min-height:18rem}.pokedex-record-content{grid-template-rows:auto auto auto auto}.pokedex-record-actions{align-items:stretch;flex-direction:column}}.connect-overlay{align-items:center}.contact-shell{background:linear-gradient(180deg,#da4a42,#b92f2f);border:4px solid #2b262b;border-radius:1.2rem;box-shadow:0 18px 42px #080e203d,inset 0 0 0 2px #fff6e224;display:flex;flex-direction:column;gap:.95rem;min-height:min(100%,clamp(22rem,62vh,30rem));padding:clamp(.95rem,1.6vw,1.15rem);position:relative;width:min(100%,clamp(46rem,78vw,60rem));z-index:1}.contact-shell-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.contact-detail-action,.contact-detail-label,.contact-menu-item-label,.contact-shell-close,.contact-shell-kicker,.contact-shell-title,.contact-subpanel-kicker{font-family:Pokemon GB,monospace}.contact-shell-kicker{color:#fff8ecc7;font-size:clamp(.64rem,.8vw,.76rem);margin:0 0 .4rem}.contact-shell-title{color:#fff8ec;font-size:clamp(.92rem,1.1vw,1.04rem);margin:0}.contact-shell-helper{color:#fff8ece6;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.86rem,.94vw,.92rem);margin:.5rem 0 0}.contact-detail-action,.contact-detail-action.is-disabled,.contact-shell-close{appearance:none;border:0;border-radius:.78rem}.contact-shell-close{background:#2d272d;box-shadow:inset 0 0 0 2px #fff4de1f;color:#fff8ec;cursor:pointer;font-size:clamp(.6rem,.72vw,.7rem);padding:.78rem .95rem}.contact-shell-close:focus-visible,.contact-shell-close:hover{background:#221d22}.contact-detail-action:focus-visible,.contact-menu-item:focus-visible,.contact-shell-close:focus-visible{outline:2px solid #f7dd82;outline-offset:2px}.contact-shell-body{flex:1 1 auto;min-height:0}.contact-layout{grid-gap:.85rem;display:grid;gap:.85rem;grid-template-columns:minmax(16rem,.84fr) minmax(0,1fr);height:100%;min-height:0}.contact-detail-panel,.contact-menu-panel{background:linear-gradient(180deg,#fffdf7,#f3ebdf);border:3px solid #2d272d;border-radius:1rem;box-shadow:inset 0 0 0 2px #ffffff94,inset 0 0 0 6px #b99f7d1f;min-height:0;min-width:0;padding:.9rem}.contact-subpanel-header{background:linear-gradient(180deg,#e95f52,#d54542);border-radius:.82rem;box-shadow:inset 0 0 0 2px #fff4de24;display:flex;flex-direction:column;gap:.25rem;padding:.72rem .8rem}.contact-subpanel-kicker{color:#fff8ec;font-size:clamp(.54rem,.66vw,.6rem);margin:0}.contact-subpanel-copy{color:#fff8eceb;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.82rem,.88vw,.88rem);margin:0}.contact-menu-panel{display:flex;flex-direction:column;gap:.75rem}.contact-menu-list{grid-gap:.5rem;display:grid;gap:.5rem;min-height:0}.contact-menu-item{grid-gap:.7rem;align-items:center;appearance:none;background:linear-gradient(180deg,#fff,#efe6d9);border:0;border-radius:.95rem;box-shadow:0 3px 0 #5f535524,inset 0 0 0 2px #625a522e;color:#2d272d;cursor:pointer;display:grid;gap:.7rem;grid-template-columns:auto auto minmax(0,1fr);padding:.85rem;text-align:left;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease;width:100%}.contact-menu-item:hover{background:linear-gradient(180deg,#fffef9,#f4ecdf)}.contact-menu-item.is-selected{background:linear-gradient(180deg,#f26b5a,#df4c44);box-shadow:0 4px 0 #5f53552e,inset 0 0 0 2px #fff4de24;color:#fff8ec;transform:translateX(.28rem)}.contact-menu-item-cursor{border-bottom:.42rem solid #0000;border-right:.58rem solid #0000;border-top:.42rem solid #0000;height:0;width:0}.contact-menu-item.is-selected .contact-menu-item-cursor{border-right-color:#fff8ec}.contact-detail-badge,.contact-menu-item-icon{background:#2d272d;border-radius:.7rem;color:#fff8ec;display:grid;font-family:Pokemon GB,monospace;font-size:clamp(.56rem,.66vw,.62rem);height:2.2rem;place-items:center;width:2.2rem}.contact-menu-item.is-selected .contact-menu-item-icon{background:#2d272dc7}.contact-menu-item-copy{grid-gap:.24rem;display:grid;gap:.24rem;min-width:0}.contact-menu-item-label{color:inherit;font-size:clamp(.6rem,.7vw,.66rem)}.contact-detail-description,.contact-detail-meta,.contact-detail-note,.contact-menu-item-meta{color:#312c34cc;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.9rem,.95vw,.94rem);line-height:1.5}.contact-menu-item-meta{font-size:clamp(.78rem,.82vw,.82rem)}.contact-menu-item.is-selected .contact-menu-item-meta{color:#fff8ecdb}.contact-detail-panel{display:flex;flex-direction:column;gap:.75rem}.contact-detail-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.contact-detail-title{color:#2d272d;font-family:Pokemon GB,monospace;font-size:clamp(.84rem,.98vw,.94rem);margin:0}.contact-detail-body{grid-gap:.75rem;display:grid;flex:1 1 auto;gap:.75rem;min-height:0}.contact-detail-readout{grid-gap:.4rem;background:linear-gradient(180deg,#fffef9,#f1e8dc);border-radius:.88rem;box-shadow:inset 0 0 0 2px #625a5229;display:grid;gap:.4rem;padding:.88rem .95rem}.contact-detail-label{color:#d14340;font-size:clamp(.54rem,.64vw,.6rem);margin:0}.contact-detail-description,.contact-detail-meta,.contact-detail-note{margin:0}.contact-detail-actions{grid-gap:.55rem;background:linear-gradient(180deg,#fffef9,#efe6d8);border-radius:.9rem;box-shadow:inset 0 0 0 2px #625a5229;display:grid;gap:.55rem;margin-top:auto;padding:.92rem}.contact-detail-action,.contact-detail-action.is-disabled{align-items:center;background:linear-gradient(180deg,#ea5f52,#d44541);box-shadow:0 3px 0 #671f1b47,inset 0 0 0 2px #fff4de24;color:#fff8ec;display:inline-flex;font-size:clamp(.58rem,.7vw,.66rem);justify-content:center;padding:.88rem 1rem;text-decoration:none}.contact-detail-action:focus-visible,.contact-detail-action:hover{background:linear-gradient(180deg,#f06b5d,#db4d48)}.contact-detail-action.is-disabled{cursor:not-allowed;opacity:.6}@media (max-width:980px){.contact-shell{width:min(100%,56rem)}.contact-layout{grid-template-columns:minmax(14rem,16rem) minmax(0,1fr)}}@media (max-width:780px){.connect-overlay{align-items:flex-start}.contact-shell{min-height:auto;width:min(100%,34rem)}.contact-layout{grid-template-columns:1fr}}.projects-overlay{align-items:center}.projects-overlay-layout{align-items:stretch;display:grid;grid-template-columns:minmax(22rem,25rem) 0fr;height:min(100%,clamp(28rem,78vh,41rem));justify-content:flex-start;position:relative;width:min(100%,clamp(54rem,86vw,78rem));z-index:1}.projects-overlay-layout.is-detail-open{grid-template-columns:minmax(22rem,25rem) minmax(0,1fr)}.party-panel,.project-detail-panel{min-height:0;min-width:0;overflow:hidden}.party-panel{background:linear-gradient(90deg,#d93b37,#d93b37 78%,#bf2728 0,#bf2728);border:3px solid #3e181238;border-radius:1.35rem;box-shadow:0 16px 38px #080e203d,inset 0 0 0 2px #fff4de33;color:#fff8ec;display:flex;flex-direction:column;gap:clamp(.75rem,1.4vw,1rem);padding:clamp(.95rem,1.8vw,1.2rem);position:relative;z-index:2}.party-panel:before{background:#fff4de33;content:"";height:calc(100% + 2px);pointer-events:none;position:absolute;right:3.15rem;top:-1px;transform:skewX(-20deg);width:2.4rem}.party-panel-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.party-panel-kicker{color:#fff8ecc7;font-family:Pokemon GB,monospace;font-size:clamp(.68rem,.95vw,.84rem);margin:0 0 .45rem}.party-panel-title{font-family:Pokemon GB,monospace;font-size:clamp(.9rem,1.2vw,1.05rem);margin:0}.party-panel-close,.project-detail-close,.project-detail-link,.project-detail-link.is-disabled{appearance:none;border:0;border-radius:.8rem;font-family:Pokemon GB,monospace}.party-panel-close,.project-detail-close{background:#5e141457;box-shadow:inset 0 0 0 2px #fff4de24;color:#fff8ec;cursor:pointer;font-size:clamp(.64rem,.8vw,.76rem);padding:.8rem .95rem}.party-panel-close:focus-visible,.party-panel-close:hover,.project-detail-close:focus-visible,.project-detail-close:hover{background:#5e141485}.party-entry:focus-visible,.party-panel-close:focus-visible,.project-detail-close:focus-visible,.project-detail-link:focus-visible{outline:2px solid #f3dc88;outline-offset:2px}.party-panel-list{grid-gap:clamp(.45rem,.8vw,.65rem);display:grid;gap:clamp(.45rem,.8vw,.65rem);grid-auto-rows:minmax(5.75rem,auto);min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:.2rem;scrollbar-gutter:stable}.party-panel-list::-webkit-scrollbar{width:.5rem}.party-panel-list::-webkit-scrollbar-track{background:#6b191638;border-radius:999px}.party-panel-list::-webkit-scrollbar-thumb{background:#fff1d08c;border-radius:999px}.party-entry{align-items:flex-start;appearance:none;background:linear-gradient(180deg,#fffef8,#f3ece0);border:0;border-radius:1.2rem;box-shadow:0 3px 0 #7f2b2759,inset 0 0 0 2px #ad9f8a99;color:#232127;cursor:pointer;display:flex;gap:.8rem;min-height:5.75rem;padding:.7rem .8rem;position:relative;text-align:left;transition:transform .16s ease,background-color .16s ease,box-shadow .16s ease;width:100%}.party-entry:hover{background:linear-gradient(180deg,#fff,#f7efe3)}.party-entry.is-selected{background:linear-gradient(180deg,#fff,#fbf5ea);box-shadow:0 5px 0 #7f2b2766,inset 0 0 0 3px #e13e368c,0 8px 20px #090e1c24;transform:translateX(.38rem)}.party-entry.is-selected:before{border-bottom:.6rem solid #0000;border-left:0;border-right:.8rem solid #fff4dd;border-top:.6rem solid #0000;content:"";height:0;left:-.6rem;position:absolute;top:50%;transform:translateY(-50%);width:0}.party-entry-media{background:#e6e6e6;border-radius:999px;box-shadow:inset 0 0 0 2px #7b78764d,0 1px 0 #ffffffbf;display:grid;flex-shrink:0;height:clamp(3.75rem,5vw,4.5rem);overflow:hidden;place-items:center;width:clamp(3.75rem,5vw,4.5rem)}.party-entry-media img{max-height:100%;max-width:100%;object-fit:contain}.party-entry-body{grid-gap:.32rem;display:grid;flex:1 1 auto;gap:.32rem;min-width:0}.party-entry-header{align-items:flex-start;display:flex;gap:.65rem;justify-content:space-between;min-width:0}.party-entry-title{color:#28242d;font-family:Pokemon GB,monospace;font-size:clamp(.68rem,.84vw,.8rem);line-height:1.35;min-width:0}.party-entry-subtitle{color:#37343ac7;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.78rem,.92vw,.88rem);line-height:1.3;max-width:28ch}.party-entry-status{background:#3f444d;border-radius:999px;box-shadow:inset 0 0 0 1px #ffffff14;color:#fff8ec;flex-shrink:0;font-family:Pokemon GB,monospace;font-size:clamp(.56rem,.68vw,.64rem);padding:.35rem .55rem}.party-entry-footer{align-items:center;color:#3d3940b8;display:flex;font-family:Pokemon GB,monospace;font-size:clamp(.52rem,.64vw,.6rem);gap:.65rem;justify-content:space-between}.party-entry-build{white-space:nowrap}.project-detail-panel{display:flex;height:100%;margin-left:-.55rem;min-height:0;padding-left:.55rem;position:relative;z-index:1}.project-detail-inner{background:linear-gradient(145deg,#ffffff59,#0000 24%),linear-gradient(180deg,#fffdf8,#f4ebdd);border:3px solid #b9423780;border-radius:1.15rem;box-shadow:0 18px 40px #080e2038,inset 0 0 0 2px #ffffffa6;color:#2b2831;display:flex;flex:1 1 auto;flex-direction:column;height:100%;min-height:0;padding:clamp(1rem,1.8vw,1.2rem)}.project-detail-header{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.project-detail-kicker{color:#d7503a;font-family:Pokemon GB,monospace;font-size:clamp(.68rem,.92vw,.84rem);margin:0 0 .45rem}.project-detail-title{font-family:Pokemon GB,monospace;font-size:clamp(.92rem,1.4vw,1.22rem);line-height:1.25;margin:0}.project-detail-summary{color:#332e36c2;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.9rem,1.02vw,1rem);line-height:1.45;margin:.55rem 0 0}.project-detail-scroll{grid-gap:1rem;display:grid;flex:1 1 auto;gap:1rem;height:0;margin-top:1rem;min-height:0;overflow:scroll;overscroll-behavior:contain;padding-bottom:2rem;padding-left:.55rem;padding-right:.75rem;scrollbar-gutter:stable}.project-detail-scroll::-webkit-scrollbar{width:.55rem}.project-detail-scroll::-webkit-scrollbar-track{background:#b195722e;border-radius:999px}.project-detail-scroll::-webkit-scrollbar-thumb{background:#d8514380;border-radius:999px}.project-detail-meta{grid-gap:.7rem;align-items:center;display:grid;gap:.7rem;grid-template-columns:auto auto 1fr}.project-detail-role-label,.project-detail-status{border-radius:999px;font-family:Pokemon GB,monospace;font-size:clamp(.56rem,.68vw,.68rem);padding:.45rem .65rem}.project-detail-status{background:#d84c3c;box-shadow:inset 0 0 0 1px #ffffff29;color:#fff8ec}.project-detail-role-label{background:#3f444d;color:#fff8ec}.project-detail-description,.project-detail-empty,.project-detail-notes dd,.project-detail-role,.project-detail-section p{color:#302c34eb;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif;font-size:clamp(.92rem,1vw,.98rem);line-height:1.55;margin:0}.project-detail-section{grid-gap:.55rem;display:grid;gap:.55rem}.project-detail-section h4{color:#d7503a;font-family:Pokemon GB,monospace;font-size:clamp(.62rem,.82vw,.76rem);margin:0}.project-detail-stack{display:flex;flex-wrap:wrap;gap:.55rem;list-style:none;margin:0;padding:0}.project-detail-stack li{background:#d84c3c14;border-radius:999px;box-shadow:inset 0 0 0 1px #d84c3c33;color:#403942;font-family:Pokemon GB,monospace;font-size:clamp(.58rem,.72vw,.7rem);padding:.5rem .7rem}.project-detail-notes{grid-gap:.7rem;display:grid;gap:.7rem;margin:0}.project-detail-notes div{background:#d84c3c0f;border-radius:.9rem;padding:.8rem .9rem}.project-detail-notes dt{color:#d7503a;font-family:Pokemon GB,monospace;font-size:clamp(.56rem,.68vw,.68rem);margin-bottom:.4rem}.project-detail-links{grid-gap:.7rem;display:grid;gap:.7rem;grid-template-columns:repeat(2,minmax(0,1fr))}.project-detail-link,.project-detail-link.is-disabled{align-items:center;background:#d84c3c1f;box-shadow:inset 0 0 0 2px #d84c3c33;color:#392f38;display:inline-flex;font-size:clamp(.64rem,.84vw,.76rem);justify-content:center;padding:.85rem .95rem;text-decoration:none}.project-detail-link:focus-visible,.project-detail-link:hover{background:#d84c3c33}@media (max-width:1100px){.projects-overlay-layout{grid-template-columns:minmax(19rem,21rem) 0fr;height:min(100%,clamp(26rem,74vh,36rem));width:min(100%,68rem)}.projects-overlay-layout.is-detail-open{grid-template-columns:minmax(19rem,21rem) minmax(0,1fr)}}@media (max-width:780px){.projects-overlay{align-items:flex-start}.projects-overlay-layout,.projects-overlay-layout.is-detail-open{grid-template-columns:1fr;height:auto;width:min(100%,34rem)}.party-panel{min-height:24rem}.project-detail-panel{margin-left:0;margin-top:-.3rem;padding-left:0}.project-detail-inner{min-height:18rem}.project-detail-links{grid-template-columns:1fr}}
/*# sourceMappingURL=main.c80799ea.css.map*/