/* Reset some basic elements for consistency */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
/* body::-webkit-scrollbar {
  display: none;
} */

body {
  font-family: "Inter", sans-serif;
  background-color: var(--lightWhite);
  overflow: hidden;
}
a {
  text-decoration: none;
}
ul li {
  list-style: none;
  font-size: 1rem;
  padding: 0.5rem 0.8rem;
  margin-left: 0.5rem;
  text-transform: capitalize;
  font-weight: 500;
}

/*root*/
:root {
  --lightWhite: #ffffff;
  --darkWhite: #f3f3f3;
  --borderWhite: 1px groove #d1d7dc;
  --lightSelected: linear-gradient(
    190deg,
    rgb(172, 255, 243) 0%,
    rgb(156, 162, 255) 100%
  );
  --displayBg: linear-gradient(#e6e6e6, #f3f3f3);

  /* dark */
  --lightBlack: #11121e;
  --darkBlack: #1d1d29;
  --borderBlack: 1px groove #363b45;
  --darkSelected: linear-gradient(
    190deg,
    rgb(60, 214, 214) 0%,
    rgb(111, 0, 255) 100%
  );
  /* svg and text */
  --textColor: #11121e;
  --svgColor: invert(20%);
  /* common */
  --smooth-Box-Shadow: 0 0px 10px rgba(0, 0, 0, 0.1);
  --icon-bg: #fcfdff;
  --selectBox: #dbe9ff;
  --border-r-default: 0.5rem;
  --smoothAnimation: smoothFade 0.2s cubic-bezier(0.47, 0, 0.745, 0.715);
}

html * {
  color: var(--textColor);
}
/*common*/
.flex {
  display: flex;
}
.f-center {
  display: flex;
  align-items: center;
  justify-content: center;
}
.txt-cap {
  text-transform: capitalize;
}
.aside-m-left {
  margin-top: 3.6rem;
  margin-left: 3rem;
}
.aside-m-left-max {
  margin-left: 14rem;
}
.iconsBg {
  background-color: var(--icon-bg);
  padding: 0rem;
  border-radius: 0.3rem;
  width: fit-content;
  border: var(--borderWhite);
  &:hover {
    background-color: var(--selectBox);
  }
}
.selected {
  background: var(--lightSelected);
}
@keyframes smoothFade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/**============NavBar==============================*/
nav {
  /* border: 1px solid red; */
  padding: 0.7rem;
  background-color: var(--lightWhite);
  border-bottom: var(--borderWhite);
  justify-content: space-between;
  width: 100vw;
  position: fixed;
  top: 0;
  z-index: 1;
}
.logoContainer {
  /* border: 1px solid red; */
  width: fit-content;
  gap: 1.7rem;
}

.logo {
  width: 7rem;
  margin-top: -0.45rem;
  position: relative;
}
.logoBlack {
  background-color: white;
  border-radius: 0.5rem;
  box-shadow: 0px 4px 0px 3px white, 7px 4px 0px 4px white,
    -7px 4px 0px 4px white;
}

.linesBar,
.revelNavBtn {
  width: 1.3rem;
  margin-top: 0.45rem;
  cursor: pointer;

  & img {
    filter: var(--svgColor);
  }
}
.changeTheme {
  width: 2rem;
  border-radius: 50%;
  padding: 0.3rem;
  cursor: pointer;
  & img {
    filter: var(--svgColor);
  }
  &:hover {
    background-color: var(--selectBox);
  }
}

nav .navigate li {
  border-radius: var(--border-r-default);
  cursor: pointer;

  &:hover {
    background-color: var(--selectBox);
  }
}
.profile ul li {
  border-radius: var(--border-r-default);
  cursor: pointer;

  &:hover {
    background-color: var(--selectBox);
  }
}
.profile ul li:nth-last-child(1) {
  background: linear-gradient(
    190deg,
    rgb(60, 214, 214) 0%,
    rgb(111, 0, 255) 100%
  );
  color: white;
  font-weight: 700;

  border-radius: var(--border-r-default);

  &:hover {
    transform: scale(0.9);
  }
}
.profileIcon {
  width: 2.1rem;
  border-radius: 50%;
  padding: 0.1rem;
  cursor: pointer;
  display: none;
  margin: 0 0.8rem;
  &:hover {
    background-color: var(--selectBox);
  }
  & img {
    filter: var(--svgColor);
    margin-bottom: -0.2rem;
  }
}
.navToggle {
  & img {
    width: 2.1rem;
    border-radius: 50%;
    padding: 0.3rem;
    cursor: pointer;
    margin-right: 0.5rem;
    margin-top: -0.2rem;

    &:hover {
      background-color: var(--selectBox);
    }
  }
}
.navOpen {
  display: none;
  filter: var(--svgColor);
}
#moon {
  display: none;
  animation: spin 0.2s linear;
  margin-bottom: -0.3rem;
}
#sun {
  animation: spin 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
  margin-bottom: -0.3rem;
}
@keyframes spin {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(180deg);
  }
}
.revelNavBtn {
  display: none;
}
.nameAndClose {
  display: flex;
  justify-content: space-between;
  padding: 0.5rem 1rem;
  background-color: var(--lightWhite);
  border-bottom: var(--borderWhite);
}
/**==========Asidebar============== */
aside {
  align-items: center;
  flex-direction: column;
  gap: 1.5rem;
  top: 3.6rem;
  /* width: 13rem; */
  width: 3rem;
  height: calc(100vh - 58.9px);
  background-color: var(--lightWhite);
  border-right: var(--borderWhite);
  position: fixed;
  padding-top: 2rem;
}
.aside.transition {
  transform: translateX(-10rem);
}

