/* ==========================================================================
   GLOBAL BASE STYLES & RESET
   ========================================================================== */

/* RESET & BASE */
html {
  scrollbar-color: var(--scroll-thumb) var(--scroll-track);
  scrollbar-width: thin;
  -webkit-text-size-adjust: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  overscroll-behavior: none;
}

body {
  display: block;
  margin: 0;
  padding: 0;
  height: 100%;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  max-width: 100%;
  overflow: hidden;
  background-color: var(--bg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--text-sm);
  overscroll-behavior: none;
}

@media (min-width: 940px) {
  body {
    overflow-x: hidden;
    overflow-y: hidden;
  }
}

a,
.accent {
  color: var(--custom-text-color, var(--color-primary));
  text-decoration: none;
}

a:hover {
  color: var(--color-secondary);
  text-decoration: none;
}

::selection {
  background: var(--color-secondary, #19AAD8);
  color: var(--color-zinc-900, #000000);
}

/* FORM ELEMENTS */
input[type="text"] {
  font-size: var(--text-base);
}

textarea:focus {
  outline: none;
  border: 1px solid var(--color-secondary);
  box-shadow: 0 0 5px var(--color-secondary);
}

/* HEADINGS */
h1 {
  font-family: var(--font-primary);
  font-size: 1.8em;
  color: var(--color-cmd, #A0A0A0);
  letter-spacing: 2px;
  text-align: left;
}

@media (min-width: 940px) {
  h1 {
    font-size: 2em;
    text-align: inherit;
  }
}

h2 {
  margin-bottom: 0;
}

/* NO JS FALLBACK */
.nojs {
  font-family: verdana, arial;
  color: #1a1a1a;
  font-size: 1rem;
  text-align: center;
  padding: 2rem;
  border: 0px solid #1a1a1a;
  max-width: 90vw;
}

.nojs::after {
  content: '█';
  display: inline-block;
  margin-left: 5px;
  animation: blink-caret 1s infinite steps(1);
}

@keyframes blink-caret {
  50% {
    opacity: 0;
  }
}
