/* ------------------------------------------------ */
/* General settings and resets                      */
/* ------------------------------------------------ */
body, h1, h2, h3, h4, p, ul, ol, li {
	margin: 0;
	padding: 0;
}
body {
	font: normal 12px/1em Arial, Helvetica, sans-serif;
	color: #666;
	background: #0073ad;
}
a {
	color: #666;
}
a img {
	border: 0;
}
br {
	clear: both;
}
h1, h2, h3, h4 {
	line-height: 1.2em;
	color: #fff;
}
h1 {
	font-size: 2em;
}
h2 {
	font-size: 1.5em;
}
h3 {
	font-size: 2.5em;
	line-height: 0.8em;
}
h3 label {
	font-size: .4em;
	display: block;
}
h4 {
	font-size: 1.5em;
	color: #000;
}
small {
	font-size: 1em;
}
.clear {
	clear: both;
}
.shadow {
	text-shadow: 5px 5px 5px #333; /* Only Safari supports this. IE fix is below. */
}
.democrat h3 {
	color: #fff;
	background: #002a72 url(../images/hdr-bevel-blue.gif) no-repeat;
}
.republican h3 {
	color: #fff;
	background: #fe0000 url(../images/hdr-bevel-red.gif) no-repeat;
}
.loader {
	font-style: italic;
}
.loader img {
	margin: 1em;
	vertical-align: middle;
}

/* ------------------------------------------------ */
/* Main layout                                      */
/* ------------------------------------------------ */
#wrap {
	width: 1024px;
	margin: 0 auto;
	padding: 0 0 20px 0;
	position: relative;
}
#logo {
	position: relative;
	min-height: 340px;
}
#logo h1 span {
  text-indent: 999px;
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/masthead.jpg) no-repeat;
	cursor: pointer;
}
#content {
	padding: 0 30px;
}
#generic {
	margin: 0 66px 0 87px;
	background: url(../images/content-full-mid.gif) repeat-y;
	position: relative;
}
#generic .inner {
	min-height: 360px;
	position: relative;
}
#generic-btm {
	display: block;
	background: url(../images/content-full-btm.gif) 0% 100% no-repeat;
	height: 24px;
}
#generic h2 {
	background: #e60000 url(../images/hdr-fullcontent.jpg) no-repeat;
	color: #fff;
	font-size: 4em;
	padding: 0 35px 6px 35px;
	margin: 0 87px 0 0;
}
#generic p {
	display: block;
	font-size: 1.2em;
	line-height: 1.5em;
	font-weight: bold;
	padding: 8px 35px 8px 23px;
	margin: 0 87px 0 12px;
	position: relative;
	width: 490px;
	background-color: #fff;
}
#obama {
	float: left;
	width: 335px;
	position: relative;
	top: -50px;
	margin: 0 0 -60px 0;
}
#mccain {
	float: right;
	width: 335px;
	position: relative;
	top: -50px;
	margin: 0 0 -60px 0;
}
#aux {
	float: left;
	width: 278px;
	position: relative;
	top: 10px;
	left: 0;
	margin: 0 0 0 8px;
}
#tagline {
	text-align: center;
	padding: 20px 0 0 0;
}
#footer {
	clear: both;
	text-align: center;
	padding: 0;
	background: #fff url(../images/star-banner-bg.gif) repeat-x;
}
#footer ul {
	list-style-type: none;
	padding: 53px 0 20px 0;
	background: url(../images/star-banner.gif) 50% 0% no-repeat;
}
#footer li {
	display: inline;
	padding: 2px 10px 0 10px;
}
#footer img {
	vertical-align: middle;
}

/* ------------------------------------------------ */
/* Social sharing sprite                            */
/* ------------------------------------------------ */
.sprite-social {
	background: transparent url(../images/social/sprite.gif) 0 0 no-repeat;
}
.sprite-social-xanga { background-position: 0 -30px; } 
.sprite-social-stumbleupon { background-position: 0 -76px; } 
.sprite-social-digg { background-position: 0 -122px; } 
.sprite-social-myspace { background-position: 0 -168px; } 
.sprite-social-google { background-position: 0 -214px; } 
.sprite-social-blinklist { background-position: 0 -260px; } 
.sprite-social-mixx { background-position: 0 -306px; } 
.sprite-social-newsvine { background-position: 0 -352px; } 
.sprite-social-technorati { background-position: 0 -398px; } 
.sprite-social-yahoo-buzz { background-position: 0 -444px; } 
.sprite-social-furl { background-position: 0 -490px; } 
.sprite-social-reddit { background-position: 0 -536px; } 
.sprite-social-magnolia { background-position: 0 -582px; } 
.sprite-social-yahoo-myweb { background-position: 0 -628px; } 
.sprite-social-sharethis { background-position: 0 -674px; } 
.sprite-social-misterwong { background-position: 0 -720px; } 
.sprite-social-delicious { background-position: 0 -766px; } 
.sprite-social-propeller { background-position: 0 -812px; } 
.sprite-social-friendfeed { background-position: 0 -858px; } 
.sprite-social-facebook { background-position: 0 -904px; } 
.sprite-social-yahoo-bmarks { background-position: 0 -950px; } 
.sprite-social-live { background-position: 0 -996px; } 

