.rank-badge-gold{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;box-shadow:0 2px 4px -1px #f59e0b66}.rank-badge-silver{background:linear-gradient(135deg,#94a3b8,#64748b);color:#fff;box-shadow:0 2px 4px -1px #64748b66}.rank-badge-bronze{background:linear-gradient(135deg,#f59e0b,#b45309);color:#fff;box-shadow:0 2px 4px -1px #b4530966}.toggle-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;-webkit-user-select:none;user-select:none}.toggle-chip:hover{border-color:#c7d2fe;background:#f5f3ff}.toggle-chip[data-active=true]{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;border-color:transparent;box-shadow:0 2px 6px -1px #6366f166}.exclude-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;-webkit-user-select:none;user-select:none}.exclude-chip:hover{border-color:#fecaca;background:#fef2f2}.exclude-chip[data-active=true]{background:#fee2e2;color:#dc2626;border-color:#fecaca}.type-filter-chip{display:inline-flex;align-items:center;justify-content:center;min-width:3.5em;padding:.25rem .5rem;border-radius:9999px;font-size:.6875rem;font-weight:700;cursor:pointer;transition:all .15s ease;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;-webkit-user-select:none;user-select:none}.type-filter-chip:hover{border-color:#cbd5e1;background:#f8fafc}.type-filter-chip[data-active=true]{border-color:transparent;box-shadow:0 1px 3px -1px #00000026}.pokemon-stats-card{background:#fff;border-radius:.75rem;border:1px solid #e2e8f0;padding:.625rem;transition:all .2s ease}.pokemon-stats-card:hover{transform:translateY(-1px);box-shadow:0 4px 12px -2px #00000014,0 2px 4px -1px #00000008;border-color:#6373e4}@media(prefers-color-scheme:dark){.pokemon-stats-card{background:#1e293b;border-color:#334155}.pokemon-stats-card:hover{border-color:#6373e4}.toggle-chip{background:#1e293b;border-color:#334155;color:#94a3b8}.toggle-chip:hover{border-color:#4f46e5;background:#312e81}.exclude-chip{background:#1e293b;border-color:#334155;color:#94a3b8}.exclude-chip:hover{border-color:#991b1b;background:#450a0a}.exclude-chip[data-active=true]{background:#450a0a;color:#fca5a5;border-color:#991b1b}.type-filter-chip{background:#1e293b;border-color:#334155;color:#94a3b8}.type-filter-chip:hover{border-color:#475569;background:#334155}}.filter-panel{background:#fff;border-radius:1rem;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000000a}.filter-section{padding:1rem}.filter-section+.filter-section{border-top:1px solid #f1f5f9}@media(prefers-color-scheme:dark){.filter-panel{background:#1e293b;border-color:#334155}.filter-section+.filter-section{border-top-color:#334155}}.results-header{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:1rem;border:1px solid #e2e8f0}@media(min-width:640px){.results-header{flex-direction:row;align-items:center;justify-content:space-between}}@media(prefers-color-scheme:dark){.results-header{background:linear-gradient(135deg,#1e293b,#0f172a);border-color:#334155}}.sort-select-wrapper{display:flex;align-items:center;gap:.5rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:.75rem;padding:.5rem .75rem;transition:all .2s}.sort-select-wrapper:focus-within{border-color:#6373e4;box-shadow:0 0 0 3px #6366f11a}@media(prefers-color-scheme:dark){.sort-select-wrapper{background:#1e293b;border-color:#334155}}.total-badge{background:linear-gradient(135deg,#6366f1,#4f46e5);color:#fff;font-size:.6875rem;font-weight:800;padding:.1875rem .5rem;border-radius:.375rem;box-shadow:0 1px 3px -1px #6366f14d}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-entry{animation:fadeInUp .5s cubic-bezier(.2,.8,.2,1) forwards;opacity:0}@media(prefers-reduced-motion:reduce){.animate-entry{animation:none;opacity:1}}
