
/* Mast */

.hp_election_widget .mast {
  background: #dc0000;
}
.hp_election_widget .mast .title {
  color: white;
  font-weight: bold;
  padding: 10px 0 10px 15px;
}

.hp_election_widget .mast ul.nav {
  display: flex;
  justify-content: space-evenly;
  padding: 0 0 3px;
  margin: 0;
}
.hp_election_widget .mast ul.nav > li {
  width: calc((100% / 3) - 4px);
  text-align: center;
  padding: 4px 0;
  cursor: pointer;
  font-size: 14px;
  background: #e5e5e5;
  list-style: none;
}
.hp_election_widget .mast ul.nav > li.active {
  color: #fff;
  background: rgba(68,68,68,1);
  background: -moz-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(68,68,68,1)), color-stop(53%, rgba(102,102,102,1)), color-stop(100%, rgba(102,102,102,1)));
  background: -webkit-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -o-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -ms-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: linear-gradient(to bottom, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#444444", endColorstr="#666666", GradientType=0 );
}
.hp_election_widget .mast ul.nav > li:hover {
  color: #fff;
  background: rgba(68,68,68,1);
  background: -moz-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(68,68,68,1)), color-stop(53%, rgba(102,102,102,1)), color-stop(100%, rgba(102,102,102,1)));
  background: -webkit-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -o-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: -ms-linear-gradient(top, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  background: linear-gradient(to bottom, rgba(68,68,68,1) 0%, rgba(102,102,102,1) 53%, rgba(102,102,102,1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#444444", endColorstr="#666666", GradientType=0 );
}

/* Tabs */

.hp_election_widget ul.tabs {
  margin: 0;
  padding: 0;
}

/* Table */

.hp_election_widget table.results {
  border-collapse: collapse;
  font-size: 11.5px;
  width: 100%;
}

body.polls .hp_election_widget table.results tbody.vs {
  display: none;
}

.hp_election_widget table.results td {
  margin: 0;
  padding: 0;
  text-align: center;
  height: 15.1px;
}
.hp_election_widget .tab.senate table.results tr:not(.header) td {
  height: 16px;
}
.hp_election_widget .loading_row {
  height: 100%;
  width: 30px;
  margin: 0 auto;
  background: url('/asset/img/ajax-elipsis-black-horizontal-loader.gif');
  background-repeat: no-repeat;
  background-size: 30px 30px;
  background-position: center center;
}
.hp_election_widget .scores .loading_row {
  height: 13px;
}

.hp_election_widget table.results tbody tr:not(.header):nth-child(2n+1) td {
  background: #f5f5f5;
}

.hp_election_widget table.results tbody tr.header {
  background: black;
  color: white;
  font-weight: bold;
}

.hp_election_widget table.results tbody tr.header td {
  padding: 2.4px 0 3px;
}

.hp_election_widget table.results tbody tr td:first-child {
  padding-left: 10px;
  text-align: left;
  border-left: 1px solid #F5F5F5;
}
.hp_election_widget .tab.president table.results tbody tr td:first-child {
  width: 120px;
}

.hp_election_widget table.results tbody tr:not(.header) td:last-child {
  padding-right: 10px;
  text-align: right;
  border-right: 1px solid #F5F5F5;
}
.hp_election_widget .tab.president table.results tbody tr:not(.header) td:last-child {
  width: 63px;
}

.hp_election_widget table.results tbody tr:not(.header) td.arrow_down_gop:last-child {
  background-image: url('/images/bg_election_2010_trend_down_gop.gif');
  background-repeat: no-repeat;
  background-position: right center;
}
.hp_election_widget table.results tbody tr:not(.header) td.arrow_up_gop:last-child {
  background-image: url('/images/bg_election_2010_trend_up_gop.gif');
  background-repeat: no-repeat;
  background-position: right center;
}
.hp_election_widget table.results tbody tr:not(.header) td.arrow_down_dem:last-child {
  background-image: url('/images/bg_election_2010_trend_down_dem.gif');
  background-repeat: no-repeat;
  background-position: right center;
}
.hp_election_widget table.results tbody tr:not(.header) td.arrow_up_dem:last-child {
  background-image: url('/images/bg_election_2010_trend_up_dem.gif');
  background-repeat: no-repeat;
  background-position: right center;
}

.hp_election_widget table.results tbody tr:not(.header) td.tossups:last-child {
  padding-right: 0;
  text-align: center;
}

.hp_election_widget table.results ul.battlegrounds_switcher {
  display: inline-block;
  margin: 0;
  padding: 0 0 0 3px;
}
.hp_election_widget table.results ul.battlegrounds_switcher li {
  display: inline-block;
}
.hp_election_widget table.results ul.battlegrounds_switcher li:not(.active) {
  cursor: pointer;
}
.hp_election_widget .footer {
  font-size: 11.5px;
  text-align: center;
  background: #e5e5e5;
  padding: 2px 0 4px;
}

.hp_election_widget .tab.senate td a.dem {
  color:#3333cc;
}

.hp_election_widget .tab.senate td a.gop {
  color:#cc3333;
}

.hp_election_widget .tab.senate td a.tie {
  color:#666;
}

.hp_election_widget .tab.senate table.results tbody tr.header td:last-child {
  text-align: right;
  padding-right: 10px;
}

/* Top Boxes */

.hp_election_widget ul.top_boxes {
  margin: 0;
  padding: 0 0 3px;
  background: #dc0000;
  display: flex;
  justify-content: space-evenly;
  font-size: 11.5px;
}
.hp_election_widget ul.top_boxes a {
  color: inherit;
}
.hp_election_widget ul.top_boxes li {
  width: calc((100% / 2) - 5px);
  background: #ddd;
  list-style: none;
}
.hp_election_widget ul.top_boxes li .title {
  background: #bbb;
  font-weight: bold;
  text-align: center;
  padding: 1px 0;
}
.hp_election_widget ul.top_boxes li ul.scores {
  margin: 0;
  padding: 0;
  display: flex;
  justify-content: space-evenly;
  font-weight: bold;
}
.hp_election_widget ul.top_boxes li ul.scores li {
  white-space: nowrap;
  text-align: center;
}
.hp_election_widget ul.top_boxes li ul.scores li.tossups {
  width:20px;
}
.hp_election_widget ul.top_boxes li ul.scores li.dem {
  color:#3333cc;
}
.hp_election_widget ul.top_boxes li ul.scores li.gop {
  color:#cc3333;
}
.hp_election_widget ul.top_boxes li ul.scores li.full {
  width: 100%;
}

@media only screen and ( max-device-width : 1023px ) {

  .hp_election_widget .tab.president table.results tbody tr td:first-child {
    width: 108px;
  }
  .hp_election_widget .tab.president table.results tbody tr:not(.header) td:last-child {
    width: 70px;
  }
}

/* map image */

.hp_election_widget a.map_image {
  overflow: hidden;
  height: 190px;
  display: block;
}

/*body.polls .hp_election_widget a.map_image {
  height: 248px;
}*/

@media only screen and (max-width: 767px) {
  .hp_election_widget a.map_image {
      height: 260px;
    }
}
@media only screen and (max-width: 425px) {
  .hp_election_widget a.map_image {
      height: 249px;
    }
}
@media only screen and (max-width: 375px) {
  .hp_election_widget a.map_image {
      height: 220px;
    }
}
@media only screen and (max-width: 345px) {
  .hp_election_widget a.map_image {
      height: 200px;
    }
}

.hp_election_widget .map_image img {
  width: 100%;
  display: block;
}

/* Hide/show based on screen width */
@media only screen and ( min-width : 501px ) {
  .hp_election_widget .phone_portrait_only {
    display: none;
  }
}
@media only screen and ( max-width : 500px ) {
  .hp_election_widget .not_phone_portrait {
    display: none;
  }
}
@media only screen and ( min-width : 768px ) {
  .hp_election_widget .phone_only {
    display: none;
  }
}
@media only screen and ( max-width : 767px ) {
  .hp_election_widget .not_phone {
    display: none;
  }
}
@media only screen and ( max-width : 767px ),
only screen and ( min-width : 1025px ) {
  .hp_election_widget .tablet_only {
    display: none;
  }
}
@media only screen and ( max-width : 1024px ) and ( min-width : 768px ) {
  .hp_election_widget .not_tablet {
    display: none;
  }
}
@media only screen and ( max-device-width : 767px ),
only screen and ( min-device-width : 1024px ) {
  .hp_election_widget .tablet_portrait_only {
    display: none;
  }
}
@media only screen and ( min-device-width : 768px ) and ( max-device-width : 1023px ) {
  .hp_election_widget .not_tablet_portrait {
    display: none;
  }
}
@media only screen and ( min-device-width : 1024px ) {
  .hp_election_widget .tablet_portrait_and_below_only {
    display: none;
  }
}
@media only screen and ( max-device-width : 1023px ) {
  .hp_election_widget .not_tablet_portrait_and_below {
    display: none;
  }
}
@media only screen and ( max-width : 1024px ) {
  .hp_election_widget .desktop_only {
    display: none;
  }
}
@media only screen and ( min-width : 1025px ) {
  .hp_election_widget .not_desktop {
    display: none;
  }
}