* {
   margin: 0;
   padding: 0;
   box-sizing: border-box;
}

body.logister {
   height: 100vh;
   width: 100vw;
   display: flex;
   justify-content: center;
   align-items: center;
}

body.profile {
   padding-top: 25px;
   overflow: hidden;
}

body.profile > header {
   position: fixed;
   top: 0;
   width: 100vw;
}

.sections {
   scroll-behavior: smooth;
   scroll-snap-type: y mandatory;
   overflow-y: scroll;
   height: 100vh;
}

section.profileSection {
   display: flex;
   justify-content: center;
   align-items: center;
   height: 100vh;
   scroll-snap-align: center;
   z-index: -1;
}

/* Home */

.tabSection {
   height: 40px;
   width: 100%;
   overflow-x: auto;
   overflow-y: hidden;
   background-color: rgb(144, 150, 247);
   z-index: 0;
   display: flex;
   align-items: center;
   user-select: none;
}

.allTabs {
   display: flex;
   margin: 0 10px;
}

@keyframes expandTabAnimate {
   0% {width: 25px;font-size: .2rem;}
   100% {width: 125px;font-size: initial;}
}

@keyframes contractTabAnimate {
   0% {width: 125px;font-size: initial;}
   100% {width: 25px;font-size: .2rem;}
}

.tab {
   height: 35px;
   width: 125px;
   display: flex;
   align-items: center;
   border-right: 2px solid black;
}

.tab.active {
   background-color: rgb(177,182,250);
   transition: all .2s ease-in-out;
}

.tab.animateExpand {
   animation: expandTabAnimate .2s;
}

.tab.animateContract {
   animation: contractTabAnimate .2s;
}

.tabName {
   font-family: Verdana, Geneva, Tahoma, sans-serif;
   margin-right: 25px;
   margin-left: 25px;
   cursor: default;
}

.close, .addTab {
   font-weight: bold;
   cursor: pointer;
}

.addTab {
   font-size: 1.7rem;
}

/* Text Area */

.area {
   height: 80vh;
   border: .2px solid black;
   margin: 0 20px;
   padding: 15px;
   font-size: 1.2rem;
   font-family: cursive;
   overflow-y: auto;
}

.area:focus-within {
   outline: none;
}

.area::-webkit-scrollbar {
   width: 10px;
}

.area::-webkit-scrollbar-track:hover {
   background-color: #f1f1f1;
   cursor: pointer;
}

.area::-webkit-scrollbar-thumb {
   background-color: #888;
   border-radius: 10px;
}

.area::-webkit-scrollbar-thumb:hover {
   background-color: #555;
}

/* Logister */

.bg {
   background-image: url('./logister.jpg');
   position: absolute;
   z-index: -1;
   width: 100%;
   height: 100%;
   filter: blur(5px);
}

.logisterForm {
   width: 350px;
   display: flex;
   flex-direction: column;
   justify-content: center;
}

.logisterForm > .otherLink {
   text-align: center;
   margin-top: 20px;
   font-size: 1.1rem;
}

.logisterForm > .otherLink > a {
   color: #fff;
   text-decoration: none;
}

.material-icons {
   position: relative;
   top: 45px;
   left: 10px;
   cursor: default;
   width: min-content;
}

.logisterForm > input {
   font-family: Verdana, Geneva, Tahoma, sans-serif;
   width: 100%;
   outline: none;
   background-color: #fff;
   border-radius: 4px;
   border: none;
   display: block;
   padding: 0.9rem 0.7rem;
   box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
   font-size: 17px;
   color: #4A4A4A;
   text-indent: 40px;
   margin-top: 10px;
}

.submit, .deleteUser, .changeUserDetails, .changePassword, .confirmButton {
   outline: none;
   border: none;
   cursor: pointer;
   display: inline-block;
   margin: 0 auto;
   padding: 0.9rem 2.5rem;
   text-align: center;
   background-color: #47AB11;
   color: #fff;
   border-radius: 4px;
   box-shadow: 0px 3px 6px rgb(0 0 0 / 16%);
   font-size: 17px;
   margin-top: 30px;
   transition: all 0.3s ease;
}

.submit:hover, .deleteUser:hover, .changeUserDetails:hover, .changePassword:hover, .confirmButton:hover {
   background-color: #fff;
   color: #47AB11;
}

.mssg {
   font-family: Georgia, 'Times New Roman', Times, serif;
   background-color: #54ac25;
   color: #fff;
   height: 45px;
   padding: 10px;
   text-align: center;
   cursor: default;
   opacity: 0;
   transition: all .3s ease-in;
   margin-top: -50px;
}

/* Nav Bar */

nav > ul {
   display: flex;
   justify-content: flex-start;
   align-items: center;
   list-style: none;
   height: 60px;
   background-color: rgb(177, 182, 250);
}

.navEl {
   height: 60px;
   display: flex;
   align-items: center;
   justify-content: center;
   flex-direction: column;
   cursor: pointer;
   font-size: 1.2rem;
   font-family: cursive;
   background-color: rgb(177, 182, 250);
   transition: all .2s ease-in-out;
   position: relative;
}
.navEl:hover {
   background-color: rgb(159, 164, 252);
}

