/*
*** BLUE:

   pale = #5E82C5
   light = #B5CAF0
   bright = #84A3DC
   heavy = #3F65AC
   dark = #254F9B

*** GOLD

   pale = #FFE36B
   light = #FFF2BA
   bright = #FFEA8F
   heavy = #FFDD4C
   dark = #E9C425

*** PEACH

   pale = #FFAA6B
   light = #FFD7BA
   bright = #FFBE8F
   heavy = #FF984C
   dark = #E97825
*/

body
{
	font-family: 'Source Sans Pro', Helvetica, Verdana, sans-serif;
	padding: 0;
	margin: 0;
}

header 
{	
	background: #254F9B;
	color: white;
	margin-bottom: 20px;
}

header h1
{
	font-size: 20px;
	max-width: 1200px;
	margin: 0 auto;
}

header h1 a
{
	color: white;
	padding: 10px 0;
	display: block;
	text-decoration: none;
}

header nav
{
	max-width: 1200px;
	margin: 0 auto;
}

header nav a
{
	padding: 5px 10px;
	border: solid 1px #FFDD4C;
	margin: 0 10px 10px 0;
	color: #254F9B;
	background: #B5CAF0;
	text-decoration: none;
	font-weight: bold;
	display: inline-block;
}

header nav a:hover,
header nav a:focus
{
	background: #3F65AC;
	color: #FFBE8F;
}

header nav span
{
	color: #FFF2BA;
	float: right;
	text-align: right;
	padding: 0;
	font-size: 14px;
}

main
{
	max-width: 1200px;
	margin: 0 auto;
}

table.calendar
{
	border: solid 1px black;
	border-collapse: collapse;
	width: 100%;
}

table.calendar thead th
{
	background: #FFEA8F;
	color: #254F9B;
	border-right: solid 1px black;
	border-bottom: solid 1px black;
	padding: 3pt 12pt;
}

table.calendar th.date { font-size: 24px; border-width: 1px 0; }
table.calendar th.previous { border-right-width: 0; }
table.calendar th.next { border-left-width: 0; }

table.calendar tbody td
{
	background: #eee;
}

table.calendar tbody td.isday
{
	background: #fff;
}

table.calendar tbody tr:nth-child(even) td.isday:nth-child(odd),
table.calendar tbody tr:nth-child(odd) td.isday:nth-child(even)
{
	background: #FFF2BA;
}

table.calendar td
{
	padding: 0;
	vertical-align: top;
	height: 100px;
}

table.calendar td.isday
{
	border: solid 1px black;
}

table.calendar td b.day
{
	float: right;
}

table.calendar .chooser
{
	text-decoration: none;
	color: #254F9B;
	display: inline-block;
	text-align: center;
	padding: 0;
	width: 40%;
	position: relative;
}

table.calendar .popup
{
	display: none;
	width: 240px;
	position: absolute;
	border: solid 1px black;
	padding: 0;
	background: #5E82C5;
	left: 0;
	top: 0;
	z-index: 1;
}

table.calendar .popup h3
{
	padding: 10px 5px 0 5px;
	color: #FFEA8F;
	margin: 0;
}

table.calendar .popup h4
{
	background: #3F65AC;
	padding: 5px 10px;
	color: #FFEA8F;
	margin: 10px 0 0 0;
}

table.calendar .popup h4:first-child
{
	margin-top: 0;
}

table.calendar a
{
	text-decoration: none;
	color: #254F9B;
}

table.calendar .popup a
{
	display: block;
	color: white;
	padding: 4px 10px;
}

table.calendar a:hover,
table.calendar a:focus,
table.calendar span:hover,
table.calendar span:focus
{
	background: #FFBE8F;
	color: #254F9B;
}

dl.formulas dt
{
	margin-top: 10px;
	font-weight: bold;
}

dl.formulas dd.hide
{
	margin-top: 2px;
}

table.scan { width: 100%; border-collapse: collapse; margin: 0 0 10px 0; border: solid 1px black;}
table.scan th { text-align: left; vertical-align: bottom; font-size: 18px; padding: 12px 4px 4px 4px; }
table.scan th, table.scan td { white-space: nowrap; }
table.scan tr.columns th { font-weight: normal; }
table.scan tr:nth-child(even) { background: #FFF2BA; }
table.scan tr.blank { background: #fff; }
table.scan tr.header { background: #FFE36B; border: solid 1px black;}
table.scan tr.section th { font-size: 150%; border-width: 0; color: white; background: #254F9B; text-align: center; padding: 10px 0; }
table.scan tr.known { border: solid 0 black; border-width: 0 1px;}
table.scan tr.known td { padding: 2px 4px;}
table.scan tr.unknown td { color: #666; }


table.scan a { color: black; text-decoration: none;}
table.scan td, table.scan td a { color: #3F65AC; }
table.scan .special, table.scan .special a { color: black; }
table.scan .special a { font-weight: bold; }
table.scan .align-left { text-align: left; }
table.scan .align-right { text-align: right; }