* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	font-family: 'Pixelify Sans', sans-serif;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #0d0e13;
	background-size: cover;
	color: white;
	font-weight: 300;
}

::selection {
	background-color: #9ab1db;
	color: black;
}

::-webkit-scrollbar {
  width: 3px;
}

::-webkit-scrollbar-track {
  background-color: #0d0e13;
}

::-webkit-scrollbar-thumb {
  background-color: #9ab1db;
}

.container {
	text-align: center;
	margin-top: 5px;
}

#yay {
	background-color: #12141a;
	color: white;
	border: 1px solid #597bbb;
	height: 20px;
	width: 50px;
	font-size: 10px;
	font-family: 'Pixelify Sans', sans-serif;
	cursor: pointer;
}

#yay:hover {
	background-color: #9ab1db;
	color: black;
}

#tip {
    position: fixed;
    z-index: 3;
    background-color: #12141a;
    color: #9ab1db;
    border: 1px solid #597bbb;
    padding: 5px 10px;
    font-size: 10px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
}

#tip.show {
    opacity: 1;
}

#tip::before,
#tip::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    left: 50%;
    transform: translateX(-50%);
    border-style: solid;
    border-color: transparent;
}

#tip::before {
    top: 100%;
    border-width: 6px; 
    border-top-color: #597bbb;
}

#tip::after {
    top: 100%;
    border-width: 5px;
    border-top-color: #0c0c0c;
}

#oneko {
    width: 32px;
    height: 32px;
    background-image: url('oneko.gif');
    display: inline-block;
    vertical-align: middle;
    margin-top: -63px;
	  margin-left: 183px;
	  image-rendering: pixelated;
}

.card {
	padding: 20px;
	max-height: 90vh;
	max-width: 340px;
	border: 1px solid #597bbb;
	text-align: left;
	display: inline-block;
	position: relative;
	overflow-y: auto;
}

.pfp {
	width: 90px;
	height: 90px;
	margin-top: 5px;
	z-index: 2;
}

.pfp:hover {
	border: 1px solid #9ab1db;
}

.name {
	margin-bottom: 10px;
	color: #fff;
}

.name p {
	font-size: 30px;
}

.socials {
	padding: 12px;
	border: 1px solid #597bbb;
	margin-bottom: 15px;
}

.socials p {
	font-size: 18px;
	margin-top: -3px;
	margin-bottom: 5px;
}

.projects {
	padding: 12px;
	border: 1px solid #597bbb;
	margin-bottom: 15px;
}

.projects p {
	font-size: 18px;
	margin-top: -3px;
	margin-bottom: 5px;
}

.badges {
	margin-left: -9px;
}

.badges img {
	transform: scale(0.8);
	margin-bottom: -7px;
	margin-right: -16px;
}

.badges img:hover {
	border: 1px solid #9ab1db;
}

#enter-screen {
	position: fixed;
	width: 100%;
	height: 100vh;
	background: #000000f1;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 99999;
	opacity: 1;
	cursor: pointer;
}

#enter-text {
	font-family: 'Pixelify Sans', sans-serif;
	padding: 15px 30px;
	font-size: 20px;
	background: transparent;
	border: none;
	color: #9ab1db;
	cursor: pointer;
}

.snowflake {
  width: 13px;
  height: 13px;
  background-color: #9ab1db;
  -webkit-mask-image: url('snowflake.png');
  mask-image: url('snowflake.png');
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  image-rendering: pixelated;
}

@-webkit-keyframes snowflakes-fall {
  0% { top: -5% }
  100% { top: 100% }
}

@-webkit-keyframes snowflakes-shake {
  0% { -webkit-transform: translateX(0px); transform: translateX(0px) }
  50% { -webkit-transform: translateX(80px); transform: translateX(80px) }
  100% { -webkit-transform: translateX(0px); transform: translateX(0px) }
}

@keyframes snowflakes-fall {
  0% { top: -5% }
  100% { top: 100% }
}

