﻿@charset "utf-8";
/* CSS Document */

h1, h2, h3, h4 {
  margin-top: 1.7em;
  margin-bottom: 0.7em;
  font-weight: normal
}
h1:first-child { margin-top: 1.0em; }
h1 { font-size: 2em;}
h2 { font-size: 1.5em;}
h3 { font-size: 1.333em}
h4 { font-size: 1.15em; font-weight: normal}

.articleheader { 
  margin-bottom: 0;
}
.subheader {
  font-style: italic;
  margin: 0 0 1.4em 0;
}

.comments h3, .comments h4 {
  display: inline;
  font-size: 1em;
  margin: 0;
}
.comments > header {
  margin-bottom: 1.2em;
}
.comments ul > li {
  margin-bottom: 1.2em;
}

img
{
	border: none;
	max-width:100%;
	height: auto;
}

figure
{
	float: right;
	margin: 0 0 0 0.5em;
}

main
{
	display: block;
}

a
{
	text-decoration: underline;
	color: #FFFDD1;
}
a:hover
{
	text-decoration: none;
	color: #FFFFFF;
}

html
{
  overflow-y: scroll;
}

body
{
	background-color: #462D37;
	font-family: Verdana, Geneva, sans-serif, Arial;
	font-size: 1em;
	color: #FFFDAB;
	counter-reset: h2counter;
	-webkit-animation: bugfix infinite steps(2) 1s;
}
/* Hack for android browser to make the hamburger menu work */
@-webkit-keyframes bugfix
{
	from { padding: 0; }
	to { padding: 0; }
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button, input[type='submit'], input[type='button']
{
	border-radius: 1em;
	border-style: none;
	margin:0;
	padding: 0.6em 0.8em 0.65em 0.8em;
	box-shadow: -0.1em -0.2em 0.15em rgba(0,0,0,0.4) inset, 0.1em 0.2em 0.15em rgba(255,255,240,0.8) inset;
	background-color: #B791FF;
	background-image: linear-gradient(to top, rgba(255, 255, 255, 0.1) 10%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.1) 90%);
	text-shadow: -0.05em -0.1em 0.1em rgba(0, 0, 0, 0.25), 0.05em 0.1em 0.1em rgba(255, 255, 255, 0.3);
	font-weight: bold;
	color: #563c58;
}
button:hover, input[type='submit']:hover, input[type='button']:hover
{
	cursor: pointer;
	background-image: linear-gradient(to top, rgba(255, 255, 255, 0.2) 10%, rgba(0,0,0,0) 50%, rgba(0,0,0,0.15) 90%);
}
button:active:hover, input[type='submit']:active:hover, input[type='button']:active:hover
{
	padding: 0.6em 0.8em 0.55em 0.8em;
	margin:0.1em 0 0 0;
	box-shadow: 0 0 0.15em 0.1em rgba(0,0,0,0.2) inset, 0.1em 0.2em 0.15em rgba(0,0,0,0.2) inset, -0.1em -0.2em 0.15em rgba(255,255,240,0.3) inset;
	text-shadow: -0.05em -0.1em 0.1em rgba(0, 0, 0, 0.125), 0.05em 0.1em 0.1em rgba(255, 255, 255, 0.15);
}

textarea, input:not([type='submit']):not([type='image']):not([type='button'])
{
	background: #FCF2FF;
	border-radius: 0.5em;
	border-style: solid;
	border-width: 0.1em;
	border-color: rgba(0, 0, 0, .3);
	font-family: inherit;
	box-shadow: 0.05em 0.10em 0.2em rgba(20, 0, 80, 0.4) inset, -0.1em -0.2em 0.2em rgba(255, 255, 240, 0.4) inset;
	padding: 0.2em 0.6em;
	overflow: auto;
}
#Comment
{
	width: 84%;
	box-sizing: border-box;
}

p
{
	margin-top: 0;
	margin-bottom: 0.75em;
}
.songdescription
{
	margin-bottom: 1.5em;
	font-size: 0.9em;
}
.songtitle
{
	padding: 0;
	margin: 0;
	font-size: 1em;
	font-weight: bold;
	display: inline;
}
.nostylelist
{
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 0;
}
.nostylelist li
{
	display: block;
	vertical-align: top;
	margin: 0;
	font-size: 1rem;
}

