:root{--sans:system-ui, "Segoe UI", Roboto, sans-serif;font:16px/150% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:#222;-webkit-font-smoothing:antialiased;background:#f5f5f5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color:#e0e0e0;background:#1a1a2e}}*{box-sizing:border-box}body{margin:0}#root{max-width:1200px;margin:0 auto;padding:16px}h1{margin:0 0 16px;font-size:2rem}.controls{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.controls input,.controls select{border:1px solid #ccc;border-radius:6px;flex:1;min-width:140px;padding:8px 12px;font-size:1rem}.pokemon-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;margin:0 0 24px;padding:0;list-style:none;display:grid}.pokemon-card{color:inherit;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:12px 8px;text-decoration:none;transition:box-shadow .15s,transform .15s;display:flex}.pokemon-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}@media (prefers-color-scheme:dark){.pokemon-card{background:#16213e;border-color:#2a2a4a}}.pokemon-card-number{color:#888;font-size:.75rem}.pokemon-card-name{text-transform:capitalize;font-size:.9rem;font-weight:600}.pokemon-card-types{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.type-badge{color:#fff;text-transform:capitalize;border-radius:12px;padding:2px 8px;font-size:.7rem;font-weight:500}.type-normal{background:#9a9a7a}.type-fire{background:#e8622e}.type-water{background:#6890f0}.type-electric{color:#333;background:#f8d030}.type-grass{background:#78c850}.type-ice{color:#333;background:#98d8d8}.type-fighting{background:#c03028}.type-poison{background:#a040a0}.type-ground{color:#333;background:#e0c068}.type-flying{background:#a890f0}.type-psychic{background:#f85888}.type-bug{background:#a8b820}.type-rock{background:#b8a038}.type-ghost{background:#705898}.type-dragon{background:#7038f8}.type-dark{background:#705848}.type-steel{color:#333;background:#b8b8d0}.type-fairy{color:#333;background:#e898e8}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:8px;display:flex}.pagination button{cursor:pointer;background:#fff;border:1px solid #ccc;border-radius:6px;padding:8px 16px;font-size:.95rem}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination button:not(:disabled):hover{background:#f0f0f0}@media (prefers-color-scheme:dark){.pagination button{color:#e0e0e0;background:#16213e;border-color:#2a2a4a}.pagination button:not(:disabled):hover{background:#1e2d50}}.detail-status{text-align:center;padding:32px}.detail-back{color:inherit;opacity:.7;margin-bottom:20px;text-decoration:none;display:inline-block}.detail-back:hover{opacity:1}.detail-page{max-width:640px;margin:0 auto;padding:16px 0}.detail-header{align-items:center;gap:24px;margin-bottom:32px;display:flex}.detail-name{text-transform:capitalize;margin:0 0 8px}.detail-section{margin-bottom:32px}.detail-section h2{text-transform:uppercase;letter-spacing:.08em;opacity:.6;margin-bottom:12px;font-size:1rem}.stat-list{flex-direction:column;gap:8px;display:flex}.stat-row{grid-template-columns:120px 40px 1fr;align-items:center;gap:12px;display:grid}.stat-name{text-transform:capitalize;opacity:.75;font-size:.85rem}.stat-value{text-align:right;font-size:.9rem;font-weight:600}.stat-bar-track{background:#e0e0e0;border-radius:4px;height:8px;overflow:hidden}.stat-bar-fill{background:#4caf50;border-radius:4px;height:100%;transition:width .4s}@media (prefers-color-scheme:dark){.stat-bar-track{background:#2a2a4a}}.ability-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.ability-item{text-transform:capitalize;border:1px solid #ccc;border-radius:16px;padding:4px 12px;font-size:.85rem}@media (prefers-color-scheme:dark){.ability-item{border-color:#2a2a4a}}.evolution-chain{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.evolution-chain-entry{align-items:center;gap:8px;display:flex}.evolution-arrow{opacity:.5;font-size:1.2rem}.evolution-stage{color:inherit;text-transform:capitalize;border-radius:8px;flex-direction:column;align-items:center;gap:4px;padding:8px;font-size:.85rem;text-decoration:none;transition:background .15s;display:flex}.evolution-stage:hover{background:#0000000f}.list-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.list-header h1{margin:0}.favorites-link{color:inherit;border:1px solid #ccc;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-weight:500;text-decoration:none;transition:background .15s;display:flex}.favorites-link:hover{background:#0000000d}.favorites-count{color:#fff;background:#e74c3c;border-radius:10px;padding:1px 6px;font-size:.75rem;font-weight:700}.pokemon-card-wrapper{position:relative}.favorite-btn{cursor:pointer;color:#ccc;background:0 0;border:none;padding:2px;font-size:1rem;line-height:1;transition:color .15s,transform .15s;position:absolute;top:6px;right:6px}.favorite-btn:hover{transform:scale(1.2)}.favorite-btn--active{color:#e74c3c}
