/*************** style.css overrides ***************/

table, table th {
	border-style: none;
}

div#content {
	line-height: inherit;
	text-align: left;
	min-height: 0;
}

table th, table caption {
	text-align: center;
}

table td {
	text-align: left;
}

table td, table th, table caption {
	vertical-align: inherit;
	padding: 0;
}

h1 {
	margin-bottom: 0.5em;
}

div#footernav {
	clear: none;
}

div#copyright {
	margin-top: 1em;
}

pre {
	background: inherit;
	border: none;
	padding: 0;
	border-radius: 0;
}

table td {
	border-bottom: none;
}

table td:not(:last-child), table th:not(:last-child) {
	padding-right: 0;
}

/* Navigation menu */

.subnav, .subnav-helper {
	width: 7em;
}

.subnav > ul > li {
	margin-top: 0.6em;
}

.subnav + #content {
	margin-left: 10em;
}

/*************** Navigation toggle ***************/

body.navhidden #top,
body.navhidden .subnav,
body.navhidden .subnav-helper {
	display: none;
}
body.navhidden #content {
	margin-left: 0;
}

/*************** General layout ***************/

#top {
	position: relative;
}

#tools {
	overflow: hidden;
}
#forum-tools-left {
	float: left;
	white-space: pre;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}
#forum-tools-right {
	float: right;
}

#content {
	overflow: hidden;
}
#content > h1 {
	display: none;
}

/*************** General rules ***************/

#forum-content > table {
	position: relative;
}

#forum-content table {
	width: 100%;
	border-spacing: 0;
	border-collapse: collapse;
}

#forum-content table tr.table-fixed-dummy,
#forum-content table tr.table-fixed-dummy td {
	margin : 0 !important;
	padding: 0 !important;
	border : 0 !important;
}

#forum-content input[type=submit] {
	margin: 0; /* for Chrome */
}

.temphide {
	display: none !important;
}

.nowrap {
	white-space: nowrap;
}

.avoid-wrap {
	display: inline-block;
}

span.truncated {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: inline-block;
	vertical-align: top;
}

a span.truncated {
	text-decoration: underline;
}

div.truncated {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 100%;
}

a.secretlink,
a.secretlink:hover,
a.secretlink:active,
a.secretlink:visited {
	color: inherit;
	text-decoration: none;
}

/* A forum-table has a gray header and borders */

.forum-table {
	border: 2px solid #E6E6E6;
	table-layout: fixed;
}

.forum-table > tbody > tr > th {
	background-color: #E6E6E6;
}

.forum-table > tbody > tr.subheader > th {
	background-color: #F5F5F5;
}

.forum-table > tbody > tr > td,
.forum-table > tbody > tr > th {
	padding: 0.33em;
	border: 1px solid #E6E6E6;
	overflow: hidden;
}

.number-column {
	text-align: center;
}

.forum-postsummary-author {
	color: #777;
}

#forum-content a img {
	border: none;
}

img.post-gravatar {
	display: block;
}

/* Read/unread messages */

.forum-unread,
.forum-unread:visited {
	font-weight: bold;
}
.forum-read,
.forum-read:visited {
	font-weight: normal;
}

.forum-unread:visited, .forum-read:visited {
	color: #723D39;
}

/* Use a thinner font for the split-mode index */

.viewmode-horizontal-split {
	font-family: 'Open Sans', Tahoma, 'Deja Vu', 'Bitstream Vera Sans', sans-serif;
}

/* "Create thread" button */

.header-tools {
	position: absolute;
	top: 3px;
	right: 3px;
}

.header-tools .img {
	display: none;
	margin: 4px;
}

/* Pager */

.pager-row {
	padding: 0 !important;
}

.pager {
	font-weight: normal;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 5px 0.33em;
}

.viewmode-narrow-index .pager {
	padding: 5px 0;
}

.pager-left {
	flex: 0 1 auto;
	margin-right: 5px;
	text-align: left;
	white-space: nowrap;
}

.pager-numbers {
	flex: 1 1 auto;
	margin: 0 5px;
	text-align: center;
}

.pager-right {
	flex: 0 1 auto;
	margin-left: 5px;
	text-align: right;
	white-space: nowrap;
}

.disabled-link {
	color: #999;
}

/* Forms */

.forum-form input,
.forum-form textarea {
	max-width: 100%;
	box-sizing: border-box;
}

