/* #################### GLOBAL SETTINGS #################### */

/* Scrollbar Styling */
::-webkit-scrollbar {
  width: 8px;
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* General Body Styling */
body {
  font-family: "Calibri", sans-serif;
  line-height: 1.6;
  margin: 0;
  padding: 0;
  overflow-x: hidden !important; /* Prevent horizontal scrolling */
}

/* Anchor Links */
a {
  color: #000000;
  -webkit-user-drag: none; /* Disable dragging */
  transition: 0.5s;
}

a:hover {
  color: #0077ed;
  transition: 0.5s;
}

/* Horizontal Rule */
hr {
  width: 80%;
}

/* Images */
img {
  -webkit-user-drag: none; /* Disable dragging */
}

/* Buttons */
button {
  overflow: hidden;
}

/* #################### HEADER #################### */

/* Navbar */
.Navbar {
  padding-top: 20px;
  background-color: #dddddd;
  border-radius: 0 0 16px 16px;
  display: flex;
  flex-direction: row;
  position: sticky;
  top: 0;
  z-index: 5;
  overflow-x: hidden;
}

/* Navbar Links */
.NavLink {
  text-decoration: none;
  font-weight: bold;
  color: black;
  margin: 5px;
  transition: 0.2s;
}

.NavLink:hover {
  color: #0077ed;
}

/* Right Navbar Section */
#RightNavPart {
  width: 50%;
  display: flex;
  justify-content: right;
}

/* Left Navbar Section */
#LeftNavPart {
  width: 50%;
  display: flex;
  justify-content: left;
  margin-left: 5px;
  margin-right: 5px;
}

/* Logo in Navbar */
#LaptopLogo {
  width: 5% !important;
  margin-left: 5px !important;
  margin-right: 5px !important;
}

/* Logo Name */
#LogoName {
  margin: 7px 5px 5px 10px;
  font-weight: 700;
}

/* Logo Section */
#LogoSection {
  text-decoration: none;
}

/* #################### FOOTER #################### */

/* Footer Container */
footer {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}

/* Upper Footer */
.UpperFooter {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 10px;
  margin-left: auto;
  margin-right: auto;
  width: 75%;
}

/* Footer Logo */
#FooterLogo {
  width: 25%;
  display: flex;
  justify-content: left;
}

#FooterLogo img {
  margin: 10px;
  width: 40px;
}

/* Footer Social Links */
#FooterSocials {
  width: 25%;
  display: flex;
  justify-content: right;
}

.SocialsLink {
  margin-left: 5px;
  margin-right: 5px;
  transition: 0.2s;
  width: 2rem;
}

.SocialsLink:hover {
  transition: 0.2s;
  width: 2.5rem;
  /* TODO: Add hover color (e.g., blue) */
}

/* Lower Footer */
.LowerFooter {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  padding: 10px;
  width: 100%;
}

.LowerFooter p,
.LowerFooter a {
  color: #555555;
  margin-left: 10px;
  margin-right: 10px;
}

/* #################### ANIMATIONS #################### */

/* Hidden Animation (Slide from Left) */
.hiddenX {
  opacity: 0;
  filter: blur(5px);
  transform: translateX(-100%);
  transition: all 1.25s;
}

/* Hidden Animation (Slide from Right) */
.hiddenX-left {
  opacity: 0;
  filter: blur(5px);
  transform: translateX(100%);
  transition: all 0.75s;
}

/* Show Animation */
.show {
  filter: blur(0);
  transform: translateX(0);
  opacity: 1;
}
