.pokemon-hero{--hero-accent:#ffcf3e;position:relative;isolation:isolate;display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:230px;color:#123c6a;contain:layout style;font-family:inherit}
.pokemon-hero button{font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}
.pokemon-hero *{box-sizing:border-box}
.pokemon-hero{container-name:pokemon-showcase;container-type:inline-size}
.pokemon-hero button:focus-visible{outline:3px solid #087dce;outline-offset:4px}
.pokemon-hero__stage{position:relative;min-height:170px;flex:1;isolation:isolate;overflow:hidden;border-radius:20px;background:radial-gradient(ellipse at 50% 78%,#e4f8ff 0,transparent 59%)}
.pokemon-hero__halo{position:absolute;left:50%;top:52%;width:65%;height:94%;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--hero-accent) 23%,transparent),#8de5fa26 43%,transparent 69%);filter:blur(9px);transition:background .5s;pointer-events:none}
.pokemon-hero__orbit{position:absolute;left:50%;top:55%;width:65%;height:52%;border:1px solid #00a1d930;border-radius:50%;transform:translate(-50%,-50%) rotate(-16deg);pointer-events:none}
.pokemon-hero__orbit--two{width:74%;height:74%;border-color:#00a1d914;transform:translate(-50%,-50%) rotate(16deg)}
.pokemon-hero__orbit--one:after{content:"";position:absolute;left:13%;top:12%;height:6px;width:6px;border-radius:50%;background:#00bde7;box-shadow:0 0 0 5px #00bde71c,0 0 15px #00bde761}
.pokemon-hero__fallback{position:absolute;left:50%;top:45%;width:230px;height:90%;object-fit:contain;transform:translate(-50%,-50%);filter:drop-shadow(0 15px 14px #306b8d30);transition:opacity .35s;z-index:2;pointer-events:none}
.pokemon-hero.has-model .pokemon-hero__fallback{opacity:0}
.pokemon-hero__canvas{position:absolute;inset:0;z-index:3;touch-action:pan-y;cursor:pointer}
.pokemon-hero:not(.has-model) .pokemon-hero__canvas{opacity:0}
.pokemon-hero__canvas canvas{display:block;width:100%;height:100%}
.pokemon-hero__dex{position:absolute;left:5%;top:17%;display:flex;flex-direction:column;gap:5px;pointer-events:none;z-index:4;direction:ltr}
.pokemon-hero__dex span{font-size:9px;letter-spacing:2.4px;font-weight:700;color:#4e87aa}
.pokemon-hero__dex b{font-size:16px;letter-spacing:1px;color:#135084}
.pokemon-hero__star{position:absolute;color:#f0b319;pointer-events:none;z-index:2;animation:pokemon-hero-twinkle 4s ease-in-out infinite}
.pokemon-hero__star--one{left:24%;top:22%;font-size:25px}
.pokemon-hero__star--two{right:22%;top:53%;font-size:18px;animation-delay:-1.2s;color:#06aadb}
.pokemon-hero__star--three{right:28%;top:10%;font-size:30px;animation-delay:-2.4s}
.pokemon-hero__hello{position:absolute;right:4%;bottom:12%;z-index:4;border:1px solid #9ed9ee;border-radius:100px;padding:9px 13px;background:#fffdf4e8;box-shadow:0 3px 0 #14749a12,0 7px 17px #3288b612;color:#125384;font-size:11px!important;font-weight:700!important;transition:transform .2s,box-shadow .2s;white-space:nowrap}
.pokemon-hero__hello:hover{transform:translateY(-3px);box-shadow:0 6px 0 #14749a12,0 10px 22px #3288b622}
.pokemon-hero__hello span{color:#e5a900;padding-inline-end:3px}
.pokemon-hero__motion{position:absolute;right:4%;top:12%;z-index:5;width:28px;height:28px;display:grid;place-items:center;background:#ffffffa8;border:1px solid #bfe0ee;border-radius:50%;color:#5287a7;font-size:13px!important;line-height:1;opacity:.75}
.pokemon-hero__motion:hover{opacity:1;background:#fff}
.pokemon-hero.is-reduced-motion .pokemon-hero__motion{display:none}
.pokemon-hero__choices{position:relative;z-index:5;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:0 16px 3px;flex:none;direction:inherit}
.pokemon-hero__choice{position:relative;display:flex;align-items:center;gap:6px;height:57px;padding:3px 10px 3px 2px;border:1px solid #c7e2ed;border-radius:13px;background:#f7fcffbd;color:#2c6288;text-align:start;transition:transform .2s,background .2s,border-color .2s,box-shadow .2s;min-width:0}
.pokemon-hero__choice:hover{transform:translateY(-3px);background:#fff;border-color:#70b5d5}
.pokemon-hero__choice[aria-pressed=true]{background:linear-gradient(120deg,#fffdf5,#fffae9);border-color:#e9bd4b;box-shadow:0 3px 0 #f1cf743b,0 5px 16px #e3b5230c;color:#103e6b}
.pokemon-hero__choice img{width:51px;height:51px;object-fit:contain;filter:drop-shadow(0 3px 2px #0a4b6b18);flex:none;transition:transform .2s}
.pokemon-hero__choice:hover img,.pokemon-hero__choice[aria-pressed=true] img{transform:translateY(-3px) scale(1.08)}
.pokemon-hero__choice span{display:flex;flex-direction:column;gap:3px;min-width:0}
.pokemon-hero__choice strong{font-size:12px;font-weight:750;white-space:nowrap}
.pokemon-hero__choice small{font-size:9px;color:#708aa0;white-space:nowrap}
.pokemon-hero__choice i{width:5px;height:5px;position:absolute;inset-inline-end:8px;top:8px;border-radius:50%;background:#cedde5}
.pokemon-hero__choice[aria-pressed=true] i{background:#e8b425;box-shadow:0 0 0 3px #f1cc5330}
.pokemon-hero__sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.pokemon-hero.is-hello .pokemon-hero__star{animation:pokemon-hero-hello .9s both}
.pokemon-hero.is-hello:not(.has-model) .pokemon-hero__fallback{animation:pokemon-hero-hop .8s both}
.pokemon-hero.is-loading .pokemon-hero__hello{opacity:.55}
.pokemon-hero.is-paused .pokemon-hero__star{animation:none}
@keyframes pokemon-hero-twinkle{0%,100%{opacity:.42;transform:scale(.84) rotate(-9deg)}50%{opacity:1;transform:scale(1.12) rotate(9deg)}}
@keyframes pokemon-hero-hello{0%,100%{transform:scale(1) rotate(0)}35%{transform:scale(1.65) rotate(75deg)}}
@keyframes pokemon-hero-hop{0%,100%{transform:translate(-50%,-50%)}35%{transform:translate(-50%,-61%) rotate(-7deg)}65%{transform:translate(-50%,-53%) rotate(5deg)}}
@media(max-width:540px){.pokemon-hero{min-height:210px}.pokemon-hero__stage{min-height:157px}.pokemon-hero__dex{left:3%;top:16%}.pokemon-hero__dex span{font-size:8px;letter-spacing:1px}.pokemon-hero__dex b{font-size:12px}.pokemon-hero__hello{right:2%;bottom:9%;padding:7px 9px;font-size:10px!important}.pokemon-hero__choices{gap:5px;padding:0 0 3px}.pokemon-hero__choice{height:50px;border-radius:10px;gap:2px;padding:2px 6px 2px 0}.pokemon-hero__choice img{width:37px;height:42px}.pokemon-hero__choice strong{font-size:10px}.pokemon-hero__choice small{font-size:8px}.pokemon-hero__choice i{width:4px;height:4px;inset-inline-end:5px;top:5px}.pokemon-hero__star--one{left:23%;font-size:19px}.pokemon-hero__star--two{right:21%}.pokemon-hero__motion{right:2%;top:10%;width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){.pokemon-hero *{animation:none!important;transition:none!important}}
@container pokemon-showcase (max-width:440px){.pokemon-hero__choices{gap:5px;padding:0 0 3px}.pokemon-hero__choice{height:50px;border-radius:10px;gap:2px;padding:2px 6px 2px 0}.pokemon-hero__choice img{width:37px;height:42px}.pokemon-hero__choice strong{font-size:10px}.pokemon-hero__choice small{font-size:8px}.pokemon-hero__choice i{width:4px;height:4px;inset-inline-end:5px;top:5px}}