.forum-form textarea {
	/* We are working relative to the default UA font-size */
	font-size: 120%;
}

.post-form > label,
.forum-form input[type=submit] {
	margin-top: 0.75em !important;
	display: block;
}
.post-form textarea {
	display: block;
}
.post-form input[type=submit] {
	display: inline-block;
}

.form-error {
	border: 2px dotted red;
	color: red;
	padding: 0.75em;
	margin-bottom: 0.75em;
}

.forum-form .form-error input[type=submit],
.forum-form .forum-notice input[type=submit] {
	margin: 0 !important;
}

.form-error .lint-description {
	color: #333;
}

/* Notice */

.forum-notice {
	border: 2px solid #E0E0A0;
	background-color: #FFFFD8;
	padding: 0.5em;
	margin-bottom: 1em;
	text-align: center;
}

/* Footer */

div#footernav {
	margin-top: 2em;
	text-align: center;
}
div#footernav a {
	white-space: nowrap;
}

/*************** Discussion index ***************/

#forum-index-header {
	margin: 0 0.5em 0.5em 0.5em;
}

#forum-index > tbody > tr > td:nth-child(even) {
	background-color: #FCFCFC;
}

#forum-index > tbody > tr > td:nth-child(1) { width: 60%; }
#forum-index > tbody > tr > td:nth-child(2) { width: 40%; }
#forum-index > tbody > tr > td:nth-child(3) { width: 5em; }
#forum-index > tbody > tr > td:nth-child(4) { width: 5em; }
#forum-index > tbody > tr > td:nth-child(5) { width: 6.2em; }

.forum-index-description {
	color: #777;
	line-height: 1.2em;
	height: 2.4em;
	overflow: hidden;

	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.forum-index-description,
.forum-index-col-lastpost {
}

.forum-postsummary-time {
	display: block;
	text-align: right;
}

#forum-index .focused {
	outline: 1px solid #F99 !important;
	background-color: #FEE;
}
#forum-index .focused > td {
	background: none !important;
}

/*************** Group index ***************/

#group-index > tbody > tr > td:nth-child(even) {
	background-color: #FCFCFC;
}

#group-index > tbody > tr > td:nth-child(1) { width: 75%; }
#group-index > tbody > tr > td:nth-child(2) { width: 25%; }
#group-index > tbody > tr > td:nth-child(3) { width: 5.5em; }

.forum-postsummary-time {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.group-index-col-first {
	width: 70%;
}

.group-index-col-last {
	text-align: right;
}

#group-index .focused {
	outline: 1px solid #F99 !important;
	background-color: #FEE;
}
#group-index .focused > td {
	background: none !important;
}

#group-index a.forum-postsummary-gravatar {
	float: left;
	margin-right: 0.5em;
	display: block;
}

#group-index a.forum-postsummary-gravatar img.post-gravatar {
	width : 2.2rem;
	height: 2.2rem;
	border-width: 0.3rem;
	margin: 0;
	overflow: hidden;
	font-size: 6pt;
	text-align: center;
}

/*************** Thread view, individual posts ***************/

/* Thread overview */

#thread-overview {
	margin-bottom: 0.75em;
}

#thread-overview .group-index-header > th {
	overflow: visible;
	font-weight: normal;
	text-align: left;
}

#thread-overview .group-index-header > th > a {
	color: black;
}

#thread-overview .group-index-header > th > a:hover {
	text-decoration: underline;
}

.thread-overview-pager {
	float: right;
	position: relative;
}

.thread-overview-pager-expanded {
	position: absolute;
	top: 100%;
	z-index: 5;
	white-space: pre;
	right: 0;
	background-color: #E6E6E6;
	padding: 0.5em;
	border: 2px solid #CCC;
	box-shadow: 0 0 10px rgba(128,128,128,0.25);
}

.thread-overview-pager-pageno {
	width: 4em;
}

/* Thread overview - expandos */

body.have-javascript .forum-expand-container .forum-expand-toggle::after
{
    content: " \f0d7"; /* caret down */
    font-family: FontAwesome;
}
body.have-javascript .forum-expand-container.open#thread-overview th > a.forum-expand-toggle::after,
body.have-javascript .forum-expand-container.open.thread-overview-pager .forum-expand-toggle::after
{
    content: " \f0d8"; /* caret up */
}

