:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{display:flex;justify-content:center;align-items:center;min-width:320px;min-height:100dvh}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}}button{cursor:pointer}h1{color:#e3350d;font-size:2.2rem}.description{color:#666;margin-bottom:32px}.error-message{padding:15px;background-color:#ffe6e6;color:#d32f2f;border-radius:8px;margin-top:16px;margin-bottom:20px;text-align:center;font-weight:700;box-shadow:0 2px 4px #0000000d}.app{max-width:800px;width:50dvw;margin:40px auto;padding:30px;font-family:Josefin Sans,Helvetica,sans-serif;background-color:#fff;box-shadow:0 6px 20px #0000001a;border-radius:15px;display:flex;flex-direction:column;align-items:center}@media (max-width: 768px){.app{padding:20px 15px;margin:20px auto;width:90%}h1{font-size:1.8rem}}@media (max-width: 400px){.app{padding:15px 10px;margin:10px auto}h1{font-size:1.5rem}}.search-form{display:flex;width:100%;max-width:360px}.search-form input{flex:1;padding:12px 16px;border:1px solid #ddd;border-radius:8px 0 0 8px;font-size:1rem;transition:border-color .3s}.search-form input:focus{outline:none;border-color:#3b5ca8}.search-form button{padding:12px 20px;background-color:#e3350d;color:#fff;border:none;border-radius:0 8px 8px 0;transition:background-color .3s;font-weight:700}.search-form button:hover{background-color:#c62b09}.search-form button:disabled{background-color:#e38f7a;cursor:not-allowed}@media (max-width: 768px){.search-form input{padding:10px 12px;font-size:14px}.search-form button{padding:10px;font-size:12px}}.search-toggle{display:flex;justify-content:center;margin-bottom:20px;width:100%}.search-toggle button{background-color:#f2f2f2;border:none;color:#333;padding:10px 0;transition:all .3s;font-size:1rem;flex:1;max-width:180px}.search-toggle button:first-child{border-radius:8px 0 0 8px;border-right:none}.search-toggle button:last-child{border-radius:0 8px 8px 0;border-left:none}.search-toggle button.active{background-color:#3b5ca8;color:#fff;border-color:#3b5ca8;font-weight:700}@media (max-width: 768px){.search-toggle button{padding:8px 0;font-size:12px}}.pokemon-card{display:flex;background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 20px #00000026;transition:transform .3s;width:100%;margin-top:24px}.image-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px;background-color:#ffffffb3;border-radius:8px;transition:transform .2s}.image-container:hover{transform:scale(1.05);background-color:#ffffffe6}.pokemon-sprite{max-width:96px;height:auto;image-rendering:pixelated}.pokemon-card:hover{transform:translateY(-5px)}.pokemon-image-grid{display:grid;grid-template-columns:repeat(2,120px);grid-template-rows:repeat(2,1fr);gap:10px;flex:0 0 40%;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);padding:16px}.sprite-label{margin-top:5px;font-size:.8rem;color:#666;text-align:center}.pokemon-info{flex:1;padding:25px;background:linear-gradient(135deg,#fff,#f7f7f7);min-height:220px}.pokemon-info h2{margin-top:0;color:#333;display:inline-block;margin-right:10px;font-size:1.8rem}.pokemon-id{display:inline-block;color:#777;font-size:1.4rem;margin-top:0;font-weight:700}.pokemon-types{margin:20px 0}.type-badge{display:inline-block;padding:7px 14px;color:#fff;border-radius:20px;margin-right:8px;margin-bottom:8px;font-size:.9rem;text-transform:capitalize;font-weight:700;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.pokemon-details{margin-top:25px;background-color:#f9f9f9;padding:15px;border-radius:8px}.detail-item{margin-bottom:12px;font-size:1rem;color:#555}.detail-label{font-weight:700;margin-right:8px}@media (max-width: 768px){.pokemon-sprite{max-width:80px}.sprite-label{font-size:.7rem}}@media (max-width: 600px){.pokemon-card,.skeleton-card{flex-direction:column}.pokemon-image-grid{flex:0 0 auto;width:100%;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,auto)}.pokemon-info h2{padding:15px;font-size:1.5rem}.pokemon-id{font-size:1.2rem}.type-badge{padding:5px 10px;font-size:.8rem}.detail-item{font-size:.9rem}}@media (max-width: 400px){.pokemon-image-grid{gap:8px;padding:10px}.image-container{padding:8px}.sprite-label{font-size:.6rem}.pokemon-info{padding:1rem}}.skeleton-card{display:flex;background-color:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 20px #00000026;width:100%;min-height:300px}.skeleton-image-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr);gap:10px;flex:0 0 40%;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);padding:15px}.skeleton-sprite{height:96px;width:96px;background-color:#f0f0f0;border-radius:8px;animation:pulse 1.5s infinite ease-in-out}.skeleton-info{flex:1;padding:25px}.skeleton-title{height:32px;width:70%;background-color:#f0f0f0;border-radius:4px;margin-bottom:20px;animation:pulse 1.5s infinite ease-in-out}.skeleton-types{display:flex;margin:20px 0}.skeleton-badge{height:30px;width:80px;background-color:#f0f0f0;border-radius:20px;margin-right:10px;animation:pulse 1.5s infinite ease-in-out}.skeleton-details{margin-top:25px;background-color:#f9f9f9;padding:15px;border-radius:8px}.skeleton-detail{height:20px;background-color:#f0f0f0;border-radius:4px;margin-bottom:12px;animation:pulse 1.5s infinite ease-in-out}.skeleton-detail:nth-child(1){width:100%}.skeleton-detail:nth-child(2){width:90%}.skeleton-detail:nth-child(3){width:80%}
