/* Vestige Testers board style, based on the package default, tweaked by fenwick */

html { font-size: 100%; }
body {
	margin: 0;
	padding: 12px 0;
	background: #dde3e7;
	color: #1e2326;
	font-family: Verdana, Geneva, "DejaVu Sans", sans-serif;
	font-size: 0.8125rem;
	line-height: 1.45;
}
::selection { background: #2c6475; color: #fff; }

a { color: #1b4c78; text-decoration: none; }
a:hover { color: #a8410f; text-decoration: underline; text-underline-offset: 2px; }
a:focus-visible { outline: 2px solid #a8410f; outline-offset: 2px; }

#wrap {
	max-width: 1080px;
	margin: 0 auto;
	padding: 10px 14px 14px;
	background: #fcfcfa;
	border: 1px solid #b9c4ca;
	border-radius: 7px;
}

.skiplink { position: absolute; left: -9999px; }
.skiplink:focus { left: 16px; top: 16px; padding: 4px 8px; background: #fff; }

/* top bar: forum name and links */
.headerbar {
	padding: 16px 18px 14px;
	background: #24525f;
	border-radius: 6px 6px 0 0;
	color: #e3eef1;
}
.sitename {
	color: #fff;
	font-family: "Trebuchet MS", Verdana, sans-serif;
	font-size: 1.75rem;
	font-weight: bold;
	letter-spacing: -0.01em;
}
.sitename:hover { color: #fff; }
.sitedesc { margin: 4px 0 0; font-size: 0.75rem; }

.navbar {
	padding: 6px 12px;
	background: #d4e0e5;
	border: 1px solid #b9c9d0;
	border-top: 0;
	border-radius: 0 0 6px 6px;
}
.linklist { display: flex; gap: 18px; margin: 0; padding: 0; list-style: none; }
.linklist .rightside { margin-left: auto; color: #4b5a61; }

#page-body { margin: 14px 0; }

/* the notice the keeper leaves */
.boardnotice {
	margin: 0 0 12px;
	padding: 10px 14px;
	background: #fbf4d8;
	border: 1px solid #dfcb84;
	border-radius: 5px;
	color: #3d3417;
}

.navcrumbs { margin: 0 0 10px; font-weight: bold; }
.navcrumbs span { margin: 0 3px; color: #8696a0; font-weight: normal; }

h1 { margin: 6px 0 4px; font-family: "Trebuchet MS", Verdana, sans-serif; font-size: 1.375rem; color: #18414c; }
h2 { margin: 0 0 6px; font-family: "Trebuchet MS", Verdana, sans-serif; font-size: 1rem; color: #18414c; }

/* lists of boards and topics */
.forumlist, .topiclist, .memberlist {
	width: 100%;
	margin: 0 0 14px;
	border-collapse: collapse;
	border: 1px solid #b9c9d0;
	font-variant-numeric: tabular-nums;
}
.forumlist th, .topiclist th, .memberlist th {
	padding: 6px 8px;
	background: #2f6676;
	color: #fff;
	font-size: 0.75rem;
	text-align: left;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}
.forumlist td, .topiclist td, .memberlist td {
	padding: 8px;
	border-top: 1px solid #d3dde1;
	vertical-align: top;
}
.forumlist tbody tr:nth-child(odd), .topiclist tbody tr:nth-child(odd), .memberlist tbody tr:nth-child(odd) { background: #eef3f5; }
.forumlist tbody tr:nth-child(even), .topiclist tbody tr:nth-child(even), .memberlist tbody tr:nth-child(even) { background: #e3ebee; }
.fl-count, .tl-count, .ml-count { width: 72px; text-align: center !important; }
.fl-last, .tl-last { width: 220px; font-size: 0.75rem; }
.boardtitle, .topictitle { font-size: 0.875rem; font-weight: bold; }
.boarddesc { color: #47555c; }
.startedby { font-size: 0.75rem; color: #47555c; }
.minipages { font-size: 0.6875rem; }
.stickyflag { color: #7a4a00; font-weight: bold; }
.lockflag { color: #7d1c1c; }
.jump { padding: 0 2px; }

.username.administrator { color: #a3131b; font-weight: bold; }
.username.moderator { color: #0e6b26; font-weight: bold; }

.statsbar { padding: 10px 12px; background: #eef3f5; border: 1px solid #b9c9d0; border-radius: 5px; }
.statsbar p { margin: 0; }

/* a topic */
.lockline { color: #7d1c1c; }
.pagelinks { margin: 8px 0; text-align: right; font-size: 0.75rem; }
.pagelinks strong { padding: 1px 5px; background: #2f6676; color: #fff; border-radius: 3px; }
.pagelinks a { padding: 1px 4px; }

.postrow {
	display: grid;
	grid-template-columns: 170px 1fr;
	margin: 0 0 6px;
	background: #ecf2f4;
	border: 1px solid #c7d4d9;
	border-radius: 6px;
}
.postrow.alt { background: #e2eaed; }
.postauthor {
	display: flex;
	flex-direction: column;
	gap: 3px;
	padding: 10px;
	border-right: 1px solid #c7d4d9;
	font-size: 0.75rem;
	overflow-wrap: anywhere;
}
.postauthor strong { font-size: 0.875rem; }
.rankname { color: #47555c; font-style: italic; }
.authorfacts { display: flex; flex-direction: column; color: #47555c; }
.postmain { padding: 8px 14px 12px; min-width: 0; }
.postmeta {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 4px 12px;
	padding-bottom: 5px;
	margin-bottom: 8px;
	border-bottom: 1px solid #cad6db;
	font-size: 0.75rem;
}
.postmeta a { font-weight: bold; }
.postmeta span { color: #47555c; }
.postbody { max-width: 72ch; font-size: 0.875rem; line-height: 1.55; overflow-wrap: anywhere; }
.postbody p { margin: 0 0 0.8em; }
.postbody > :last-child { margin-bottom: 0; }
.postbody ul, .postbody ol { margin: 0 0 0.8em; padding-left: 1.5em; }

.quotebox {
	margin: 0 0 0.9em;
	padding: 8px 12px;
	background: #f5f3e8;
	border: 1px solid #cdc7a5;
	border-radius: 4px;
	font-size: 0.8125rem;
}
.quotebox .quotebox { background: #fbfaf3; }
.quotehead { margin-bottom: 4px; font-size: 0.75rem; font-weight: bold; color: #5d5634; }
.quotebox p:last-child { margin-bottom: 0; }

.attach-gone {
	display: inline-block;
	margin: 2px 0 6px;
	padding: 6px 10px;
	background: #f0f0ec;
	border: 1px dashed #a9aaa0;
	color: #5b5d55;
	font-size: 0.75rem;
	font-style: italic;
}

.backto { margin: 12px 0 0; font-size: 0.75rem; }

/* members */
.profilefacts { display: grid; grid-template-columns: max-content 1fr; gap: 4px 16px; margin: 0 0 16px; }
.profilefacts dt { color: #47555c; font-weight: bold; }
.profilefacts dd { margin: 0; }
.postlist { margin: 0; padding-left: 1.2em; }
.postlist li { margin: 0 0 4px; }
.postlist span { color: #47555c; font-size: 0.75rem; }

#page-footer {
	padding: 8px 12px;
	background: #d4e0e5;
	border: 1px solid #b9c9d0;
	border-radius: 6px;
	font-size: 0.75rem;
	color: #3c4a50;
}
#page-footer p { margin: 0; }
.contactline { margin-top: 2px !important; }

@media (max-width: 720px) {
	body { padding: 0; }
	#wrap { border-radius: 0; border-left: 0; border-right: 0; padding: 8px; }
	.sitename { font-size: 1.375rem; }
	.forumlist .fl-count, .topiclist .tl-count, .memberlist th:nth-child(2), .memberlist td:nth-child(2) { display: none; }
	.fl-last, .tl-last { width: 120px; }
	.postrow { grid-template-columns: 1fr; }
	.postauthor { flex-direction: row; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; border-right: 0; border-bottom: 1px solid #c7d4d9; padding: 8px 10px; }
	.authorfacts { flex-direction: row; flex-wrap: wrap; gap: 0 10px; }
	.postmain { padding: 8px 10px 10px; }
}