body.have-javascript .forum-expand-container .forum-expand-content,
.thread-overview-pager-expanded
{
    display: none;
}

body.have-javascript .forum-expand-container .forum-expand-toggle,
body.have-javascript .forum-expand-container.open#thread-overview > tbody > tr.forum-expand-content,
body.have-javascript .forum-expand-container.open.thread-overview-pager .forum-expand-content
{
    display: block;
}

/* Posts */

#thread-posts > .post-wrapper:first-child > .post {
	margin-top: 0;
}
.post-wrapper {
	position: relative;
}
.post {
	margin-top: 0.75em;
}

.post > tbody > tr > td {
	vertical-align: top;
	padding: 0.75em;
}

.post > tbody > tr > td:nth-child(1) { width: 10em; }

/* Header */

.post-header > th {
	text-align: left;
}
.post-header a {
	text-decoration: none;
	color: inherit;
}
.post-header a:hover {
	text-decoration: underline;
}
.post-time {
	float: right;
	font-weight: normal;
}

/* Info */

.post-info {
	width: 20%;
	background-color: #F5F5F5;
	font-size: 85%;
	word-wrap: break-word;
}
.post-author {
	font-weight: bold;
	font-size: 130%;
}
#forum-content a img.post-gravatar {
	margin: 0.35em;
	border: 5px solid #E6E6E6;
}
.post-info > hr {
	border: 1px solid #E6E6E6;
	border-bottom: none;
	margin: 0.5em 0;
}
.post-info-bit {
	margin-bottom: 1em;
}
ul.post-info-parts {
	margin: 0;
	padding-left: 0;
	list-style-position: inside;
}
.post-actions {
	position: absolute;
	bottom: 1em;
}
.actionlink {
	display: block;
	white-space: pre;
}
.actionlink img {
	vertical-align: middle;
	margin-right: 5px;
}

/* Horizontal info (responsive view) */

tr.mini-post-info-cell > td {
	padding: 0 !important;
}

/* Body */

.post-error {
	color: red;
}
.post-text {
	margin: 0;
	font-family: Consolas, Lucida Console, Menlo, monospace;
	font-size: 1em;
	white-space: pre; /* old browser compat */
	white-space: pre-wrap;
	word-wrap: break-word;
}

.forum-quote, .forum-signature {
	color: #666;
}

.forum-quote {
	display: block;
	border-left: 4px solid #E6E6E6;
	padding-left: 4px;
	/* HACK: 0.6 (instead of 0.5) fixes Chrome without affecting Firefox. */
	border-left: 0.6ch solid #E6E6E6;
	padding-left: 1.5ch;
}

.forum-quote-prefix {
	/*
		Make it so the quote prefix is invisible and has zero width,
		but is still copied when the user selects and copies text
		from the web page.
		https://thejh.net/misc/website-terminal-copy-paste
	*/
	position: absolute;
	left: -1000px;
	top: -1000px;
}

.forcewrap {
	word-break: break-all;
	display: inline-block;
}

a > .forcewrap {
	text-decoration: underline;
}

/* Body (Markdown) */

.post-text.markdown {
	line-height: normal;
	white-space: normal;
	margin: -15px 0;

	font-family: "Roboto Slab", sans-serif;
	font-size: 16px;

	overflow-wrap: anywhere;
}
.post-text.markdown pre {
	font-family: Consolas, Lucida Console, Menlo, monospace;
	font-size: inherit;
	background-color: #F5F5F5;
	outline: 1px solid #E6E6E6;
	padding: 4px;
}
.post-text.markdown code {
	font-family: Consolas, Lucida Console, Menlo, monospace;
	background-color: #F5F5F5;
	outline: 1px solid #E6E6E6;
	padding: 0 1px;
	margin: 0 1px;
}
.post-text.markdown pre code {
	font-family: unset;
	background-color: unset;
	outline: unset;
	padding: 0;
	margin: 0;
	tab-size: 4;
	-moz-tab-size: 4;
}
#forum-content .post-text.markdown table {
	border-spacing: initial;
	margin: 16px 0;
}
#forum-content .post-text.markdown th {
	background-color: #F5F5F5;
}
#forum-content .post-text.markdown th,
#forum-content .post-text.markdown td {
	border: 1px solid #E6E6E6;
	padding: 0.1em 0.3em;
}
#forum-content .post-text.markdown h1,
#forum-content .post-text.markdown h2,
#forum-content .post-text.markdown h3,
#forum-content .post-text.markdown h4,
#forum-content .post-text.markdown h5,
#forum-content .post-text.markdown h6,
#forum-content .post-text.markdown h7 {
	/* TODO: replace with "all: revert;" when that becomes more available */
	margin: 16px 0;
	font-weight: bold;
}

