.weather-widget{max-width:900px;margin:20px auto;font-family:'Poppins','Arial',sans-serif;background:linear-gradient(180deg,#e6f0fa,#d0e4f5);border-radius:15px;box-shadow:0 8px 25px rgba(0,0,0,.1);overflow:hidden}.current-weather{position:relative;padding:30px 15px;color:#fff;text-align:center;background-size:cover;background-position:center;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center}.current-weather::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.35);z-index:1;border-radius:15px 15px 0 0}.current-weather>*{position:relative;z-index:2}.current-heading{font-size:1.8rem;font-weight:600;margin:0 0 10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.current-weather img{width:100px;height:100px;margin:10px 0;filter:drop-shadow(0 3px 6px rgba(0,0,0,.2))}.current-temperature{font-size:3.5rem;font-weight:700;margin:5px 0;line-height:1;text-shadow:0 3px 6px rgba(0,0,0,.3)}.current-description{font-size:1.3rem;font-weight:300;margin:5px 0 15px;opacity:.95}.weather-info{display:flex;justify-content:space-around;width:100%;max-width:350px;padding:10px;background:rgba(255,255,255,.25);border-radius:8px;backdrop-filter:blur(4px)}.info-item p{margin:5px 0;font-size:1rem;font-weight:400}.forecast-days{display:flex;flex-direction:column;padding:15px;background:#fff;border-radius:0 0 15px 15px;gap:10px}.weather-item{background:linear-gradient(145deg,#ffffff,#f5f8fa);border-radius:12px;padding:15px;text-align:center;box-shadow:0 4px 12px rgba(0,0,0,.05);transition:all 0.3s ease}.weather-item:hover{transform:scale(1.02);box-shadow:0 6px 15px rgba(0,0,0,.08)}.weather-item img{width:50px;height:50px;margin:8px 0}.weather-item .date{font-size:1.1rem;font-weight:600;color:#34495e;margin-bottom:5px}.weather-item .temperature{font-size:1.5rem;font-weight:700;color:#2980b9;margin:5px 0}.weather-item .description{font-size:.95rem;color:#7f8c8d;margin:5px 0}.weather-item .wind-speed{font-size:.85rem;color:#95a5a6}.loading-spinner{border:4px solid #e6e6e6;border-top:4px solid #3498db;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px auto}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@media (max-width:768px){.weather-widget{margin:10px;max-width:100%;width:calc(100% - 20px)}.current-weather{padding:25px 10px;min-height:200px}.current-heading{font-size:1.6rem}.current-temperature{font-size:3rem}.current-description{font-size:1.1rem}.weather-info{flex-direction:column;gap:8px;padding:8px;max-width:100%}.info-item p{font-size:.9rem}.weather-item{padding:12px}.weather-item img{width:45px;height:45px}.weather-item .temperature{font-size:1.4rem}}@media (min-width:769px){.forecast-days{flex-direction:row;overflow-x:auto;gap:15px}.weather-item{flex:0 0 150px}.forecast-days::-webkit-scrollbar{height:6px}.forecast-days::-webkit-scrollbar-track{background:#eceff1;border-radius:10px}.forecast-days::-webkit-scrollbar-thumb{background:#3498db;border-radius:10px}.forecast-days::-webkit-scrollbar-thumb:hover{background:#2980b9}}.related-cities-container{background:#e0e0e0;padding:20px;border-radius:10px;margin-top:20px}.cities-heading{text-align:center;color:#333;margin-bottom:15px;font-size:20px;font-weight:600}.cities-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}@media screen and (max-width:768px){.cities-grid{grid-template-columns:repeat(2,1fr)}}.city-item{background:#b3d4fc;color:#1a3c63;padding:10px;text-align:center;border-radius:5px;font-size:16px;transition:transform 0.2s}.city-item a{color:#1a3c63;text-decoration:none;display:block}.city-item:hover{transform:scale(1.05)}.city-item a:hover{text-decoration:underline}.related-posts-container{border-top:1px solid #eee;padding-top:15px}.related-posts-container a:hover{text-decoration:underline;color:#036}.related-posts-container ol{line-height:1.6}