aside::-webkit-scrollbar {
  width: 0.1rem; /* Width of the scrollbar */
  color: #1d1d29;
}

aside::-webkit-scrollbar-thumb {
  background-color: #2397b3;
}

aside::-webkit-scrollbar-track {
  background: white; /* Background of the scrollbar track */
}
.asideIcons {
  width: 70%;
  height: fit-content;
  cursor: pointer;
  position: relative;

  & a {
    padding: 0.2rem;
  }
  & img {
    filter: var(--svgColor);
    margin-bottom: -5px;
  }
  &:hover .asideIconName {
    display: block;
  }
}
.asideIconName {
  display: none;
  position: absolute;
  text-wrap: nowrap;
  left: 3rem;
  top: 0;
  border: var(--borderWhite);
  background-color: var(--lightWhite);
  padding: 0.5rem 0.8rem;
  border-radius: 0.5rem;
  box-shadow: var(--smooth-Box-Shadow);
  transition: 0.1s ease-in-out;
  &::before {
    content: "";
    position: absolute;
    border-bottom: var(--borderWhite);
    border-right: var(--borderWhite);
    top: 0.7rem;
    left: -0.5rem;
    width: 0.8rem;
    height: 0.8rem;
    rotate: 135deg;
    background-color: var(--lightWhite);
  }
}

/**=========Toggle Asie===============*/
.toggleAside {
  align-items: center;
  flex-direction: column;
  gap: 1rem;
  width: 14rem;
  height: 100vh;
  background-color: var(--lightWhite);
  border-right: var(--borderWhite);
  position: fixed;
  top: 0;
  padding-top: 1rem;
  transform: translateX(-15rem);
  transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
  /* border: 1px solid red; */
  z-index: 1;
}

