: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}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.weather-container{max-width:600px;margin:0 auto;padding:20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.weather-card{display:flex;flex-direction:column;align-items:center;padding:15px;margin-bottom:20px;background:#fffc;border-radius:15px;box-shadow:0 4px 15px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.location{display:flex;align-items:center;margin-bottom:5px;font-size:20px;color:#333}.location-icon{margin-right:8px;font-size:18px}.date-time{color:#666;font-size:14px;margin-bottom:10px}.temp-display{margin:10px 0}.temperature{font-size:48px;font-weight:700;color:#222}.weather-info{display:flex;flex-direction:column;align-items:center;margin:10px 0;font-size:18px;color:#555;text-transform:capitalize}.weather-description{font-size:16px;color:#666;margin-top:4px}.additional-info{display:flex;justify-content:center;gap:20px;margin-top:15px;width:100%}.info-item{display:flex;flex-direction:column;align-items:center}.info-label{font-size:14px;color:#666}.info-value{font-size:16px;font-weight:600;color:#333}.animation-container{position:relative;height:300px;margin-top:20px;overflow:hidden;border-radius:15px;box-shadow:0 4px 15px #0003;transition:background .5s ease}.sun{position:absolute;top:50px;left:50%;transform:translate(-50%);width:80px;height:80px;background-color:gold;border-radius:50%;box-shadow:0 0 30px #ff9500;z-index:10}.sun-rays{position:absolute;top:40px;left:50%;transform:translate(-50%);width:120px;height:120px;z-index:9}.moon{position:absolute;top:50px;right:100px;width:60px;height:60px;background-color:#f0f0f0;border-radius:50%;box-shadow:0 0 20px #fff9;z-index:10}.moon-behind-clouds{position:absolute;top:40px;right:100px;width:70px;height:70px;background-color:#f5f5f5;border-radius:50%;box-shadow:0 0 30px #ffffff4d;z-index:5}.night-stars{position:absolute;top:0;left:0;width:100%;height:100%}.star{position:absolute;width:2px;height:2px;background-color:#fff;border-radius:50%}.rain-container{position:relative;width:100%;height:100%}.raindrop{position:absolute;width:2px;background-color:#06c;border-radius:0 0 5px 5px;opacity:.9;box-shadow:0 0 2px #06c}.raindrop-dark{background-color:#a0c8ff;box-shadow:0 0 2px #a0c8ff}.snow-container{position:relative;width:100%;height:100%}.snowflake{position:absolute;background-color:#fff;border-radius:50%;box-shadow:0 0 5px #fffc}.snowflake-dark{box-shadow:0 0 8px #fff}.cloudy-container{position:relative;width:100%;height:100%}.cloud{position:absolute;width:100px;height:50px;background-color:#f0f0f0;border-radius:25px;box-shadow:0 0 10px #0000001a}.cloud:before{content:"";position:absolute;top:-15px;left:15px;width:40px;height:40px;background-color:inherit;border-radius:50%}.cloud:after{content:"";position:absolute;top:-30px;left:45px;width:60px;height:60px;background-color:inherit;border-radius:50%}.fog-container{position:relative;width:100%;height:100%;overflow:hidden}.fog-layer{position:absolute;width:150%;height:40px;border-radius:50px;filter:blur(15px);left:-25%}.search-form{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:25px}.search-input{flex:1;padding:12px;font-size:16px;border:1px solid #ddd;border-radius:25px 0 0 25px;outline:none;transition:border-color .3s}.search-input:focus{border-color:#07c}.search-button{padding:12px 20px;background-color:#07c;color:#fff;border:none;border-radius:0 25px 25px 0;cursor:pointer;font-weight:700;transition:background-color .3s}.search-button:hover{background-color:#005fa3}.location-button{padding:12px 15px;background-color:#4caf50;color:#fff;border:none;border-radius:30px;margin-left:10px;cursor:pointer;transition:background-color .3s;display:flex;align-items:center;font-size:14px}.location-button:hover{background-color:#388e3c}.location-button i{margin-right:5px}.loading,.error{margin:20px 0;padding:15px;border-radius:10px;text-align:center}.loading{background-color:#f0f0f0;color:#555}.error{background-color:#ffe0e0;color:#d00}.forecast-container{margin-top:20px;background-color:#fffc;border-radius:15px;padding:15px;box-shadow:0 4px 15px #0000001a}.forecast-container h3{margin-bottom:15px;text-align:center;color:#333}.forecast-items{display:flex;justify-content:space-between;overflow-x:auto;padding-bottom:10px}.forecast-item{display:flex;flex-direction:column;align-items:center;min-width:80px;padding:10px;border-radius:10px;background-color:#ffffff80;transition:transform .3s}.forecast-item:hover{transform:translateY(-5px);background-color:#fffc}.forecast-date{font-size:.9em;font-weight:700;margin-bottom:5px}.forecast-icon img{width:40px;height:40px}.forecast-temp{font-size:1.1em;font-weight:700;margin:5px 0}.forecast-desc{font-size:.8em;text-align:center;color:#666}.default-animation{display:flex;justify-content:center;align-items:center;height:100%}.weather-icon{font-size:32px;color:#444;background-color:#f0f0f0;padding:20px;border-radius:50%;box-shadow:0 0 15px #0000001a}.weather-icon-dark{background-color:#3a4a63;color:#f0f0f0;box-shadow:0 0 15px #0000004d}@media (max-width: 600px){.weather-container{padding:10px}.temperature{font-size:36px}.animation-container{height:250px}.forecast-items{padding-bottom:10px}.forecast-item{min-width:70px;padding:8px}.location-button{margin-top:10px;width:100%;justify-content:center}.search-form{flex-direction:column}.search-input{border-radius:25px}.search-button{border-radius:25px;margin-top:5px}}
