@import url('https://fonts.googleapis.com/css2?family=Google+Sans+Flex:opsz,wdth,wght,GRAD,ROND@6..144,25..151,1..1000,100,100&family=Quicksand:wght@300..700&display=swap');

body {
	padding-left: 16px;
	padding-right: 16px;
	color: white;
	font-family: "Google Sans Flex", "Adwaita Sans", Cantarell, Bahnschrift, Ubuntu, sans-serif;
	font-variation-settings: "slnt" 0, "GRAD" 100, "ROND" 100;
	min-height: 100vh;
	margin: 0;
	/* scale: 1.0; transition-duration: 500ms; */
}

h1 {font-weight: 800;}

header {
	position: fixed;
	overflow: hidden;
	/* display: flex; */
	border-radius: 25px;
	width: calc(100vw - 64pt - 230px - 32pt);
	height: 50px;
	background: none;
	backdrop-filter: blur(10px) brightness(60%);
	border: solid 3px rgba(255, 255, 255, 0.25);
	align-items: flex-start;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.750, 0.000, 0.250, 1.000);
	left: 32pt; top: 32pt;
	z-index: 256;
}
header > img {
	position: absolute;
	opacity: 1.0;
	height: 100%;
	top: 0; left: 0;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650);
}

header:hover > img {
	opacity: 0.0;
	top: -25pt;
}
header:hover > .HeaderText {
	top: -30pt;
	opacity: 0.0;
}
header:hover {
	/* height: 200px; */
	transition-duration: 1000ms;
	backdrop-filter: none;
}
header:hover > .HeaderBG, .HeaderURLPreview > .HeaderBG {
	opacity: 1.0;
	transition-duration: 500ms;
}
header:hover > .dropdown-content {
	top: 10px;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650);
	opacity: 1.0;
}
:has(header:hover) body > .HeaderFX, :has(footer:hover) body > .HeaderFX {
	backdrop-filter: blur(16px);
	background: #000a;
}

.HeaderBG {
	position: absolute;
	width: 100%; height: 100%;
	background: linear-gradient(90deg,rgba(255, 117, 255, 0.2) 0%, rgba(66, 161, 255, 0.2) 100%);
	opacity: 0.0;
	transition-duration: 300ms;
}
.HeaderFX {
	position: fixed;
	top: 0;
	transform: translateX(-12pt);
	width: 100vw;
	height: 100vh;
	pointer-events: none;
	backdrop-filter: none;
	background: transparent;
	z-index: 255;
	transition-duration: 500ms;
}
.HeaderText {
	position: absolute;
	text-decoration-line: none;
	user-select: none;
	color: white;
	font-size: 25px;
	font-weight: 800;
	padding-left: 46px;
	padding-top: 15px;
	padding-right: 15px;
	opacity: 1.0;
	top: 0;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650);
}
.HeaderText:after {
	content: "•••";
	pointer-events: none;
	font-size: 32px;
	position: absolute;
	top: 8px;
	padding-left: 32px;
	display: none;
}

.dropdown-content {
	top: 50px;
	position: absolute;
	background-color: transparent;
	min-width: 212px;
	transition-duration: 300ms;
	opacity: 0.0;
}

.dropdown-content a {
	color: white;
	font-size: 24px;
	padding: 6px 16px;
	text-decoration: none;
	text-shadow: none;
	transition-duration: 500ms;
	font-variation-settings: "slnt" 0, "wdth" 100, "GRAD" 100, "ROND" 100;
}
.dropdown-content:has(a:hover) > a:not(:hover):not(.unAvailable) {
	font-variation-settings: "slnt" 0, "wdth" 85, "GRAD" 100, "ROND" 100;
	transition-duration: 300ms;
	/* transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650); */
}
.dropdown-content:has(a:hover) > a.unAvailable {
	color: gray;
	cursor: not-allowed;
	transition-duration: 300ms;
	/* transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650); */
}
.dropdown-content a:not(.unAvailable):hover {
	font-variation-settings: "slnt" 0, "wdth" 125, "GRAD" 100, "ROND" 100;
	color: rgb(0, 70, 255);
	transition-duration: 300ms;
}

.HeaderURL {
	font-size: 25px;
	position: absolute;
	top: -60pt; left: 16pt;
	transition-duration: 500ms;
}

.HeaderURLPreview > .HeaderText {top: 30pt; opacity: 0.0;}
.HeaderURLPreview > img {top: 30pt; opacity: 0.0;}
.HeaderURLPreview > .HeaderURL  {top: 12px;}


@media (pointer:none), (pointer:coarse) {
	.HeaderText:after {display: unset;}
	.iconist {margin-left: 0px!important;}
	.iconist:before {margin-right: 4px; rotate: 0deg; opacity: 1.0;}
	
	a.unAvailable {
		color: gray;
		/* transition-timing-function: cubic-bezier(0.250, 0.000, 0.500, 1.650); */
	}
}