/**==================bigaside============*/
.toolContainer {
  width: 100%;
  margin: 1rem auto;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  overflow: auto;
  height: 100%;
  padding: 2rem 1rem;
}
.toggleAside .logoContainer {
  margin-top: -15px;
  margin-left: 3px;

  .linesBar {
    width: 1.3rem;
    rotate: 180deg;
    background-color: var(--selectBox);
    padding: 0.5rem;
    border-radius: 0.5rem;
    box-sizing: content-box;
  }
}
.bigtoggleAside {
  transform: translateX(0);
  padding: 1.2rem 0;
}
.swiperUpDown {
  display: none;
}
.nameTools {
  font-size: 2rem;
  font-weight: 900;
  font-family: "Josefin Sans", sans-serif;
  background-color: #2b4162;
  background-image: linear-gradient(365deg, #ffffff 0%, #e84393 74%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  border-bottom: var(--borderWhite);
  width: fit-content;
  margin: 0 auto;
  margin-bottom: 2rem;
  padding: 0 2rem 1rem;
  text-shadow: 0px 0px 30px #ff007b;
  & img {
    width: 1.5rem;
  }
}

.bigAsideTools {
  cursor: pointer;
  font-weight: 500;
  display: flex;
  align-items: center;
  width: 100%;
  gap: 1rem;
  border-radius: 8px;
  /* border: 1px solid red; */
  & a {
    /* border: 1px solid red; */
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 0.8rem;
  }
  & img {
    width: 1.4rem;
    filter: var(--svgColor);
  }

  &:hover {
    background-color: var(--selectBox);
    /* border: var(--borderWhite); */
  }
}
a {
  display: block;
}
.UpDownBox {
  margin-top: -1rem;
  margin-right: -1rem;
  width: 3rem;
  height: 3rem;
}
.arrowUpDown {
  rotate: 90deg;
  cursor: pointer;
  margin-top: 0.8rem;
  filter: var(--svgColor);
}
.arrowUpDown.handleTranslate {
  rotate: 270deg;
  margin-top: -10px;
}
/**===============================================================*/
.displaySection {
  transition: 0.3s cubic-bezier(0.075, 0.82, 0.165, 1);
  /* border: 1px solid red; */
  width: auto;
  display: flex;
  justify-content: center;
  overflow: auto;
  max-height: calc(100vh - 3.8rem);
  position: relative;
}
.displaySection::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("Assets/Images/Pattern_30.png");
  filter: grayscale(100%);
  z-index: -1;
  opacity: 0.1;
}
.displaySection::-webkit-scrollbar,
.toolContainer::-webkit-scrollbar {
  width: 7px;
}

.displaySection::-webkit-scrollbar-thumb,
.toolContainer::-webkit-scrollbar-thumb {
  background-color: #888;
  border-radius: 10px;
}

.displaySection::-webkit-scrollbar-thumb:hover,
.toolContainer::-webkit-scrollbar-thumb:hover {
  background-color: #555;
}

.displaySection::-webkit-scrollbar-track,
.toolContainer::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 10px;
}
.contentContainer {
  max-width: 1300px;
  width: 100%;
  height: fit-content;
  /* border: 1px solid red; */
  padding: 0.5rem;
}

