@import "reset";
@import "posts";

@mixin display-flex {
	display: -webkit-box-flex;
	display: -webkit-flexbox;
	display: -ms-flexbox;
	display: -webkit-box;
	display: flex;
}

@mixin flex($args) {
	-webkit-flex: $args;
	-ms-flex: $args;
	flex: $args;
}

@mixin flex-direction($dir) {
	$alt: vertical !default;
	@if $dir == column {
		$alt: vertical;
	} @else {
		$alt: horizontal;
	}
	-webkit-flex-direction: column;
	-webkit-box-orient: $alt;
	-ms-flex-direction: column;
	flex-direction: column;
}

$spacing: 10px;

body {
	margin: $spacing;
	font-size: 10pt;
	font-family: Helvetica, "Noto Sans", "Roboto Sans", Arial, sans-serif;
}

a {
	text-decoration: none;
}

input[type="text"],
input[type="password"],
textarea,
select,
.admin_main {
	padding: 4px;
	width: 280px;
}

input[type="checkbox"] {
	margin: 4px 0;
}

input[type="file"] {
	padding: 4px 0;
}

h1 {
	font-size: 240%;
	font-weight: bolder;
	margin-top: 10px;
	text-align: center;
}

h2 {
	margin: $spacing 0;
	text-align: center;
}

hr {
	clear: left;
}

form {
	display: inline-block;
	margin: $spacing / 2 auto;
	padding: $spacing;
}

table {
	border-collapse: separate;
	border-spacing: 1px;
	margin: 0 auto;
	max-width: 80%;

	thead {
		vertical-align: middle;

		td {
			font-weight: bolder;
			padding: $spacing / 2 $spacing;
		}
	}

	td {
		padding: 3px $spacing / 2;
		text-align: center;
	}

	.rules {
		text-align: left;
	}
}

ul {
	list-style: disc;

	li {
		margin-left: $spacing * 2;
	}
}

ol {
	list-style: decimal;

	li {
		margin-left: $spacing * 2;
	}
}

#error {
	background-color: #ff0000;
	color: #ffffff;
	margin-bottom: $spacing;
	padding: $spacing;
	text-align: center;

	h3 {
		font-size: 220%;
		font-weight: bolder;

	}

	p {
		font-weight: bold;
	}
}

#post_form, .admin_form {
	text-align: center;

	form {
		div {
			@include display-flex;

			.title {
				@include flex(0);
				font-weight: bold;
				text-align: right;
				min-width: 120px;
				margin: 1px;
				padding: 4px;

				span {
					cursor: pointer;
				}
			}

			.fields {
				margin: 1px;

				textarea {
					min-height: 100px !important;
				}
			}
		}

		button {
			margin: $spacing 0 0 0;
		}
	}
}

.admin_form {
	form {
		margin: 0;
		padding: 0;

		button {
			margin: 0;
		}
	}
}

.required {
	color: #ff0000;
}

.boards, .return, .copyright {
	text-align: center;
}

.archive_stats {
	text-align: center;
	margin-bottom: $spacing;
}

.announcement {
	text-align: center;
	font-weight: bold;
}

.banned {
	border: 7px dashed #000000;
	display: table;
	font-size: 180%;
	min-width: 200px;
	max-width: 600px;
	margin: $spacing * 2 auto;
	padding: $spacing;

	p {
		margin: $spacing;
	}

	div {
		text-align: center;
	}
}

.medium {
	width: 120px !important;
}

.short {
	width: 40px !important;
}

.catalog_container {
	display: inline-block;
	overflow: hidden;
	text-align: center;
	vertical-align: top;
	width: 135px;

	.catalog_stats {
		font-size: 70%;
	}

	img {
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.25);
		max-width: 125px;
		max-height: 125px;
	}
}

.logout {
	top: $spacing;
	right: $spacing;
	position: absolute;
}

.copyright {
	margin-top: $spacing;
}

.front_page {
	h2 {
		font-size: 180%;
	}

	h3 {
		font-size: 140%;
		margin-top: $spacing;
	}

	.board {
		display: inline-block;
		max-width: 300px;
		margin: $spacing * 2;
		vertical-align: top;

		a {
			font-size: 160%;
			font-weight: bold;
		}

		.subtext {
			display: block;
			font-size: 120%;
		}
	}
}

.table_of_contents {
	display: table;
	margin: 0 auto;
	max-width: 400px;
}

.answers,{
	max-width: 600px;
	margin: 0 auto;

	h2 {
		font-size: 160%;
	}
}

.install {
	max-width: 300px;
	margin: 0 auto;

	h2 {
		font-size: 160%;
		margin-top: $spacing * 2;
	}

	label {
		font-weight: bold;
		margin-top: $spacing * 2;
	}

	button {
		font-size: 120%;
		font-weight: bold;
		margin-top: $spacing * 2;
		padding: $spacing / 2;
	}
}