/* Additional styling specific to this site */
.sprite-social a {
	padding-left: 16px;
}

/* ------------------------------------------------ */
/* Tweet listings                                   */
/* ------------------------------------------------ */
.tweets {
	background: #fff url(../images/container-bottom-white.gif) 0% 100% no-repeat;
	padding-bottom: 6px;
}
.tweets h3 {
	color: #fff;
	font-size: 1.9em;
	font-family: Arial, Helvetica, sans-serif;
	padding: 15px 10px 16px 22px;
	margin-bottom: 0.2em;
	height: 32px;
	line-height: 30px;
}

/* Controls */
.tweets h3 span {
	float: left;
}
.btn-pause, .btn-play {
	display: block;
	float: right;
	width: 32px;
	height: 32px;
	text-indent: -1000em;
	cursor: pointer;
	background-image: url(../images/btn-pauseplay-sprite.gif);
	background-repeat: no-repeat;
}
.tweets .btn-play {
	display: none; /* initially hidden (default is to start playing tweets automatically) */
}
.democrat .btn-pause { background-position: 0 0; }
.democrat .btn-pause:hover { background-position: -32px 0; }
.democrat .btn-play { background-position: -64px 0; }
.democrat .btn-play:hover { background-position: -96px 0; }
.republican .btn-pause { background-position: 0 -32px; }
.republican .btn-pause:hover { background-position: -32px -32px; }
.republican .btn-play { background-position: -64px -32px; }
.republican .btn-play:hover { background-position: -96px -32px; }
.paused {
	background: #fc0;
	color: #000;
	font-weight: bold;
	padding: 5px 7px;
	border: 1px solid #000;
	text-align: center;
	margin: -3px 0 0 0;
	font-size: 85%;
	position: absolute;
	right: 22px;
	z-index: 5;
}

.tweets .holder-home {
	overflow: hidden;
	height: 445px;
}
.tweets .holder-maximize {
	height: 400px;
	padding-bottom: 45px;
	overflow: auto;
}
.tweets .fade {
	position: relative; /* Safari needs position set */
	float: left;
	margin-top: -45px;
}
#obama .tweets {
	margin-left: 0px;
}
#mccain .tweets {
	margin-right: 0px;
}
.more {
	display: block;
	text-align: right;
	font-size: 93%;
	padding: 15px 19px 10px 0;
}
.tweetWrap {
	float: left;
	clear: left;
}
.tweet {
	margin: 10px 0 10px 6px;
	line-height: 1.2em;
	font-family: "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
	float: left;
	width: 310px;
	overflow: hidden;
}
.tweet .image {
	display: block;
	float: left;
	width: 73px;
	height: 73px;
}
.tweet p {
	padding: 0 0 0 80px;
	font-size: .95em;
}
.tweet strong {
	display: block;
	font-size: 1.4em;
	line-height: 1.1em;
}
.tweet br {
	clear: none;
}
.message {
	float: left;
	width: 304px;
	line-height: 1.2em;
	margin: .5em;
	padding: .5em .7em;
	border: 1px solid #666;
	background-color: #ffc;
}

.paging {
	float: right;
	font-size: 95%;
	padding: 5px 10px;
}
.paging span {
	padding: 0.2em;
}

