@import "https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Nunito:wght@400;600;700&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#0f1220;--paper:#fff;--paper-soft:#f4f5fb;--muted:#6b7280;--border:#0f122014;--shadow:0 20px 45px -20px #0f122073;--radius-lg:28px;--radius-md:16px;--radius-sm:10px;--bg-a:#7ac74c;--bg-b:#6390f0;font-family:Nunito,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#12142b;margin:0}h1,h2,h3{margin:0;font-family:Poppins,Nunito,sans-serif}button{font-family:inherit}img{max-width:100%}.app-shell{background:radial-gradient(circle at 10% 0,#1b1e3b,#0c0e1f 60%);flex-direction:column;min-height:100dvh;padding:24px 20px 40px;transition:background .6s;display:flex;position:relative;overflow-x:hidden}.bg-blob{filter:blur(90px);opacity:.35;z-index:0;pointer-events:none;border-radius:50%;transition:background .8s;position:fixed}.bg-blob--1{background:var(--bg-a);width:520px;height:520px;animation:16s ease-in-out infinite float-blob;top:-180px;left:-140px}.bg-blob--2{background:var(--bg-b);width:460px;height:460px;animation:20s ease-in-out infinite reverse float-blob;bottom:-160px;right:-120px}@keyframes float-blob{0%,to{transform:translate(0)scale(1)}50%{transform:translate(40px,-30px)scale(1.08)}}.app-header{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:720px;margin:0 auto 28px;display:flex;position:relative}.brand{align-items:center;gap:10px;display:flex}.brand h1{color:#fff;letter-spacing:-.02em;font-size:28px;font-weight:800}.brand-ball{background:radial-gradient(circle,#fff 0 3px,#12142b 3px 6px,#0000 6px),linear-gradient(#ef4444 0 47%,#12142b 47% 53%,#fff 53% 100%);border-radius:50%;width:30px;height:30px;animation:6s linear infinite spin-slow;box-shadow:0 0 0 2px #12142b,0 4px 10px #00000059}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.search-box{width:100%;max-width:560px;position:relative}.search-row{box-shadow:var(--shadow);background:#fffffff2;border-radius:999px;align-items:center;gap:8px;padding:6px 8px 6px 18px;display:flex}.search-icon{color:#9ca3af;display:flex}.search-input{min-width:0;color:var(--ink);background:0 0;border:none;outline:none;flex:1;padding:10px 4px;font-size:15px}.suggestions{border-radius:var(--radius-md);box-shadow:var(--shadow);z-index:20;text-align:left;background:#fff;max-height:280px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto}.suggestions li{border-radius:var(--radius-sm);cursor:pointer;text-transform:capitalize;color:var(--ink);align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.suggestions li:hover,.suggestions li.active{background:var(--paper-soft)}.suggestion-id{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700;transition:transform .15s,background .2s,box-shadow .2s}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:#12142b}.btn-primary:hover:not(:disabled){background:#23264a}.btn-ghost{color:var(--ink);background:#ffffffe6;padding:10px 14px}.btn-ghost:hover:not(:disabled){background:#fff}.btn-toggle{background:var(--paper-soft);color:var(--ink);padding:8px 14px;font-size:13px}.btn-toggle.is-active{background:#fde68a;box-shadow:inset 0 0 0 2px #f59e0b}.btn-nav{flex-shrink:0;place-items:center;width:48px;height:48px;padding:0;font-size:22px;line-height:1;display:grid}.app-main{z-index:1;flex:1;justify-content:center;display:flex;position:relative}.nav-buttons{justify-content:center;align-items:flex-start;gap:10px;width:100%;max-width:780px;display:flex}.stage{flex:1;min-width:0;max-width:620px}.pokemon-card{background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:28px 26px 30px;position:relative;overflow:hidden}.card-glow{background:radial-gradient(circle, var(--accent) 0%, transparent 70%);opacity:.25;pointer-events:none;height:260px;position:absolute;inset:-40% -40% auto}.card-top{flex-wrap:wrap;align-items:center;gap:20px;display:flex;position:relative}.sprite-stage{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 18%, white) 0%, transparent 72%);border-radius:50%;flex-shrink:0;place-items:center;width:160px;height:160px;margin:0 auto;display:grid;position:relative}.sprite-img{object-fit:contain;width:128px;height:128px;image-rendering:pixelated;filter:drop-shadow(0 12px 14px #00000040);z-index:1;position:relative}.sprite-float{image-rendering:auto;animation:2.4s ease-in-out infinite sprite-bob}@keyframes sprite-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.sprite-shadow{filter:blur(3px);background:#0000002e;border-radius:50%;width:70px;height:16px;animation:2.4s ease-in-out infinite shadow-pulse;position:absolute;bottom:6px}@keyframes shadow-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}.card-heading{flex:1;min-width:200px}.card-id-row{align-items:center;gap:8px;margin-bottom:2px;display:flex}.card-id{color:var(--muted);letter-spacing:.03em;font-family:Poppins,sans-serif;font-size:14px;font-weight:700}.tag{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800}.tag--legendary{color:#92400e;background:#fef3c7}.tag--mythical{color:#5b21b6;background:#ede9fe}.card-name{text-transform:capitalize;letter-spacing:-.01em;font-size:30px;font-weight:800}.card-genus{color:var(--muted);margin:2px 0 10px;font-size:13px}.type-row{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.type-badge{text-transform:capitalize;color:#fff;background:var(--type-color);box-shadow:0 4px 10px -4px color-mix(in srgb, var(--type-color) 70%, transparent);border-radius:999px;align-items:center;font-weight:700;display:inline-flex}.type-badge--md{padding:5px 14px;font-size:12px}.type-badge--sm{padding:3px 10px;font-size:11px}.card-actions{flex-wrap:wrap;gap:8px;display:flex}.flavor-text{color:#374151;background:var(--paper-soft);border-radius:var(--radius-md);margin:20px 0 0;padding:14px 16px;font-size:14.5px;line-height:1.6}.quick-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;display:grid}.quick-stat{text-align:center;background:var(--paper-soft);border-radius:var(--radius-md);padding:12px 6px}.quick-stat-value{font-family:Poppins,sans-serif;font-size:16px;font-weight:800;display:block}.quick-stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;margin-top:2px;font-size:11px;display:block}.section{margin-top:24px}.section-title{color:#1f2937;margin-bottom:12px;font-size:15px;font-weight:700}.ability-row{flex-wrap:wrap;gap:8px;display:flex}.ability-chip{background:var(--paper-soft);border:1px solid var(--border);text-transform:capitalize;border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.ability-chip--hidden{border-style:dashed}.ability-chip em{color:var(--muted);font-size:11px;font-style:normal}.stats-block{flex-direction:column;gap:10px;display:flex}.stat-row{grid-template-columns:110px 34px 1fr;align-items:center;gap:10px;display:grid}.stat-label{color:#4b5563;font-size:12.5px;font-weight:700}.stat-value{font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.stat-track{background:var(--paper-soft);border-radius:999px;height:9px;overflow:hidden}.stat-fill{border-radius:999px;height:100%}.stat-row--total{border-top:1px dashed var(--border);margin-top:2px;padding-top:8px}.matchup-groups{flex-direction:column;gap:10px;display:flex}.matchup-group{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.matchup-label{color:var(--muted);min-width:108px;font-size:12px;font-weight:700}.matchup-badges{flex-wrap:wrap;gap:6px;display:flex}.evo-chain{align-items:center;gap:6px;padding-bottom:6px;display:flex;overflow-x:auto}.evo-col-wrap{flex-shrink:0;align-items:center;gap:6px;display:flex}.evo-col{flex-direction:column;gap:10px;display:flex}.evo-arrow{color:var(--muted);padding:0 2px;font-size:20px}.evo-item-wrap{flex-direction:column;align-items:center;gap:2px;display:flex}.evo-item{background:var(--paper-soft);border-radius:var(--radius-md);cursor:pointer;border:2px solid #0000;flex-direction:column;align-items:center;gap:4px;min-width:84px;padding:8px 12px;transition:transform .15s,border-color .2s;display:flex}.evo-item:hover{transform:translateY(-3px)}.evo-item--active{border-color:var(--accent,#6390f0);background:color-mix(in srgb, var(--accent,#6390f0) 12%, white)}.evo-item img{object-fit:contain;width:56px;height:56px;image-rendering:pixelated}.evo-item span{text-transform:capitalize;font-size:12px;font-weight:700}.evo-trigger{color:var(--muted);text-transform:capitalize;font-size:10px}.spinner-wrap{color:#fff;flex-direction:column;align-items:center;gap:14px;padding:80px 20px;font-weight:700;display:flex}.pokeball-spin{border-radius:50%;width:56px;height:56px;animation:1s linear infinite spin-slow;position:relative;box-shadow:0 6px 18px #00000059}.pokeball-top,.pokeball-bottom{width:100%;height:50%;position:absolute;left:0}.pokeball-top{background:#ef4444;border-radius:56px 56px 0 0;top:0}.pokeball-bottom{background:#f9fafb;border-radius:0 0 56px 56px;bottom:0}.pokeball-band{background:#12142b;width:100%;height:8%;position:absolute;top:46%}.pokeball-button{background:#fff;border:4px solid #12142b;border-radius:50%;width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.error-box{text-align:center;background:var(--paper);border-radius:var(--radius-lg);box-shadow:var(--shadow);color:var(--ink);padding:60px 30px}.error-icon{font-size:40px}.error-hint{color:var(--muted);margin-top:6px;font-size:13px}.app-footer{z-index:1;text-align:center;color:#ffffff8c;margin-top:32px;font-size:12px;position:relative}.app-footer a{color:#ffffffd9}@media (width<=640px){.card-top{text-align:center;flex-direction:column}.card-heading{text-align:center}.card-id-row,.type-row,.card-actions{justify-content:center}.quick-stats{grid-template-columns:repeat(2,1fr)}.stat-row{grid-template-columns:92px 30px 1fr}.btn-nav{width:40px;height:40px;font-size:18px}}@media (width>=641px){.search-row{flex-wrap:nowrap}}
