		body {
			font: 12px/1.5 Arial, Helvetica, Verdana, sans-serif;
		}
		.grid {
			width: 920px;
			margin: 0 auto;
		}
		p {margin-bottom: 10px;}
		a, a:visited {
			color: #376780;
		}
		hr {display: none;}
		.hr {clear: both;}
		#header {
			margin: 20px auto;
		}
		h1 {
			display: block;
			width: 220px;
			height: 195px;
			float: left;
		}
			h1 img {width: 220px;}
		#outlook {
			width: 70%;
			float: left;
		}
		#legend {
			width: 20%;
			float: right;
			margin: 17px 10px 0 0;
			text-align: right;
		}
		#page-meta {
			float: right;
			width: 300px;
			padding: 60px 0 0;
			margin-right: 10px;
			text-align: right;
		}
			#page-meta h2 {
				font: 24px Georgia, "Times New Roman", Times, serif;
			}
			#page-meta h5 {
				text-transform: uppercase;
				font-weight: 100;
			}
			.ev.tag {
				float: left;
				margin: -18px 10px 0 130px;
				color: #aaa;
			}
		h3.rating {
			padding: 5px;
			text-transform: uppercase;
			font-weight: 100;
			text-align: center;
			background-color: #ddd;
			margin-bottom: 3px;
		}
		table {
			float: left;
			width: 220px;
			margin: 0 10px 20px 0;
			background-color: #eee;
		}
			table.ratings.seats-in-play {
				text-align: left;
				width: 910px;
				margin-bottom: 10px;
				border: none;
			}
				table.seats-in-play th span.D {float: left;}
				table.seats-in-play th span.R {float: right;}
				table.seats-in-play th span.T {
					float: left;
					margin-left: 240px;
				}
				table th span.D,
				table th span.R {
					padding-left: 0;
				}
					table span span {display: }
					table.seats-in-play span span {display: inline;}
			table.ratings {page-break-before: auto;}
			table.pure-toss-up {clear: both;}
			table tr {}
				table th {}
				table td {}
				table.map th.id,
				table.map td.id {
					text-align: center;
				}

				table.map th.label,
				table.map td.label,
				table.map th.segment,
				table.map td.segment {
					text-align: left;
				}

			table.ratings {
				border-bottom: 10px solid #eee;
			}

					table.ratings th span {padding: 0 15px;}

				table.ratings td.state {
					font-weight: bold;
					width: 12px;
					padding-left: 10px;
				}

				table.ratings td.district,
				table.ratings td.class {
					width: 10px;
					text-align: center;
					font-weight: bold;
				}

					table.ratings td.class {
						width: 20px;
					}

				table.ratings td.party {
					width: 20px;
					text-align: center;
					font-weight: bold !important;
				}

					table.ratings td.party.D {
						color: #376780;
					}

					table.ratings td.party.R {
						color: #952b1e;
					}

					table.ratings td.party.I {
						color: #333;
					}

				table.ratings td.notes {
					width: 40px;
					text-align: center;
				}

					table.ratings td.notes em,
					table.ratings td.incumbent em {
					}

					table.ratings td.incumbent em {position: relative; left: 10px;}

				table.ratings td.incumbent {}

				table.ratings td.shift {
					font-size: 12px;
					line-height: 12px;
					text-align: right;
					padding-right: 12px;
				}

					table.ratings td.shift.R,
					#legend li.R {color: #952b1e;}
					table.ratings td.shift.D,
					#legend li.D {color: #376780;}

						#legend li em {color: #999;}

				table.ratings td.related {
					padding: 0 6px;
				}

				table.ratings td.electoral {text-align: right;}

				table.ratings td.rating {
					width: 170px;
				}
				table.ratings.id-4,
				table.ratings.id-8,
				table.ratings.id-12,
				table.ratings.id-16 {
					clear: both;
				}
		#footer {
			text-align: center;
			padding: 20px 0 0;
			border-top: 1px solid #ccc;
		}

@media print {
	span.print {display: none;}
}
