:root{color:#172033;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select{font:inherit}button{border:0;cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.62}.app-shell{min-height:100vh;padding:18px}.title-screen,.setup-screen,.result-screen{background:radial-gradient(circle at top left,rgba(255,203,5,.58),transparent 30%),radial-gradient(circle at 92% 8%,rgba(238,79,71,.2),transparent 28%),linear-gradient(135deg,#eef6ff,#f8fbf1 48%,#fff3f3)}.game-screen{background:linear-gradient(135deg,#eef6ff,#f8fbf1 48%,#fff3f3)}.hero-panel,.setup-panel,.game-board,.result-panel{width:min(100%,720px);margin:0 auto}.hero-panel,.setup-panel,.result-panel{min-height:calc(100vh - 36px);display:flex;flex-direction:column;justify-content:center;gap:18px}.decorated-hero{position:relative;overflow:hidden;border-radius:24px;padding:24px;background:linear-gradient(135deg,#ffffffe0,#ffffff9e),radial-gradient(circle at 82% 18%,rgba(255,203,5,.72),transparent 24%),radial-gradient(circle at 24% 88%,rgba(60,90,166,.26),transparent 28%);box-shadow:0 28px 90px #17203324}.hero-copy{position:relative;z-index:2}.decorated-hero h1{max-width:7.5ch;font-size:clamp(3rem,12vw,5rem);line-height:.98;letter-spacing:-.05em}.decorated-hero .subtitle{max-width:28rem}.hero-art{position:relative;min-height:265px;border-radius:22px;background:linear-gradient(160deg,#244aa5f5,#3c5aa6c7),radial-gradient(circle,rgba(255,255,255,.28) 1px,transparent 2px);background-size:auto,24px 24px;box-shadow:inset 0 0 0 1px #ffffff38,0 18px 50px #244aa53d}.hero-ball{position:absolute;left:50%;top:50%;width:138px;transform:translate(-50%,-50%) rotate(-12deg);box-shadow:0 24px 60px #00000047;animation:hero-ball-float 5s ease-in-out infinite}.letter-orbit{position:absolute;display:grid;place-items:center;width:62px;aspect-ratio:1;border:2px solid rgba(23,32,51,.18);border-radius:18px;color:#172033;background:#ffcb05;font-size:2rem;font-weight:1000;box-shadow:0 12px 28px #00000038}.letter-a{left:28px;top:32px;transform:rotate(-8deg);animation:letter-card-bob 4.4s ease-in-out infinite}.letter-z{right:30px;bottom:38px;transform:rotate(9deg);animation:letter-card-bob 4.8s ease-in-out .6s infinite reverse}.spark{position:absolute;width:22px;aspect-ratio:1;background:#fff;clip-path:polygon(50% 0,62% 36%,100% 50%,62% 64%,50% 100%,38% 64%,0 50%,38% 36%);opacity:.9}.spark-one{right:72px;top:42px;animation:sparkle-pop 1.8s ease-in-out infinite}.spark-two{left:86px;bottom:50px;transform:scale(.75);animation:sparkle-pop 2.2s ease-in-out .45s infinite}.type-card{position:absolute;display:grid;gap:2px;border:1px solid rgba(23,32,51,.14);border-radius:14px;padding:10px 12px;color:#172033;background:#ffffffeb;box-shadow:0 12px 28px #0003}.type-card span{color:#3c5aa6;font-size:.72rem;font-weight:900;text-transform:uppercase}.type-card strong{font-size:.95rem}.card-classic{left:22px;bottom:22px}.card-blitz{right:22px;top:96px}.game-board{display:grid;gap:14px;padding-bottom:20px}.pokeball-mark{width:92px;aspect-ratio:1;border:8px solid #172033;border-radius:50%;background:radial-gradient(circle,#f5f7fb 0 15%,#172033 16% 22%,transparent 23%),linear-gradient(#ee4f47 0 46%,#172033 47% 54%,#f5f7fb 55%);box-shadow:0 18px 50px #17203329}.eyebrow{margin:0;color:#3c5aa6;font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(3.1rem,16vw,6rem);line-height:.92}h2{margin-bottom:0;font-size:1.45rem}.subtitle{max-width:22rem;margin-bottom:8px;color:#46536b;font-size:1.2rem}.fine-print,.empty-state{color:#667085;font-size:.88rem}.primary-action,.danger-action,.ghost-button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:8px;padding:0 18px;font-weight:800;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.primary-action{width:100%;color:#fff;background:#244aa5;box-shadow:0 14px 30px #244aa547}.stacked-actions{display:grid;gap:10px;width:100%}.demo-card{display:grid;gap:12px;border-radius:12px;padding:14px;background:#ffcb0529;box-shadow:inset 0 0 0 1px #d7a00042}.demo-card strong,.demo-card small{display:block}.demo-card strong{margin-top:3px;color:#172033;font-size:1.04rem}.demo-card small{margin-top:4px;color:#667085;font-weight:700;line-height:1.35}.demo-button{background:#fff8dc}.danger-action{width:100%;color:#fff;background:#c73d32}.ghost-button{color:#244aa5;background:#fff;box-shadow:inset 0 0 0 1px #244aa52e}.primary-action:hover,.danger-action:hover,.ghost-button:hover{transform:translateY(-1px)}.primary-action svg,.danger-action svg,.ghost-button svg{width:20px;height:20px}.top-link{align-self:flex-start;min-height:40px;padding:0 14px}.setup-panel label,.answer-form label{display:grid;gap:8px;color:#384459;font-weight:800}input,select{min-height:54px;width:100%;border:2px solid #d8deea;border-radius:8px;padding:0 14px;color:#172033;background:#fff;outline:none}input:focus{border-color:#3c5aa6;box-shadow:0 0 0 4px #3c5aa624}select:focus{border-color:#3c5aa6;box-shadow:0 0 0 4px #3c5aa624}.settings-row{display:grid;gap:14px}.rules-list,.summary-list{display:grid;gap:12px}.rules-list p{margin:0;color:#46536b;line-height:1.5}.summary-list{margin:0}.summary-list div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid rgba(23,32,51,.1);padding:12px 0}.summary-list dt{color:#667085;font-weight:800}.summary-list dd{margin:0;color:#172033;font-weight:900;text-align:right}.toggle-setting{min-height:64px;position:relative;grid-template-columns:auto auto 1fr;align-items:center;border:1px solid rgba(23,32,51,.1);border-radius:8px;padding:12px;background:#fffc}.toggle-setting input{position:absolute;opacity:0;pointer-events:none}.toggle-control{position:relative;width:48px;height:28px;border-radius:999px;background:#c9d2e3;transition:background .16s ease}.toggle-control:after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 6px #1720333d;transition:transform .16s ease}.toggle-setting input:checked+.toggle-control{background:#2a9d72}.toggle-setting input:checked+.toggle-control:after{transform:translate(20px)}.toggle-setting input:focus-visible+.toggle-control{box-shadow:0 0 0 4px #3c5aa624}.toggle-setting strong,.toggle-setting small{display:block}.toggle-setting small{margin-top:2px;color:#667085;font-weight:700}.match-header,.turn-panel,.answer-form,.used-panel,.scoreboard{border:1px solid rgba(23,32,51,.1);border-radius:8px;background:#ffffffe6;box-shadow:0 14px 40px #17203314}.match-header{min-height:132px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px}.match-header h1{color:#244aa5;font-size:5.8rem}.remaining-pill{min-width:96px;border-radius:999px;padding:9px 12px;color:#172033;background:#ffcb05;text-align:center;font-size:.88rem;font-weight:900}.header-pills{display:grid;justify-items:end;gap:8px}.mode-badge{max-width:180px;border-radius:999px;padding:7px 10px;color:#244aa5;background:#eef2fb;text-align:right;font-size:.74rem;font-weight:900}.scoreboard{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px}.compact-scoreboard{box-shadow:none}.score-tile{min-width:0;border-radius:8px;padding:12px;background:#eef2fb}.score-tile span,.letter-counts span,.round-score span{display:block;overflow-wrap:anywhere}.score-tile strong{display:block;margin-top:4px;font-size:2rem;line-height:1}.turn-panel,.answer-form,.used-panel{padding:16px}.turn-panel h2{overflow-wrap:anywhere}.letter-counts,.round-score,.timer-readout{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;color:#46536b;font-weight:700}.timer-readout{display:inline-flex;align-items:center;grid-template-columns:none;border-radius:999px;padding:8px 12px;background:#fff4d2;color:#172033;font-size:1.1rem;font-weight:900}.timer-readout-danger{background:#ffe4df;color:#9d2b20}.timer-readout svg{width:18px;height:18px}.answer-form{display:grid;gap:12px}.action-row{display:grid;grid-template-columns:1fr;gap:10px}.error-message{margin-bottom:0;border-left:4px solid #c73d32;padding:10px 12px;color:#8b241c;background:#fff0ef;border-radius:6px;font-weight:700}.hint-message{margin-bottom:0;border-left:4px solid #2a9d72;padding:10px 12px;color:#1f6b50;background:#e8f5ef;border-radius:6px;font-weight:800}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.section-heading h2{font-size:1.1rem}.section-heading span{border-radius:999px;padding:4px 10px;color:#fff;background:#2a9d72;font-weight:900}.used-panel,.leaderboard-panel,.history-panel,.starter-panel,.daily-panel,.collection-panel,.reward-summary{border-radius:8px;padding:16px;background:#ffffffdb;box-shadow:0 16px 40px #17203314}.starter-panel,.daily-panel,.collection-panel{display:grid;gap:14px}.compact-starter-panel{box-shadow:inset 0 0 0 1px #17203314}.starter-current{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:12px}.starter-current .pokemon-image-single img,.starter-current .pokemon-image-pair img{width:84px;height:84px;margin:0}.starter-current strong,.starter-current small{display:block}.starter-current strong{margin-top:2px;font-size:1.25rem}.starter-current small{margin-top:4px;color:#667085;font-weight:800}.starter-grid,.collection-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px}.starter-choice{display:grid;justify-items:center;gap:6px;border-radius:14px;padding:10px;color:#172033;background:#f7f9fd;box-shadow:inset 0 0 0 1px #17203314;font-weight:900}.starter-choice.selected{background:#fff4d2;box-shadow:inset 0 0 0 2px #ffcb05}.starter-choice img,.collection-card img{width:72px;height:72px;object-fit:contain}.daily-panel p{margin-bottom:0;color:#46536b;font-weight:700;line-height:1.45}.daily-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px}.collection-card{min-height:142px;display:grid;justify-items:center;align-content:center;gap:6px;border-radius:14px;padding:12px;background:#f7f9fd;text-align:center;box-shadow:inset 0 0 0 1px #17203314}.collection-card strong,.collection-card small{display:block}.collection-card small{color:#667085;font-size:.76rem;font-weight:800}.collection-card.locked{color:#667085;background:#eef2fbb8}.collection-silhouette{width:72px;height:72px;display:grid;place-items:center;border-radius:999px;color:#fff;background:#667085;font-size:2rem;font-weight:1000}.reward-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff8dc;box-shadow:inset 0 0 0 1px #d7a0003d}.reward-summary strong,.reward-summary small{display:block}.reward-summary strong{font-size:1.4rem}.reward-summary small{color:#667085;font-weight:800}.reward-badge{border-radius:999px;padding:8px 10px;color:#fff;background:#2a9d72;font-size:.82rem;font-weight:1000;white-space:nowrap}.leaderboard-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-top:12px}.leaderboard-column{min-width:0;display:grid;align-content:start;gap:8px}.leaderboard-column-heading{display:grid;gap:4px}.leaderboard-column h3{margin:0;color:#172033;font-size:.98rem}.leaderboard-column-heading span{width:fit-content;border-radius:999px;padding:4px 8px;color:#244aa5;background:#eef2fb;font-size:.72rem;font-weight:1000}.leaderboard-description,.score-help{display:block;margin:0;color:#667085;font-size:.78rem;font-weight:700;line-height:1.35}.leaderboard-note{margin:12px 0 0;color:#667085;font-size:.8rem;font-weight:700}.leaderboard-panel ol{display:grid;gap:8px;margin:4px 0 0;padding:0;list-style:none}.leaderboard-panel li{display:grid;grid-template-columns:auto 1fr auto;gap:2px 10px;border-radius:8px;padding:10px 12px;background:#f7f9fd;color:#46536b;font-weight:800}.leaderboard-rank{display:inline-grid;place-items:center;min-width:2.1rem;height:2.1rem;border-radius:999px;color:#244aa5;background:#eef2fb;font-weight:1000}.leaderboard-panel li small{grid-column:2 / -1;color:#667085;font-size:.78rem}.compact-leaderboard{width:min(100%,420px)}.history-panel ol{display:grid;gap:8px;margin:12px 0 0;padding:0;list-style:none}.history-panel li{display:grid;gap:2px;border-radius:8px;padding:10px 12px;background:#f7f9fd}.history-panel li span,.history-panel li small{color:#667085;font-size:.78rem;font-weight:800}.history-panel li strong{color:#172033}.compact-history{width:min(100%,420px)}.leaderboard-save-card{display:grid;gap:12px;border-radius:8px;padding:14px;background:#ffffffdb;box-shadow:inset 0 0 0 1px #1720331a}.leaderboard-save-card strong{display:block;margin-top:4px;color:#172033;font-size:1.1rem}.used-panel ul{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0;padding:0;list-style:none}.used-panel li{border-radius:999px;padding:7px 10px;background:#e8f5ef;color:#1f6b50;font-weight:800}.secondary-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;padding:8px 0 0}.modal-backdrop{position:fixed;inset:0;z-index:10;display:grid;place-items:center;padding:18px;background:#17203394;animation:modal-backdrop-in .18s ease-out}.modal-card{width:min(100%,420px);border-radius:8px;padding:22px;background:#fff;box-shadow:0 24px 90px #0000004d;text-align:center;animation:modal-card-pop .24s cubic-bezier(.18,.89,.32,1.28)}.modal-card img{width:min(68vw,230px);aspect-ratio:1;object-fit:contain;margin-bottom:4px;animation:pokemon-reveal-bounce .52s ease-out}.pokemon-image-single,.pokemon-image-pair{display:flex;justify-content:center;align-items:center;gap:8px}.pokemon-image-pair img{width:min(38vw,165px)}.reveal-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:8px 0 10px}.reveal-meta span{border-radius:999px;padding:5px 9px;color:#244aa5;background:#eef2fb;font-size:.78rem;font-weight:900}.pokemon-fallback{width:min(68vw,230px);aspect-ratio:1;display:grid;place-items:center;margin:0 auto 4px;border:6px solid #172033;border-radius:50%;background:radial-gradient(circle,#ffffff 0 15%,#172033 16% 22%,transparent 23%),linear-gradient(#ee4f47 0 46%,#172033 47% 54%,#f5f7fb 55%)}.pokemon-fallback span{width:28%;aspect-ratio:1;border:6px solid #172033;border-radius:50%;background:#fff}.modal-card h2{margin:6px 0 10px;font-size:2rem}.result-card{text-align:left}.missed-list{margin-top:16px;border-radius:8px;padding:12px;background:#f7f9fd}.missed-list ul,.time-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none}.missed-list li{border-radius:999px;padding:7px 10px;background:#e8f5ef;color:#1f6b50;font-weight:800}.next-letter{margin:16px 0 0;color:#46536b;font-weight:800}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat-tile{min-width:0;border-radius:8px;padding:12px;background:#ffffffdb;box-shadow:inset 0 0 0 1px #1720331a}.stat-tile span{display:block;color:#667085;font-size:.78rem;font-weight:800}.stat-tile strong{display:block;margin-top:4px;color:#172033;font-size:1.3rem;overflow-wrap:anywhere}.letters-won-list{display:grid;gap:10px}.letters-won-list div{border-radius:8px;padding:12px;background:#ffffffdb;box-shadow:inset 0 0 0 1px #1720331a}.letters-won-list span,.letters-won-list strong{display:block}.letters-won-list span{color:#667085;font-size:.78rem;font-weight:800}.letters-won-list strong{margin-top:4px;color:#172033;overflow-wrap:anywhere}.time-breakdown{display:grid;width:100%}.time-breakdown li{display:flex;justify-content:space-between;gap:12px;border-radius:8px;padding:10px 12px;background:#ffffffd1;color:#46536b;font-weight:800}.result-card .primary-action,.final-panel .primary-action{margin-top:10px}.result-icon{width:64px;height:64px;color:#d7a000}.final-panel h1{font-size:clamp(2.7rem,13vw,5rem)}@media(max-width:520px){.leaderboard-columns{grid-template-columns:1fr}.hero-art{min-height:248px}.starter-current{grid-template-columns:1fr}.reward-summary{align-items:flex-start;flex-direction:column}}@media(min-width:620px){.app-shell{padding:28px}.hero-panel,.setup-panel,.result-panel{min-height:calc(100vh - 56px)}.primary-action,.danger-action,.ghost-button{width:auto;min-width:180px}.setup-panel .primary-action,.hero-panel .primary-action,.hero-panel .ghost-button,.final-panel .primary-action{align-self:flex-start}.stacked-actions{display:flex;flex-wrap:wrap;align-items:center;width:auto}.hero-panel .stacked-actions .primary-action,.hero-panel .stacked-actions .ghost-button{min-width:150px}.decorated-hero{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;column-gap:24px}.decorated-hero .starter-panel,.decorated-hero .daily-panel,.decorated-hero .compact-leaderboard,.decorated-hero .compact-history,.decorated-hero .fine-print{grid-column:1 / -1}.action-row{grid-template-columns:1fr auto auto}.settings-row{grid-template-columns:1fr 1fr;align-items:end}.demo-card,.leaderboard-save-card{grid-template-columns:1fr auto;align-items:center}.danger-action{min-width:130px}}.dev-tools-card{display:grid;gap:14px}.dev-tools-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dev-letter-picker{display:grid;gap:6px;width:min(220px,100%)}.dev-letter-picker span{color:#5f6b85;font-size:.82rem;font-weight:800;text-transform:uppercase}.dev-pokemon-list{border:1px solid rgba(60,90,166,.18);border-radius:16px;background:#ffffffb3;overflow:hidden}.dev-pokemon-list summary{cursor:pointer;padding:12px 14px;color:#244aa5;font-weight:900}.dev-pokemon-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;max-height:420px;overflow:auto;padding:0 12px 12px}.dev-pokemon-entry{display:grid;gap:8px;border:1px solid rgba(23,32,51,.1);border-radius:14px;padding:10px;background:#fff}.dev-pokemon-entry strong,.dev-pokemon-entry small{display:block}.dev-pokemon-entry small{color:#5f6b85;font-size:.76rem}.dev-pokemon-images{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:62px}.dev-pokemon-images img{width:58px;height:58px;object-fit:contain;border-radius:12px;background:#f5f7fb}@keyframes hero-ball-float{0%,to{transform:translate(-50%,-50%) rotate(-12deg) scale(1)}50%{transform:translate(-50%,calc(-50% - 10px)) rotate(4deg) scale(1.03)}}@keyframes letter-card-bob{0%,to{translate:0 0}50%{translate:0 -8px}}@keyframes sparkle-pop{0%,to{opacity:.52;scale:.72;rotate:0deg}50%{opacity:1;scale:1.08;rotate:18deg}}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes modal-card-pop{0%{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pokemon-reveal-bounce{0%{opacity:0;transform:translateY(12px) scale(.72) rotate(-4deg)}60%{opacity:1;transform:translateY(-5px) scale(1.08) rotate(2deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.profile-slot-panel,.challenge-panel{display:grid;gap:14px;border-radius:8px;padding:16px;background:#ffffffdb;box-shadow:0 16px 40px #17203314}.profile-slot-grid,.challenge-grid,.evolution-road,.badge-row,.daily-letter-preview,.collection-tools,.recent-discoveries div{display:flex;flex-wrap:wrap;gap:10px}.profile-slot,.challenge-card{display:grid;gap:6px;align-content:start;border-radius:14px;padding:12px;color:#172033;background:#f7f9fd;box-shadow:inset 0 0 0 1px #17203314;text-align:left;font-weight:900}.profile-slot.selected,.challenge-card:hover{background:#fff4d2;box-shadow:inset 0 0 0 2px #ffcb05}.profile-slot svg,.challenge-card svg,.badge-row svg{width:18px;height:18px}.challenge-card small,.profile-slot small,.starter-choice small,.evolution-step small{color:#667085;font-size:.76rem;font-weight:800}.companion-card{border:1px solid rgba(255,203,5,.48);border-radius:18px;padding:12px;background:radial-gradient(circle at 12% 20%,rgba(255,203,5,.22),transparent 34%),#ffffffb8}.xp-bar{width:100%;height:12px;margin:8px 0;overflow:hidden;border-radius:999px;background:#d8deea}.xp-bar span{display:block;height:100%;min-width:4px;border-radius:inherit;background:linear-gradient(90deg,#2a9d72,#ffcb05);transition:width .32s ease}.evolution-road{align-items:stretch}.evolution-step{flex:1 1 120px;display:grid;justify-items:center;gap:4px;border-radius:14px;padding:10px;background:#eef2fbb8;opacity:.62;text-align:center}.evolution-step.unlocked{background:#e8f5ef;opacity:1;box-shadow:inset 0 0 0 2px #2a9d7238}.evolution-step img{width:58px;height:58px;object-fit:contain}.badge-row span,.daily-letter-preview span,.recent-discoveries span,.new-badge{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:7px 10px;color:#244aa5;background:#eef2fb;font-size:.78rem;font-weight:1000}.daily-letter-preview span{min-width:42px;justify-content:center;color:#172033;background:#ffcb05;font-size:1rem}.collection-tools{align-items:center}.collection-tools label{flex:1 1 260px;position:relative}.collection-tools label svg{position:absolute;left:12px;top:50%;width:18px;height:18px;color:#667085;transform:translateY(-50%)}.collection-tools input{padding-left:40px}.collection-tools select{flex:0 0 170px}.collection-card{border:0;position:relative}.collection-card:not(.locked){cursor:pointer}.collection-card:not(.locked):hover{transform:translateY(-2px);box-shadow:0 12px 28px #1720331f}.new-badge{position:absolute;top:8px;right:8px;color:#fff;background:#ee4f47}.pokemon-detail-card{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:14px;border-radius:16px;padding:14px;background:#fff8dc;box-shadow:inset 0 0 0 1px #d7a00042}.pokemon-detail-card img{width:110px;height:110px;object-fit:contain}.daily-complete-panel{position:relative;overflow:hidden}.confetti-burst,.confetti-burst:before,.confetti-burst:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,#ffcb05 0 4px,transparent 5px),radial-gradient(circle,#ee4f47 0 3px,transparent 4px),radial-gradient(circle,#2a9d72 0 3px,transparent 4px),radial-gradient(circle,#3c5aa6 0 4px,transparent 5px);background-size:90px 90px,110px 110px,130px 130px,150px 150px;animation:confetti-fall .9s ease-out both;opacity:.8}.confetti-burst:before{transform:translateY(-20px) rotate(8deg)}.confetti-burst:after{transform:translateY(-35px) rotate(-10deg)}.large-text{font-size:1.12rem}.large-text input,.large-text select,.large-text button{min-height:60px;font-size:1.08rem}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-60px) scale(.98)}35%{opacity:1}to{opacity:0;transform:translateY(40px) scale(1.02)}}@media(min-width:620px){.decorated-hero .profile-slot-panel,.decorated-hero .challenge-panel{grid-column:1 / -1}}@media(max-width:520px){.pokemon-detail-card{grid-template-columns:1fr;justify-items:center;text-align:center}}.coach-dashboard,.adventure-path,.achievement-panel,.training-progress-card,.result-coach-card{display:grid;gap:14px;border-radius:18px;padding:16px;background:#ffffffe6;box-shadow:0 18px 46px #1720331a,inset 0 0 0 1px #17203314}.coach-dashboard{background:linear-gradient(135deg,#244aa5f0,#3c5aa6d1),radial-gradient(circle at 84% 20%,rgba(255,203,5,.42),transparent 30%);color:#fff}.coach-dashboard .eyebrow,.coach-dashboard p,.coach-dashboard .stat-tile span,.coach-dashboard .stat-tile strong{color:#fff}.coach-dashboard p{margin-bottom:0;line-height:1.45;font-weight:700}.coach-actions,.coach-metrics{display:flex;flex-wrap:wrap;gap:10px}.coach-dashboard .ghost-button{color:#172033;background:#ffcb05}.coach-metrics .stat-tile{flex:1 1 130px;background:#ffffff24;box-shadow:inset 0 0 0 1px #ffffff38}.path-track,.achievement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}.path-step,.achievement{position:relative;display:grid;gap:5px;border-radius:14px;padding:12px;background:#f7f9fd;color:#667085;box-shadow:inset 0 0 0 1px #17203314}.path-step.done,.achievement.unlocked{color:#172033;background:#e8f5ef;box-shadow:inset 0 0 0 2px #2a9d723d}.path-number{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;color:#fff;background:#667085;font-weight:1000}.path-step.done .path-number{background:#2a9d72}.path-step strong,.achievement strong{color:inherit}.path-step small,.achievement small,.training-progress-card p,.result-coach-card p{color:#667085;font-weight:800;line-height:1.35}.achievement svg{width:22px;height:22px;color:#aab3c4}.achievement.unlocked svg{color:#d7a000;filter:drop-shadow(0 4px 8px rgba(215,160,0,.25))}.training-progress-card{background:#fff8dc;box-shadow:inset 0 0 0 1px #d7a0003d,0 14px 34px #17203314}.quest-progress{height:16px}.result-coach-card{background:#eef2fb}.result-coach-card h2{font-size:1.15rem}@media(min-width:620px){.decorated-hero .coach-dashboard,.decorated-hero .adventure-path,.decorated-hero .achievement-panel{grid-column:1 / -1}}.pokemon-page-shell{position:relative;background:radial-gradient(circle at 12% 10%,rgba(255,203,5,.36),transparent 26%),radial-gradient(circle at 88% 16%,rgba(238,79,71,.22),transparent 24%),radial-gradient(circle at 50% 100%,rgba(60,90,166,.22),transparent 38%),linear-gradient(135deg,#eaf3ff,#fffdf0 48%,#fff0f0)}.pokemon-panel,.setup-panel,.game-board,.result-panel{position:relative;border:1px solid rgba(36,74,165,.14)}.pokemon-panel:before,.setup-panel:before,.game-board:before,.result-panel:before{content:"";position:absolute;inset:8px;z-index:0;pointer-events:none;border:2px solid rgba(255,203,5,.22);border-radius:inherit}.pokemon-panel>*,.setup-panel>*,.game-board>*,.result-panel>*{position:relative;z-index:1}.loading-overlay{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at center,#ffffffeb,#172033a3),linear-gradient(135deg,#ee4f47b8,#3c5aa6b8);animation:loading-fade-in .18s ease-out both}.loading-card{width:min(100%,360px);display:grid;justify-items:center;gap:12px;border-radius:24px;padding:26px;background:#fffffff5;box-shadow:0 28px 90px #00000052,inset 0 0 0 2px #ffcb056b;text-align:center;animation:loading-card-pop .32s cubic-bezier(.18,.89,.32,1.28) both}.loading-pokeball{width:92px;aspect-ratio:1;border:7px solid #172033;border-radius:50%;background:radial-gradient(circle,#ffffff 0 15%,#172033 16% 22%,transparent 23%),linear-gradient(#ee4f47 0 46%,#172033 47% 54%,#f5f7fb 55%);animation:pokeball-load-spin .76s ease-in-out infinite}.loading-card h2{margin:0;color:#172033}.loading-dots{display:flex;gap:8px}.loading-dots span{width:10px;height:10px;border-radius:999px;background:#244aa5;animation:dot-bounce .82s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.12s}.loading-dots span:nth-child(3){animation-delay:.24s}.pokemon-reveal-card{overflow:hidden;border:2px solid rgba(255,203,5,.72);background:radial-gradient(circle at 50% 18%,rgba(255,203,5,.32),transparent 32%),linear-gradient(180deg,#fff,#eef6ff)}.pokemon-reveal-card:before{content:"";position:absolute;inset:-45%;pointer-events:none;background:conic-gradient(from 0deg,transparent,rgba(255,203,5,.22),transparent,rgba(60,90,166,.18),transparent);animation:reveal-rays-spin 1.8s linear infinite}.pokemon-reveal-card>*{position:relative;z-index:1}.pokemon-reveal-card .pokemon-image-single img,.pokemon-reveal-card .pokemon-image-pair img{animation:pokemon-pop-super .76s cubic-bezier(.18,.89,.32,1.28),pokemon-idle-float 2.8s ease-in-out .82s infinite;filter:drop-shadow(0 18px 26px rgba(23,32,51,.22))}.daily-complete-panel{background:radial-gradient(circle at 50% 0,rgba(255,203,5,.42),transparent 26%),radial-gradient(circle at 88% 18%,rgba(42,157,114,.22),transparent 26%),#ffffffeb;animation:celebration-panel-glow 1.6s ease-in-out infinite alternate}.daily-complete-panel .result-icon{animation:trophy-wiggle 1.2s ease-in-out infinite}.daily-complete-panel h1{background:linear-gradient(90deg,#244aa5,#d7a000,#2a9d72);-webkit-background-clip:text;background-clip:text;color:transparent}.coach-dashboard,.companion-card,.daily-panel,.challenge-card,.collection-card,.path-step,.achievement,.reward-summary,.result-coach-card{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.coach-dashboard:hover,.companion-card:hover,.daily-panel:hover,.challenge-card:hover,.collection-card:not(.locked):hover,.path-step.done:hover,.achievement.unlocked:hover{transform:translateY(-3px);filter:saturate(1.06)}.starter-choice.selected,.profile-slot.selected{animation:selected-pulse 1.9s ease-in-out infinite}.match-header{overflow:hidden}.match-header:after{content:"";position:absolute;right:-36px;bottom:-36px;width:132px;aspect-ratio:1;pointer-events:none;border:12px solid rgba(36,74,165,.12);border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.8) 0 15%,rgba(36,74,165,.12) 16% 22%,transparent 23%),linear-gradient(#ee4f471f 0 46%,#244aa51f 47% 54%,#ffffff47 55%)}@keyframes loading-fade-in{0%{opacity:0}to{opacity:1}}@keyframes loading-card-pop{0%{opacity:0;transform:translateY(18px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pokeball-load-spin{0%,to{transform:rotate(-10deg) scale(1)}35%{transform:rotate(22deg) scale(1.06)}70%{transform:rotate(-22deg) scale(1.02)}}@keyframes dot-bounce{0%,to{transform:translateY(0);opacity:.52}50%{transform:translateY(-7px);opacity:1}}@keyframes reveal-rays-spin{to{transform:rotate(1turn)}}@keyframes pokemon-pop-super{0%{opacity:0;transform:translateY(34px) scale(.28) rotate(-16deg)}48%{opacity:1;transform:translateY(-18px) scale(1.18) rotate(8deg)}72%{transform:translateY(6px) scale(.96) rotate(-3deg)}to{transform:translateY(0) scale(1) rotate(0)}}@keyframes pokemon-idle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes celebration-panel-glow{0%{box-shadow:0 20px 70px #1720331f,inset 0 0 0 1px #ffcb0547}to{box-shadow:0 26px 90px #d7a00038,inset 0 0 0 2px #ffcb0585}}@keyframes trophy-wiggle{0%,to{transform:rotate(-3deg) scale(1)}50%{transform:rotate(4deg) scale(1.08)}}@keyframes selected-pulse{0%,to{box-shadow:inset 0 0 0 2px #ffcb05,0 0 #ffcb0500}50%{box-shadow:inset 0 0 0 2px #ffcb05,0 0 24px #ffcb056b}}.share-funnel-panel{grid-column:1 / -1;display:grid;gap:16px;border-radius:22px;padding:18px;color:#172033;background:radial-gradient(circle at 14% 18%,rgba(255,203,5,.45),transparent 28%),radial-gradient(circle at 90% 12%,rgba(238,79,71,.18),transparent 26%),linear-gradient(135deg,#fffffff5,#eef6ffe6);box-shadow:0 20px 58px #1720331f,inset 0 0 0 2px #ffcb0557}.funnel-copy h2{margin:4px 0 6px;font-size:clamp(1.55rem,4vw,2.35rem);line-height:1.02;letter-spacing:-.035em}.funnel-copy p:last-child{margin:0;color:#46536b;font-weight:800;line-height:1.45}.funnel-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.funnel-steps div{display:grid;gap:5px;border-radius:16px;padding:12px;background:#fff;box-shadow:inset 0 0 0 1px #244aa51f,0 10px 24px #17203312}.funnel-steps span{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:999px;color:#fff;background:#244aa5;font-weight:1000}.funnel-steps strong{font-size:1.02rem}.funnel-steps small{color:#667085;font-weight:800;line-height:1.35}.funnel-actions{display:grid;gap:10px}@media(min-width:680px){.funnel-actions{grid-template-columns:1.2fr .8fr}}