a.HeaderText {vertical-align: top;}


footer {
	border-radius: 25px;
	display: flex;
	padding: 0 10px;
	position: fixed;
	right: 32pt; top: 32pt;
	width: 230px;
	height: 50px;
	align-items: center;
	backdrop-filter: blur(10px) brightness(60%);
	border: solid 3px rgba(255, 255, 255, 0.25);
	color: white;
	text-align: left;
	z-index: 256;
	transition-duration: 500ms;
	transition-timing-function: cubic-bezier(0.750, 0.000, 0.250, 1.000);
	flex-direction: column;
	overflow-y: hidden;
	overflow-x: hidden;
}
footer:hover {
	height: 300px;
	transition-duration: 300ms;
	transition-timing-function: cubic-bezier(0.750, 0.000, 0.250, 1.000);
	backdrop-filter: none;
}

.specialFooter {
	border-radius: 25px;
	display: flex;
	padding: 0 10px;
	position: fixed;
	left: 16pt; bottom: 16pt;
	width: max-content;
	height: 50px;
	align-items: center;
	backdrop-filter: blur(10px);
	border: solid 3px rgba(255, 255, 255, 0.25);
	color: white;
	text-align: left;
	z-index: 100;
	overflow-y: hidden;
}
.specialFooter > * {
	margin: 0 4pt;
}

