<?php
ob_start('ob_gzhandler');
$age = 86400;
header('Cache-Control: max-age='.$age.', must-revalidate, post-check='.($age*.5).', pre-check='.$age);
header('Expires: '.gmdate("D, d M Y H:i:s",time()+$age).' GMT');
define('LASTMODIFIED',gmdate('D, d M Y H:i:s', filemtime($_SERVER['SCRIPT_FILENAME'])).' GMT');
if (isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) && strtotime($_SERVER['HTTP_IF_MODIFIED_SINCE']) >= strtotime(LASTMODIFIED)) {
	header($_SERVER['SERVER_PROTOCOL'].' 304 Not Modified');
	ob_end_clean();
	exit;
}
?>
body { color: #000; background: #FFF; margin: 0; padding: 0; font: 90% Arial, Helv, Sans-Serif; width: 100%;}

a { color: #00C; background: transparent; text-decoration: underline;}
h1#logo { color: #FFF; background: #030 url(http://images.fromtheswamp.com/swampbg.jpg) repeat-x top center; margin: 0; padding: 0; text-align: center;}
h1#logo img { margin: 0; padding: 0;}
h2, h3 { color: #030; background: transparent; margin: 0; padding: 2px 0 0;}
h2 { font-size: 1.05em;}
h3 { font-size: 1em;}
h2 a { color: #030; text-decoration: none;}
b.error { color: #F00; font-weight: bolder;}

#topmenu { color: #FFF; background: #000; margin: 0 0 15px; padding: 0; border-top: 1px solid #000; border-bottom: 1px solid #000; text-align: center; font: bold .95em Tahoma, Arial, Helv, Sans-Serif; display: block;}
#topmenu li { margin: 0; padding: 0; border-left: 1px solid #FFF; border-right: 1px solid #FFF; display: inline;}
#topmenu li a, #topmenu li b { margin: 0; padding: 0 10px; text-decoration: none;}
#topmenu li a, #bottom a { color: #CC0; background: transparent;}
#topmenu li a:hover { color: #FFF; background: #663;}
#topmenu li b { color: #FF0; background: #663;}
#bottom { color: #FFF; background: #030 url(http://images.fromtheswamp.com/swampbg.jpg) repeat-x top center; margin: 0; padding: 2px 0 4px; border-top: 2px solid #000; font: .85em Tahoma, Arial, Helv, Sans-Serif; text-align: center; display: block; clear: both;}

#main { margin: 0 0 20px; padding: 0 1%; clear: both;}
#side { margin: 0; padding: 0; width: 24%; float: right;}
#main.swamp { width: 73%; float: left;}
#main a { word-wrap: break-word;}
div.admin { text-align: center; width: 67%; margin-right: 33%; float: left;}
#main.admin form { margin: 0; padding: 0; clear: none;}
#side.admin { width: 30%; float: right;}

#main.swamp h2 { font-size: 1.2em;}
#main h2, #side h2.calendar { text-align: center;}
#main table, #side table { margin: 0; padding: 0; font-size: .85em; border: none;}
#main table { width: 99.9%;}

#main.swamp h2 { font-size: 1em; text-align: left;}
#main.swamp h2.date  { float: right;}
#main.swamp h2.issue { float: left;}
#main.swamp h2.title { border-top: 1px solid #000; font-size: 1.25em; clear: both;}
#main.swamp h3.title { width: 100%;}
#main.swamp form table { width: 480px;}

#side h2 { margin-left: 2px; padding-left: 2px; width: 97.5%;}
#side .box { background: #EEE; margin: 0 0 15px; padding: 2px; border-top: 1px solid #000; border-left: 1px solid #000;}
#side > .box { width: auto;}
#side table, #side table.box { width: 99%;}
#side ul.box { padding-bottom: 6px; font-size: .85em; list-style: none;}
#side ul.box li { padding: 1px 3px 2px; clear: both;}
#side ul.box#amazon li { text-align: center; font-size: 1.05em;}
#side ul.box#amazon li img { border: 1px outset #000;}

#side ul.box#upcoming ul { margin: 0 0 0 .6em; padding: 0 0 0 .4em; list-style: none;}
#side ul.box#upcoming li { font-weight: bold;}
#side ul.box#upcoming li li { font-weight: normal;}

#side ul.box#score, #side ul.box#elecscore { width: 97.5%;}
#side > ul.box#score, #side > ul.box#elecscore { width: auto;}
#side ul.box#score ul, #side ul.box#elecscore ul { margin: 0 0 0 .6em; padding: 0 0 0 .3em; list-style: square outside url("http://images.fromtheswamp.com/minus.png");}
#side ul.box#score li li, #side ul.box#elecscore li li { margin: 0 0 0 6px; padding: 0;}
#side ul.box#score li li a, #side ul.box#elecscore li li a { color: #030; text-decoration: underline;}
#side ul.box#score li li li a, #side ul.box#elecscore li li li a { color: #00C; text-decoration: underline;}
#side ul.box#score li h3, #side ul.box#elecscore li h3 { color: #FFF; background: #030; padding: 0 0 2px; font-size: .8em; text-align: center; float: left; width: 32%;}
#side ul.box#score li h3 a, #side ul.box#elecscore li h3 a { display: block; padding: 2px 0 1px; text-decoration: none;}
#side ul.box#score li > h3, #side ul.box#elecscore li > h3 { width: 33.3%;}
#side ul.box#score li h4, #side ul.box#elecscore li h4  { font-size: .9em; font-weight: normal; text-align: center; padding: 3px 0; margin: 0; clear: both;}
#side ul.box#score ul ul, #side ul.box#elecscore ul ul { list-style-image: none; clear: both;}
#side ul.box#score ul#states ul { list-style-type: disc;}
#side ul.box#score ul#fundraising ul, #side ul.box#score ul#delegates ul, #side ul.box#elecscore ul#elecfundraising ul, #side ul.box#score ul#elecvotes ul { list-style: none; padding: 0; margin: 1px 0 2px;}
#side ul.box#score ul#fundraising ul li, #side ul.box#score ul#delegates ul li, #side ul.box#elecscore ul#elecfundraising ul li, #side ul.box#score ul#elecvotes ul li { padding: 0; margin: 0;}

#side ul.box#scorecard h3, #side ul.box#elecscorecard h3 { font-size: 1.1em; text-decoration: underline;}
#side ul.box#scorecard ul, #side ul.box#elecscorecard ul { margin: 0 0 0 .9em; padding: 0; list-style: square;}
#side ul.box#scorecard li li, #side ul.box#elecscorecard li li { margin: 0 0 0 6px; padding: 0;}

#side form.box { text-align: center; padding: 4px 2px;}
#side form.box input, #side form.box select { font-size: .75em;}

#side.admin form.box { text-align: left; font-size: .95em;}
#side.admin form.box p { color: #000; background: #F8F8F8; margin: 0; padding: 0; font-size: .9em; text-align: center; border: 1px solid #000;}
#side.admin form.box div { text-align: center;}

table#calnav th a { color: #363;}
table#calendar th { color: #FFF; background: #030; width: 14%;}
table#calendar td { color: #000; background: #EEE; width: 14%;}
table#calendar td.empty { color: #000; background: #CCC;}

#main table#calnav th { font-size: 1.25em;}
#main table#calendar { color: #FFF; background: #000;}
#main table#calendar td { margin: 0; padding: 0 0 0 3px; height: 60px;}
#main table#calendar td a { text-decoration: none;}
#main table#calendar td span { color: #FFF; background: #030; padding: 2px; margin: 0 0 2px; font-size: .85em; text-align: right; width: 1.3em; float: right;}
#main table#calendar td span a { color: #FFC;}
#main table#calendar td span a, #main table#calendar td a:hover { text-decoration: underline;}

#side table#calnav th { font-size: 1.15em;}
#side table#calendar { color: #FFF; background: #000; margin-bottom: 15px; padding: 0; font-size: .75em; border: none;}
#side table#calendar td { text-align: right;}
#side table#calendar td#today { background: #FFC; font-weight: bold;}
#side table#calendar td#today a { color: #000; text-decoration: none;}

ul.question { margin: 0; padding: 0; list-style: none;}
ul.question li { margin: 12px 12px;}
ul.question h3 { color: #030; margin: 0 4px 2px; font-size: 1em;}
ul.question p { color: #000; background: #EEE; margin: 2px 0 0; padding: 3px 6px; border-left: 1px solid #999; border-top: 1px solid #999;}
ul.question img { float: right; margin: 20px 0 0; border: 6px #FFF solid; border-right: none;}

#subscribe { margin: 10px auto 0; width: 450px;}
#subscribe p { font-size: .9em;}
#subscribe label { width: 200px; display: block; text-align: right; float: left; clear: both;}
#subscribe label.input { color: #000; background: #EEE;}

.results { font-size: .75em;}
div.results { color: #FFF; background: #363; margin: 0; padding: 1px 1%; font-family: Verdana, Arial, Helv, Sans-Serif; font-weight: bold; border-top: 1px solid #000; border-bottom: 1px solid #000;}
#advsearch { text-align: center; font-size: .8em; margin: 30px 0 12px;}
#noresults { color: #C00; background: transparent; font-size: .8em; font-weight: bold; text-align: center;}
#results { float: right;}
#respage { text-align: center;}
#respage a { color: #FFF; background: transparent;}
#respage a:hover { color: #FF0; background: transparent;}
<?php
header('Last-Modified: '.LASTMODIFIED);
define('ETAG','"'.md5(ob_get_contents()).'"');
header('ETag: '.ETAG);
if (isset($_SERVER['HTTP_IF_NONE_MATCH']) && $_SERVER['HTTP_IF_NONE_MATCH'] == ETAG) {
	ob_end_clean();
	exit;
} else {
	header('Content-Type: text/css; charset=iso-8859-1');
	header('Content-Language: en-us, en');
//	header('Content-Length: '.ob_get_length());
	header($_SERVER['SERVER_PROTOCOL'].' 200 OK');
	ob_end_flush();
	exit;
}
?>