#forum-content .post-text.markdown img {
	max-width: 100%;
}

/* Threading */

.post-nester {
	border-collapse: collapse;
	width: 100%;
}

.post-nester > tbody > tr > td {
	padding: 0;
}

.post-nester-bar {
	position: relative;
	width: 10px;
	vertical-align: top;

	background: url('/images/nestgrad.png');
}

.post-nester-bar a {
	display: block;
	position: absolute;
	width: 10px;

	top: 0;
	bottom: 0;
	border-bottom: 1px solid #E6E6E6;
}

/* Pager */

.post-pager {
	margin-top: 10px;
}

/* Keyboard navigation */

.post.focused {
	border-left-color: #F99;
}

.linknav:after {
	content: "[" attr(data-num) "]";
	vertical-align: top;
	font-size: 75%;
/*
	position: absolute;
	margin-left: -1.5em;
	display: inline-block;
	background-color: #FEA;
	border: 1px solid #DC8;
*/
}

/*************** Threaded group view ***************/

.forum-table > tbody > tr > td.group-threads-cell {
	padding: 2px 0 0 0;
}

#group-index-threaded > tbody > tr > th { width: 100%; }

.group-threads table {
	table-layout: fixed;
}

.group-threads > table {
	width: 100%;
}

.group-threads > table > tbody > tr > td {
	border-bottom: none;
	padding-bottom: 1px;
	padding-left: 2px !important;
	padding-right: 2px;
}
.thread-start {
	border: 2px solid #E6E6E6;
	margin-bottom: 1px;
}
.thread-start > tbody > tr > th {
	background-color: #E6E6E6;
}
.thread-start > tbody > tr > td > div {
	padding-right: 2px;
}

.thread-start > tbody > tr:nth-child(odd) {
	background-color: #F5F5F5;
}
.thread-start > tbody > tr:nth-child(even) {
	background-color: white;
}
.thread-start td {
	text-align: left;
}
.thread-post-row div {
	overflow: hidden;
}

.thread-post-time {
	float: right;
}

#thread-index         .focused > td > div,
#group-index-threaded .focused > td > div,
#group-posts-vsplit   .focused {
	outline: 1px solid #F99 !important;
	background-color: #FEE;
}

#thread-index         .selected > td > div,
#group-index-threaded .selected > td > div,
#group-posts-vsplit   .selected {
	background-color: #D55;
	color: white;
}

#thread-index         .selected a,
#group-index-threaded .selected a,
#group-posts-vsplit   .selected a {
	color: inherit;
}

#thread-index         .selected .thread-post-time span,
#group-index-threaded .selected .thread-post-time span,
#group-posts-vsplit   .selected .thread-post-time span {
	color: inherit !important;
}

#thread-index {
	margin-top: 20px;
}

table.viewmode-threaded > tbody > tr > th {
	width: 100%;
}

/*************** Horizontal split view ***************/

#group-split {
	table-layout: fixed;
}
#group-split-list {
	width: 25em;
	vertical-align: top;
}
#group-split-list > div {
	position: relative;
}

#group-split #group-split-message {
	padding-left: 4px;
	vertical-align: top;
	overflow: auto;
}

#group-split-message .nojs {
	margin-top: 10px;
}

.viewmode-horizontal-split .group-threads {
	height: 400px;
	overflow-x: hidden;
	overflow-y: auto;
}

/* The post itself */

.split-post {
	table-layout: fixed;
}

.split-post .post-body {
	overflow: auto;
	padding: 0;
	border-left: none;
	border-right: none;
	border-bottom: none;
	display: block;
}

.split-post .post-text {
	margin: 10px;
}

.split-post {
}

/* Horizontal info (full view) */

.post-info-avatar {
	padding-left: 5px;
	padding-bottom: 2px;
	border-right: none !important;
	width: 1px;
}

.horizontal-post-info {
	border-left: none !important;
	background-color: #F5F5F5;
	font-size: 0.9em;
}

