@import url(https://fonts.googleapis.com/css2?family=Nunito:wght@300;400;600;700;800&display=swap);*{box-sizing:border-box;margin:0;padding:0}body{font-family:Nunito,sans-serif;transition:all .4s ease}.app,body{min-height:100vh}.app{overflow-x:hidden;padding:0 0 40px;position:relative;transition:background .6s ease}.dark{color:#f0f0f0}.light{color:#1a1a2e}.glass{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid #ffffff26;border-radius:20px;box-shadow:0 8px 32px #0003}.dark .glass{background:#ffffff12}.light .glass{background:#ffffff73}.header{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.dark .header{background:#0003}.light .header{background:#ffffff4d}.app-title{font-size:1.5rem;font-weight:800}.header-controls{align-items:center;display:flex;gap:8px}.lang-select{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;cursor:pointer;font-family:Nunito,sans-serif;font-size:.8rem;outline:none;padding:7px 10px;transition:.3s}.dark .lang-select{color:#fff}.light .lang-select{color:#1a1a2e}.lang-select option{background:#1a1a2e;color:#fff}.notif-btn,.toggle-btn{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;cursor:pointer;font-size:.9rem;padding:7px 14px;transition:.3s}.dark .notif-btn,.dark .toggle-btn{color:#fff}.light .notif-btn,.light .toggle-btn{color:#1a1a2e}.notif-btn:hover,.toggle-btn:hover{background:#ffffff40;transform:scale(1.05)}.search-section{align-items:center;display:flex;flex-direction:column;gap:8px;padding:20px 20px 0}.search-box{display:flex;gap:8px;max-width:500px;width:100%}.search-box input{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #fff3;border-radius:30px;flex:1 1;font-family:Nunito,sans-serif;font-size:1rem;outline:none;padding:12px 18px;transition:.3s}.dark .search-box input{color:#fff}.light .search-box input{color:#1a1a2e}.search-box input::placeholder{opacity:.6}.search-box input:focus{border-color:#e9456099;box-shadow:0 0 0 3px #e9456026}.voice-btn{background:#ffffff1f;border:1px solid #fff3;border-radius:30px;cursor:pointer;font-size:1rem;padding:12px 14px;transition:.3s}.voice-btn:hover{background:#ffffff40}.search-btn{background:linear-gradient(135deg,#e94560,#c73652);border:none;border-radius:30px;color:#fff;cursor:pointer;font-family:Nunito,sans-serif;font-size:1rem;font-weight:700;padding:12px 22px;transition:.3s;white-space:nowrap}.search-btn:hover{box-shadow:0 5px 20px #e9456066;transform:scale(1.05)}.listening-text{animation:pulse 1s infinite;color:#e94560;font-size:.9rem}.favorites-bar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:0 auto;max-width:700px;padding:10px 24px}.fav-label{font-size:.85rem;opacity:.7;white-space:nowrap}.fav-chip{align-items:center;background:#e945601a;border:1px solid #e9456066;border-radius:20px;color:inherit;cursor:pointer;display:flex;font-family:Nunito,sans-serif;font-size:.82rem;gap:6px;padding:5px 12px;transition:.3s}.fav-chip:hover{background:#e9456040}.fav-remove{font-size:.7rem;opacity:.6}.fav-remove:hover{opacity:1}.content{display:flex;flex-direction:column;gap:14px;margin:16px auto;max-width:600px;padding:0 16px}.weather-card{animation:slideUp .5s ease;padding:22px}.card-top{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:14px}.city-info h2{font-size:1.5rem;font-weight:800}.date{font-size:.82rem;margin-top:3px;opacity:.65}.card-top-actions{align-items:flex-end;display:flex;flex-direction:column;gap:8px}.fav-btn{background:none;border:none;cursor:pointer;font-size:1.4rem;transition:transform .3s}.fav-btn:hover{transform:scale(1.3)}.fav-btn.active{animation:heartbeat .4s ease}.main-weather{align-items:center;display:flex;gap:14px;margin-bottom:18px}.weather-icon-big{filter:drop-shadow(0 4px 12px rgba(0,0,0,.3));height:90px;width:90px}.temp-section{display:flex;flex-direction:column}.temp-main{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#e94560,#ff6b6b);-webkit-background-clip:text;background-clip:text;font-size:3.2rem;font-weight:800;line-height:1}.weather-desc{font-size:1rem;margin-top:4px;opacity:.85;text-transform:capitalize}.feels-like{font-size:.85rem;margin-top:2px;opacity:.65}.temp-range{display:flex;font-size:.88rem;gap:10px;margin-top:3px}.temp-range span:first-child{color:#e94560}.temp-range span:last-child{color:#4fc3f7}.details-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:16px}.detail-item{background:#ffffff12;border-radius:14px;display:flex;flex-direction:column;gap:5px;padding:12px}.detail-icon{font-size:1.1rem}.detail-label{font-size:.78rem;opacity:.65}.detail-value{font-size:1rem;font-weight:700}.progress-bar{background:#ffffff26;border-radius:10px;height:5px;overflow:hidden}.progress-bar div{background:linear-gradient(90deg,#4fc3f7,#e94560);border-radius:10px;height:100%;transition:width 1s ease}.sun-section{align-items:center;background:#ffffff12;border-radius:14px;display:flex;gap:10px;margin-bottom:14px;padding:14px}.sun-item{min-width:65px;text-align:center}.sun-icon{display:block;font-size:1.4rem}.sun-label{display:block;font-size:.72rem;opacity:.65}.sun-time{font-size:.9rem;font-weight:700}.sun-arc{flex:1 1}.sun-track{background:#ffffff26;border-radius:4px;height:7px;margin:8px 0;position:relative}.sun-ball{font-size:1.1rem;position:absolute;top:-8px;transform:translateX(-50%);transition:left 1s ease}.share-btn{background:#ffffff14;border:1px solid #fff3;border-radius:14px;color:inherit;cursor:pointer;font-family:Nunito,sans-serif;font-size:.95rem;font-weight:600;padding:12px;transition:.3s;width:100%}.share-btn:hover{background:#ffffff2e;transform:translateY(-2px)}.ai-card{padding:18px}.ai-card h3{font-size:.95rem;font-weight:700;margin-bottom:10px}.tips-grid{display:flex;flex-direction:column;gap:8px}.tip-item{align-items:center;background:#ffffff12;border-radius:12px;display:flex;font-size:.88rem;gap:10px;padding:10px 12px}.tip-icon{font-size:1.1rem}.tabs{display:flex;gap:4px;overflow-x:auto;padding:6px}.tab-btn{background:#0000;border:none;border-radius:14px;color:inherit;cursor:pointer;flex:1 1;font-family:Nunito,sans-serif;font-size:.82rem;font-weight:600;opacity:.65;padding:9px 12px;transition:.3s;white-space:nowrap}.tab-btn.active{background:#e94560;color:#fff;opacity:1}.tab-btn:hover:not(.active){background:#ffffff1a;opacity:1}.hourly-section{padding:14px}.hourly-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:6px;scrollbar-color:#fff3 #0000;scrollbar-width:thin}.hourly-card{align-items:center;background:#ffffff12;border-radius:14px;display:flex;flex-direction:column;gap:4px;min-width:68px;padding:10px 8px;transition:.3s}.hourly-card:hover{background:#ffffff26;transform:translateY(-3px)}.hourly-time{font-size:.72rem;opacity:.7}.hourly-card img{width:34px}.hourly-temp{font-size:.9rem;font-weight:700}.hourly-rain{font-size:.72rem;opacity:.7}.forecast-section{display:flex;flex-direction:column;gap:8px;padding:14px}.forecast-row{align-items:center;background:#ffffff12;border-radius:14px;display:flex;gap:12px;padding:11px 14px;transition:.3s}.forecast-row:hover{background:#ffffff1f}.forecast-day{font-size:.9rem;font-weight:700;width:38px}.forecast-row img{width:34px}.forecast-desc{flex:1 1;font-size:.85rem;opacity:.8;text-transform:capitalize}.forecast-temps{display:flex;gap:10px}.temp-high{color:#e94560}.temp-high,.temp-low{font-size:.9rem;font-weight:700}.temp-low{color:#4fc3f7}.charts-section{padding:18px}.charts-section h3{font-size:.95rem;margin-bottom:10px}.map-section{padding:18px}.map-section h3{font-size:.95rem;margin-bottom:10px}.map-container{border-radius:14px;overflow:hidden}.weather-effect{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.raindrop{animation:rain linear infinite;background:linear-gradient(180deg,#0000,#aed6f199);border-radius:2px;width:2px}.raindrop,.snowflake{position:absolute;top:-20px}.snowflake{animation:snow linear infinite;color:#fff}.lightning{animation:lightning 4s ease infinite;height:100%;left:0;position:absolute;top:0;width:100%}.skeleton-wrapper{margin:16px auto;max-width:600px;padding:0 16px}.skeleton-card{background:#ffffff12;border-radius:20px;display:flex;flex-direction:column;gap:14px;padding:22px}.skeleton-box,.skeleton-circle,.skeleton-line{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#ffffff12 25%,#ffffff26 50%,#ffffff12 75%);background-size:200% 100%;border-radius:8px}.skeleton-line{height:16px}.skeleton-line.wide{width:70%}.skeleton-line.medium{width:50%}.skeleton-line.narrow{width:30%}.skeleton-circle{border-radius:50%;height:80px;width:80px}.skeleton-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.skeleton-box{border-radius:14px;height:75px}.error-msg{background:#e945601a;border:1px solid #e9456033;border-radius:14px;color:#e94560;font-size:.95rem;margin:14px auto;max-width:500px;padding:14px;text-align:center}.footer{font-size:.78rem;margin-top:20px;opacity:.4;padding:20px;text-align:center}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.4)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes rain{0%{transform:translateY(-20px) rotate(8deg)}to{transform:translateY(110vh) rotate(8deg)}}@keyframes snow{0%{transform:translateY(-20px) rotate(0deg)}to{transform:translateY(110vh) rotate(1turn)}}@keyframes floatCloud{0%{left:-200px}to{left:110vw}}@keyframes lightning{0%,88%,92%,to{background:#0000}89%,91%{background:#ffffc81f}}@keyframes pulse2{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.7;transform:scale(1.5)}}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}@media (max-width:480px){.app-title{font-size:1.2rem}.temp-main{font-size:2.6rem}.weather-icon-big{height:75px;width:75px}.city-info h2{font-size:1.2rem}.tab-btn{font-size:.72rem;padding:8px}.header{padding:12px 14px}.header-controls{gap:5px}}
/*# sourceMappingURL=main.d86d383d.css.map*/