@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap";:root{--pixel-font:"Press Start 2P", monospace;--bg-dark:#0d0d1a;--bg-mid:#1a1a2e;--bg-card:#16213e;--text-main:#e0e0e0;--text-dim:#88a;--text-bright:#fff;--accent:#7c5cbf;--accent-glow:#b39ddb;--pixel-shadow:#0a0a15}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden}body{background:var(--bg-dark);color:var(--text-main);font-family:var(--pixel-font);-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset}#root{width:100%;height:100dvh;overflow:hidden}img[src*=pokeapi],img[src*=sprites]{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.app{background:#05051a;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.app:before{content:"";z-index:0;pointer-events:none;will-change:transform;background:radial-gradient(800px 600px at 30% 40%,#ec48994d 0%,#0000 60%),radial-gradient(700px 700px at 70% 30%,#6366f159 0%,#0000 55%),radial-gradient(600px 500px at 20% 70%,#8b5cf647 0%,#0000 60%),radial-gradient(500px 400px at 80% 65%,#2dd4bf2e 0%,#0000 55%),radial-gradient(600px 350px at 50% 85%,#fb923c24 0%,#0000 55%),radial-gradient(900px 200px at 40% 10%,#22d3ee29 0%,#0000 60%);width:260%;height:260%;animation:18s ease-in-out infinite alternate nebulaFloat;position:absolute;inset:-80%;transform:translateZ(0)}.app:after{content:"";z-index:0;pointer-events:none;will-change:transform;background:radial-gradient(700px 500px at 60%,#a855f740 0%,#0000 55%),radial-gradient(500px 600px at 25% 45%,#3b82f638 0%,#0000 55%),radial-gradient(600px 400px at 75% 75%,#f472b633 0%,#0000 55%),radial-gradient(400px 500px at 15% 25%,#34d3991f 0%,#0000 55%),radial-gradient(500px 300px at 85% 15%,#fbbf241a 0%,#0000 55%);width:260%;height:260%;animation:24s ease-in-out infinite alternate nebulaFloat2;position:absolute;inset:-80%;transform:translateZ(0)}.app>*{z-index:1;position:relative}.aurora{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.aurora-band{filter:blur(40px);opacity:0;will-change:opacity, transform;border-radius:50%;width:200%;position:absolute;left:-50%;transform:translateZ(0)}.aurora-band:first-child{background:linear-gradient(90deg,#0000,#8b5cf64d,#3b82f640,#2dd4bf33,#0000);height:120px;animation:8s ease-in-out infinite auroraPulse;top:15%}.aurora-band:nth-child(2){background:linear-gradient(90deg,#0000,#ec489933,#a855f740,#6366f133,#0000);height:100px;animation:12s ease-in-out 3s infinite auroraPulse;top:55%}.aurora-band:nth-child(3){background:linear-gradient(90deg,#0000,#34d39926,#3b82f633,#8b5cf626,#0000);height:80px;animation:10s ease-in-out 6s infinite auroraPulse;top:80%}.starfield{z-index:0;pointer-events:none;background:0 0;width:2px;height:2px;animation:5s ease-in-out infinite alternate starTwinkle;position:absolute;inset:0;transform:translateZ(0);box-shadow:24px 80px #ffffff59,120px 40px #ffffff40,230px 150px #fff3,340px 90px 0 .5px #ffffff80,50px 220px #ffffff2e,180px 300px #ffffff4d,310px 200px #ffffff38,400px 50px #ffffff47,90px 380px 0 .5px #ffffff73,270px 420px #ffffff2e,360px 340px #ffffff3d,150px 460px #ffffff47,420px 280px #fff3,60px 510px 0 .5px #fff6,200px 560px #ffffff2e,330px 480px #ffffff42,480px 140px #ffffff4d,520px 360px #fff3,10px 620px #ffffff3d,260px 650px #ffffff2e,440px 530px 0 .5px #ffffff6b,380px 600px #ffffff26,160px 700px #ffffff42,530px 80px #ffffff38,70px 750px #ffffff47,95px 170px 1px .5px #ec489999,285px 310px 1px .5px #3b82f68c,415px 440px 1px .5px #a78bfa80,175px 520px 1px .5px #2dd4bf73,505px 200px 1px .5px #fb923c66,350px 680px 1px .5px #8b5cf680,240px 100px 1px .5px #22d3ee73,460px 560px 1px .5px #f472b666}.starfield-2{width:1px;height:1px;animation:7s ease-in-out infinite alternate starTwinkle2;box-shadow:45px 130px #ffffff38,190px 60px #ffffff4d,300px 250px #ffffff29,80px 340px #ffffff40,410px 180px 0 .5px #fff6,250px 500px #fff3,140px 440px #ffffff3d,470px 330px #ffffff47,30px 560px #fff3,360px 610px 0 .5px #ffffff61,500px 480px #ffffff29,220px 720px #ffffff40,110px 650px #ffffff4d,430px 70px #ffffff26,550px 550px #ffffff38,320px 120px 1px .5px #a855f780,160px 380px 1px .5px #34d39966,450px 590px 1px .5px #ec489973,40px 200px 1px .5px #fbbf2459}.bg-orbs{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.bg-orb{filter:blur(60px);will-change:transform;contain:strict;border-radius:50%;animation:linear infinite orbDrift;position:absolute;transform:translateZ(0)}.bg-orb:first-child{background:radial-gradient(circle,#8b5cf666 0%,#0000 70%);width:200px;height:200px;animation-duration:25s;top:20%;left:10%}.bg-orb:nth-child(2){background:radial-gradient(circle,#ec48994d 0%,#0000 70%);width:150px;height:150px;animation-duration:30s;animation-delay:-10s;top:40%;right:15%}.bg-orb:nth-child(3){background:radial-gradient(circle,#3b82f659 0%,#0000 70%);width:180px;height:180px;animation-duration:22s;animation-delay:-5s;bottom:15%;left:40%}.bg-orb:nth-child(4){background:radial-gradient(circle,#2dd4bf40 0%,#0000 70%);width:120px;height:120px;animation-duration:28s;animation-delay:-15s;bottom:30%;right:5%}.bg-orb:nth-child(5){background:radial-gradient(circle,#fb923c33 0%,#0000 70%);width:160px;height:160px;animation-duration:35s;animation-delay:-8s;top:10%;left:60%}.ambient-particles{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.ambient-particles .mote{opacity:0;will-change:transform, opacity;contain:strict;border-radius:50%;animation:linear infinite moteFloat;position:absolute}.ambient-particles .mote:first-child{background:#ec4899b3;width:5px;height:5px;animation-duration:10s;animation-delay:0s;left:8%;box-shadow:0 0 6px #ec489980}.ambient-particles .mote:nth-child(2){background:#3b82f699;width:3px;height:3px;animation-duration:14s;animation-delay:1s;left:22%;box-shadow:0 0 4px #3b82f666}.ambient-particles .mote:nth-child(3){background:#8b5cf699;width:6px;height:6px;animation-duration:16s;animation-delay:3s;left:38%;box-shadow:0 0 8px #8b5cf666}.ambient-particles .mote:nth-child(4){background:#2dd4bfb3;width:4px;height:4px;animation-duration:12s;animation-delay:2s;left:52%;box-shadow:0 0 6px #2dd4bf80}.ambient-particles .mote:nth-child(5){background:#fb923c99;width:5px;height:5px;animation-duration:15s;animation-delay:5s;left:68%;box-shadow:0 0 6px #fb923c66}.ambient-particles .mote:nth-child(6){background:#a855f7b3;width:3px;height:3px;animation-duration:11s;animation-delay:4s;left:82%;box-shadow:0 0 4px #a855f780}.ambient-particles .mote:nth-child(7){background:#22d3ee99;width:4px;height:4px;animation-duration:18s;animation-delay:7s;left:15%;box-shadow:0 0 5px #22d3ee66}.ambient-particles .mote:nth-child(8){background:#f472b680;width:6px;height:6px;animation-duration:20s;animation-delay:6s;left:48%;box-shadow:0 0 8px #f472b64d}.ambient-particles .mote:nth-child(9){background:#34d399b3;width:3px;height:3px;animation-duration:9s;animation-delay:8s;left:33%;box-shadow:0 0 4px #34d39980}.ambient-particles .mote:nth-child(10){background:#6366f199;width:5px;height:5px;animation-duration:13s;animation-delay:10s;left:72%;box-shadow:0 0 6px #6366f166}.ambient-particles .mote:nth-child(11){background:#fbbf2499;width:4px;height:4px;animation-duration:17s;animation-delay:9s;left:5%;box-shadow:0 0 5px #fbbf2466}.ambient-particles .mote:nth-child(12){background:#ec489980;width:5px;height:5px;animation-duration:12s;animation-delay:11s;left:58%;box-shadow:0 0 6px #ec48994d}.ambient-particles .mote:nth-child(13){background:#8b5cf680;width:7px;height:7px;animation-duration:19s;animation-delay:2s;left:88%;box-shadow:0 0 10px #8b5cf64d}.ambient-particles .mote:nth-child(14){background:#2dd4bf99;width:3px;height:3px;animation-duration:14s;animation-delay:13s;left:42%;box-shadow:0 0 4px #2dd4bf66}.ambient-particles .mote:nth-child(15){background:#3b82f6b3;width:5px;height:5px;animation-duration:11s;animation-delay:6s;left:18%;box-shadow:0 0 6px #3b82f680}@keyframes moteFloat{0%{opacity:0;bottom:-5%;transform:translate(0)scale(.5)}8%{opacity:.8;transform:scale(1)}25%{transform:translate(40px)scale(1.1)}50%{opacity:1;transform:translate(-30px)scale(.9)}75%{transform:translate(50px)scale(1.05)}92%{opacity:.4;transform:translate(-15px)scale(.8)}to{opacity:0;bottom:105%;transform:translate(20px)scale(.5)}}@keyframes orbDrift{0%{transform:translate(0)scale(1)}25%{transform:translate(30px,-40px)scale(1.1)}50%{transform:translate(-20px,20px)scale(.9)}75%{transform:translate(40px,30px)scale(1.05)}to{transform:translate(0)scale(1)}}@keyframes auroraPulse{0%{opacity:0;transform:translate(-10%)scaleY(.8)}30%{opacity:.6;transform:translate(5%)scaleY(1.2)}50%{opacity:.4;transform:translate(-5%)scaleY(1)}70%{opacity:.7;transform:translate(8%)scaleY(1.3)}to{opacity:0;transform:translate(-10%)scaleY(.8)}}.vignette{z-index:0;pointer-events:none;contain:strict;background:radial-gradient(65% 55%,#0000 30%,#05051ab3 100%);position:absolute;inset:0;transform:translateZ(0)}@keyframes starTwinkle{0%{opacity:.4}25%{opacity:1}50%{opacity:.5}75%{opacity:.9}to{opacity:.6}}@keyframes starTwinkle2{0%{opacity:1}20%{opacity:.3}40%{opacity:.8}60%{opacity:.2}80%{opacity:.9}to{opacity:.5}}@keyframes nebulaFloat{0%{transform:translate(0%)rotate(0)scale(1)}20%{transform:translate(5%,-4%)rotate(2deg)scale(1.02)}40%{transform:translate(-3%,5%)rotate(-1deg)scale(.98)}60%{transform:translate(-5%,-2%)rotate(1.5deg)scale(1.03)}80%{transform:translate(3%,3%)rotate(-.5deg)scale(.99)}to{transform:translate(2%,-3%)rotate(-1deg)scale(1.01)}}@keyframes nebulaFloat2{0%{transform:translate(0%)rotate(0)scale(1)}25%{transform:translate(-5%,4%)rotate(-2deg)scale(1.03)}50%{transform:translate(4%,-3%)rotate(1.5deg)scale(.97)}75%{transform:translate(-2%,-4%)rotate(.5deg)scale(1.02)}to{transform:translate(3%,2%)rotate(-1deg)scale(1)}}.loading-screen{gap:16px}.loading-blob{justify-content:center;align-items:center;width:80px;height:80px;display:flex}.loading-blob-inner{background:radial-gradient(circle, var(--accent-glow) 0%, var(--accent) 60%, transparent 100%);border-radius:50%;width:60px;height:60px;box-shadow:0 0 30px #7c5cbf80}.loading-text{font-family:var(--pixel-font);color:var(--text-dim);font-size:11px}.loading-bar-container{background:#ffffff14;width:200px;height:8px;overflow:hidden}.loading-bar{background:var(--accent);height:100%;box-shadow:0 0 10px var(--accent)}.loading-count{font-family:var(--pixel-font);color:var(--text-dim);font-size:8px}.scanlines{pointer-events:none;z-index:1000;contain:strict;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00000008 2px 4px);width:100%;height:100%;position:fixed;top:0;left:0;transform:translateZ(0)}.sound-toggle{z-index:100;color:var(--text-dim);font-family:var(--pixel-font);cursor:pointer;background:#ffffff14;border:2px solid #ffffff26;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;transition:all .2s;display:flex;position:fixed;top:16px;right:16px}.sound-toggle:hover{color:var(--text-bright);background:#ffffff26}.screen{flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:800px;height:100dvh;margin:0 auto;padding:20px;display:flex;position:relative}.spirit-stage-wrapper{justify-content:center;align-items:center;margin-bottom:16px;display:flex}.spirit-canvas{image-rendering:pixelated;border-radius:0}.title-screen{gap:8px}.title-text{font-family:var(--pixel-font);color:var(--text-bright);text-shadow:0 0 20px #7c5cbf99, 0 4px 0 var(--pixel-shadow);letter-spacing:-1px;font-size:28px}.subtitle-text{font-family:var(--pixel-font);color:var(--text-dim);margin-top:4px;font-size:10px}.hint-text{font-family:var(--pixel-font);color:var(--text-dim);font-size:8px;position:absolute;bottom:34px}.title-credit{font-family:var(--pixel-font);color:var(--text-dim);text-align:center;margin-top:16px;font-size:9px}.made-by a{color:var(--accent-glow);border-bottom:1px solid #b39ddb4d;padding-bottom:1px;text-decoration:none}.made-by a:hover{color:var(--text-bright);border-bottom-color:var(--text-bright)}.disclaimer{font-family:var(--pixel-font);color:var(--text-dim);text-align:center;font-size:5px;line-height:1.5;position:absolute;bottom:6px;left:20px;right:20px}.result-footer-info{font-family:var(--pixel-font);color:var(--text-dim);text-align:center;margin-top:10px;font-size:8px}.result-footer-info a{color:var(--accent-glow);border-bottom:1px solid #b39ddb4d;padding-bottom:1px;text-decoration:none}.result-footer-info a:hover{color:var(--text-bright);border-bottom-color:var(--text-bright)}.pixel-button{font-family:var(--pixel-font);background:var(--accent);color:var(--text-bright);cursor:pointer;text-transform:lowercase;letter-spacing:.5px;box-shadow:0 4px 0 #4a2d7a, 0 6px 0 var(--pixel-shadow), inset 0 1px 0 #fff3;border:none;padding:12px 24px;font-size:12px;transition:background .15s;position:relative}.pixel-button:hover{background:#8b6cc7}.pixel-button:active{box-shadow:0 2px 0 #4a2d7a, 0 3px 0 var(--pixel-shadow), inset 0 1px 0 #ffffff1a;transform:translateY(2px)}.start-button{margin-top:16px;padding:16px 32px;font-size:14px}.mode-buttons{gap:12px;margin-top:20px;display:flex}.mode-button{background:#7c5cbf26;border:2px solid #7c5cbf66;flex-direction:column;align-items:center;gap:4px;min-width:130px;padding:14px 20px;font-size:11px;display:flex;box-shadow:0 4px #0000004d,inset 0 1px #ffffff14}.mode-button:hover{border-color:var(--accent-glow);background:#7c5cbf4d}.mode-button-expanded{background:var(--accent);border-color:var(--accent)}.mode-button-expanded:hover{background:#8b6cc7;border-color:#8b6cc7}.mode-label{font-family:var(--pixel-font);color:var(--text-bright);letter-spacing:.5px;font-size:10px}.mode-desc{font-family:var(--pixel-font);color:#ffffff80;text-transform:uppercase;letter-spacing:1px;font-size:7px}.attribute-screen{gap:0;padding:0;overflow:hidden}.floating-progress{z-index:10;gap:8px;display:flex;position:absolute;top:20px}.progress-dot{background:#ffffff26;width:8px;height:8px;transition:all .3s}.progress-dot.done{background:var(--accent);box-shadow:0 0 8px #7c5cbf80}.progress-dot.active{background:var(--accent-glow);box-shadow:0 0 12px #b39ddbb3}.floating-question{z-index:10;font-family:var(--pixel-font);color:var(--text-bright);text-shadow:0 2px 0 var(--pixel-shadow);font-size:13px;position:absolute;top:48px}.floating-arena{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.floating-center{z-index:5;justify-content:center;align-items:center;display:flex;position:relative}.floating-center .spirit-canvas{width:180px!important;height:180px!important}.instructions-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#05051abf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.instructions-card{flex-direction:column;align-items:center;gap:16px;padding:28px 36px;display:flex}.instructions-text{font-family:var(--pixel-font);color:var(--text-bright);text-align:center;font-size:12px;line-height:1.6}.instructions-ok{padding:10px 28px;font-size:10px}.absorb-flash{background:radial-gradient(circle, var(--accent-glow) 0%, transparent 70%);pointer-events:none;z-index:6;border-radius:50%;width:200px;height:200px;position:absolute}.floating-options{pointer-events:none;position:absolute;inset:0}.floating-blob-chip{pointer-events:auto;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:90px;height:90px;display:flex;position:relative;transform:translate(-50%,-50%)}.floating-blob-chip.dragging{filter:brightness(1.3)drop-shadow(0 0 6px #b39ddb99)}.blob-svg{pointer-events:none;image-rendering:pixelated}.blob-chip-content{z-index:2;pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chip-emoji{color:#fff;text-shadow:0 2px #0009;font-size:22px;line-height:1;font-family:var(--pixel-font)}.chip-label{font-family:var(--pixel-font);text-transform:lowercase;letter-spacing:.5px;color:#fff;text-shadow:0 1px #000000e6,0 0 4px #000000b3;font-size:9px}.reveal-screen{background:0 0}.reveal-pokeball-wrap{justify-content:center;align-items:center;display:flex}.reveal-flash{z-index:50;opacity:0;pointer-events:none;background:radial-gradient(circle,#fff8e1,#ffdd57 40%,#fa0 80%);position:fixed;inset:0}.reveal-flash-anim{animation:.5s ease-out forwards revealFlash}@keyframes revealFlash{0%{opacity:0}15%{opacity:.7}40%{opacity:.5}to{opacity:0}}.reveal-shards{pointer-events:none;position:absolute;top:50%;left:50%}@keyframes shardFly{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{transform:translate(var(--shard-x), var(--shard-y)) rotate(var(--shard-rot)) scale(0);opacity:0}}.reveal-emerge{flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.reveal-emerge-anim{animation:.9s cubic-bezier(.34,1.56,.64,1) forwards emergeErupt}@keyframes emergeErupt{0%{opacity:0;transform:scale(0)translateY(50px)}35%{opacity:1;transform:scale(1.5)translateY(-30px)}55%{opacity:1;transform:scale(.9)translateY(5px)}75%{opacity:1;transform:scale(1.1)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.reveal-pokemon-sprite{width:360px;height:360px;image-rendering:pixelated;filter:drop-shadow(0 0 30px #ffffff80)drop-shadow(0 0 60px #ffdd574d);z-index:2;position:relative}.reveal-pokemon-name{font-family:var(--pixel-font);color:#fff;text-transform:capitalize;text-shadow:0 0 30px #ffdd5799, 0 0 60px #ffdd574d, 0 4px 0 var(--pixel-shadow);opacity:0;z-index:2;margin-top:16px;font-size:28px;position:relative}.reveal-name-anim{animation:.4s ease-out .5s forwards nameReveal}@keyframes nameReveal{0%{opacity:0;transform:translateY(15px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.reveal-explode-canvas{z-index:1;pointer-events:none;position:absolute}.result-screen{justify-content:center;padding:16px;overflow-y:auto}.result-card{border:3px solid var(--type-color,var(--accent));aspect-ratio:3/4;width:420px;box-shadow:0 0 30px var(--type-color-dim,#7c5cbf4d), 0 8px 0 var(--pixel-shadow), inset 0 1px 0 #ffffff1a;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px 22px;display:flex;position:relative;overflow:hidden}.result-card:before,.result-card:after{content:"";background:var(--type-color,var(--accent));width:6px;height:6px;position:absolute}.result-card:before{top:-3px;left:-3px}.result-card:after{top:-3px;right:-3px}.card-header{text-align:center;width:100%}.card-label{font-family:var(--pixel-font);color:var(--text-dim);text-transform:uppercase;letter-spacing:2px;font-size:8px}.card-sprite-wrapper{justify-content:center;align-items:center;width:130px;height:130px;display:flex;position:relative}.card-sprite-glow{background:radial-gradient(circle, var(--type-color-dim,#7c5cbf4d) 0%, transparent 70%);filter:blur(10px);border-radius:50%;width:100px;height:100px;position:absolute}.card-sprite{object-fit:contain;image-rendering:auto;z-index:1;filter:drop-shadow(0 4px 8px #00000080);width:120px;height:120px;position:relative}.card-name-section{text-align:center}.card-pokemon-name{font-family:var(--pixel-font);color:var(--text-bright);text-shadow:0 0 15px var(--type-color-dim,#7c5cbf66), 0 2px 0 var(--pixel-shadow);margin-bottom:4px;font-size:20px}.card-types{justify-content:center;gap:6px;margin-bottom:4px;display:flex}.type-badge{font-family:var(--pixel-font);color:#fff;text-transform:uppercase;letter-spacing:1px;text-shadow:0 1px 2px #0006;padding:3px 9px;font-size:8px}.card-subtitle{font-family:var(--pixel-font);color:var(--text-dim);max-width:260px;margin-top:2px;font-size:7px;font-style:italic;line-height:1.5}.card-section-label{font-family:var(--pixel-font);color:var(--type-color,var(--accent-glow));text-transform:uppercase;letter-spacing:1px;margin-bottom:3px;font-size:7px}.card-reading{border-left:3px solid var(--type-color,var(--accent));background:#0000004d;width:100%;padding:10px 12px}.reading-text{font-family:var(--pixel-font);color:var(--text-main);font-size:8px;line-height:1.7}.card-flags{flex-direction:column;gap:5px;width:100%;display:flex}.flag-item{flex-direction:column;gap:2px;display:flex}.flag-label{font-family:var(--pixel-font);color:var(--type-color,var(--accent-glow));text-transform:uppercase;white-space:nowrap;font-size:7px}.flag-text{font-family:var(--pixel-font);color:var(--text-dim);font-size:7px;line-height:1.6}.card-vibes{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.vibe-tag{font-family:var(--pixel-font);color:var(--type-color,var(--accent-glow));padding:3px 7px;font-size:7px}.card-cousins{text-align:center;border-top:1px solid #ffffff14;width:100%;padding-top:4px}.cousins-label{font-family:var(--pixel-font);color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:4px;font-size:6px}.cousins-row{justify-content:center;gap:16px;display:flex}.cousin-item{flex-direction:column;align-items:center;gap:2px;display:flex}.cousin-sprite{width:42px;height:42px;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges;filter:drop-shadow(0 2px 4px #00000080)}.cousin-name{font-family:var(--pixel-font);color:var(--text-dim);font-size:5px}.card-footer{text-align:center;border-top:1px solid #ffffff0d;flex-direction:column;align-items:center;gap:4px;width:100%;margin-top:auto;padding-top:6px;display:flex}.card-watermark{font-family:var(--pixel-font);color:#ffffffd9;letter-spacing:3px;text-transform:uppercase;font-size:6px}.result-actions{flex-direction:column;align-items:center;gap:10px;margin-top:16px;margin-bottom:24px;display:flex}@media (width>=600px){.result-actions{flex-flow:wrap;justify-content:center}.result-card{aspect-ratio:4/5;gap:12px;width:min(560px,85vw);padding:28px 32px}.card-label{letter-spacing:3px;font-size:9px}.card-sprite-wrapper{width:160px;height:160px}.card-sprite{width:150px;height:150px}.card-pokemon-name{font-size:22px}.card-subtitle,.card-section-label{font-size:9px}.reading-text{font-size:10px}.flag-label,.flag-text{font-size:9px}.vibe-tag{padding:4px 9px;font-size:8px}.card-watermark{font-size:7px}.cousins-label{font-size:9px}.cousin-name{font-size:7px}}.share-section{position:relative}.share-button{background:linear-gradient(135deg,#7c5cbf4d,#6366f14d);border:2px solid #7c5cbf66;align-items:center;gap:6px;padding:12px 24px;font-size:10px;display:inline-flex;box-shadow:0 3px #0000004d}.share-button:hover{border-color:var(--accent);background:linear-gradient(135deg,#7c5cbf80,#6366f180)}.share-button:disabled{opacity:.5;pointer-events:none}.btn-icon{flex-shrink:0;width:14px;height:14px;display:inline-flex}.btn-icon svg{width:100%;height:100%}.restart-button{background:#ffffff14;border:2px solid #ffffff26;padding:12px 20px;font-size:10px;box-shadow:0 3px #0000004d}.restart-button:hover{border-color:var(--accent);background:#7c5cbf33}@media (width<=480px){.ambient-particles .mote:nth-child(n+10),.bg-orb:nth-child(n+4){display:none}.title-text{font-size:20px}.spirit-canvas{width:200px!important;height:200px!important}.floating-center .spirit-canvas{width:120px!important;height:120px!important}.floating-question{text-align:center;padding:0 16px;font-size:10px;top:44px}.floating-blob-chip{width:70px;height:70px}.chip-emoji{font-size:14px}.chip-label{font-size:8px}.result-screen{justify-content:center;padding:12px 10px}.result-card{aspect-ratio:auto;gap:10px;width:92vw;max-width:360px;padding:16px 14px;overflow:visible}.card-label{letter-spacing:1px;font-size:6px}.card-sprite-wrapper{width:110px;height:110px}.card-sprite{width:100px;height:100px}.card-sprite-glow{width:85px;height:85px}.card-pokemon-name{margin-bottom:3px;font-size:15px}.card-subtitle{max-width:240px;font-size:6px}.type-badge{padding:2px 7px;font-size:6px}.card-section-label{font-size:6px}.card-reading{padding:8px 10px}.reading-text{font-size:6px}.flag-item{flex-direction:column;gap:2px}.flag-label{min-width:unset;font-size:6px}.flag-text{font-size:6px}.vibe-tag{padding:2px 6px;font-size:6px}.cousin-sprite{width:36px;height:36px}.cousin-name,.cousins-label,.card-watermark{font-size:5px}.restart-button{padding:10px 16px;font-size:9px}.result-actions{margin-top:12px;margin-bottom:16px}.reveal-pokemon-name{font-size:22px}.reveal-pokemon-sprite{width:280px;height:280px}.start-button{padding:14px 28px;font-size:12px}.mode-buttons{gap:8px;margin-top:14px}.mode-button{min-width:110px;padding:12px 14px}.mode-label{font-size:8px}.mode-desc{font-size:6px}.sound-toggle{width:36px;height:36px;font-size:12px;top:auto;bottom:12px;right:12px}}@media (width<=375px){.title-text{font-size:17px}.spirit-canvas{width:180px!important;height:180px!important}.floating-center .spirit-canvas{width:100px!important;height:100px!important}.floating-blob-chip{width:62px;height:62px}.chip-emoji{font-size:12px}.chip-label{font-size:7px}.result-card{gap:8px;padding:12px 10px}.card-pokemon-name{font-size:14px}.card-sprite-wrapper{width:90px;height:90px}.card-sprite{width:80px;height:80px}.floating-question{font-size:9px}.mode-buttons{gap:6px;margin-top:12px}.mode-button{min-width:95px;padding:10px}.mode-label{font-size:7px}}@media (height<=700px){.spirit-canvas{width:180px!important;height:180px!important}.floating-center .spirit-canvas{width:110px!important;height:110px!important}.title-text{font-size:22px}.start-button{padding:12px 24px;font-size:12px}.floating-question{font-size:10px;top:38px}.floating-progress{top:14px}.result-screen{padding-top:20px}.card-sprite-wrapper{width:90px;height:90px}.card-sprite{width:80px;height:80px}}@media (height<=550px){.spirit-stage-wrapper{margin-bottom:8px}.spirit-canvas{width:140px!important;height:140px!important}.floating-center .spirit-canvas{width:90px!important;height:90px!important}.title-text{font-size:18px}.subtitle-text{font-size:8px}.start-button{margin-top:8px;padding:10px 20px;font-size:11px}.mode-buttons{gap:6px;margin-top:8px}.mode-button{min-width:100px;padding:8px 10px}.floating-question{font-size:9px;top:34px}.floating-blob-chip{width:60px;height:60px}.reveal-pokemon-name{font-size:22px}.reveal-pokemon-sprite{width:280px;height:280px}}