.horizontal-post-info-name {
	font-weight: bold;
	white-space: pre;
}

table td.horizontal-post-info-name {
	text-align: right;
	padding: 0 10px;
	width: 6em;
}

.horizontal-post-info-value .forum-unread {
	/* this just looks confusing and distracting */
	font-weight: inherit;
}

.post-info-actions {
	vertical-align: bottom;
	text-align: right;
}

/* Layout of scrollable section */

table.post-layout {
	width: 100%;
	height: 100%;
}

table.post-layout > tbody > tr > td {
	vertical-align: top;
}

tr.post-layout-header,
tr.post-layout-footer {
	height: 1px; /* force shrink to fit */
}

/* Horizontal info (responsive view) */

table.mini-post-info {
	display: none;
}

table.mini-post-info a img.post-gravatar {
	border-width: 3px !important;
	margin: 0 0.5em;
}

table.mini-post-info .post-info-actions {
	padding: 0.5em;
}

table.mini-post-info > tbody > tr > td:first-child {
	width: 1px; /* force shrink to fit */
}

table.mini-post-info {
	background-color: #F5F5F5;
}

.split-post table.mini-post-info {
	border-bottom: 2px solid #E6E6E6;
}

/* Footer (responsive view only) */

table.post-footer {
	background-color: #F5F5F5;
	border-top: 2px solid #E6E6E6;
	display: none;
}

table.post-footer > tbody > tr > td {
	margin: 0;
}

td.post-footer-info {
	padding: 0.5em 0.75em;
}

td.post-footer-nav {
	background-color: #E6E6E6;
	text-align: center;
}

td.post-footer-nav a {
	display: block;
	height: 100%;
	padding: 1em;
	margin: 0;
}

/* Placeholder */

.group-split-message-none {
	text-align: center;
	vertical-align: middle !important;
	overflow: hidden;
	width: 100%;
}

.keyboardhelp {
	width: auto !important;
	margin: 0 auto;
}
.keyboardhelp td {
	padding-top: 10px;
}
.keyboardhelp td:first-child {
	text-align: right;
	padding-right: 10px;
}
.keyboardhelp td:last-child {
	text-align: left;
}
.keyboardhelp th {
	display: none;
}

kbd { /* stolen from http://en.wikipedia.org/wiki/Template:Key_press */
	border: 1px solid;
	border-color: #ddd #bbb #bbb #ddd;
	border-bottom-width: 2px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background-color: #f9f9f9;
	padding: 1px 3px;
	font-family: inherit;
	font-size: 0.9em;
	white-space: nowrap;

	display: inline-block;
	text-align: center;
	min-width: 1em;
	margin: 0 1px;
	background-color: white;
	font-family: "Arial Unicode MS","Microsoft Sans Serif","Free Sans","Gentium Plus","Gentium Basic","Gentium","GentiumAlt","DejaVu Sans","DejaVu Serif","Free Serif","TITUS Cyberbit Basic","Bitstream Cyberbit","Bitstream CyberBase","Doulos SIL","Code2000","Code2001";
}

.keyboardhelp-popup {
	position: fixed;
	background-color: #F5F5F5;
	width: 35em;
	height: 20em;
	left: 50%;
	top: 50%;
	margin-left: -20em;
	margin-top: -12.5em;
	border: 0.25em solid #CCC;
	padding: 2.5em;
	box-shadow: 0px 0px 20px #000;
}
.keyboardhelp-popup .keyboardhelp th {
	display: table-cell;
}
.keyboardhelp-popup-closetext {
	text-align: center;
	position: absolute;
	width: 100%;
	bottom: 1.5em;
	left: 0;
	color: #999;
	font-size: 0.8em;
}


/*************** Vertical split view ***************/

#group-posts-vsplit {
	font-size: 90%;
}

#group-index-vsplit > tbody > tr > th:first-child {
	width: 100%;
}

#group-posts-vsplit > tbody > tr > td:nth-child(1) { width: 70%; }
#group-posts-vsplit > tbody > tr > td:nth-child(2) { width: 30%; }
#group-posts-vsplit > tbody > tr > td:nth-child(3) { width: 8.5em; }

#group-posts-vsplit > tbody > tr > td {
	white-space: pre;
	overflow: hidden;
	text-overflow: ellipsis;
}

