@import url("https://fonts.googleapis.com/css?family=Inconsolata:400");

:root {
  --main-color: #00ff00;
  --back-color: #0d0d0d;
  --shadow-color: #000000;
	--error-color: #ff0000;
}

html {
  background: var(--back-color) url(../assets/binarytile2.webp);
	background-size: 4% auto;
	box-shadow: inset 0 0 5vh black;
	height: 100vh;
}
html body {
  margin: 0;
}
html body:before {
  content: "";
  position: absolute;
  height: 100%;
  width: 100%;
  background: url(../assets/splat.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: auto 90%;
}
html body .notification {
  position: absolute;
  width: 60%;
  margin: 0;
  text-align: center;
  left: 50%;
  top: 5vh;
  transform: translateX(-50%);
  padding: 1vh;
  background-color: var(--back-color);
  color: white;
  font-family: "Inconsolata", arial;
  font-size: 2vh;
	border: 1px solid yellow;
	box-shadow: 0 0 1vh yellow, inset 0 0 1vh yellow;
  border-radius: 1vh;
  z-index: 2;
  animation-name: hide;
  animation-duration: 1s;
  animation-iteration-count: 1;
  animation-delay: 5s;
  animation-fill-mode: forwards;
}
html body .bad {
	border: 1px solid var(--error-color);
	box-shadow: 0 0 1vh var(--error-color), inset 0 0 1vh var(--error-color);
}
html body .good {
	border: 1px solid var(--main-color);
	box-shadow: 0 0 1vh var(--main-color), inset 0 0 1vh var(--main-color);
}
html body header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 14vh;
  z-index: 1;
}
html body header nav {
  padding: 3vh;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
html body header nav .logo {
  position: relative;
  text-decoration: none;
  height: 10vh;
  width: 10vh;
  background: url(../assets/hyperpassicon.webp);
  background-repeat: no-repeat;
  background-size: cover;
  transition: transform 0.1s;
}
html body header nav .logo:hover {
  transform: scale(0.95, 0.95);
}
html body header nav .logo:before {
  content: "";
  position: absolute;
  top: -0.5vh;
  left: -0.5vh;
  height: 100%;
  width: 100%;
  border: 0.5vh solid var(--main-color);
  border-radius: 90vh;
  box-shadow: 0 0 1vh var(--main-color), inset 0 0 1vh var(--main-color);
}
html body main {
  position: relative;
  font-family: "Inconsolata", arial;
  display: flex;
  justify-content: center;
  flex-flow: wrap;
  align-items: center;
  height: 100vh;
}
html body main .copy {
  margin: 0;
  text-align: center;
  opacity: 0.1;
  font-family: "Inconsolata", arial;
  font-size: 1vh;
  color: white;
  text-decoration: none;
}
html body main .panel {
  position: relative;
  box-shadow: 0 0 1vh var(--shadow-color);
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: var(--back-color);
  width: 40vh;
  border-radius: 1vh;
  padding: 2vh 1vh 2vh 1vh;
}
@media screen and (max-width: 600px) {
  html body main .panel {
    width: 34vh;
  }
}
@media screen and (max-device-width: 600px) {
  html body main .panel {
    width: 34vh;
  }
}
@media screen and (max-width: 450px) {
  html body main .panel {
    width: 30vh;
  }
}
@media screen and (max-device-width: 450px) {
  html body main .panel {
    width: 30vh;
  }
}
html body main .panel:before {
  content: "";
  position: absolute;
  transform: skew(10deg);
  border-radius: 1vh;
  animation-name: leftWing;
  animation-duration: 2s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  top: 2vh;
  left: 5vh;
  height: 50%;
  width: 10vh;
  background-color: var(--main-color);
  z-index: -1;
  box-shadow: 0 0 1vh var(--main-color);
}
html body main .panel:after {
  content: "";
  position: absolute;
  transform: skew(10deg);
  border-radius: 1vh;
  animation-name: rightWing;
  animation-duration: 2s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
  bottom: 2vh;
  right: 5vh;
  height: 50%;
  width: 10vh;
  background-color: var(--main-color);
  z-index: -1;
  box-shadow: 0 0 1vh var(--main-color);
}
html body main .panel hr {
  background: linear-gradient(90deg, #0d0d0d, lime, #0d0d0d);
  border: none;
  height: 0.5vh;
}
html body main .panel .banner {
  width: 100%;
  height: 6vh;
  background-image: url(../assets/banner4.webp);
  background-position: center;
  background-size: 100% auto;
  background-repeat: no-repeat;
}
html body main form {
  border-radius: 1vh;
  padding: 1vh;
}
html body main form .private {
  display: flex;
  flex-flow: wrap;
  align-items: center;
  gap: 0 1vh;
}
html body main form .private .bar {
  display: none;
  font-family: "Inconsolata", arial;
  font-size: 2vh;
  width: 100%;
  padding: 0.5vh 0 0.55vh 0;
  background-color: #1a1a1a;
  text-align: center;
  color: white;
  font-weight: bold;
}
html body main form .private button {
  margin: 0;
  padding: 0;
  position: relative;
  cursor: pointer;
  border: none;
  height: 2.5vh;
  width: 4vh;
  background-color: transparent;
}
html body main form .private button .eye {
  position: relative;
  height: 100%;
  width: 100%;
  border-radius: 100%;
  background-color: transparent;
  border: 1px solid var(--main-color);
  transition: height 0.1s;
}
html body main form .private button .eye:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: 50%;
  width: 20%;
  border-radius: 80%;
  background-color: var(--main-color);
}
html body main form .private button .eye:active {
  height: 0;
}
html body main form .h-captcha {
	padding: 0;
  overflow: hidden;
}
html body main form .h-captcha iframe {
	display: block;
	filter: invert(96.6%);
}
html body main form .buttons {
  padding: 1vh;
  display: flex;
  gap: 1vh 1vh;
}
html body main form a {
	margin: 0;
	text-decoration: none;
  font-family: "Inconsolata", arial;
  font-size: 1.25vh;
  color: lime;
  cursor: pointer;
	transition: text-shadow 0.2s;
}
html body main form a:hover {
	text-shadow: 0 0 0.5vh var(--main-color);
}

html .text {
  font-family: "Inconsolata", arial;
  background-color: #1a1a1a;
  border: none;
  font-size: 2vh;
  padding: 1vh 0 1vh 0;
  text-indent: 1vh;
  color: white;
}
html .text50 {
	font-family: "Inconsolata", arial;
  background-color: #1a1a1a;
  border: none;
  font-size: 2vh;
  padding: 1vh 0 1vh 0;
  text-indent: 1vh;
  color: white;
	width: 50%;
}
html .button {
  font-family: "Inconsolata", arial;
  font-size: 2vh;
  color: lime;
  cursor: pointer;
  text-decoration: none;
  padding: 1.5vh 3vh 1.5vh;
  background-color: transparent;
  border: 1px solid var(--main-color);
  box-shadow: 0 0 0.25vh var(--main-color), inset 0 0 0.25vh var(--main-color);
  transition: background 0.1s, color 0.1s, box-shadow 0.1s, opacity 0.1s;
}
html .button:hover {
  color: #0d0d0d;
  box-shadow: 0 0 1vh var(--main-color);
  background: var(--main-color);
}
html .button:disabled {
  opacity: 0.25;
}
html .big-top {
  margin-top: 2vh;
}
html .big-bottom {
  margin-bottom: 2vh;
}
html .gap {
  margin: 1vh 0 1vh 0;
}
html .top {
  margin: 1vh 0 0 0;
}
html .bottom {
  margin: 0 0 1vh 0;
}
html .flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1vh 1vh;
}
html .first {
  margin-top: 5vh;
  height: 95vh;
}
html .wrap {
  flex-flow: wrap;
}
html .grow {
	flex-grow: 1;
}
html .stretch {
	width: 100%;
}
html .splat {
  background: url(../assets/splat.webp);
  background-repeat: no-repeat;
  background-size: auto 90%;
  background-position: center;
}

@keyframes rightWing {
  100% {
    right: -3vh;
  }
}
@keyframes leftWing {
  100% {
    left: -3vh;
  }
}
@keyframes hide {
  100% {
    top: -8vh;
  }
}

::-webkit-scrollbar {
  width: 0.75vh;
}

::-webkit-scrollbar-track {
  box-shadow: none;
  background-color: rgba(0, 0, 0, 0.25);
}

::-webkit-scrollbar-thumb {
  background-color: var(--main-color);
  cursor: pointer;
  outline: 0;
}