.PokemonCard-module__HzDUsq__card{aspect-ratio:1;background:#fff;border:1px solid #cbd5e1;border-radius:14px;flex-direction:column;height:100%;transition:transform .15s,box-shadow .15s,opacity .2s;animation:.3s ease-out PokemonCard-module__HzDUsq__fadeInScale;display:flex;overflow:hidden;box-shadow:0 2px rgba(2,6,23,.06)}@keyframes PokemonCard-module__HzDUsq__fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.PokemonCard-module__HzDUsq__card:hover{transform:translateY(-2px);box-shadow:0 14px 22px rgba(2,6,23,.18)}.PokemonCard-module__HzDUsq__cardLink{color:inherit;flex-direction:column;height:calc(100% - 40px);text-decoration:none;display:flex}.PokemonCard-module__HzDUsq__cardImg{object-fit:contain;background:#f3f4f6;flex-shrink:0;width:100%;height:60%;transition:transform .2s}.PokemonCard-module__HzDUsq__card:hover .PokemonCard-module__HzDUsq__cardImg{transform:scale(1.05)}.PokemonCard-module__HzDUsq__cardBody{text-align:center;flex-direction:column;flex:1;justify-content:center;padding:8px;display:flex}.PokemonCard-module__HzDUsq__titleRow{color:#0b1021;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.PokemonCard-module__HzDUsq__name{text-transform:capitalize;color:#0b1021;margin:4px 0 0;font-size:14px;font-weight:800}.PokemonCard-module__HzDUsq__dex{color:#64748b;margin-left:4px;font-weight:600}.PokemonCard-module__HzDUsq__cardActions{justify-content:center;height:40px;padding:4px 0 8px;display:flex}.PokemonCard-module__HzDUsq__modalBackdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background:rgba(0,0,0,.6);justify-content:center;align-items:center;animation:.2s ease-out PokemonCard-module__HzDUsq__fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}@keyframes PokemonCard-module__HzDUsq__fadeIn{0%{opacity:0}to{opacity:1}}.PokemonCard-module__HzDUsq__modal{background:#fff;border-radius:14px;width:90vw;max-width:900px;height:auto;max-height:700px;animation:.2s ease-out PokemonCard-module__HzDUsq__slideInModal;position:relative;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.3)}@keyframes PokemonCard-module__HzDUsq__slideInModal{0%{opacity:0;transform:scale(.95)translateY(-20px)}to{opacity:1;transform:scale(1)translateY(0)}}.PokemonCard-module__HzDUsq__closeButton{color:#fff;cursor:pointer;z-index:10;background:#0b1021;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:18px;transition:background-color .2s,transform .2s;display:flex;position:absolute;top:12px;right:12px}.PokemonCard-module__HzDUsq__closeButton:hover{background:#374151;transform:scale(1.1)}.PokemonCard-module__HzDUsq__modalContent{grid-template-columns:1fr 1fr;gap:2rem;padding:2rem;display:grid}.PokemonCard-module__HzDUsq__modalImage{justify-content:center;align-items:center;display:flex}.PokemonCard-module__HzDUsq__modalInfo{flex-direction:column;gap:1rem;display:flex}.PokemonCard-module__HzDUsq__headerRow{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.PokemonCard-module__HzDUsq__favoriteInHeader{margin-left:auto}.PokemonCard-module__HzDUsq__title{color:#1f2937;text-transform:capitalize;margin:0;font-size:2rem;font-weight:700}.PokemonCard-module__HzDUsq__meta{color:#6b7280;gap:1rem;font-size:.875rem;display:flex}.PokemonCard-module__HzDUsq__types{flex-wrap:wrap;gap:.5rem;display:flex}.PokemonCard-module__HzDUsq__type{text-transform:uppercase;color:#fff;border-radius:9999px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.PokemonCard-module__HzDUsq__statsHeading{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1f2937!important}.PokemonCard-module__HzDUsq__stats{grid-template-columns:repeat(2,1fr);gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.PokemonCard-module__HzDUsq__statName{color:#374151;font-weight:500}.PokemonCard-module__HzDUsq__statVal{color:#1f2937;font-weight:700}.PokemonCard-module__HzDUsq__normal{background-color:#a8a878}.PokemonCard-module__HzDUsq__fire{background-color:#f08030}.PokemonCard-module__HzDUsq__water{background-color:#6890f0}.PokemonCard-module__HzDUsq__electric{background-color:#f8d030}.PokemonCard-module__HzDUsq__grass{background-color:#78c850}.PokemonCard-module__HzDUsq__ice{background-color:#98d8d8}.PokemonCard-module__HzDUsq__fighting{background-color:#c03028}.PokemonCard-module__HzDUsq__poison{background-color:#a040a0}.PokemonCard-module__HzDUsq__ground{background-color:#e0c068}.PokemonCard-module__HzDUsq__flying{background-color:#a890f0}.PokemonCard-module__HzDUsq__psychic{background-color:#f85888}.PokemonCard-module__HzDUsq__bug{background-color:#a8b820}.PokemonCard-module__HzDUsq__rock{background-color:#b8a038}.PokemonCard-module__HzDUsq__ghost{background-color:#705898}.PokemonCard-module__HzDUsq__dragon{background-color:#7038f8}.PokemonCard-module__HzDUsq__dark{background-color:#705848}.PokemonCard-module__HzDUsq__steel{background-color:#b8b8d0}.PokemonCard-module__HzDUsq__fairy{background-color:#ee99ac}@media (max-width:768px){.PokemonCard-module__HzDUsq__modalContent{grid-template-columns:1fr;padding:1rem}.PokemonCard-module__HzDUsq__title{font-size:1.5rem}.PokemonCard-module__HzDUsq__stats{grid-template-columns:1fr}}
.VirtualizedPokemonList-module__WH3G4W__container{width:100%}.VirtualizedPokemonList-module__WH3G4W__grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.VirtualizedPokemonList-module__WH3G4W__cell{justify-content:center;animation:.3s ease-out VirtualizedPokemonList-module__WH3G4W__slideInUp;display:flex}@keyframes VirtualizedPokemonList-module__WH3G4W__slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.VirtualizedPokemonList-module__WH3G4W__grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.VirtualizedPokemonList-module__WH3G4W__grid{grid-template-columns:repeat(2,1fr);gap:8px}}@media (max-width:480px){.VirtualizedPokemonList-module__WH3G4W__grid{grid-template-columns:repeat(2,1fr);gap:6px}}.VirtualizedPokemonList-module__WH3G4W__emptyState{text-align:center;color:#fff;flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:64px 32px;display:flex}.VirtualizedPokemonList-module__WH3G4W__emptyIcon{opacity:.6;margin-bottom:16px;font-size:64px}.VirtualizedPokemonList-module__WH3G4W__emptyTitle{color:#fff;margin:0 0 12px;font-size:24px;font-weight:600}.VirtualizedPokemonList-module__WH3G4W__emptyMessage{color:#fff;opacity:.9;max-width:400px;margin:0;font-size:16px;line-height:1.5}
.pokemon-module__ybdtJa__wrapper{max-width:1100px;margin:0 auto;padding:16px;transition:opacity .2s}.pokemon-module__ybdtJa__toolbar{gap:12px;margin-bottom:16px;display:flex}.pokemon-module__ybdtJa__searchWrap{flex:1;max-width:420px;position:relative}.pokemon-module__ybdtJa__searchIcon{color:#64748b;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.pokemon-module__ybdtJa__filterBtn{color:#0b1021;cursor:pointer;background:#fff;border:2px solid #475569;border-radius:12px;padding:10px 12px}.pokemon-module__ybdtJa__filtersBar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,.9);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px;padding:16px;display:flex}.pokemon-module__ybdtJa__filtersLeft{flex-direction:column;gap:10px;display:flex}.pokemon-module__ybdtJa__checkbox{color:#0b1021;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:12px;align-items:center;gap:8px;padding:6px 10px;display:flex}.pokemon-module__ybdtJa__typeChips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pokemon-module__ybdtJa__chip{color:#fff;cursor:pointer;opacity:.8;box-sizing:border-box;border:2px solid transparent;border-radius:15px;align-items:center;gap:4px;height:32px;padding:6px 12px;font-size:12px;line-height:1;transition:all .2s;display:flex;position:relative}.pokemon-module__ybdtJa__chip:hover{opacity:1;transform:translateY(-2px);box-shadow:0 6px 12px rgba(2,6,23,.15)}.pokemon-module__ybdtJa__chipActive{opacity:1;outline-offset:1px;border-color:rgba(255,255,255,.3);outline:2px solid #000;font-weight:600;transform:scale(1.05);box-shadow:0 8px 16px rgba(2,6,23,.2)}.pokemon-module__ybdtJa__checkmark{opacity:.9;align-items:center;font-size:10px;font-weight:700;line-height:1;display:flex}.pokemon-module__ybdtJa__clearAll{font-weight:600;background:#6b7280!important;border-color:#4b5563!important}.pokemon-module__ybdtJa__clearAll:hover{transform:translateY(-2px);background:#4b5563!important}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__normal{background-color:#a8a878}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__fire{background-color:#f08030}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__water{background-color:#6890f0}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__electric{color:#1f2937;background-color:#f8d030}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__grass{background-color:#78c850}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__ice{color:#1f2937;background-color:#98d8d8}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__fighting{background-color:#c03028}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__poison{background-color:#a040a0}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__ground{color:#1f2937;background-color:#e0c068}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__flying{background-color:#a890f0}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__psychic{background-color:#f85888}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__bug{background-color:#a8b820}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__rock{background-color:#b8a038}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__ghost{background-color:#705898}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__dragon{background-color:#7038f8}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__dark{background-color:#705848}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__steel{color:#1f2937;background-color:#b8b8d0}.pokemon-module__ybdtJa__chip.pokemon-module__ybdtJa__fairy{background-color:#ee99ac}.pokemon-module__ybdtJa__sortGroup{color:#0b1021;white-space:nowrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.pokemon-module__ybdtJa__select{color:#0b1021;background:#fff;border:1px solid #94a3b8;border-radius:10px;padding:8px 10px}.pokemon-module__ybdtJa__search{color:#0b1021;background:#fff;border:2px solid #475569;border-radius:50px;outline:none;width:100%;padding:10px 12px 10px 36px}.pokemon-module__ybdtJa__search::placeholder{color:#4b5563}.pokemon-module__ybdtJa__search:focus{box-shadow:0 0 0 3px rgba(59,130,246,.35)}.pokemon-module__ybdtJa__grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.fav-toggle{cursor:pointer;color:#0b1021;background:0 0;border:none;font-size:22px;line-height:1}.fav-toggle:hover{transform:scale(1.08)}.pokemon-module__ybdtJa__pagination{justify-content:center;align-items:center;gap:12px;margin-top:18px;display:flex}.pokemon-module__ybdtJa__pageBtn{color:#0b1021;background:#fff;border:1px solid #94a3b8;border-radius:10px;padding:8px 12px}.pokemon-module__ybdtJa__pageBtn:disabled{opacity:.6}.pokemon-module__ybdtJa__pageLabel{color:#0b1021;font-size:14px}.pokemon-module__ybdtJa__skeleton{text-align:center;color:#64748b;padding:16px;font-size:1.1em;animation:.3s ease-out pokemon-module__ybdtJa__fadeIn}.pokemon-module__ybdtJa__fade{animation:.25s ease-in pokemon-module__ybdtJa__fadeIn}@keyframes pokemon-module__ybdtJa__fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.pokemon-module__ybdtJa__error{background:#fee2e2;border:1px solid #991b1b;border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:12px;display:flex}.pokemon-module__ybdtJa__retry{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:6px 10px}