@keyframes snowflakes-shake {
  0% { transform: translateX(0px) }
  50% { transform: translateX(80px) }
  100% { transform: translateX(0px) }
}

.snowflake {
  position: fixed;
  top: -50%;
  z-index: 9999;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  cursor: default;
  -webkit-animation-name: snowflakes-fall, snowflakes-shake;
  -webkit-animation-duration: 8s, 3s; 
  -webkit-animation-timing-function: linear, ease-in-out;
  -webkit-animation-iteration-count: infinite, infinite;
  -webkit-animation-play-state: running, running;
  animation-name: snowflakes-fall, snowflakes-shake;
  animation-duration: 8s, 3s;
  animation-timing-function: linear, ease-in-out;
  animation-iteration-count: infinite, infinite;
  animation-play-state: running, running;
}

.snowflake:nth-of-type(0) { left: 1%; -webkit-animation-delay: 0s, 0s; animation-delay: 0s, 0s }
.snowflake:nth-of-type(1) { left: 10%; -webkit-animation-delay: 1s, 1s; animation-delay: 1s, 1s }
.snowflake:nth-of-type(2) { left: 20%; -webkit-animation-delay: 6s, 0.5s; animation-delay: 6s, 0.5s }
.snowflake:nth-of-type(3) { left: 30%; -webkit-animation-delay: 4s, 2s; animation-delay: 4s, 2s }
.snowflake:nth-of-type(4) { left: 40%; -webkit-animation-delay: 2s, 2s; animation-delay: 2s, 2s }
.snowflake:nth-of-type(5) { left: 50%; -webkit-animation-delay: 8s, 3s; animation-delay: 8s, 3s }
.snowflake:nth-of-type(6) { left: 60%; -webkit-animation-delay: 6s, 2s; animation-delay: 6s, 2s }
.snowflake:nth-of-type(7) { left: 70%; -webkit-animation-delay: 2.5s, 1s; animation-delay: 2.5s, 1s }
.snowflake:nth-of-type(8) { left: 80%; -webkit-animation-delay: 1s, 0s; animation-delay: 1s, 0s }
.snowflake:nth-of-type(9) { left: 90%; -webkit-animation-delay: 3s, 1.5s; animation-delay: 3s, 1.5s }
.snowflake:nth-of-type(10) { left: 3%; -webkit-animation-delay: 0.5s, 0.2s; animation-delay: 0.5s, 0.2s }
.snowflake:nth-of-type(11) { left: 13%; -webkit-animation-delay: 5s, 1.8s; animation-delay: 5s, 1.8s }
.snowflake:nth-of-type(12) { left: 23%; -webkit-animation-delay: 7s, 0.8s; animation-delay: 7s, 0.8s }
.snowflake:nth-of-type(13) { left: 33%; -webkit-animation-delay: 3.5s, 2.5s; animation-delay: 3.5s, 2.5s }
.snowflake:nth-of-type(14) { left: 43%; -webkit-animation-delay: 1.5s, 2.2s; animation-delay: 1.5s, 2.2s }
.snowflake:nth-of-type(15) { left: 53%; -webkit-animation-delay: 8.5s, 3.2s; animation-delay: 8.5s, 3.2s }
.snowflake:nth-of-type(16) { left: 63%; -webkit-animation-delay: 6.5s, 2.5s; animation-delay: 6.5s, 2.5s }
.snowflake:nth-of-type(17) { left: 73%; -webkit-animation-delay: 4s, 1.2s; animation-delay: 4s, 1.2s }
.snowflake:nth-of-type(18) { left: 83%; -webkit-animation-delay: 0.8s, 0.3s; animation-delay: 0.8s, 0.3s }
.snowflake:nth-of-type(19) { left: 93%; -webkit-animation-delay: 5.5s, 1.7s; animation-delay: 5.5s, 1.7s }

@media (min-width: 1200px) {
  .container {
    transform: scale(1.09);
  }
}

@media (min-width: 1300px) {
  .container {
    transform: scale(1.3);
  }
}

@media (min-width: 1800px) {
  .container {
    transform: scale(1.4);
  }
}