.navEl.menu > span {
   padding: 20px 20px 15px 20px;
}

.webLogo:hover {
   background-color: rgb(177, 182, 250);
}

.webLogo > img {
   width: 50px;
   height: 50px;
   margin: 0 10px;
   transition: transform .5s ease-in-out;
}

.webLogo > img:hover {
   transform: rotate(360deg)
}

.clickSpan {
   user-select: none;
}

/* Menus */

.menuList {
   list-style: none;
   background-color: rgb(135, 143, 248);
   width: 225px;
   font-size: 1rem;
   font-family: cursive;
   position: absolute;
   top: 60px;
   left: 0;
   display: none;
   opacity: 0;
   user-select: none;
}

.menuList2 {
   width: 150px;
}

.menuList3 {
   width: 300px;
}

.menuList4 {
   width: 200px;
}

@keyframes expandMenu {
   0% {display: none;opacity: 0;}
   1% {display: block;}
   100% {opacity: 1;}
}

@keyframes contractMenu {
   0% {display: block;opacity: 1;}
   100% {display: none;opacity: 0;}
}

.menuList.expand {
   animation: expandMenu .2s;
   display: block;
   opacity: 1;
}

.menuList.contract {
   animation: contractMenu .2s;
   display: block;
}

.menuList > li {
   display: flex;
   align-items: center;
   transition: all .15s ease-out;
   cursor: pointer;
   padding: 5px 15px;
}

.menuMainSpan {
   display: flex;
   align-items: center;
}

.menuList > li:not(.menuSeperate):hover {
   background-color: rgb(168, 172, 252)
}

li.menuSeperate {
   cursor: default;
   width: 160px;
   position: relative;
   right: 5px;
}

.menuSeperate > hr {
   width: 100%;
   border: 1px solid;
}

.shortcut {
   position: absolute;
   right: 10px;
   font-size: .9rem;
   opacity: .6;
}

.done {
   position: absolute;
   left: 90px;
   top: 37px;
   cursor: pointer;
}

.menuList > li.disabled {
   background-color: rgb(116, 123, 248);
   opacity: .6;
   cursor: default;
   user-select: none;
}

.menuList > li.disabled:hover {
   background-color: rgb(116, 123, 248);
}

/* Profile Pic */
.navProfilePicLi {
   pointer-events: none;
   margin-right: 3vw;
}

.navProfilePic {
   width: 50px;
   height: 50px;
   border-radius: 50%;
}

/* Log out */

.navEl.logout {
   margin-left: auto;
}

.navEl.logout > button {
   cursor: pointer;
   width: 100%;
   height: 100%;
   background-color: transparent;
   border: none;
   padding: 0 20px;
   font-size: 1.2rem;
   font-family: cursive;
}

/* Links */

.navEl > a {
   padding: 0 20px;
   text-decoration: none;
   color: black;
   display: flex;
   justify-content: center;
   align-items: center;
   width: 100%;
   height: 100%;
}

/* Active */

.navEl.active {
   background-color: rgb(144, 150, 247);
}

/* Profile */

/* Nav */

.profileNav > ul {
   background-color: rgb(144, 150, 247);
   height: 60px;
   margin-top: 30px;
   display: flex;
   justify-content: center;
   align-items: center;
   list-style: none;
   position: fixed;
   width: 100vw;
   z-index: 0;
}

.profileNavItem > a {
   text-decoration: none;
   margin: 20px;
   font-size: 1.1rem;
   font-family: cursive;
}

/* Image Upload */

#fileUpload {
   display: none;
}

#userImage, #fileUploadLabel {
   cursor: pointer;
   height: 250px;
   width: 250px;
   border-radius: 50%;
   position: absolute;
   left: 10vw;
   top: 40vh;
}

#fileUploadLabel {
   background-color: transparent;
   z-index: 1;
}

#userImage {
   z-index: 0;
}

/* Forms */

.userDetailsForm, .passwordForm, .deleteForm {
   display: flex;
   justify-content: center;
   align-items: center;
   flex-direction: column;
   border: 2px dashed red;
   padding: 20px;
   padding-top: 75px;
}

.userDetailsForm > .mssg, .passwordForm > .mssg, .deleteForm > .mssg {
   margin-bottom: 30px;
   background-color: red;
   width: 275px;
}

.passwordForm > .mssg {
   width: 300px;
}

.profileField {
   margin-bottom: 20px;
   align-self: flex-end;
}

.profileField > label {
   font-size: 1.1rem;
   font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.profileField > input {
   padding: 10px;
   font-size: 1.1rem;
   margin-left: 10px;
   width: 200px;
}

.changeUserDetails, .changePassword {
   width: 175px;
   font-size: .9rem;
   text-align: center;
   padding: 15px;
   margin: 10px;
}

.changePassword {
   background-color: blue;
}
.changePassword:hover {
   color: blue;
}

.confirmButton {
   margin-left: 45px;
   margin-right: 25px;
}

.deleteUser {
   background-color: red;
   width: 150px;
   font-size: .9rem;
   text-align: center;
   padding: 15px;
   margin: 10px;
   position: relative;
   right: 50px;
   top: 20px;
}
.deleteUser:hover {
   color: red;
}