body { margin: 0; padding: 0; }

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
 
.clearfix {
	display: inline-block;
}
 
html[xmlns] .clearfix {
	display: block;
}
 
* html .clearfix {
	height: 1%;
}


#mymap { margin-top: 10px; position: relative; border: 1px solid #ccc; background: #fff url(../images/bg_map.gif) no-repeat bottom; width: 598px;  }
#map-legend table { border: 1px solid #ccc; background: #fff; padding: 0; color: #333; position: absolute; bottom: 15px; right: 15px; font: 10px Arial, Helvetica, sans-serif; width: 320px; }
#map-legend table th { width: 160px; text-align: center; padding-bottom: 2px; padding-top: 1px; text-transform: uppercase; border-bottom: 1px solid #ccc; }
#map-legend table td { padding: 1px 0 1px 3px; color: #555; border-right: 1px solid #e2e2e2; border-bottom: 1px solid #e2e2e2; }
#map-legend table td.pu { width: 160px; }
#map-legend table th.leg-gop, #map-legend table td.leg-gop { width: 15px; border: 0; }
#map-legend table td span.legend_icon { display:block; width: 13px; height: 8px; float: left; margin-top: 2px; margin-right: 3px;}

#map_container { position: relative; width: 598px; height: 445px; background: #fff url(../images/bg_map.gif) no-repeat bottom; }
.embed #map_container { border: 1px solid #ccc; }
#map_container a { color: #cc0000; text-decoration: none; }
#map_container a:visited {  color: #CC6600; }

/*
#map-header { margin: 10px 0 0 0; padding: 10px 20px; border-top: 1px solid #fff; }
#map-header td { border: 0px solid #ccc; }
#map-header table.container { width: 100%; font: 12px Arial, Helvetica, sans-serif; }
#map-header td.gop { text-align: right; color: #660000; }
#map-header td.current { text-align: center; color: #666; font: 28px Georgia, "Times New Roman", Times, serif; }
#map-header td.dem { color: #000066; }
#map-header td.gop table { text-align: left; float: right; }
#map-header td.seats { font-size: 30px; font-weight: bold; letter-spacing: -1px; }
#map-header td.gop td.seats { padding-right: 5px; }
#map-header td.dem td.seats { padding-left: 7px; }
#map-header td.party { font-size: 13px; font-weight: bold; }
#map-header td.seats div { position: relative; }
#map-header td.seats span { font-size: 11px; top: 10px; right: -4px; position: absolute; }
*/

#states { border-top: 1px solid #fff; }
#states div.states-in-play-wide { width: 297px; float: left; font: 10px Arial, Helvetica, sans-serif; }
#states div.states-in-play-wide table { width: 100%; }
#states div.states-in-play-wide th { text-align: center; padding: 1px 0; } 
#states div.states-in-play-wide td { text-align: center; padding: 1px 0 0 0; } 
#states div.states-in-play-wide td.pickup { }


#states div.states-in-play { width: 119px; float: left; font: 10px Arial, Helvetica, sans-serif; }
#states div.states-in-play table { width: 100%; }
#states div.states-in-play th { text-align: center; padding: 1px 0; } 
#states div.states-in-play td { text-align: center; padding: 1px 0 0 0; } 
#states div.house_hook td a { color: #ff0000; }
#states div.house_hook td a.dem { color: #0000ff;  }
#states div.house_hook td a.new { color: #666;  }
#states div.house_hook td a.mem { color: #9300FF;  }
#states div.dem1 th { background: #000066; color: #fff; }
#states div.dem2 th { background: #3333cc; color: #fff; }
#states div.dem3 th { background: #9999ff; color: #fff; }
#states div.tu th { background: #606060; color: #fff; }
#states div.tu { width: 122px; }
#states div.gop3 th { background: #ff9999; color: #fff; }
#states div.gop2 th { background: #cc3333; color: #fff; }
#states div.gop1 th { background: #660000; color: #fff; }