.wrapper
{
	max-width: 76em;
	min-width: 10em;
	border-radius: 1em;
	margin: auto;
	background-color: #5B3948;
	overflow: hidden;
	position: relative;
}

.mainheader
{
	border-radius: 1em 1em 0 0;
	background-color: #5F9BCF;
	padding: 0.8em 1em 0.6em 1em;
	box-sizing: border-box;
}

.banner
{
	max-width: 415px;
	width: 40%;
	min-width: 11em;
}

.icon
{
	max-width: 150px;
	width: 14%;
	min-width: 3.5em;
	display: block;
	position: absolute;
	right: 2em;
	top: 0em;
	height: auto;
}

.menu_top
{
	float: left;
	background-color: #c3b4e0;
	width: 100%;
	color: #5E465F;
}
.menu_top ul
{
	list-style: none;
	padding: 0;
	margin: 0 0 0 0.2em;
}
.menu_top li
{
	text-align: center;
	float: left;
	margin: 0 0.1em 0 0;
}
.menu_top li > a
{
	padding: 0.35em 0.5em;
	display: block;
	font-size: 1.1em;
	text-decoration: none;
	min-width: 4.75em;
	box-sizing: border-box;
	border-radius: 0.3em;
	border-style: solid;
	border-width: 0.15em;
	border-color: transparent;
	color: #5E465F;
}
.menu_top li > a:hover
{
	color: #5F4945;
	background-color: #D5C5D6;
	border-color: #C9B5E1;
}
.menu_top li > a.active {
	border-color: #D9CEE6;
	background: linear-gradient(to bottom, rgba(255,255,255,0.2) 0%, rgba(215,200,255,0.8) 50%, rgba(255,255,255,0.2) 100%);
}

.social_icons
{
	float: left;
	margin-left: 0.4em;
	z-index: 1;
	position: relative;
}
.social_icons ul li
{
	height: 2.35em;
	display: inline-block;
	margin: 0 0.9em 0 0;
}
.social_icons ul li a
{
	padding: 0;
	margin: 0.12em;
	min-width: 0;
	width: 2.15em;
	height: 1.9em;
	display: inline-block;
	border-radius: 0.6em;
	border-width: 0;
	background: #DDD2E7;
}
.social_icons ul li > a:hover
{
	background-color: #EEE6EB;
	box-shadow: 0 0 0 0.1em #D4C8E5;
}
.social_icons ul li a img
{
	height: 75%;
	margin-top: 12%;
}

.menu_left
{
	background-color: #986353;
	border-radius: 0 0 0 1em;
	max-width: 20em;
	width: 25%;
	min-width: 10em;
	min-height: 30em;
	padding: 1em;
	position: absolute;
	bottom: 0;
	top: 0;
	box-sizing: border-box;
}
.menu_left ul
{
	padding-left: 1em;
	list-style: outside;
}
.menu_left li
{
	margin-left: 0.4em;
	font-size: 0.95em;
}
.menu_left a
{
	padding: 0.3em 0.5em;
	display: block;
	text-decoration: none;	
	color: #FFFDAB;
	border-radius: 0.2em;
}
.menu_left a:hover
{
	background: #B97B64;
	color: #FFFED5;
}
#hamburger
{
	position: absolute;
	left: 0;
	top: 0;
	clip: rect(0, 0, 0, 0);
}
label[for='hamburger']
{
	width: 100%;
	height: 1.5rem;
	position: absolute;
	left: 1rem;
	top: 1rem;
	cursor: pointer;
	background-image: url("/img/hamburger.svg");
	background-size: contain;
	background-repeat: no-repeat;
	padding-left: 2rem;
	font-size: 1.3rem;
	display: none;
}

.content
{
	overflow: hidden;
	margin-left: 25%;
	padding: 1em 2em 5em 2em;
	position: relative;
	min-height: 38em;
}

.content_wrapper
{
	height: 100%;
	width: 100%;
	float: left;
	overflow: hidden;
	position: relative;
}

.page_item
{
	display: block;
	text-align: center;
	background-color: #72475A;
	float: left;
	padding: 0.25em;
	margin: 0.375em;
	text-decoration: none;
	border-style: solid;
	border-width: 0.075em;
	border-color: #5B3948;
}
.page_item:hover
{
	background-color: #8C556D;
	border-color: #72475A;
}
.page_item span
{
	display: block;
	margin-top: 0.15em;
	font-size: 1.2em;
	width: 180px;
}
.page_item img
{
	display: block;
}