/* ------------------------------------------------ */
/* Top ten list                                     */
/* ------------------------------------------------ */
#top10 {
	background: #fff url(../images/top10-btm.gif) 0% 100% no-repeat;
	width: 269px;
	padding: 0 0 8px 0;
	margin: 2px 0 0 5px;
}
#top10 h3 {
	color: #002b72;
	position: relative;
	height: 78px;
}
#top10 h3 span {
	position: absolute;
	top: 0;
	left: 0;
	width: 269px;
	height: 78px;
	background: url(../images/hdr-top10.gif) no-repeat;
}
#top10.obama h3 span {
	background: url(../images/hdr-top10-obama.gif) no-repeat;
}
#top10.mccain h3 span {
	background: url(../images/hdr-top10-mccain.gif) no-repeat;
}
#top10 ul {
	/*color: #183d7b;*/
	color: #333;
	list-style: none;
	float: left;
}
#top10 a {
	/*color: #183d7b;*/
	color: #333;
	text-decoration: none;
}
#top10 a:hover {
	text-decoration: underline;
}
#top10 li {
	background: url(../images/top10-div.gif) 50% 0% no-repeat;
	padding: 5px 0 2px 12px;
	font: normal normal 13px Verdana, Arial, Helvetica, sans-serif;
	float: left;
	width: 257px;
}
#top10 li.first {
	background: none;
	padding-top: 3px;
}
#top10 li span {
	display: block;
	float: left;
	padding: 6px 0 0 0;
	width: 30px;
	font-size: 19px;
}
#top10 img.avatar {
	display: block;
	float: left;
}
#top10 em {
	display: block;
	float: left;
	/*width: 100px;*/
	width: 132px; /* without avatar */
	font: normal bold 13px Arial, Helvetica, sans-serif;
	padding: 10px 0 0 3px;
	overflow: hidden;
}
#top10 strong {
	display: block;
	/*color: #cb1b1b;*/
	letter-spacing: -1px;
	float: left;
	width: 42px;
	padding: 10px 5px 0 0;
	overflow: hidden;
	text-align: right;
}
/*#top10 .rep, #top10 .rep a {
	color: #cb1b1b;
}
#top10 .dem, #top10 .dem a {
	color: #183d7b;
}*/
#top10 img.icon {
	display: block;
	float: left;
}

/* ------------------------------------------------ */
/* Archive pages                                    */
/* ------------------------------------------------ */
#archive #logo {
	min-height: 167px;
}
#archive #logo a {
	color: #fff;
}
#archive #logo h1 span {
	background: url(../images/masthead-secondary.jpg) no-repeat;
}
#archive .democrat, #archive .republican {
	width: 670px;
	position: static;
	margin: 0;
}
#archive .republican {
}
#archive .democrat h3 {
	background: #002a72 url(../images/hdr-bevel-blue-wide.gif) no-repeat;
}
#archive .republican h3 {
	background: #fe0000 url(../images/hdr-bevel-red-wide.gif) no-repeat;
	text-align: right;
	padding-right: 22px;
}
#archive .tweets {
	background: #fff url(../images/container-bottom-white-wide.gif) 0% 100% no-repeat;
	min-height: 483px;
}
#archive .tweets h3 span {
	float: none;
}
#archive .message {
	float: none;
	width: auto;
}

/* ------------------------------------------------ */
/* Error page                                       */
/* ------------------------------------------------ */
#error #logo {
	min-height: 265px;
}
#error #logo h1 span {
	background: url(../images/masthead-error.jpg) no-repeat;
}
#error #content {
	padding: 0;
}
#failchart {
	position: absolute;
	right: 0;
	top: 0;
	width: 309px;
	height: 362px;
	background-repeat: no-repeat;
	background-position: 100% 0%;
}

/* ------------------------------------------------ */
/* Preset opacity settings                          */
/* ------------------------------------------------ */
.opacity10 { opacity: .1; -moz-opacity: .1; filter: alpha(opacity=10); }
.opacity20 { opacity: .2; -moz-opacity: .2; filter: alpha(opacity=20); }
.opacity30 { opacity: .3; -moz-opacity: .3; filter: alpha(opacity=30); }
.opacity40 { opacity: .4; -moz-opacity: .4; filter: alpha(opacity=40); }
.opacity50 { opacity: .5; -moz-opacity: .5; filter: alpha(opacity=50); }
.opacity60 { opacity: .6; -moz-opacity: .6; filter: alpha(opacity=60); }
.opacity70 { opacity: .7; -moz-opacity: .7; filter: alpha(opacity=70); }
.opacity80 { opacity: .8; -moz-opacity: .8; filter: alpha(opacity=80); }
.opacity90 { opacity: .9; -moz-opacity: .9; filter: alpha(opacity=90); }

/* ------------------------------------------------ */
/* Browser-specific hacks/filters                   */
/* ------------------------------------------------ */

/* Content-clearing fix for IE */
* html .clear { /* IE 6; This clearing element should not have content */
	height: 1%;
	font-size: 0;
	line-height: 0;
}
*:first-child + html .clear { /* IE 7 */
	height: 0;
	font-size: 0;
}

/* Emulate min-height for IE6 */
* html #logo { height: 340px; }
* html .tweets { height: 552px; }
* html #generic .inner { height: 360px; }
* html #fullcontent #logo { height: 265px; }
* html #archive #logo { height: 167px; }
* html #archive .tweets { height: 483px; }

/* Fix IE 6 double margin bug (floated elements w/margin) */
* html #aux,
* html .tweet,
* html .message {
	display: inline;
}

/* PNG fix for IE6 */
* html .png {
	filter: expression("progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.firstChild.src + "', sizingMethod='image')");
}
* html .png img {
	visibility: hidden;
}
