body {
	margin: 0;
	padding: 8px;
	font-family: system-ui, Roboto, Helvetica, Arial, sans-serif;
}

th {
	text-align: left;
}

td {
	vertical-align: top;
}

blockquote blockquote {
	margin-left: 0;
}

form {
	display: inline;
	margin-bottom: 0;
}

#postform #name, #postform #email, #postform #subject, #postform #message {
	width: 100%;
	box-sizing: border-box;
}

fieldset {
	display: inline-block;
}

hr {
	clear: both;
	border: 0 none;
	height: 1px;
}

img, audio, video {
	max-width: 100%;
	height: auto;
}

.postarea {
	text-align: center;
	max-width: 100%;
}

.postarea table {
	margin: 0 auto;
	text-align: left;
}

.postblock {
	vertical-align: top;
	padding: 3px;
}

.thumb {
	border: none;
	float: left;
	margin: 4px 20px;
}

.nothumb {
	float: left;
	background: #eee;
	border: 2px dashed #aaa;
	text-align: center;
	margin: 2px 20px;
	padding: 1em 0.5em 1em 0.5em;
}

.op input[type=checkbox] {
	margin-left: 0;
}

.message {
	margin: 0.5em 1em;
	margin-top: 0.25em;
}

.reflink a {
	color: inherit;
	text-decoration: none;
}

.reflink a:hover {
	color: #800000;
}

.reply .filesize {
	margin-left: 20px;
}

.hoverpost {
	display: block;
	clear: both;
	padding: 5px;
	border: 1px solid rgba(0, 0, 0, .15);
	border-right-color: rgba(0, 0, 0, .5);
	border-bottom-color: rgba(0, 0, 0, .5);
}

.spoiler {
	text-decoration: none;
	color: transparent;
	text-shadow: 0 0 10px #000000;
}

.spoiler:hover {
	color: inherit;
	text-shadow: none;
}

.userdelete {
	float: right;
	text-align: center;
	white-space: nowrap;
}

.doubledash {
	vertical-align: top;
	clear: both;
	float: left;
	font-size: 1.75em;
}

.moderator {
	color: #FF0000;
}

summary {
	cursor: pointer;
}

legend {
	font-weight: bold;
}

.replymode {
	text-align: center;
	margin: 2px -8px;
}

.manageinfo {
	text-align: center;
}

.catalogmode {
	text-align: center;
}

.managetitle {
	margin-top: 5px;
	margin-bottom: 10px;
	margin-left: 5px;
}

.manageform input:not([type=checkbox]), .manageform select, .manageform textarea {
	width: 100%;
	box-sizing: border-box;
}

.navtable, .managetable {
	border-collapse: collapse;
}

.navtable th, .navtable td, .managetable th, .managetable td {
	border: 1px solid;
	padding: 5px;
}

.forumindex td, .forumindex img {
	vertical-align: middle;
}

.catalogindex {
	margin-top: 5px;
}

.catalogdate {
	white-space: nowrap;
}

.catalogthumb {
	text-align: center;
}

.catalogthumb img {
	vertical-align: middle;
	max-width: 100px;
	height: auto;
}

.managebutton {
	font-size: 15px;
	height: 28px;
	margin: 0.2em;
}

.banmessage {
	color: red;
	font-weight: bold;
}

.news {
	max-width: 900px;
	margin: 0 auto;
}

.rules {
	max-width: 468px;
	font-size: 0.75rem;
}

.footer {
	clear: both;
	text-align: center;
}

.rules {
	padding-left: 5px;
}

.rules ul {
	margin: 0;
	padding-left: 0;
}

.floatpost {
	float: right;
	clear: both;
}

.catalogpost {
	display: inline-block;
	vertical-align: top;
	overflow: hidden;
	white-space: nowrap;
	text-align: center;
	text-overflow: ellipsis;
	min-width: 100px;
	padding: 0px 3px 3px;
}

.login {
	text-align: center;
}

.adminbar {
	text-align: right;
	clear: both;
	float: right;
}

.adminbar a:link, .adminbar a:visited, .adminbar a:active, .adminbar a:hover {
	text-decoration: none;
}

#switchStyle {
	vertical-align: top;
	margin-left: 2px;
}

#newreplies {
	margin: 5px 0 0 2px;
	font-weight: bold;
}

.code {
	white-space: pre;
	font-family: monospace;
}

.codeblock td {
	padding-top: 2px !important;
	padding-bottom: 2px !important;
}

.codeblock pre {
	margin: 0;
}

details {
	display: inline-block;
}

.fadedetails {
	opacity: 0.25;
}

.fadedetails[open] {
	opacity: 1.0;
}

.navtable {
	display: inline-block;
}

@font-face {
	font-family: 'submona';
	src: url('../font/submona.woff') format('woff');
}

.sjis {
	white-space: pre;
	font-family: IPAMonaPGothic, 'IPA モナー Pゴシック', Monapo, Mona, submona;
}

@media all and (max-width: 600px) {
	input, textarea, select {
		box-sizing: border-box;
	}

	input:not([type=checkbox]):not(#deletepost):not(#deletepostpassword), textarea, select:not(#switchStyle) {
		width: 100%;
	}

	.thumb {
		margin-left: 10px;
		margin-right: 10px;
	}

	.reply .filesize {
		margin-left: 10px;
	}

	label {
		font-size: 0.75em;
	}

	.userdelete {
		float: none;
		margin-bottom: 0.5rem;
	}

	.navtable {
		display: table;
	}

	.navtable td {
		text-align: center;
	}

	table:not(.userdelete) {
		width: 100%;
		table-layout: fixed;
	}

	.codeblock table {
		width: auto;
		table-layout: auto;
	}

	.doubledash {
		display: none;
	}

	.catalogdate {
		white-space: normal;
	}

	.catalogthumb {
		max-width: 100%;
	}

	.catalogthumb img {
		max-width: 100%;
	}
}
