@import url('https://fonts.googleapis.com/css2?family=Space+Mono:ital,wght@0,400;0,700;1,400;1,700&display=swap');

:root {
  font-family: 'Space Mono', monospace;
  line-height: 1.5;
  font-weight: 400;
  color-scheme: light dark;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  --grey900: #1F1F1F;
  --grey800: #323232;
  --grey700: #575757;
  --cream100: #FFF7E9;
  --green500: #5EEE51;
}

@mixin light-theme {
  color: var(--grey900);
  background-color: var(--cream100);
}

@mixin dark-theme {
  color: var(--cream100);
  background-color: var(--grey900);
}


* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  // border: 1px solid red;
}

body {
  overscroll-behavior: none;
  overflow-x: hidden;
}

@mixin button-style {
  display: flex;
  gap: .5rem;
  align-items: center;
  border-radius: 25px;
  height: 50px;
  padding: 0.6em 1em;
  cursor: pointer;
  box-shadow: 4px 4px 6px rgba(36,36,36,.3);
}

.nav-block {
  position: fixed;
  z-index: 3;
  margin: 2rem;
  min-width: 50px;
  width: fit-content;
  @include button-style;
  transition: color 0.3s ease, background-color 0.6s ease;

  &.dark {
    @include dark-theme;
  }

  &.light {
    @include light-theme;
  }

  &.right {
    right: 0;
  }
  
  &.bottom {
    bottom: 0;
  }
}

.menu {
  z-index: 6;
}

a {
  font-weight: 700;
  text-decoration: none;
  color: inherit;
}

.share a {
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: var(--cream100);
    background-color: var(--grey800);
    border-radius: 15px;
    width: 30px;
    height: 30px;
    padding: .4rem;
    transition: all .3s ease;

    &:hover {
      background-color: var(--green500);
      color: var(--grey800);
    }
}

h2 {
  margin: 2rem 0;
}

// Scrollbar
body::-webkit-scrollbar {
  width: 6px;
  cursor: pointer;
}
body::-webkit-scrollbar-track {
  background: transparent;
}
body::-webkit-scrollbar-thumb {
  background-color: var(--green500);
  border-radius: 20px;
  border: 3px solid var(--green500); 
}

// Responsive
@media (max-width: 576px) {
  .nav-block {
    margin: 2rem 1rem;

    &.bottom {
      display: none;
    }
  }
}