hr {
	height: 8px;
	border: none;
	background: #007bff;
	border-radius: 16px;
	margin-left: 16px;
	margin-right: 16px;
	transition-duration: 200ms;
} /* Just for laughs and giggles */
hr:hover{background: #ff7cf0;}

#list tr {background: #000000a0!important;}

.link {
	transform-origin: left;
	transition-duration: 400ms;
}
.link a {
	color: white!important;
	width: 100%;
	display: inline-block;
	text-shadow: none;
	text-decoration: none;
}
.link:hover {
	text-shadow: 0 0 5px white;
	font-size: 20px;
	transition-duration: 300ms;
}
.link:active {
	text-shadow: none;
	font-size: 14px;
	transition-duration: 200ms;
}

:root {
	background: black;
}

.threedTest {
	position: relative;
	top: calc(var(--posy) / 4);
	z-index: -1;
	overflow-y: hidden;
	width: 50px;
	height: 50px;
	background-color: white;
}

.Blur       {filter: blur(10px)}
.Blur:hover {filter: none; transition-duration: 2s;}

.DownloadDiv {
	background: white;
	border-radius: 10px;
	color: black;
	box-shadow: 0 0 20px white;
	display: flex;
	justify-content: space-evenly;
	align-items: center;
}

/* width */
::-webkit-scrollbar {width: 20px;}
/* Track */
::-webkit-scrollbar-track {background-color: black;}
/* Handle */
::-webkit-scrollbar-thumb {
	background: transparent;
	border: solid 2px white;
	border-radius: 8px;
	transition: 200ms ease;
}
::-webkit-scrollbar-thumb:hover {
	box-shadow: inset 0 0 10px white;
	transition: 200ms ease;
}
::-webkit-scrollbar-thumb:active {
	background-color: #464646;
	box-shadow: inset 0 0 10px white;
	transition: 200ms ease;
}




.footerButton {
	width: 100%;
	color: white;
	text-decoration: none;
	align-self: flex-start;
	height: 32px;
	display: flex;
}
.footerButton:hover {
}

.tglogo {background: linear-gradient(90deg,#126dcd 0%, #126dcd00 10%)!important; }
.tglogo:before {background-image: url("/assets/logos/Telegram.svg");}
.ytlogo:before {
	background-image: url("https://www.svgrepo.com/show/140440/youtube.svg");
	filter: invert();
}
.bskylogo {background: linear-gradient(90deg,#1185fe 0%, #126dcd00 10%)!important; }
.bskylogo:before {
	background-image: url("/assets/logos/Bluesky.svg");
	color: white;
	font-size: 16px;
}
.arrowlogo:before {
	background-image: url("/assets/logos/temp.png");
	color: white;
	font-size: 16px;
}

.iconist:before {
	background-size: 24px 24px;
	width: 24px;
	height: 24px;
	display: block;
	content: "";
	margin-right: 24px;
	/*! top: 16px; */
	transition-duration: 600ms;
	opacity: 0.0;
}

.iconist {
	background: linear-gradient(90deg,rgba(255, 117, 255, 1.0) 0%, rgba(255, 117, 255, 0.0) 10%);;
	margin-left: -48px!important;
	align-items: center;
	transition-duration: 300ms;
}

.iconist:hover {
	margin-left: -10px!important;
	font-size: 18px;
	transition-duration: 300ms;
	transition-timing-function: cubic-bezier(0.750, 0.000, 0.250, 1.000);
}
.iconist:hover:before {
	margin-right: 8px;
	margin-left: 8px;
	opacity: 1.0;
	transition-duration: 600ms;
}


.ShowOff { width: 100%; height: 25%;}
.LogoImage {margin-left: 10px; width: 40px; height: 40px;}



button {
	display: block;
	border: none;
	padding: 8px;
	padding-left:  16px;
	padding-right: 16px;
	background: linear-gradient(0deg, rgb(70,80,101) 0%, rgb(4,44,90) 4%, rgb(4,76,149) 30%, rgb(102,141,199) 66%, rgb(135,166,212) 97%, rgb(164,184,216) 100%);
	transition-duration: 0.3s;
	border-radius: 100px;
	bottom: 100%;
	color: white; 
	text-decoration-line: none;
}
button:hover {
	box-shadow: 0 5px 10px rgba(0,0,0,0.5);
	scale: 1.1;
	transition-duration: 0.1s;
}
button:active {
	box-shadow: none;
	scale: 0.8;
	transition-duration: 0.3s;
}

.SmallButton {
	appearance: button;
	height: 24px;
	box-sizing: border-box;
	color: white;
	text-shadow: 0 0 0px transparent;
	background-color: transparent;
	border: 1px solid;
	border-radius: 4px;
	border-color: #d4d4d4;
	transition: 300ms ease;
	padding: 5px;
	font-size: 12px;
	font-weight: 100;
	text-decoration-line: none;
}
.SmallButton:hover {
	text-shadow: 0 0 3px white;
	box-shadow: 0 0 5px white;
	border-color: #0078d4;
}
.SmallButton:active {
	text-shadow: 0 0 2px aqua;
	box-shadow: 0 0 5px aqua;
	transition: 100ms;
}

.mainTitle {
	top: 32px;
	pointer-events: none;
	position: sticky;
	color: rgb(0, 70, 255);
	left: 250px;
	height: 50px;
	text-align: center;
	text-shadow: 0 0 20px black;
}

@keyframes spinner {
	from {
		stroke-dashoffset: 314;
		transform: rotateZ(0deg)
	}
	50% {
		stroke-dashoffset: 30;
		transform: rotateZ(720deg)
	}
	to {
		stroke-dashoffset: 314;
		transform: rotateZ(1440deg)
	}
}

.projButton {
	height: calc(100vw / 2.6);
	overflow-x: hidden;
	overflow-y: hidden;
	position: relative;
	border-radius: 32px;
	margin-left: 16px;
	margin-right: 16px;
	margin-bottom: 32px;
	translate: none;
	transition-duration: 300ms;
}
.projButton > div {pointer-events: none;}

.projClickable {
	perspective: inherit;
	transform: none;
	transform-origin: 50% 0%;
	cursor: pointer;
	transition-duration: 500ms;
}
/* .projClickable:hover > .projImage {
	scale: 1.5;
	transition-duration: 1000ms;
} */
.projClickable:hover {
/*   left: -16px;
	right: 0; */
/*   width: 100vw; */
/*   margin-left: 0!important;
	margin-right: 0!important; */
	transform: translateZ(4pt);
}
:has(.projClickable:hover) .projButton:not(:hover) {
	transform: translateZ(-40pt);
	z-index: -10;
	opacity: 0.5;
	transition-duration: 500ms;
}

.projImage {
	background-repeat: no-repeat;
	width: 100%;
	height: calc((100vw / 2.6) * 1.4);
	position: absolute; /* Allows movement */
	top: 0%; /* Start from the center */
	background-size: cover;
	transition-duration: 1000ms;
}
.projHeader {
	position: relative;
	top: 24px;
	transition-duration: 300ms;
	font-size: 32px;
	font-weight: 800;
	left: 32px;
	text-shadow: 0 3px 10px black;
}
.projText {
	position: relative;
	top: 48px;
	left: 32px;
	width: calc(100% - 64px);
	text-shadow: 0 3px 10px black;
}
.projFiller {
	height: 500px;
}

.parallax {position: absolute;}
.parallaxStyleTest {
	position: absolute;
	background-color: white;
	width: 50px;
	height: 50px;
	background-image: url("/assets/favicon.png");
	background-size: contain;
	image-rendering: crisp-edges;
}
.IDScene {
	will-change: transform, perspective-origin;
	perspective: calc(100vw/2.4);
}
.SpatialSecton {
	position: absolute;
	background-color: transparent;
	width: 680px;
	height: 336px;
	background-size: contain;
}

.VictimOfCensorship {
	image-rendering: pixelated;
}