:root {
	--bodyWidth: 900px;
	--emeraldGreen: #50C878;
}
* {
	font-family: serif;
	position: relative;
	padding: 0;
	margin: 0;
}
::-webkit-scrollbar {
	width: 15px;
}
::-webkit-scrollbar-track {
	background-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/scroll-track.gif);
	background-size: 3px;
}
::-webkit-scrollbar-thumb {
	background: #AAA; 
	border-style: solid;
	border-color: #AAA #AAA #777 #CCC;
}
::-webkit-scrollbar-thumb:hover {
	background: #999; 
	border-color: #999 #999 #666 #BBB;
}
/* Buttons */
::-webkit-scrollbar-button:single-button {
	background-color: #AAA;
	display: block;
	background-size: 10px;
	background-repeat: no-repeat;
	border-style: none none solid solid;
	border-color: #AAA #AAA #777 #CCC;
}
::-webkit-scrollbar-button:single-button:hover {
	background-color: #999;
	border-color: #999 #999 #666 #BBB;
}
/* Up */
::-webkit-scrollbar-button:single-button:vertical:decrement {
	height: 16px;
	width: 16px;
	background-position: center 4px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(96, 96, 96)'><polygon points='50,00 0,50 100,50'/></svg>");
}
/*::-webkit-scrollbar-button:single-button:vertical:decrement:hover {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(112, 112, 112)'><polygon points='50,00 0,50 100,50'/></svg>");
}*/
::-webkit-scrollbar-button:single-button:vertical:decrement:active {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(70, 70, 70)'><polygon points='50,00 0,50 100,50'/></svg>");
}
/* Down */
::-webkit-scrollbar-button:single-button:vertical:increment {
	height: 16px;
	width: 16px;
	background-position: center 4px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(96, 96, 96)'><polygon points='0,0 100,0 50,50'/></svg>");
}
/*::-webkit-scrollbar-button:single-button:vertical:increment:hover {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(112, 112, 112)'><polygon points='0,0 100,0 50,50'/></svg>");
}*/
::-webkit-scrollbar-button:single-button:vertical:increment:active {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(70, 70, 70)'><polygon points='0,0 100,0 50,50'/></svg>");
}
/* Left */
::-webkit-scrollbar-button:single-button:horizontal:decrement {
	height: 16px;
	width: 16px;
	background-position: 3px 3px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(96, 96, 96)'><polygon points='0,50 50,100 50,0'/></svg>");

}
::-webkit-scrollbar-button:single-button:horizontal:decrement:hover {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(112, 112, 112)'><polygon points='0,50 50,100 50,0'/></svg>");
}
::-webkit-scrollbar-button:single-button:horizontal:decrement:active {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(128, 128, 128)'><polygon points='0,50 50,100 50,0'/></svg>");
}
/* Right */
::-webkit-scrollbar-button:single-button:horizontal:increment {
	height: 16px;
	width: 16px;
	background-position: 3px 3px;
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(96, 96, 96)'><polygon points='0,0 0,100 50,50'/></svg>");
}
::-webkit-scrollbar-button:single-button:horizontal:increment:hover {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(112, 112, 112)'><polygon points='0,0 0,100 50,50'/></svg>");
}
::-webkit-scrollbar-button:single-button:horizontal:increment:active {
	background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' fill='rgb(128, 128, 128)'><polygon points='0,0 0,100 50,50'/></svg>");
}
body {
	background-color: #000;
	background-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/stars.gif);
	height: 100dvh;
	display: flex;
	flex-direction: column;
	animation: bgMove 10s linear infinite;
} @keyframes bgMove {
	0% {background-position-x: 0;}
	100% {background-position-x: -135px;}
}
header {
	width: var(--bodyWidth);
	margin: auto;
}
nav {
	justify-content: center;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red-top.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	background-color: #FF5050;
	border-radius: 6px;
	text-align: right;
}
a {
	color: blue;
}
a:visited {
	color: #700000;
}
nav a {
	text-decoration: none;
}
nav a div {
	display: inline-block;
	height: 30px;
	padding: 0 7px;
	background-color: gold;
	border-radius: 6px;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	background-repeat: no-repeat;
	margin: 5px 5px 5px 0;
	line-height: 30px;
	text-align: center;
	font-weight: bold;
}
nav a div:hover {
	background-color: yellow;
}
footer {
	position: relative;
	text-align: right;
	height: 1.25em;
	width: 100%;
	height: fit-content;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red-bottom.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	border-radius: 6px;
	padding: 10px !important;
	box-sizing: border-box;
}
table {
	border-style: double;
	border-collapse: collapse;
	background-color: #FFF;
}
td, th {
	border-style: solid;
	border-color: #777;
	border-width: 1px;
	padding: 5px;
}
td {
	vertical-align: top;
}
th {
	color: black;
	background-color: gold;
	font-weight: bold;
}
p {
	margin-bottom: 10px;
	contain: content;
}
form {
	display: inline-block;
}
textarea {
	min-height: 100px;
	resize: vertical;
}
input, textarea {
	padding: 5px;
	border-radius: 0;
	border-style: inset;
	box-sizing: border-box;
}
input:focus, textarea:focus {
	outline: none;
	border-color: goldenrod;
}
input[type="submit"], button {
	padding: 5px;
	background-color: gold;
	border-color: goldenrod;
	border-style: outset;
}
input[type="submit"]:active, button:active {
	border-style: inset;
}
h2 {
	margin-top: 1rem;
	margin-bottom: 0.5rem;
}
pre {
	background-color: lightgray;
	padding: 5px;
	margin: 10px 0;
	border: 1px solid gray;
	overflow-x: auto;
}
code {
	background-color: lightgray;
	font-family: monospace;
	padding: 2px;
	font-size: 0.9em;
}
blockquote {
	border-left: 5px solid #CCC;
	padding-left: 10px;
	margin: 10px;
}
ul, ol {
	list-style-position: outsde;
	padding-left: 15px;
}
img, video {
	max-width: 100%;
}
.container {
	overflow: auto;
	flex: 1;
}
.content {
	margin: auto;
	width: var(--bodyWidth);
	background-color: #DDD;
	padding: 0 10px 50px;
	box-sizing: border-box;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red-box.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	padding: 10px 10px 10px 10px;
	border-radius: 6px;
}
.content h1 {
	text-align: center;
	margin-bottom: 20px;
}
.titleSpin {
	animation: spin 3s infinite linear;
	transform-style: preserve-3d;
}
.titleBounce span {
	display: inline-block;
	-webkit-animation: bounce 1s infinite alternate;
	animation: bounce 1s infinite alternate;
}
.titleBounce span:nth-child(1) {animation-delay: -1s;}
.titleBounce span:nth-child(2) {animation-delay: -0.75s;}
.titleBounce span:nth-child(3) {animation-delay: -0.50s;}
.titleBounce span:nth-child(4) {animation-delay: -0.25s;}
.searchScale span {
	display: inline-block;
	-webkit-animation: scale 1s infinite alternate;
	animation: scale 1s infinite alternate;
}
.searchScale span:nth-child(1) {animation-delay: -1.5s;}
.searchScale span:nth-child(2) {animation-delay: -1.25s;}
.searchScale span:nth-child(3) {animation-delay: -1s;}
.searchScale span:nth-child(4) {animation-delay: -0.75s;}
.searchScale span:nth-child(5) {animation-delay: -0.5s;}
.searchScale span:nth-child(6) {animation-delay: -0.25s;}
.forumWiggle span {
	display: inline-block;
	-webkit-animation: wiggle 1s infinite alternate;
	animation: wiggle 1s infinite alternate;
}
.forumWiggle span:nth-child(1) {animation-delay: -1.5s;}
.forumWiggle span:nth-child(2) {animation-delay: -1.25s;}
.forumWiggle span:nth-child(3) {animation-delay: -1s;}
.forumWiggle span:nth-child(4) {animation-delay: -0.75s;}
.forumWiggle span:nth-child(5) {animation-delay: -0.5s;}
.titleStretch {
	-webkit-animation: stretch 0.5s infinite alternate;
	animation: stretch 0.5s infinite alternate;
}
.titleSpin div {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.titleFront {
	transform: rotateX(0deg);
}
.titleBack {
	position: absolute;
	width: 100%;
	top: 0;
	transform: rotateY(180deg);
}
.grid0, .grid1, .grid2, .grid3, .grid2right {
	background-color: #DDD;
	padding: 0 5px 0 5px;
}
.grid0 {
	margin: auto;
	width: var(--bodyWidth);
}
.grid1 {
	margin: auto;
	width: 800px;
}
.grid2, .grid2right {
	display: grid;
	column-gap: 1em;
}
.grid2 { grid-template-columns: 1fr 4fr; }
.grid2right { grid-template-columns: 4fr 1fr; }
.grid3 {
	display: grid;
	grid-template-columns: 1fr 3fr 1fr;
	column-gap: 0.5em;
}
.grid3 > :nth-child(2) {
	padding: 0 0.5em;
	border: none;
	border-left: 1px dotted black;
	border-right: 1px dotted black;
}
.indent { margin-left: 1.5em; }
.left { text-align: left; }
.center { text-align: center; }
.floatLeft { float: left; margin-right: 1rem; }
.centerBox { text-align: center; display: inline-block; }
.right { text-align: right; }
.hidden { display: none; }
.fillWidth { width: 100%; }
.docBox::after, .warnBox::after, .errBox::after {
	position: absolute;
    left: 10px;
    top: 10px;
    color: rgba(255, 255, 255, 0.6);
}
.docBox, .warnBox, .errBox {
	position: relative;
    box-sizing: border-box;
    background-position: 9px 0;
    background-repeat: no-repeat;
    line-height: 1.2em;
    overflow: hidden;
    padding: 15px 50px;
}
.docBox {
	background-color: #f0f7fb;
	border-left: solid 4px #3498db;
}
.docBox::after {
	content: "📝";
}
.warnBox {
    background-color: #f9f8ef;
    border-left: solid 4px #efe639;
}
.warnBox::after {
	content: "⚠️";
}
.errBox {
    background-color: #f9efef;
    border-left: solid 4px #ef3939;
}
.errBox::after {
	content: "🚫";
}
.error {
	color: red;
	font-weight: bold;
}
.success {
	color: green;
	font-weight: bold;
}
.adminBox, .modBox {
	display: inline;
	color: white;
	font-weight: bold;
	font-size: 12px;
	padding: 3px;
}
.adminBox {
	background-color: #700000;
}
.modBox {
	background-color: #ae5a00;
}
.smallNote {
	font-size: 0.8em !important;
	font-style: italic;
	color: #555;
}
.vgap {
	width: 100%;
	height: 0.5em;
}
.vstubby {
	height: 0;
}
.gameContent p:has(> img) {
	text-align: center;
	margin-bottom: 20px;
}
.search {
	text-align: center;
}
.posts {
	table-layout: fixed;
	word-wrap: break-word;
}
.posts tr td:first-child {
	width: 8em;
	min-width: 8em;
	max-width: 8em;
}
.postName {
	font-size:0.8em;
	font-weight: bold;
}
.postPreviewContainer {
	display: none;
	margin-top: 10px;
}
.postTable {
	background-color: lemonchiffon;
}
.pagination {
	margin-top: 10px;
	font-size: 1.2em;
}
.threadTitle {
	font-size: 1.3em;
}
.editPostView {
	display: none;
}
.editPostView textarea {
	width: 100%;
	min-height: 150px;
}
.sidebar {
	height: fit-content;
}
.sidebar div {
	position: absolute;
	top: 0;
	left: 0;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	width: 100%;
	height: 100%;
	pointer-events: none;
}
.sidebar table {
	width: 100%;
	border-radius: 6px;
	border-width: 0;
	background-color: gold;
}
.sidebar table tr:last-child td {
	border-bottom-right-radius: 6px;
	border-bottom-left-radius: 6px;
	border-radius: 6px;
}
.sidebar td, .sidebar th {
	padding: 5px;
	border-radius: 6px;
}
.sidebar th, .sidebar tr:last-child td {
	border: 0;
}
.sidebar td {
	vertical-align: top;
	background-color: lemonchiffon;
}
.sectionLabel {
	margin-bottom: 10px;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
	background-color: var(--emeraldGreen);
	/* background-color: teal; */
	border-radius: 6px;
}
.sectionLabel :is(h1, h2, h3, h4, h5, h6) {
	font-family: sans-serif;
	padding: 10px;
	margin: 0;
}
.threadCat {
	border: 1px solid goldenrod;
	padding: 1px 3px;
	font-size: 0.7em;
	border-radius: 4px;
	font-weight: bold;
	color: #555;
	background-color: lemonchiffon;
	font-style: italic;
}
.notifyDot {
	font-size: 0.3em;
}
.grayNotice {
	width: 100%;
	background-color: #CCC;
	font-weight: bold;
	font-style: italic;
}
.bannerImg {
	height: 100%;
	background-size: cover;
}

@keyframes spin { to { transform: rotateY(1turn); } }
@-webkit-keyframes spin { to { transform: rotateY(1turn); }}
@keyframes bounce {
	0% { transform: translateY(0); }
	100% { transform: translateY(10px); }
}
@-webkit-keyframes bounce {
	0% { transform: translateY(0); }
	100% { transform: translateY(10px); }
}
@keyframes scale {
	0% { transform: scale(1); }
	100% { transform: scale(0.5); }
}
@-webkit-keyframes scale {
	0% { transform: scale(1); }
	100% { transform: scale(0.5); }
}
@keyframes wiggle {
	0% { transform: rotateZ(-35deg) }
	100% { transform: rotateZ(35deg); }
}
@-webkit-keyframes wiggle {
	0% { transform: rotateZ(-35deg) }
	100% { transform: rotateZ(35deg); }
}
@keyframes stretch {
	0% { transform: scale(0.85, 1.15); }
	100% { transform: scale(1.15, 0.85); }
}
@-webkit-keyframes stretch {
	0% { transform: scale(0.85, 1.15); }
	100% { transform: scale(1.15, 0.85); }
}
#popup {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 300px;
	height: 200px;
	background-color: #AAA;
	border: 3px solid black;
	z-index: 999;
	padding: 10px;
	box-shadow: 0 0 10px 5px rgba(0, 0, 0, 0.5);
}
#popup li {
	margin-left: 20px;
}
.rulesPopup {
	width: 500px !important;
	height: 300px !important;
	overflow: auto;
}
#popup div {
	overflow: auto;
	margin-top: 10px;
	height: calc(100% - 110px);
}
#popup .buttons {
	position: relative;
	text-align: center;
}
#popup button {
	position: relative;
	width: 100px;
	height: 50px;
	margin: 0 10px;
}
#popup .onlyCloseBtn {
	width: 100% !important;
	margin: auto !important;
}
.settingsBar {
	display: none;
}
#clickPlay {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: black;
	opacity: 0.8;
	z-index: 800;
}
#clickPlay button {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	aspect-ratio: 2 / 1;
	min-height: 15%;
}
.postVideo, .postImage {
	text-align: center;
}
.postImage img {
	max-width: 100%;
}
.videoPlaceholder {
	position: relative;
	max-width: 560px;
	background-size: cover;
	background-position: center;
	cursor: pointer;
	border: 2px solid #ccc;
	border-radius: 10px;
	height: auto;
	aspect-ratio: 16 / 9;
}
.videoPlaceholderPlayButton {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 50px;
	color: white;
	text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.7);
	cursor: pointer;
}
.videoPlaceholder span {
	position: absolute;
	font-weight: bolder;
	background-color: black;
	color: white;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	padding: 10px;
	border: 2px solid white;
}
.imgLink {
	margin-right: 5px;
}
.banner > div {
	width: 100%;
	aspect-ratio: 16 / 2.5;
	border-image: url(https://us-ord-1.linodeobjects.com/gamegoat-static/template/nine-red-box.gif) 11 11 11 11 fill / 11px 11px 11px 11px;
}

/* Desktop Styles */
@media (min-width: 768px) {
}

/* Mobile Styles */
@media (max-width: 767px) {
	body, header {
		width: 100vw;
	}
	nav {
		text-align: center;
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		column-gap: 0.3em;
		padding: 8px;
	}
	nav a div {
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
	}
	nav a div span {
		display: block;
	}
	::-webkit-scrollbar {
		width: 0;
	}
	.grid0, .grid1, .grid2, .grid3, .grid2right {
		margin: 0;
	}
	.grid0, .grid1 {
		width: 100%;
		padding: 0;
	}
	.grid2, .grid3, .grid2right {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		column-gap: 0;
		row-gap: 1em;
		padding: 0;
	}
	.content {
		width: 100%;
		margin: 0;
		padding: 10px;
		box-shadow: none;
		box-sizing: border-box;
	}
	.posts tr td:first-child {
		width: 4em;
		min-width: 4em;
		max-width: 4em;
		word-break: break-all;
	}
}