/******************************************/
.loader {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border: 0.5rem solid #f3f3f3;
  border-radius: 50%;
  border-top: 0.5rem solid #1f52c6;
  width: 2rem;
  height: 2rem;
  animation: spin 0.3s ease-out infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/**==============Media============== */
@media screen and (max-width: 915px) {
  .profile {
    display: none;
  }
  .revelButton.profile {
    display: block;
    position: absolute;
    top: 4.2rem;
    right: 0.5rem;
    background-color: var(--lightWhite);
    padding: 1rem;
    border-radius: 12px;
    border: var(--borderWhite);
    box-shadow: var(--smooth-Box-Shadow);
    animation: var(--smoothAnimation);
    &::before {
      content: "";
      width: 1.5rem;
      height: 1.5rem;
      border-left: var(--borderWhite);
      border-bottom: var(--borderWhite);
      background: var(--lightWhite);
      top: -0.9rem;
      right: 1.2rem;
      position: absolute;
      rotate: 135deg;
    }
    .sButton {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 1rem;
    }
    & ul li {
      margin-left: 0rem;
      background-color: var(--selectBox);
      z-index: 1;
    }
  }

  .profileIcon {
    display: block;
  }

  /* nav .navigate {
    margin-right: -7.5rem;
  } */
}
@media screen and (max-width: 695px) {
  /* .navigate {
    display: none;
    position: absolute;
    right: 0;
  } */
  nav .revelNav.navigate {
    display: block;
  }
  nav .navigate {
    animation: var(--smoothAnimation);

    display: none;
    position: absolute;
    right: 3.5rem;
    top: 4.2rem;
    background-color: var(--lightWhite);
    box-shadow: var(--smooth-Box-Shadow);
    border-radius: 0.5rem;
    padding: 0.5rem;
    flex-direction: column;
    border: var(--borderWhite);

    /* border: 1px solid red; */

    &::before {
      content: "";
      width: 1.5rem;
      height: 1.5rem;
      border-left: var(--borderWhite);
      border-bottom: var(--borderWhite);
      background: var(--lightWhite);
      top: -0.9rem;
      right: 3.6rem;
      position: absolute;
      rotate: 135deg;
    }
  }
  nav .navigate li {
    border-radius: var(--border-r-default);
    cursor: pointer;
    text-align: center;
    margin-left: 0;
    margin-top: 0.49rem;

    &:hover {
      background-color: var(--selectBox);
    }
  }
  .navOpen {
    display: block;
  }
}
@media screen and (max-width: 600px) {
  .toggleAside.swipeOpen {
    transform: translateX(0rem) translateY(0%);
  }
  .toggleAside.swipeClose {
    transform: translateX(0rem) translateY(88%);
  }
  .toggleAside {
    top: auto;
    bottom: 0;
    width: 100%;
    height: fit-content;
    padding: 0;
    border-radius: 1rem 1rem 0 0;
    border: var(--borderWhite);
    height: 50vh;
    & .logoContainer {
      display: none;
    }
    & .swiperUpDown {
      display: block;
      width: 100%;
    }
    & .drag {
      display: flex;
      justify-content: center;
      align-items: center;
      & img {
        width: 5vh;
      }
    }
    & .nameTools {
      display: none;
      text-shadow: 0px 0px 15px var(--selectBox);
      background-image: linear-gradient(365deg, #ff5a5a 0%, #ff56a8 74%);
    }
  }

  .toolContainer {
    padding-top: 1rem;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-evenly;
    height: 90%;
  }
  .bigAsideTools {
    width: 45%;
    height: 3rem;
    & p {
      font-size: 0.8rem;
      font-weight: 700;
    }
  }
  .swiperUpDown {
    border-radius: 1rem 1rem 0 0;
    overflow: hidden;
    & .nameTools {
      display: block;
      border: 0;
      margin: 0;
      padding: 0;
      font-size: 1.5rem;
      & img {
        width: 1rem;
      }
    }
    & .drag {
      background-color: var(--lightWhite);
      border-top: var(--borderWhite);
      padding-top: 5px;
      width: 100%;
      height: 0.7rem;
    }
  }
  .linesBar {
    display: none;
  }
  .swiperUpDown .linesBar {
    display: none;
  }
  .revelNavBtn {
    display: block;
  }
  .navToggle {
    display: none;
  }

  .revelNav.navigate {
    display: block;
  }
  nav .navigate {
    display: none;
    position: absolute;
    width: fit-content;
    left: 0.4rem;
    top: 3.5rem;

    &::before {
      top: -0.6rem;
      left: 0.8rem;
      position: absolute;
      rotate: 135deg;
      width: 1rem;
      height: 1rem;
    }
  }
  .aside {
    display: none;
  }
  .aside-m-left {
    margin-left: 0rem;
  }
}
@media screen and (max-width: 300px) {
  .toolContainer {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
  }
  .bigAsideTools {
    width: 90%;

    & p {
      font-size: 0.9rem;
      font-weight: 700;
    }
  }
}

/* ==============For */
@media screen and (max-width: 750px) {
  .aside.transition {
    transform: translateX(0rem);
  }
}
