.sidebar{grid-area:1/1/2/2;height:99%;min-height:100vh;padding:10px;font-family:Rubik,system-ui}.header-container{background:#151515;border-radius:25px;height:98%;padding:15px}.main-nav{flex-direction:column;align-items:center;gap:20px;display:flex}.nav-brand-wrapper{width:50px;margin-block:2rem}.nav-brand-wrapper img{width:100%}.nav-list{flex-direction:column;align-items:center;gap:20px;margin-block:20px;display:flex}.nav-list li a{color:#686d76;flex-direction:column;align-items:center;gap:10px;padding:5px;font-weight:500;text-decoration:none;transition:all .1s ease-in-out;display:flex}.nav-list li a:hover{color:#c4cad3}.nav-list li a:focus-visible{outline:1px solid #2666cf}.nav-list li .active-tab{color:#c4cad3}@media screen and (width<=1024px){.sidebar{z-index:1111;background-color:#151515;width:100%;height:55px;min-height:auto;padding:0;position:fixed;bottom:0;box-shadow:0 0 5px #0000007b}.header-container{background-color:#0000;border-radius:0;height:100%;padding:0}.main-nav{flex-direction:row;justify-content:center;height:100%}.nav-brand-wrapper{margin:0;position:absolute;left:20px}.nav-list{flex-direction:row;gap:50px;margin:0}.nav-list li a{flex-direction:row;padding:0}}@media screen and (width<=768px){.sidebar{padding:8px}.nav-brand-wrapper{width:35px}.nav-list li a{font-size:1.2em}.nav-list li a span{display:none}}.city-searchbar-header{grid-area:1/1/2/2;width:100%}#city-search-input{color:#c4cad3;background-color:#151515;border:none;border-radius:25px;width:100%;height:60px;padding-inline:30px;font-size:1.05em;font-weight:600}#city-search-input::placeholder{font-size:.9em}#city-search-input:focus{outline-offset:2px;outline:2px solid #2666cf}.switch-wrapper .theme-switch{align-items:center;gap:5px;display:flex}.switch-wrapper input{opacity:0;width:0;height:0}.switch-wrapper .slider{cursor:pointer;background-color:#373a40;border-radius:15px;width:50px;height:25px;display:block;position:relative}.switch-wrapper .slider:after{content:"";border-radius:50%;width:18px;height:18px;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:inset 8px -4px #fff}.error{z-index:1111;flex-direction:column;align-items:center;gap:20px;font-family:Rubik,system-ui;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.error p{text-align:center;color:#686d76;font-size:1.5em;font-weight:700}.error .error-code{color:#2666cf;margin-block:10px;font-size:5em}.error .cities-sec-btn{color:#c4cad3;cursor:pointer;background:#2666cf;border:1px solid #2666cf;border-radius:2px;width:150px;height:45px;font-size:1.1em;font-weight:600;transition:all .1s ease-in-out}.error .cities-sec-btn:hover{background:0 0}body{background-color:#0c0c0c;height:100vh}.welcome-section{overflow:hidden;transform:scaleX(0)}.welcome-page-container{grid-template-rows:1fr;grid-template-columns:repeat(2,1fr);gap:20px;font-family:Rubik,system-ui;display:grid}.welcome-logo-container{width:100%;padding:20px}.welcome-logo-container div{background-color:#151515;border-radius:25px;justify-content:center;align-items:center;height:96dvh;display:flex}.welcome-logo-container img{width:30%;min-width:350px}.welcome-page-content{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.welcome-page-content img{width:10%;min-width:50px;margin:40px 0}.welcome-page-content h1{color:#c4cad3;font-size:2.5em;font-weight:700}.welcome-page-content p{color:#c4cad3;margin-block:10px 50px}.welcome-page-content .get-started-link:focus{outline-offset:2px;border-radius:25px;outline:3px solid #2666cf}.welcome-page-content button{text-align:center;cursor:pointer;color:#c4cad3;background-color:#2666cf;border:none;border-radius:50px;width:180px;height:45px;font-size:1em;font-weight:600;transition:all .3s ease-in-out}.welcome-page-content button:hover{filter:contrast(2)}.scale-in-hor-center{animation:1.8s cubic-bezier(.25,.46,.45,.94) 2.5s both scale-in-hor-center}@keyframes scale-in-hor-center{0%{opacity:1;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@media screen and (width<=950px){.welcome-page-container{grid-template-rows:1fr;grid-template-columns:repeat(1,1fr);gap:20px;height:100vh;display:grid}.welcome-logo-container{display:none}.welcome-page-content img{width:40%}.welcome-page-content button{width:250px}}.main-content{grid-area:1/2/2/3;height:100%;padding:10px;font-family:Rubik,system-ui}.weather-section{grid-template-rows:repeat(3,1fr);grid-template-columns:2.5fr 1fr;gap:15px;height:100%;display:grid}.main-container{height:100%}.current-weather-section{border-radius:25px;flex-direction:row;grid-area:1/1/2/2;justify-content:space-between;align-items:center;gap:10px;height:85%;padding:25px;display:flex;position:relative}.weather-info-wrapper{flex-direction:column;justify-content:space-around;align-items:normal;gap:0;height:100%;margin-left:20px;display:flex}.weather-info-wrapper .city-info{padding:5px}.weather-info-wrapper .city-info .city-title{color:#c4cad3;padding-bottom:5px;font-size:3em;font-weight:700}.weather-info-wrapper .city-info .rain-probability{color:#686d76}.weather-info-wrapper .current-temperature{color:#c4cad3;font-size:3.5em;font-weight:700}.t-temp{color:#c4cad3;font-size:3.5em;font-weight:700;display:none}.weather-icon-container{width:100%;max-width:250px;margin-right:4%}.weather-icon-container img{width:100%}.hourly-weather-section{background-color:#151515;border-radius:25px;grid-area:2/1/3/2;height:82%;padding:25px}.w-hourly-forecast-wrapper,.aircondition-wrapper,.weekly-weather-wrapper{align-items:normal;justify-content:none;flex-direction:column;gap:20px;height:100%;display:flex}.forecast-title{color:#686d76;text-transform:uppercase;padding:5px 20px;font-family:Rubik,system-ui;font-size:1.05em;font-weight:700}.forecast-slider{white-space:nowrap;align-items:stretch;justify-content:none;flex-direction:row;gap:0;height:100%;padding-inline:20px;display:flex;overflow:scroll hidden}.forecast-slider .forecast-hour{border-right:1px solid #373a40;flex-direction:column;flex:0 0 150px;justify-content:space-around;align-items:center;gap:25px;height:100%;display:flex}.forecast-slider .forecast-hour .forecast-time{text-transform:uppercase;color:#686d76;font-size:1.1em;font-weight:600}.forecast-slider .forecast-hour .forecast-icon{width:60px}.forecast-slider .forecast-hour .forecast-temperature{color:#c4cad3;font-size:2em;font-weight:600}.forecast-slider::-webkit-scrollbar{display:none}@media (width<=1570px){.forecast-slider{white-space:normal;overflow:scroll}}.air-quality-section{background-color:#151515;border-radius:25px;grid-area:3/1/4/2;height:81.5%;padding:25px}.section-header{flex-direction:row;justify-content:space-between;align-items:center;gap:0;display:flex}.section-header button{color:#c4cad3;cursor:pointer;background-color:#2666cf;border:none;border-radius:50px;width:100px;height:30px;font-weight:500;transition:all .2s ease-in-out;display:none}.section-header button:hover{filter:brightness(1.2)}.air-quality-stats{grid-template-rows:repeat(2,.5fr);grid-template-columns:repeat(2,.5fr);gap:30px;height:100%;margin-block:25px 0;display:grid}.air-quality-stat{align-items:stretch;justify-content:none;color:#686d76;flex-direction:row;gap:20px;display:flex}.air-quality-stat .stat-icon{font-size:1.5em}.air-quality-stat .stat-details .stat-title{text-transform:uppercase;margin-bottom:10px;font-size:1.4em}.air-quality-stat .stat-details .stat-value{color:#c4cad3;font-size:2em;font-weight:600}.weekly-forecast-container{background-color:#151515;border-radius:25px;grid-area:1/2/4/3;height:94.5%;padding:25px;position:relative}.expand-wrap-btn{cursor:pointer;color:#c4cad3;background-color:#0000;border:none;font-size:2em;transition:all .5s ease-in-out;display:none;position:absolute;top:20px;right:15px}.expand-wrap-btn:hover{color:#2666cf}.forecast-week-wrap{align-items:stretch;justify-content:none;flex-direction:column;gap:0;height:100%;margin-block:20px;padding-inline:25px;display:flex}.forecast-day-item{color:#686d76;border-bottom:1px solid #373a40;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;height:120px;font-size:1.1em;display:flex}.forecast-day-item .day-condition{flex-direction:row;justify-content:space-between;align-items:center;gap:20px;display:flex}.forecast-day-item .day-condition img{width:40px}.forecast-day-item .day-condition span,.forecast-day-item .day-temperature .temperature-high{color:#c4cad3;font-weight:600}.forecast-day-item:last-child{border:none}@media screen and (width<=1620px){.weather-section{grid-template-columns:1.5fr 1fr}}@media screen and (width<=1400px){.main-content{padding-right:20px}.weather-section{grid-template-rows:repeat(4,auto);grid-template-columns:1fr}.current-weather-section{grid-area:1/1/2/2;height:300px}.weather-icon-container{max-width:250px}.hourly-weather-section{grid-area:2/1/3/2;height:250px}.air-quality-section{grid-area:3/1/4/2;height:250px}.weekly-forecast-container{grid-area:4/1/5/2;height:15px;transition:all 1s ease-in-out;overflow:hidden}.forecast-title{padding-block:0}.forecast-day-item{height:100px}.expand{height:91%}.rotate-arrow{transform:rotate(-180deg)}.expand-wrap-btn{display:block;top:13px}}@media screen and (width<=1024px){.main-content{padding-inline:20px}}@media screen and (width<=900px){.forecast-slider .forecast-hour{display:none}.forecast-slider .forecast-hour:nth-child(-n+8){display:flex}}@media screen and (width<=768px){.current-weather-section{grid-template-rows:repeat(3,auto);grid-template-columns:1fr;justify-items:center;gap:30px;height:max-content;display:grid}.weather-info-wrapper{margin:0}.weather-info-wrapper .city-info{text-align:center;padding:10px}.d-temp{display:none}.t-temp{text-align:center;padding:10px;display:block}.weather-icon-container{max-width:200px;margin:0;padding:20px}.air-quality-section{height:270px}.air-quality-stats{flex-direction:column;display:flex}.air-quality-stat .stat-details{flex-direction:row;justify-content:space-between;align-items:center;gap:20px;width:100%;display:flex}.air-quality-stat .stat-details .stat-title{margin:0}.forecast-day-item{height:80px}}@media screen and (width<=600px){.main-content{padding-inline:10px}.current-weather-section,.hourly-weather-section,.weekly-forecast-container{padding:25px 15px}.air-quality-section{padding:20px}.forecast-week-wrap{padding-inline:15px}.forecast-slider{padding:0}.forecast-slider .forecast-hour{flex:0 0 130px}.forecast-slider .forecast-hour:nth-of-type(8),.forecast-slider .forecast-hour:nth-of-type(7),.forecast-slider .forecast-hour:nth-of-type(6){display:none}}@media screen and (width<=475px){.air-quality-stat .stat-icon{font-size:1.5em}.air-quality-stat .stat-details{font-size:.8em}.air-quality-stat .stat-details .stat-value{font-size:1.8em}.forecast-day-item .day-condition img{width:45px}.forecast-day-item .day-condition span{display:none}}@media screen and (width<=400px){.forecast-slider .forecast-hour:first-child{display:none}}.cities-section{grid-template-rows:.1fr 1.9fr;grid-template-columns:1.3fr .7fr;gap:15px;height:100%;display:grid}.city-search-result-container{align-items:normal;justify-content:none;flex-direction:column;grid-area:2/1/3/2;gap:20px;height:100%;display:flex}.city-search-result{cursor:pointer;align-items:center;justify-content:none;background-color:#151515;border:1px solid #373a40;border-radius:25px;flex-direction:row;gap:25px;height:120px;padding-inline:25px;transition:all .2s ease-in-out;display:flex}.city-search-result img{width:80px}.city-search-result .city-name-time-wrapper{flex-grow:1}.city-search-result .city-name-time-wrapper .city-name-label{color:#c4cad3;text-align:start;margin-block:0 5px;font-size:3em;font-weight:700}.city-search-result .city-name-time-wrapper .city-current-time{text-align:start;color:#686d76}.city-search-result .city-current-temperature{color:#c4cad3;font-size:3.5em;font-weight:700}.city-search-result:hover,.city-search-result:focus-visible{background-color:#0000;border-color:#2666cf}.city-overview-section{flex-direction:column;grid-area:2/2/3/3;justify-content:normal;align-items:normal;gap:15px;height:100%;display:flex}.city-current-forecast-container{flex-direction:row;justify-content:space-between;align-items:normal;gap:20px;height:300px;padding:25px;display:flex}.city-current-forecast-container .current-weather-icon{width:200px}.current-forecast-wrapper{flex-direction:column;justify-content:space-around;align-items:normal;gap:20px;display:flex}.current-forecast-wrapper .current-city-info-wrap .city-name{color:#c4cad3;font-size:2.5em;font-weight:700}.current-forecast-wrapper .current-city-info-wrap p{color:#686d76;padding-top:5px}.current-forecast-wrapper h3{color:#c4cad3;font-size:3em;font-weight:700}.city-hourly-forecast-container{flex-direction:column;justify-content:normal;align-items:normal;gap:20px;height:280px;padding:25px;display:flex}.city-wrapper-title{color:#686d76;text-transform:uppercase;font-family:Rubik,system-ui;font-size:1.05em;font-weight:700}.hourly-forecast-wrapper{flex-direction:row;justify-content:center;align-items:normal;gap:20px;height:100%;display:flex}.city-hourly-forecast{flex-direction:column;flex:0 0 150px;justify-content:space-around;align-items:center;gap:20px;display:flex}.city-hourly-forecast p{color:#686d76;font-size:1.1em;font-weight:600}.city-hourly-forecast img{width:70px}.city-hourly-forecast .city-current-temp{color:#c4cad3;font-size:2em}.city-hourly-forecast:last-child{border:none}.city-threeday-forecast-container{flex-direction:column;justify-content:normal;align-items:normal;gap:20px;padding:25px;display:flex}.threeday-forecast-wrapper{flex-direction:column;justify-content:normal;align-items:normal;gap:20px;margin-block:15px;display:flex}.forecast-day{border-bottom:1px solid #373a40;flex-direction:row;justify-content:space-between;align-items:center;gap:20px;height:80px;padding-inline:25px;display:flex}.forecast-day p{color:#686d76;font-size:1.05em;font-weight:600}.forecast-day .forecast-condition{flex-direction:row;justify-content:normal;align-items:center;gap:20px;display:flex}.forecast-day .forecast-condition img{width:50px}.forecast-day .forecast-condition span{color:#c4cad3}.forecast-day .day-temperature{font-size:1.15em}.forecast-day .day-temperature .temp-high{color:#c4cad3}.forecast-day:last-child{border:none}.active-city{background-color:#0000;border-color:#2666cf}@media screen and (width<=1300px){.cities-section{grid-template-columns:1fr}.city-search-result{height:150px}.city-search-result img{width:100px}.city-search-result .city-name-time-wrapper .city-name-label{color:#c4cad3;text-align:start;margin-block:0 5px;font-size:3em;font-weight:700}.city-search-result .city-current-temperature{color:#c4cad3;font-size:3.5em;font-weight:700}.city-overview-section{display:none}}@media screen and (width<=600px){.city-search-result{height:100px}.city-search-result img{width:80px;display:none}.city-search-result .city-name-time-wrapper .city-name-label{color:#c4cad3;margin-block:0 5px;font-size:2.5em;font-weight:700}.city-search-result .city-current-temperature{color:#c4cad3;font-size:3em;font-weight:700}}@media screen and (width<=400px){.city-search-result .city-name-time-wrapper .city-name-label{color:#c4cad3;font-size:2.2em;font-weight:700}.city-search-result .city-current-temperature{color:#c4cad3;font-size:2.5em;font-weight:700}}.map-section{grid-template-rows:1fr;grid-template-columns:1.6fr .7fr;align-items:center;gap:15px;height:100%;display:grid}.map-container{grid-area:1/1/2/2;height:100%;position:relative}.show-map-btn{cursor:pointer;color:#fff;background-color:#151515;border:none;border-radius:25px;width:100%;height:50px;font-size:1.2em;font-weight:600;transition:all .1s ease-in-out;position:absolute;top:0}.show-map-btn:hover,.show-map-btn:focus-visible{background-color:#2666cf}#map{pointer-events:auto;border-radius:25px;width:100%;height:100%}.hide-map{pointer-events:none;height:0}.map-aside-section{grid-area:1/2/2/3;height:100%}.bookmarked-city-container{flex-direction:column;justify-content:normal;align-items:normal;gap:15px;display:flex}.bookmarked-city{background-color:#151515;border-radius:25px;flex-direction:row;justify-content:normal;align-items:center;gap:15px;padding:20px;display:flex}.bookmarked-city img{width:70px}.bookmarked-city .city-name-wrapper{flex-direction:row;flex-grow:1;justify-content:normal;align-items:center;gap:20px;display:flex}.bookmarked-city .city-name-wrapper h2{color:#c4cad3;font-size:1.8em;font-weight:700}.bookmarked-city .city-name-wrapper button{color:#686d76;cursor:pointer;background-color:#0000;border:none;font-size:1.5em}.bookmarked-city .city-name-wrapper button:hover{color:#2666cf}.bookmarked-city h3{color:#c4cad3;font-size:2em;font-weight:700}.location-name{color:#c4cad3;text-align:center;font-size:1.8em;font-weight:600}.location-temp{color:#c4cad3;text-align:center;font-size:2em;font-weight:700;margin:0!important}.zoom-to-btn{display:none}.see-details-btn{color:#c4cad3;cursor:pointer;background-color:#0000;border:1px solid #c4cad3;border-radius:25px;height:35px;padding:0 20px;font-weight:600;transition:all .1s ease-in-out}.see-details-btn:hover{background-color:#2666cf}.leaflet-popup-content{flex-direction:column;align-items:center;gap:10px;display:flex}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background-color:#151515!important}.we-icon{width:50px}@media screen and (width<=1540px){.bookmarked-city{background-color:#151515;border-radius:25px;flex-direction:row;justify-content:normal;align-items:center;gap:15px;padding:20px;display:flex}.bookmarked-city img{width:70px;display:none}.bookmarked-city .city-name-wrapper{flex-direction:row;flex-grow:1;justify-content:normal;align-items:center;gap:20px;display:flex}.bookmarked-city .city-name-wrapper h2{color:#c4cad3;font-size:1.8em;font-weight:700}.bookmarked-city .city-name-wrapper button{color:#686d76;cursor:pointer;background-color:#0000;border:none;font-size:1.5em}.bookmarked-city h3{color:#c4cad3;font-size:2em;font-weight:700}}@media screen and (width<=1300px){.map-section{grid-template-columns:1fr}.map-aside-section{display:none}.zoom-to-btn{color:#c4cad3;background-color:#0000;border:1px solid #c4cad3;border-radius:25px;width:80px;height:30px;font-size:1.5em;display:block}}@media screen and (width<=1024px){#map{pointer-events:auto;border-radius:25px;width:100%;height:95vh}}.setting-section{grid-template-rows:1fr;grid-template-columns:1.6fr .7fr;gap:15px;display:grid}.setting-container{grid-area:1/1/2/2;padding:25px}.settings-title{color:#c4cad3;margin-block:10px 20px;font-size:1.7em;font-weight:700}.settings-options{background-color:#151515;border-radius:25px;flex-direction:column;justify-content:normal;align-items:normal;gap:20px;padding:25px;display:flex}.option-title{color:#686d76;text-transform:uppercase;font-family:Rubik,system-ui;font-size:1.05em;font-weight:700}.buttons-group{background-color:#0c0c0c;border-radius:10px;flex-direction:row;justify-content:normal;align-items:normal;gap:2px;margin-block:20px;padding:5px;display:flex}.buttons-group button{color:#686d76;cursor:pointer;background-color:#0000;border:none;border-radius:5px;width:50%;height:30px;font-size:1em;transition:all .1s ease-in-out}.buttons-group button:hover{background-color:#151515}.buttons-group .active-option{color:#c4cad3;background-color:#2666cf;font-weight:600}.theme-settings{margin-block:30px}.theme-options{background-color:#151515;border-radius:25px;flex-direction:row;justify-content:normal;align-items:center;gap:20px;padding:20px;display:flex}.theme-options h3{color:#686d76;text-transform:uppercase;flex-grow:1;font-family:Rubik,system-ui;font-size:1.05em;font-weight:700}.general-options{background-color:#151515;border-radius:25px;flex-direction:row;justify-content:normal;align-items:center;gap:20px;padding:20px;display:flex}.general-options p{color:#c4cad3;flex-grow:1;font-size:1.1em;font-weight:600}.time-switch{cursor:pointer;background-color:#2666cf;border-radius:15px;width:50px;height:25px;display:block;position:relative}.time-switch:after{content:"";background-color:#fff;border-radius:50%;width:18px;height:18px;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.layout{grid-template-rows:auto;grid-template-columns:.1fr 1.8fr;gap:8px;width:100%;transition:all .6s ease-in-out;display:grid}body{--sb-track-color:#232e33;--sb-thumb-color:#2666cf;--sb-size:10px}body::-webkit-scrollbar{width:var(--sb-size)}body::-webkit-scrollbar-track{background:var(--sb-track-color);border-radius:5px}body::-webkit-scrollbar-thumb{background:var(--sb-thumb-color);border-radius:5px}@supports not selector(::-webkit-scrollbar){body{scrollbar-color:var(--sb-thumb-color)var(--sb-track-color)}}.hidden{display:none}.onload{opacity:0;pointer-events:none}@media screen and (width<=1024px){.layout{padding-block:0 90px;display:block}}
/*# sourceMappingURL=index.a673cd07.css.map */