#group-index-vsplit div.group-threads {
	height: 30em;
	overflow: auto;
}

#group-vsplit .post-header {
	display: none;
}

/*************** Posting ***************/

#postform-captcha {
	margin-top: 10px;
}

.formdoc #content {
/*
	display: inline-block;
	margin-left: 0 !important;
*/
}

#postform {
	display: block;
	max-width: 50em;
}

#postform textarea,
#postform-subject {
	box-sizing: border-box;
	width: 100%;
}

.postform-action-left {
	float: left;
}
.postform-action-left label {
	padding-left: 1em;
}
.postform-action-left input[type=checkbox] {
	position: relative;
	top: 0.1em;
}

.postform-action-right {
	float: right;
}

.autosave-notice {
	margin-left: 1em;
}

/*************** Login ***************/

.forum-form.loginform {
	width: 320px;
	margin: 70px auto 0 auto;
}

.forum-form.loginform input[type=checkbox] {
	margin-top: 1em;
}

.loginform-error {
	margin: 0 !important;
}

.loginform-cell {
	padding: 30px 80px !important;
}

.loginform-info {
	text-align: center;
}

/*************** Misc views ***************/

.forum-no-data {
	text-align: center;
}

.forum-table-message {
	text-align: center;
	padding: 50px 0 !important;
}

.forum-table-message pre {
	text-align: left;
	font-size: 8pt;
	margin: 50px 30px 0 30px;
}

/*************** Settings ***************/

table#subscriptions td:first-child {
	width: 100%;
}

select[name=trigger-content-groups] {
}

#trigger-content input[type=checkbox] {
	position: relative;
	top: 0.1em;
}

table#account-settings input {
	width: 100%;
}

table#account-settings td {
	padding: 0.25em 0;
}

#settings-form tr:hover {
	background-color: #f5f5f5;
}

hr {
	border: 0.15em solid #CCC;
}

/*************** Responsive overrides ***************/

body {
	-webkit-text-size-adjust: none;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: none;
	text-size-adjust: none;
}

@media only screen and (max-width: 66em) { /* Narrow layout stage 1 */
	.subnav {
		width: auto;
	}
	.subnav > ul {
		-moz-column-width: 9em;
		-webkit-column-width: 9em;
		column-width: 9em;

		-webkit-column-gap: 1em;
		-moz-column-gap: 1em;
		column-gap: 1em;

		max-width: 29em; /* = 3 * column-width + 2 * column-gap */
	}
	.subnav > ul > li {
		/* avoid column breaks inside li */
		-webkit-column-break-inside: avoid; /* Chrome, Safari, Opera */
		page-break-inside: avoid; /* Firefox */
		break-inside: avoid; /* IE 10+ */
	}
	.subnav > ul > li:first-child {
		margin-top: 0;
	}
	.subnav + #content {
		margin-left: 0;
	}
}

@media only screen and (max-width: 60em) {
	.viewmode-horizontal-split .thread-post-time {
		display: none;
	}
	.viewmode-horizontal-split .pager-numbers {
		display: none;
	}
	.viewmode-horizontal-split .header-tools .btn {
		display: none;
	}
	.viewmode-horizontal-split .header-tools .img {
		display: inline-block;
	}

	body #group-split-list {
		width: 15em;
	}
}

@media only screen and (max-width: 50em) {
	/* remove padding around content */
	body > .container {
		padding-left: 0;
		padding-right: 0;
	}

	/* ... but add it back to non-table top-level elements */
	#tools,
	#forum-index-header {
		margin-left: 1em;
		margin-right: 1em;
	}
	.subnav {
		margin-left: 0;
		margin-right: 0;
	}

	.forum-form,
	#settings-form,
	#subscription-form,
	#postform {
		max-width: 100%;
	}

	#forum-index > tbody > tr > *:nth-child(3),
	#forum-index > tbody > tr > *:nth-child(4),
	#forum-index > tbody > tr > *:nth-child(5) { display: none; }

	div#footernav, div#copyright {
		display: none;
	}
	#content {
		padding-bottom: 0;
	}

	.horizontal-post-info {
		display: none;
	}

	.split-post table.mini-post-info,
	table.post-footer {
		display: table;
	}
}

