*{
font-family: Arial, sans-serif;
font-size: 12pt;
}

body{
margin: 0;
}

a{
color: #6040a0;
text-decoration: none;
}

a:hover, a:active {
color: #0060DD;
text-decoration: none;
}

a img{
border: 0;
}

td{
vertical-align: top;
}

h1{
font-size: 16pt;
margin-bottom: 5px;
margin-top: 3px;
}

h2{
font-weight: normal;
font-size: 16pt;
color: #406090;
margin: 1rem 0 .5rem 0;
}

h2:first-child{
margin-top: 0;
}

h3{
margin: 0 0 4px 0;
font-weight: bold;
}

h3 a, h3 a:link, h3 a:visited{
color: black;
}

header{
background-image: linear-gradient(hsl(212 90% 90%), white);
padding: .5rem;
border-bottom: 2px solid #98a0c8;

display: grid;
grid-template-columns: min-content auto 15%;
grid-auto-flow: column;
}

.header-logo{
grid-row: span 2;
}

.header-search{
grid-row: span 2;
justify-self: end;
}

#content{
display: grid;
grid-template-columns: minmax(12rem, 10%) minmax(47rem, 70rem) minmax(20rem, auto);
}

#left-column{
padding: .5rem;
background-color: #e8e8e8;
}

#center-column{
padding: 1rem;
}

#right-column{
background-color: #ebedf0;
padding: 1rem;
}

footer{
padding: .5rem;
border-top: 2px solid #98a0c8;
font-size: smaller;
}

.login-form > *{
display: block;
}

.login-form > input{
margin-bottom: .5rem;
}

table.framed{
margin-top: 1em;
border-collapse: collapse;
}

table.framed td{
padding: 3px 4px 3px 4px;
border-width: 1px;
border-style: solid;
border-color: #7080a0;
}

table.framed th{
background-color: #b6c8e0;
text-align: left;
border-width: 1px;
border-style: solid;
border-color: #7080a0;
padding: 2px 4px 1px 4px;
}

.forum{
width: 90%;
}

.forum-left{
width: 20%;
}

.forum blockquote{
margin-left: 2em;
border-left: 3px solid #a0b0cc;
padding-left: 5px;
}

pre{
white-space: pre-wrap;
word-wrap: break-word;
}

input [type="text"]{
width: 100%;
max-width: 150px;
padding: 1px;
}

textarea{
width: 35em;
height: 15em;
font-size: 11pt;
}

hr{
color: #A8A8A8;
height: 1px;
border-style: dashed;
border-width: 1px 0 0 0;
}

form br {
margin-bottom: 1em;
}

form *{
vertical-align: top;
}
 
#main-text{
margin-bottom: 1.5em;
}

.box{
border: solid #7080a0;
border-width: 1px 0 1px 1px;
margin-bottom: 10px;
padding: 0 4px 4px 4px;
}

.box h2{
margin: 0 -4px 4px -4px;
padding: 0 4px 0 6px;
font-size: 95%;
font-weight: bold;
color: black;
background-color: #b6c8e0;
border-bottom: 1px solid #7080a0;
}

.label{
float: left;
width: 10em;
}

.login-box input{
width: 90%;
}

.vmenu{
margin-bottom: 1rem;
}

.vmenu > a{
display: inline-block;
width: 100%;
border-left: 4px solid #a0b0d0;
padding-left: 4px;
margin-bottom: .25rem;
}

.vmenu > a:hover{
border-left-color: #7080a0;
}

.article-sig{
float: right;
font-style: italic;
margin-left: 1em;
}


:root{
--date-background: #a8b0d8;
--date-color: #ebedf0;
}

.date{
font-family: system;
text-align: right;
width: 100%;
background-color: var(--date-background);
color: var(--date-color);
padding-right: 3px;
margin-top: .25rem;
border-radius: 0 5px 0 0;
}

.fli p{
margin-bottom: 0;
margin-top: 0;
text-indent: 1em; 
}

.fli h3{
margin-top: 1em;
margin-bottom: .7em;
}

.article-blurb{
display: grid;
grid-template-columns: min-content auto 9rem;
grid-column-gap: 1rem;

background-color: #e8e8ef;
margin-bottom: .5rem;
padding: .5rem;
}

.article-blurb-category{
display: inline-block;
text-decoration: none;
border: 1px solid #989898;
padding: .25rem;
width: 7rem;
border-radius: .25rem 0 0 .25rem;
color: #606060;
}

.article-blurb-title{
font-size: 14pt;
text-decoration: none;
}

.article-blurb-authors:before{
content: "/";
margin: 0 .5rem 0 .5rem;;
}

.article-blurb-comments{
align-self: center;
}

.news-blurb{
display: grid;
grid-template-columns: 7rem auto;
grid-column-gap: 1rem;

margin-bottom: 1rem;
}

.news-blurb-time{
grid-column: 1;
	
background-color: var(--date-background);
color: var(--date-color);
font-family: DejaVu Sans Mono, Courier, fixed;
padding: .1rem;
text-align: center;
}

.news-blurb-title{
grid-column: 2;
}

.news-blurb-text{
	grid-column: 2;
}