.footer
{
	height: auto;
	float: left;
	width: 100%;
	text-align: center;
	font-size: 0.8em;
	color: #B8B570;
	padding-left: 2%;
	padding-right: 2%;
	box-sizing: border-box;
}

.hr
{
	height: 1em;
	border-bottom: 1px solid;
	max-width: 24em;
	width: 85%;
	margin: auto;
	display: inline-block;
}

.comment
{
	background-color: #5B3D78;
	border-radius: 0.3em;
	border-style: solid;
	border-width: 0.15em;
	border-color: #7760BA;
	width: 84%;
	min-height: 2em;
	padding: 0.5em 1em 1em 1em;
	overflow: hidden;
	box-sizing: border-box;
}
.comment p
{
	padding:0;
	margin:0;
}
.shinycomment
{
	background-color: #593B88;
	border-color: #AB8DFF;
}
.commentname
{
	font-size: 0.8em;
	color: #FBEF9F;
}
.commentname a
{
	text-decoration: none;
	color: #FFFDED;
}
.commentname a:hover
{
	text-decoration: underline;
	color: #FFFFFF;
}

.u
{
	text-decoration: underline;
}

.successtext
{
	color: #00C23B;
	font-weight: bold;
}
.errortext
{
	color: #FF3A1B;
	font-weight: bold;
}

.update
{
	background-color: #694655;
	border-color: #492A37;
	border-style: solid;
	border-width: 0.15em;
	margin-top: 1em;
}
.update div
{
	padding: 0.5em 1em 1em 1em;
}
.update header
{
	padding: 0.5em 1em 1em 1em;
	background-color: #52303D;
}
.update header a
{
	font-size: 2em;
	text-decoration: none;
	color: #FFFDAB;
}
.update header a:hover
{
	text-decoration: underline;
}
.update header h2
{
	font-size: 0.8em;
	margin: 0;
}
.update p
{
	margin: 0;
}

.posted
{
	font-size: 0.8rem;
	font-style: italic;
	display: inline;
}

.listtitle
{
	font-size: 0.8em;
	list-style: none;
}
.listtitle a
{
	font-size: 2em;
	text-decoration: none;
	color: #FFFDAB;
}
.listtitle li
{
	padding: 10px;
}

#Commentform label
{
	font-size: 0.8em;
}
.inp
{
	display: none;
}

h2.numbered { counter-reset: h3counter;}
h2.numbered::before {
  content: counter(h2counter) ".\a0\a0";
  counter-increment: h2counter;
}
h3.numbered::before {
  content: counter(h2counter) "." counter(h3counter) ".\a0\a0";
  counter-increment: h3counter;
}

ol.toc { counter-reset: toclevel1; padding-left: 0.7em}
ol.toc > li { display:block;}
ol.toc > li::before { content: counter(toclevel1) "."; width:2em; display:inline-block; text-align:right; margin-right:0.67em; counter-increment: toclevel1 }
ol.toc > li > ol { counter-reset: toclevel2; padding-left: 1.7em}
ol.toc > li > ol > li { display: block}
ol.toc > li > ol > li:before { content: counter(toclevel1) "." counter(toclevel2) "."; width:4em; display:inline-block; text-align:right; margin-right:0.67em; counter-increment: toclevel2 }

.menu_left_content ul li {
	margin: 0.05em 0.4em;
}
li {
  margin: 0.4em 0;
}

dl {
  margin-top: 0.2em;
  margin-bottom: 0.75em;
}
dt {
  font-weight: bold;
  display: inline;
}
dd::after {
  content: "";
  margin-bottom: 0.5em;
  display: block;
}
dd {
  margin-left: 0;
  display: inline;
}

table {
  border: none;
  border-collapse: collapse;
}
td {
  border: none;
  text-align: left;
  padding: 0.3em 0.4em 0.2em 0.2em;
  min-width: 6em;
  vertical-align: top;
}
.dotfill {
  border-style: dotted;
  border-width: 0 0 0.18em 0;
  border-color: #888888;
  display: -ms-grid;
  display: grid;
  padding-top:0.95em;
}
.dotfillcontent {
  float:left;
  margin-right: 0.3em;
}
.menuitem {
  border: 0.1em solid #D8D8D8;
  background: #F8F8F8;
  color: #000000;
  padding: 0 0.3em;
  font-size: 0.9em;
  font-family: "ms sans serif", Arial, sans-serif;
  font-weight: normal;
  white-space: nowrap;
}
.button {
  border: 0.1em solid #ADADAD;
  background: #E1E1E1;
  color: #000000;
  padding: 0.05em 0.4em 0 0.4em;
  font-size: 0.9em;
  font-family: "ms sans serif", Arial, sans-serif;
  font-weight: normal;
  white-space: nowrap;
}