@media only screen and (max-width: 30em) {
	#forum-content .post > tbody > tr.mini-post-info-cell > td > table.mini-post-info {
		display: table !important;
	}
	#forum-content .post > tbody > tr > td.post-info,
	#forum-content .post > tbody > tr:first-child > td:first-child {
		display: none;
	}
	#forum-content .post > tbody > tr:first-child > td:nth-child(2) {
		width: 100%;
	}

	#group-posts-vsplit > tbody > tr > td:nth-child(3) { width: 0; }

	#group-index > tbody > tr > td:nth-child(2) { width: 7em; }
	#group-index > tbody > tr > td:nth-child(3) { width: 4.5em; white-space: pre; padding: 0; }
	#group-index a.forum-postsummary-gravatar { display: none; }
}

/*************** Frame view ***************/

body.frame {
	font-size: 90%;
}

body.frame:before {
	display: none;
}

body.frame > div, body.frame > div.container > *, body.frame div#tools {
	display: none;
}

body.frame > div.container, body.frame div#content {
	display: block;
	margin: 0;
	padding: 0;
}

body.frame div#content {
	display: block;
	margin: 0;
	max-width: none;
	border: 0;
	padding: 0;
	background: none;
	min-height: 0;
	font-size: 12px;
	line-height: 16px;
}

body.frame .forum-table > tbody {
	display: block;
	max-height: 162px;
	overflow-y: auto;
}
body.frame .forum-table > tbody,
body.frame .forum-table > tbody > tr,
body.frame .forum-table > tbody > tr > td {
	/* HACK */
	width: 249px;
}
body.frame .forum-table > thead > tr > th,
body.frame .forum-table > tbody > tr > td,
body.frame .forum-table {
	border: 1px solid #CCC;
	background: none;
}
body.frame .forum-table > thead > tr > th,
body.frame .forum-table > tbody > tr > td {
	border-left: 0;
	border-right: 0;
	border-top: 0;
}
body.frame .forum-table > thead > tr > th {
	font-size: 14px; /* copy Twitter CSS */
	text-align: left;
	padding: 10px;
}
body.frame .forum-table > thead > tr > th .feed-icon {
	display: block;
	float: right;
}

body.frame #forum-content table.forum-table {
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	border-collapse: separate;
	background-color: white;
	color: #999;
}

body.frame a {
	color: #333;
	text-decoration: none;
}

body.frame .forum-postsummary-subject {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: inline-block;
	vertical-align: top;
	width: 180px;
}

body.frame .forum-postsummary-author {
	color: #333;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	display: inline-block;
	vertical-align: top;
	max-width: 100px;
}

body.frame div.forum-postsummary-info {
	display: block;
	float: right;
	color: #999;
}

body.frame .forum-unread {
	font-weight: 600;
}

body.frame .forum-postsummary-gravatar {
	float: left;
}

body.frame .post-gravatar {
/*
	border: 2px solid #444 !important;
	margin: -2px 5px -2px 0;
*/
	border: 0 !important;
	margin: 0 5px 0 0 !important;
	width: 32px;
	height: 32px;
	display: block;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
}

.viewmode-narrow-index a {
	text-decoration-line: none;
}

.viewmode-narrow-index a * {
	text-decoration-line: inherit;
}

.viewmode-narrow-index a:hover {
	text-decoration-line: underline;
}

.viewmode-narrow-index a:hover * {
	text-decoration-line: inherit;
}

.viewmode-narrow-index .group-index-header {
	display: flex;
	align-items: center;
	line-height: 1.5em;
	height: 4em;
	border-bottom: 1px solid lightgray;
	justify-content: space-between;
}

@media only screen and (max-width: 50em) {
	.viewmode-narrow-index {
		padding: 0 10px;
	}
}

.viewmode-narrow-index .group-index-header .title {
	font-weight: bold;
}

.viewmode-narrow-index .group-index-header .create-thread {
	text-align: right;
}

.viewmode-narrow-index .group-index-header .create-thread img {
	height: 12px;
}

.viewmode-narrow-index .group-index-header a.button {
	display: inline-block;
	padding: 2px 5px;
	color: initial;
	background-color: rgb(240, 240, 240);
	text-decoration: none;
	border-radius: 5px;
	border: 1px solid lightgray;
}

.viewmode-narrow-index .group-index-header a.button:hover {
	background-color: rgb(224, 224, 224);
	text-decoration: none;
}

