@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #ffffff;--surface: #f2f2f7;--surface-elevated: #e5e5ea;--text: #1c1c1e;--text-secondary: #636366;--accent: #e94560;--accent-hover: #d63851;--border: #d1d1d6;--card-bg: var(--surface);--bg-secondary: var(--surface-elevated);--radius: 8px;--row-alt: rgba(0,0,0,.02);--row-hover: rgba(0,0,0,.04);--type-normal: #A8A77A;--type-fire: #EE8130;--type-water: #6390F0;--type-electric: #F7D02C;--type-grass: #7AC74C;--type-ice: #96D9D6;--type-fighting: #C22E28;--type-poison: #A33EA1;--type-ground: #E2BF65;--type-flying: #A98FF3;--type-psychic: #F95587;--type-bug: #A6B91A;--type-rock: #B6A136;--type-ghost: #735797;--type-dragon: #6F35FC;--type-dark: #705746;--type-steel: #B7B7CE;--type-fairy: #D685AD;--stat-low: #e94560;--stat-mid: #f0a030;--stat-high: #78c850;--stat-very-high: #6390f0;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-6: 24px;--sp-8: 32px;--sp-12: 48px;--sp-16: 64px;--max-width: 1200px;--nav-height: 56px}[data-theme=dark]{--bg: #1c1c1e;--surface: #2c2c2e;--surface-elevated: #3a3a3c;--text: #e5e5ea;--text-secondary: #aeaeb2;--border: #48484a;--card-bg: var(--surface);--bg-secondary: var(--surface-elevated);--row-alt: rgba(255,255,255,.02);--row-hover: rgba(255,255,255,.04)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #1c1c1e;--surface: #2c2c2e;--surface-elevated: #3a3a3c;--text: #e5e5ea;--text-secondary: #aeaeb2;--border: #48484a;--card-bg: var(--surface);--bg-secondary: var(--surface-elevated);--row-alt: rgba(255,255,255,.02);--row-hover: rgba(255,255,255,.04)}}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg);color:var(--text);line-height:1.6;min-height:100vh}h1{font-size:32px;font-weight:700;line-height:1.2}h2{font-size:24px;font-weight:600;line-height:1.3}h3{font-size:20px;font-weight:600;line-height:1.4}h4{font-size:16px;font-weight:600}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav{position:sticky;top:0;z-index:100;background:var(--surface);border-bottom:1px solid var(--border);height:var(--nav-height)}.nav-inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--sp-4);display:flex;align-items:center;height:100%;gap:var(--sp-4)}.nav-logo{font-weight:700;font-size:18px;color:var(--text);text-decoration:none;white-space:nowrap}.nav-logo:hover{text-decoration:none;color:var(--accent)}.nav-links{display:flex;gap:var(--sp-3);list-style:none}.nav-links a{color:var(--text-secondary);font-size:14px;font-weight:500;padding:var(--sp-2) var(--sp-3);border-radius:6px;transition:color .15s,background .15s}.nav-links a:hover{color:var(--text);background:var(--surface-elevated);text-decoration:none}.nav-search{flex:1;max-width:400px;margin-left:auto}.hamburger{display:none;background:none;border:none;color:var(--text);font-size:24px;cursor:pointer;padding:var(--sp-2)}.search-input{width:100%;padding:var(--sp-2) var(--sp-3);padding-left:36px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;font-family:var(--font-body);transition:border-color .15s}.search-input::placeholder{color:var(--text-secondary)}.search-input:focus{outline:none;border-color:var(--accent)}.search-wrapper{position:relative}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none;font-size:14px}.search-results{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:0 0 8px 8px;max-height:400px;overflow-y:auto;z-index:200}.search-result{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);cursor:pointer;transition:background .1s;text-decoration:none;color:var(--text)}.search-result:hover{background:var(--surface-elevated);text-decoration:none}.search-result img{width:32px;height:32px;image-rendering:pixelated}.search-result-name{font-weight:500}.search-result-id{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono)}.container{max-width:var(--max-width);margin:0 auto;padding:var(--sp-6) var(--sp-4)}.card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:var(--sp-4);transition:border-color .15s}.card:hover{border-color:var(--surface-elevated)}.grid{display:grid;gap:var(--sp-4)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.pokemon-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:var(--sp-4);text-align:center;cursor:pointer;transition:border-color .15s,box-shadow .15s;text-decoration:none;color:var(--text);display:block}.pokemon-card:hover{text-decoration:none}.pokemon-card img{width:96px;height:96px;image-rendering:pixelated}.pokemon-card-name{font-weight:600;font-size:14px;margin-top:var(--sp-2)}.pokemon-card-id{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono)}.type-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:12px;font-size:12px;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px;box-shadow:inset 0 1px #ffffff40;line-height:20px}.type-badges{display:flex;gap:var(--sp-1);justify-content:center;margin-top:var(--sp-1)}.stat-row{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-1)}.stat-label{width:40px;font-size:12px;font-weight:600;color:var(--text-secondary);text-align:right;font-family:var(--font-mono)}.stat-bar-track{flex:1;height:8px;background:var(--bg);border-radius:4px;overflow:hidden}.stat-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.stat-value{width:32px;font-size:13px;font-family:var(--font-mono);font-weight:500;text-align:right}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{text-align:left;padding:var(--sp-2) var(--sp-3);background:var(--surface-elevated);color:var(--text-secondary);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0;cursor:pointer;user-select:none}.data-table td{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--border)}.data-table tr:nth-child(2n) td{background:var(--row-alt)}.data-table tr:hover td{background:var(--row-hover)}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:6px;font-size:14px;font-weight:500;font-family:var(--font-body);cursor:pointer;border:1px solid transparent;transition:background .15s,border-color .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover{background:var(--surface-elevated)}.select{padding:var(--sp-2) var(--sp-3);background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:14px;font-family:var(--font-body);cursor:pointer}.select:focus{outline:none;border-color:var(--accent)}.tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:var(--sp-4)}.tab{padding:var(--sp-2) var(--sp-4);font-size:14px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:var(--font-body);transition:color .15s,border-color .15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent);border-bottom-color:var(--accent)}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-elevated) 50%,var(--surface) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}@media(prefers-reduced-motion:reduce){.skeleton{animation:none;background:var(--surface)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{text-align:center;padding:var(--sp-12) var(--sp-4);color:var(--text-secondary)}.empty-state h2{margin-bottom:var(--sp-2);color:var(--text)}.evo-chain{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap;justify-content:center}.evo-stage{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--text)}.evo-stage:hover{text-decoration:none}.evo-stage img{width:64px;height:64px;image-rendering:pixelated}.evo-stage-name{font-size:13px;font-weight:500}.evo-arrow{color:var(--text-secondary);font-size:12px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px}.evo-arrow-label{font-size:11px;color:var(--text-secondary)}.footer{border-top:1px solid var(--border);padding:var(--sp-6) var(--sp-4);text-align:center;color:var(--text-secondary);font-size:13px;margin-top:var(--sp-12)}.spinner{width:24px;height:24px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite;margin:var(--sp-8) auto}@media(prefers-reduced-motion:reduce){.spinner{animation:none;opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1024px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.nav-links{display:none}.hamburger{display:block}.nav-search{max-width:100%}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.data-table{font-size:13px}.data-table th,.data-table td{padding:var(--sp-1) var(--sp-2)}h1{font-size:24px}h2{font-size:20px}.container{padding:var(--sp-4) var(--sp-3)}}.mobile-nav{display:none;position:fixed;inset:0;top:var(--nav-height);background:var(--surface);z-index:99;padding:var(--sp-4)}.mobile-nav.open{display:block}.mobile-nav a{display:block;padding:var(--sp-3) var(--sp-4);color:var(--text);font-size:16px;border-radius:6px}.mobile-nav a:hover{background:var(--surface-elevated);text-decoration:none}.theme-toggle{background:none;border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:16px;cursor:pointer;padding:var(--sp-1) var(--sp-2);line-height:1;transition:background .15s,border-color .15s;flex-shrink:0}.theme-toggle:hover{background:var(--surface-elevated);border-color:var(--accent)}*:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.text-capitalize{text-transform:capitalize}.mono-sm{font-family:var(--font-mono);font-size:13px}.scroll-x{overflow-x:auto}@media(pointer:coarse){.btn,.tab,.select,.search-result{min-height:44px}}