kbd {
  background: #EEEEEE;
  color: #000000;
  box-shadow: 0.05em 0.2em 0.15em white inset;
  white-space: nowrap;
  display: inline-block;
  text-align: center;
  padding: 0.1em 0.25em 0.0em 0.15em;
  margin: 0 0.1em;
  font-size: 1em;
  font-weight: bold;
  font-style: italic;
  min-width: 1em;
  border-style: solid;
  border-color: #BBBBBB;
  border-width:  0.1em 0.1em 0.2em 0.1em;
  border-radius: 0.3em;
}

@media screen and (max-width: 65em)
{
	.menu_left ul
	{
		list-style: none;
		padding-left: 0;
	}
	.menu_left li
	{
		margin-left: 0;
	}
	.menu_left a
	{
		padding: 0.3em 0.5em;
		margin-left: -0.5em;
		margin-right: -0.5em;
	}
}

@media screen and (max-width: 44em)
{
	.menu_left
	{
		border-radius: 0 0 1em 1em;
		box-shadow: 0 0.2em 0.5em rgba(0, 0, 0, 0.2);
		width: 100%;
		max-width: none;
		min-height: 3.5em;
		padding: 1em;
		position: relative;
		box-sizing: border-box;
	}
	.menu_left:empty
	{
		display: none;
	}
	.menu_left_content
	{
		display: none;
		margin-top: 2.5em;
	}
	label[for='hamburger']
	{
		display: block;
	}
	#hamburger:checked ~ .menu_left_content
	{
		display: block;
	}
	.content
	{
		margin-left: 0;
		padding-left: 0.5em;
		padding-right: 0.5em;
	}
	.icon
	{
		right: 2%;
	}
	.menu_top li > a
	{
		padding: 0.35em 0.3em;
		margin: 0.1em;
		font-size: 0.95em;
		min-width: 1em;
		border-width: 0.15em;
		border-color: #D4C9E9;
		background: #C9BCE3;
	}
	.menu_top li:last-child
	{
		margin-right:0.15em;
	}
	.menu_top li > a.active 
	{
		border-color: #E7DFEE;
		background: linear-gradient(to bottom, rgba(255,255,255,0.3) 0%, rgba(215,200,255,1.0) 50%, rgba(255,255,255,0.3) 100%);
	}
	
	.social_icons
	{
		height: 2.25em;
		margin-left: 0;
	}
	.social_icons ul li
	{
		height: 1.925em;
		margin: 0.075em 0.15em 0 0.0em;
	}
	.social_icons ul li a
	{
		height: 100%;
		width: 2.25em;
	}
	.social_icons ul li a img
	{
		height: 70%;
		margin-top: 14%;
	}
	.update
	{
		margin-top: 1em;
	}
	.update div
	{
		padding: 0.5em 0.5em 1em 0.5em;
	}
	.comment
	{
		width: 100%;
		min-height: 2em;
		padding: 0.5em 0.5em 1em 0.5em;
	}
	#Comment
	{
		width: 100%;
	}
}

@media screen and (max-width: 30em)
{
	figure
	{
		float: none;
		margin: 0 0 0.5em;
	}
}

@media print
{
  body, .commentname {
    color: black;
  }
  a {
    color: #5500C0 !important;
  }
  h1, h2, h3, h4 {
    color: #3a60ab;
    font-weight: bold;
  }
  h4 { font-weight: normal; }
  
  .page_item {
    background-color: #f2edf6;
  }
  .nostylelist li, footer {
    page-break-inside: avoid;
  }
  .update {
    background-color: #F0E7FF;
  }
  .update header {
    background-color: #CCAEFF;
  }
  .comment {
    background-color: #DADFFF;
  }
  .shinycomment {
    background-color: #ECDFFF;
  }
  
  .mainheader, body, .wrapper {
    background: none;
  }
  .menu_left, .menu_top, .footer {
    display: none;
  }
  .content {
    margin-left: 0;
    padding: 1em;
  }
}