.viewmode-narrow-index .thread {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) 10ch 25ch;
	grid-template-rows: auto;
	grid-template-areas:
		"firstpost-author-image thread-title replies lastpost"
		"firstpost-author-image firstpost    replies lastpost";
	border-bottom: 1px solid lightgray;
	padding: 5px 0;
}

.viewmode-narrow-index .firstpost-time {
	display: none;
}

@media only screen and (max-width: 50em) {
	.viewmode-narrow-index .thread {
		grid-template-columns: auto minmax(0, 0.925fr) minmax(0, 1fr) minmax(0, 1.075fr);
		grid-template-rows: auto;
		grid-template-areas:
			"firstpost-author-image thread-title thread-title thread-title"
			"firstpost-author-image firstpost    replies      lastpost";
	}

	.viewmode-narrow-index .thread .firstpost-time {
		display: block;
	}
}

.viewmode-narrow-index .thread > * {
	align-self: center;
}

.viewmode-narrow-index .thread .title {
	grid-area: thread-title;
	margin-bottom: .25em;
	font-size: 1em;
}

.viewmode-narrow-index .thread :not(:first-child) {
	font-size: small;
}

.viewmode-narrow-index .thread .firstpost {
	grid-area: firstpost;
}

.viewmode-narrow-index .thread .firstpost-time .short {
	display: none;
}

.viewmode-narrow-index .thread .firstpost-time .long {
	display: inline-block;
}

.viewmode-narrow-index .thread .firstpost-author-image {
	grid-area: firstpost-author-image;
	width: 3em;
	height: 3em;
	border-radius: 50%;
	margin-top: 0.75ch;
	margin-right: 10px;
	align-self: start;
}

.viewmode-narrow-index .thread .firstpost-author-name {
	grid-area: firstpost-author-name;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	color: gray;
}

.viewmode-narrow-index .thread .replies {
	grid-area: replies;
}

.viewmode-narrow-index .thread .replies-total {
	text-align: center;
}

.viewmode-narrow-index .thread .replies-total .short {
	display: none;
}

.viewmode-narrow-index .thread .replies-total .long {
	display: inline;
}

.viewmode-narrow-index .thread .replies-new {
	text-align: center;
}

.viewmode-narrow-index .thread .replies-new .short {
	display: none;
}

.viewmode-narrow-index .thread .replies-new .long {
	display: inline;
}

@media only screen and (max-width: 40em) {
	.viewmode-narrow-index .thread .replies-total .short {
		display: inline;
	}
	
	.viewmode-narrow-index .thread .replies-total .long {
		display: none;
	}
	
	.viewmode-narrow-index .thread .replies-new .short {
		display: inline;
	}
	
	.viewmode-narrow-index .thread .replies-new .long {
		display: none;
	}
}

.viewmode-narrow-index .thread .lastpost {
	grid-area: lastpost;
}

.viewmode-narrow-index .thread .lastpost-time {
	text-align: right;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.viewmode-narrow-index .thread .lastpost-time .short {
	display: none;
}

.viewmode-narrow-index .thread .lastpost-time .long {
	display: inline;
}

@media only screen and (max-width: 50em) {
	.viewmode-narrow-index .thread .firstpost-time .short {
		display: inline;
	}
	
	.viewmode-narrow-index .thread .firstpost-time .long {
		display: none;
	}
	
	.viewmode-narrow-index .thread .lastpost-time .short {
		display: inline;
	}
	
	.viewmode-narrow-index .thread .lastpost-time .long {
		display: none;
	}
}

.viewmode-narrow-index .thread .lastpost-time .last {
	display: none;
}

.viewmode-narrow-index .thread .lastpost-time .last-post {
	display: inline;
}

@media only screen and (max-width: 40em) {
	.viewmode-narrow-index .thread .lastpost-time .last {
		display: inline;
	}
	
	.viewmode-narrow-index .thread .lastpost-time .last-post {
		display: none;
	}
}

.viewmode-narrow-index .thread .lastpost {
	grid-area: lastpost;
}

.viewmode-narrow-index .thread .lastpost-author {
	text-align: right;
	display: flex;
	align-items: center;
	justify-content: right;
	color: gray;
}

.viewmode-narrow-index .thread .lastpost-author-image {
	width: 1.5em;
	height: 1.5em;
	border-radius: 50%;
	margin-right: 0.5ch;
}

.viewmode-narrow-index .thread .lastpost-author-name {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