.pu div { float: left; font: 11px Arial, Helvetica, sans-serif; margin-bottom: 1px;}
.pu div.pu-dem { width: 214px; background: #fff; color: #000066; padding: 2px 4px; border-top: 3px solid #000066; }
.pu div.pu-tu { width: 111px; }
.pu div.pu-gop { width: 214px; background: #fff; color: #660000; padding: 2px 4px; border-top: 3px solid #660000; }



#map-header { margin: 10px 0 0 0; padding: 10px 0; border-top: 1px solid #fff; }
#map-header h2 { text-align: center; text-transform: uppercase; letter-spacing: 4px; font-size: 32px; margin-bottom: 6px; }
#map-header h2 span { font-size: 40px; }
#map-header p.count { font-size: 13px; text-align: center; margin: 0; color: #999; font-style:italic; font-weight: bold; }
#map-header p.count span {  }

#map-header p.links { padding: 10px 0; /*background: transparent url(http://assets.realclearpolitics.com/images/bg_nav2.gif) no-repeat center;*/ text-align: center; /*font: 10px "Times New Roman", Times, serif;*/ font: 12px "Lucida Grande",Tahoma,sans-serif; text-transform: uppercase; margin-bottom: 5px; margin-top: 15px; border-bottom: 3px double #ccc; border-top: 3px double #ccc; }
#map-header p.links a { color: #cc0000;  }
#map-header p.links a.on { font-size: 12px; font-weight: bold;  }


#map-scorecard { padding: 0; background: #F2F2F2 url(http://assets.realclearpolitics.com/images/bg_map_scorecard_header.gif) repeat-x scroll center bottom; margin-bottom: 0; border: 1px solid #ccc; border-bottom: none; }
.embed #map-scorecard { width: 598px; }
#map-scorecard table.container { width: 100%; font: 12px Arial, Helvetica, sans-serif; border-top: 1px solid #fff; }
#map-scorecard td.gop { width: 175px; }
#map-scorecard td.dem { width: 175px; }
#map-scorecard td.gop table { text-align: left; float: right; margin-right: 12px; color: #cc3333; }
#map-scorecard td.dem table { margin-left: 10px; color: #3333cc; }
#map-scorecard td.seats { font-size: 38px; font-weight: bold; letter-spacing: -1px; }
#map-scorecard td.party { font-size: 13px; font-weight: normal; padding-bottom: 1px; }
#map-scorecard td.pickup { padding-top: 1px; }
#map-scorecard td.gop td.seats { padding-left: 7px; }
#map-scorecard td.dem td.seats { padding-right: 8px; }
#map-scorecard td.current { text-align: center; color: #999; text-transform: uppercase; letter-spacing: 2px; font-size: 10px; font-weight: bold; }
#map-scorecard td.tossup { color: #606060; text-align: center; }
#map-scorecard td.tossup table { width: 200px; margin: 0 auto; }
#map-scorecard td.tossup table td { padding: 0 2px; }
#map-scorecard td.tossup table td.seats { text-align: right; width: 85px; }
#map-scorecard td.tossup table td.party { text-align: left; width: 115px; }
/*#map-header td { border: 0px solid #ccc; }
#map-header table.container { width: 100%; font: 12px Arial, Helvetica, sans-serif; }
#map-header td.gop { text-align: right; color: #660000; }
#map-header td.current { text-align: center; color: #666; font: 28px Georgia, "Times New Roman", Times, serif; }
#map-header td.dem { color: #000066; }
#map-header td.gop table { text-align: left; float: right; }
#map-header td.seats { font-size: 30px; font-weight: bold; letter-spacing: -1px; }
#map-header td.gop td.seats { padding-right: 5px; }
#map-header td.dem td.seats { padding-left: 7px; }
#map-header td.party { font-size: 13px; font-weight: bold; }
#map-header td.seats div { position: relative; }
#map-header td.seats span { font-size: 11px; top: 10px; right: -4px; position: absolute; }
*/

#pickups { font: 12px Arial, Helvetica, sans-serif; border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; padding: 3px; }
#pickups h4 {  color: #fff; text-align: center; margin: 0; padding: 5px 0; border-bottom: 1px solid #fff; font-weight: bold; text-transform: uppercase; letter-spacing: 1px; }
#pickups .dem h4 { background: #000066; }
#pickups .gop { margin-top: 3px; }
#pickups .gop h4 { background: #660000; }
#pickups table { width: 100%; text-align: center; }
#pickups td { padding: 3px 0; }
#pickups th { padding: 7px 0 4px 0; font-size: 12px; text-transform: uppercase; border-bottom: 0px solid #ccc; letter-spacing: 1px; }
#pickups .party .level { float: left; width: 197px; background: #f4f4f4; padding-bottom: 5px; }
#pickups .party .level a { font-size: 11px; font-weight: bold; }
#pickups .party .dem-light { background: #d7dfff; }
#pickups .party .gop-light { background: #ffdbd7; width: 198px; }

#pups { margin-bottom: 10px; margin-top: 0; }
#pups table { width: 100%; font: bold 10px Arial, Helvetica, sans-serif; }
#pups td { width: 299px; vertical-align: top; }
#pups table.changes_list td.gop { width: 360px; }
#pups td.gop { width: 249px; }
#pups td.dem a, #pups td.dem span { display: block; float: left; color: #9999ff; border-right: 1px solid #9999ff; border-bottom: 1px solid #9999ff; padding: 2px 3px; }
#pups td.gop a, #pups td.gop span { display: block; float: right; color: #ff9999; border-left: 1px solid #ff9999; border-bottom: 1px solid #ff9999; padding: 2px 3px; }

.ribbon { margin: 0 0 5px 0; padding: 0 0 0 0; background: transparent url('http://assets.realclearpolitics.com/images/bg_line.gif') no-repeat center -6px; text-align: center; }
.ribbon span.total { background: none; font: 9px Arial, Helvetica, sans-serif; color: #444; margin-bottom: 5px; display: block; }
.ribbon span.note { background: none; font: 9px Arial, Helvetica, sans-serif; color: #444; margin-top: 5px; display: block; }

.ribbon span.in_play { font: bold 12px Arial, Helvetica, sans-serif; color: #444; display: block; z-index: 100; position: relative; }
.ribbon span.in_play span { background: #fff; }
.ribbon table { width: 600px; font: 10px Arial, Helvetica, sans-serif; color: #fff; font-weight: bold; text-align: center;}
.ribbon td { padding: 2px 0; border-right: 0px solid #fff; }
.ribbon td.dem_safe { background: #000066; }
.ribbon td.dem_likely { background: #3333cc; }
.ribbon td.dem_lean { background: #9999ff; }
.ribbon td.toss_up { background: #666; }
.ribbon td.gop_lean { background: #ff9999; }
.ribbon td.gop_likely { background: #cc3333; }
.ribbon td.gop_safe { background: #990000; }
.ribbon td.ind { background: #9933cc; }

p.fine_print {color: #666; font: 10px Verdana, Arial, Helvetica, sans-serif;}

.states-in-play a.trending_dem { padding-left: 11px;  }
.states-in-play a.trending_dem span { padding-right: 11px; background: transparent url('http://assets.realclearpolitics.com/images/bg_election_trend_dem2.gif') no-repeat right 3px; }
.states-in-play a.trending_gop { padding-right: 11px;  }
.states-in-play a.trending_gop span { padding-left: 11px; background: transparent url('http://assets.realclearpolitics.com/images/bg_election_trend_gop.gif') no-repeat 0 3px; }
/**/


    	.changes { padding: 3px; color: #333; font: 11px Verdana, Arial, Helvetica, sans-serif; border: 1px solid #ccc; margin-top: 10px; }
		.changes tr.alt { background: #f1f1f1;}
		.changes table { width: 100%; }
		.changes td { padding: 5px; text-align: center; border-top: 1px solid #ddd;  }
    	.changes td.date, .changes th.date { text-align: left; }
		.changes td.status { width: 105px; }
		.changes td.arrow { width: 10px; }
		.changes th { background: #333; color: #fff; padding: 5px; text-align: center; font-size: 9px; text-transform: uppercase; }
    	.changes td.total, .changes td.projection { /*font: 14px Arial, Helvetica, sans-serif;*/ color: #ccc; }
		.changes td.projection { width: 100px; }
		.changes td.projection a { text-decoration: none; }
		
		.changes span.dem { color: #3333cc; font-weight: bold; }
 		.changes td.total span.toss_up { color: #606060; font-weight: bold;  }
		.changes span.gop { color: #cc3333; font-weight: bold; }
		.changes span.ind { color: #9933cc; font-weight: bold; }
		.changes span.independent { color: #9933cc; }
		.changes span.safe_dem { color: #000066;}
		.changes span.likely_dem { color: #3333cc;}
		.changes span.leans_dem { color: #9999ff;}
		.changes span.toss_up { color: #606060;}
		.changes span.leans_gop { color: #ff9999;}
		.changes span.likely_gop { color: #cc3333;}
		.changes span.safe_gop { color: #660000;}
		.changes span.empty_ind { padding: 0 8px; }
		
		.changes table.house { font-size: 9px; }
		.changes table.house td.status { width: auto; }
		.changes table.house td.arrow { width: auto; }
		.changes table.house td.projection { width: auto; }
		p.house_chart { margin: 0; padding: 0; color: #fff; background: #cc3333 url('http://assets.realclearpolitics.com/images/bg_election_sub_header2.gif') repeat-x center bottom; font-size: 10px; font-weight: bold; text-transform: uppercase; text-align: center; padding: 4px; }
		
		h2.election { text-transform: uppercase; letter-spacing: 3px; font-size: 25px; text-align: center; margin-top: 30px; }
		h2.election span { font-size: 33px; }
		#alpha .pups_changes { margin-top: -22px; /*border-left: 1px solid #9999ff; border-right: 1px solid #ff9999;*/ }
		
		#map-header p.sub_title { text-transform: uppercase; letter-spacing: 5px; font-size: 18px; color: #999; text-align: center; margin-bottom: 5px; }
		
		.changes th.header { background: #cc3333 url('http://assets.realclearpolitics.com/images/bg_election_sub_header2.gif') repeat-x bottom; font-size: 10px; }
		.changes td.end { border-left: 1px solid #ccc; }
    .changes th.end { border-left: 1px solid #fff; }
	a.safe_seats { display: block; border-top: 1px dotted #ccc; width: 90px; padding-top: 3px; margin: 4px auto 0 auto; }
	
	.changes td.reset { padding: 0; vertical-align:top; width: 296px; border: none; }
	
	
	ul.map_nav { border-top: 3px double #ccc; border-bottom: 3px double #ccc;  margin: 18px 0 8px 0; padding: 0; list-style: none; list-style-image: none; list-style-type: none; text-transform: uppercase; font: 10px "Lucida Grande",Tahoma,sans-serif; }
			ul.map_nav li { float: left; text-align: center; padding: 8px 0 7px 0; }
			ul.map_nav li a { display: block; text-align: center; }
			ul.map_nav li a.m { font-size: 12px; font-weight: normal; color: #cc0000; }
			ul.map_nav li a.c { display: block; font-size: 9px; font-weight: normal; color: #999; }
        	ul.map_nav li a.on { font-weight: bold; }
			ul.map_nav li a.c_on { color: #666; font-weight: normal; letter-spacing: 1px; }
			
.ribbon td.dem { background: #3333cc;  }
				.ribbon td.gop { background: #cc3333; }
				
				#recent_elections { font: 12px Arial, Helvetica, sans-serif; text-align: center; border: 1px solid #ccc; border-bottom: none; margin-bottom: -10px; padding: 5px; color: #999; background: #eee; }
				#recent_elections a.on { font-weight: bold; }
				
				#alpha #map-scorecard td.right { width: 175px; }
				#alpha #map-scorecard td.left { width: 175px; }
				#alpha #map-scorecard td.right table { text-align: left; float: right; margin-right: 12px; }
				#alpha #map-scorecard td.left table { margin-left: 10px; float: left; }
				#alpha #map-scorecard td.seats { font-size: 38px; font-weight: bold; letter-spacing: -1px; }
				#alpha #map-scorecard td.party { font-size: 13px; font-weight: normal; padding-bottom: 1px; }
				#alpha #map-scorecard td.pickup { padding-top: 1px; }
				#alpha #map-scorecard td.right td.seats { padding-left: 7px; padding-right: 0; }
				#alpha #map-scorecard td.left td.seats { padding-right: 8px; padding-left: 0; }

#mymap h4 { background: #cc3333 url('http://assets.realclearpolitics.com/images/bg_election_sub_header2.gif') center bottom; text-transform: uppercase; text-align: center; padding: 5px; margin: 2px 3px 3px 3px; font: bold 10px Verdana, Arial, Helvetica, sans-serif; color: #fff; }

#map-header.header_changes .count { display: none; }
span.rep { color: #cc0000; }
span.dem { color: #0000cc; }

/*MEDIA QUERY FOR IPAD*/
@media only screen 
and (min-device-width : 768px) 
and (max-device-width : 1024px) {
 #map-header p.links { letter-spacing: -.05em; }
}