html{ color:#222; background:#FFF; }
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td { margin:0; padding:0; }
body { line-height: 1; font-size: 15px; font-family: Georgia,Times,serif; }
h1, h2, h3, h4, h5, h6 { font-size:100%; font-weight:normal; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
q:before, q:after { content:''; }
ins { text-decoration: none; }
del { text-decoration: line-through; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border:0; }
address, caption, cite, code, dfn, th, var { font-style:normal; font-weight:normal; }
em { font-style: italic; }
caption, th { text-align:left; }
abbr, acronym { border:0; font-variant:normal; }
/* to preserve line-height and selector appearance */
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
input, textarea, select { font-family:inherit; font-size:inherit; font-weight:inherit; }
/*to enable resizing for IE*/
input, textarea, select { *font-size:100%; }
/*because legend doesn't inherit in IE */
legend { color:#000; }
a { color: #008990; text-decoration: none; }
a:hover { text-decoration: underline; }
/*
 * HTML5 Defaults
 */
article, aside, details, figcaption, figure,
footer,header, hgroup, menu, nav, section {
    display:block;
}
p { line-height: 1.35; }
h1 { font-size: 1.6667em; }
strong { font-style:normal; font-weight: bold; }
th { font-weight: bold; }
blockquote { margin-left: 1em; font-style: italic; color: #444; }

.btn_bigblue { font-family: "LeagueGothicRegular"; font-weight: normal; font-size: 40px; line-height: 40px; padding: 0.6em 0.8em; }
.btn_bigblue:hover { text-decoration: none; }

#controls { font-family: Helvetica, Arial, sans-serif; font-size: 11px; font-weight: bold; position: relative; top: -8px; }
#controls .navbar-text { color: #555; padding-left: 4px; text-transform: uppercase; }
#controls .control-group { background: #E3E3E3; margin-right: 1em; }
#controls ul { display: inline-block; }
#controls li { display: inline-block; border-right: 1px solid #ddd; }
#controls li + li { border-left: 1px solid #ccc; }
#controls li a { color: #888; display: inline-block; padding: 5px 4px 2px; }
#controls li a:hover { background: #fafafa; text-decoration: none; }
#controls li a:before { content: "\f096"; font-family: FontAwesome; font-weight: normal; margin-right: 0.25em; }
#controls li a.active { color: #333; }
#controls li a.active:before { content: "\f046"; }

.hiderep .raceparty-rep { display: none; }

.hidedem .raceparty-dem { display: none; }

.hidecompleted .completed { display: none; }

.hideincomplete .scoreboard-container { display: none; }
.hideincomplete .completed { display: block; }

.showrunoffs .scoreboard-container { display: none; }
.showrunoffs .runoff { display: block; }

.embed { overflow-x: hidden; }
.embed #site_header { margin: 0; padding-bottom: 0; width: auto; }
.embed #site_footer { height: 0; }
.embed #electionboard { overflow: hidden; *zoom: 1; padding-left: 6px; padding-top: 6px; }
.embed .scoreboard-container { height: 145px; }

#tab-myraces { position: relative; }

.embed-controls { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; background: white; font-size: 14px; padding: 0.2em 0.2em 30px; width: 100%; }
.embed-controls .btn { display: inline-block; margin-right: 0.2em; }
.embed-controls .embd-btn { position: absolute; top: 0; }
.embed-controls .clear-btn { position: absolute; top: 0; left: 500px; }
.embed-controls .close-btn { color: #444444; cursor: pointer; float: right; font-size: 16px; margin-top: -10px; margin-right: -10px; }

.embed-helper { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; background: #dddddd; font-family: Helvetica, Arial, sans-serif; left: 0; padding: 1em; width: 50%; margin-top: 25px; }
.embed-helper p { font-size: 15px; margin-bottom: 0.5em; }
.embed-helper p:last-child { margin-bottom: 0; }
.embed-helper textarea { -webkit-border-radius: 0.5em; -moz-border-radius: 0.5em; -ms-border-radius: 0.5em; -o-border-radius: 0.5em; border-radius: 0.5em; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; border: 1px solid #2e6e91; color: #333333; display: block; font-family: monospace; font-size: 90%; height: 7em; margin-bottom: 0.5em; padding: 0.25em; overflow: hidden; width: 100%; }

.embed_shell #wrapper { padding: 6px; }
.embed_shell #site_header { margin: 0; padding: 0; width: auto; }
.embed_shell #site_content { min-height: auto; }
.embed_shell #site_footer { height: auto; }
.embed_shell iframe { overflow-x: hidden; }

.branding { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; background: #333333; color: #eeeeee; left: 0; font-family: Helvetica, Arial, sans-serif; text-align: center; width: 100%; }
.branding a { color: #ffcc20; display: inline-block; font-size: 13px; line-height: 22px; margin: 0 4px; vertical-align: middle; }
.branding a > i { font-size: 20px; }
.branding a:hover { text-decoration: none; }
.branding img { max-width: 100%; }

#branding-header img { max-height: 32px; }

#branding-footer { padding: 6px 0; white-space: nowrap; }

.admin.actions { position: absolute; }
.admin.actions > li { float: left; margin-left: 0; margin-right: 0.5em; }
.admin.actions.inAjax a { color: #CCC; }

#site_header { border-bottom: 0; position: relative; width: 960px; margin: 20px auto 0; }
#site_header h2 { margin-top: 10px; position: relative; left: -111px; }
#site_header h3 { right: 70px; position: absolute; top: 25px; }

.content_header { margin-bottom: 0.5em; }

.search { margin-bottom: 1em; }
.search p { margin-bottom: 0.1em; }
.search .input_neue { width: 205px; }

.ui-tabs-nav .generated { background: #006267; }
.ui-tabs-nav .generated.ui-state-active { background: #ffcc20; }

.ui-tabs-panel { min-height: 310px; }

.scoreboard-container { float: left; font-family: Helvetica, Arial, sans-serif; height: 155px; overflow: hidden; padding-top: 0; width: 192px; }
.kiosk .scoreboard-container { width: 384px; height: 193.75px; }

.scoreboard { margin-right: 6px; font-size: 10px; }
.kiosk .scoreboard { margin-right: 12px; font-size: 20px; }
.kiosk .scoreboard footer { display: none; }
.scoreboard header { background: no-repeat right top #f8e3a4; }
.raceparty-rep .scoreboard header { background-color: #d98e8d; }
.raceparty-dem .scoreboard header { background-color: #92a9d0; }
.top_race .scoreboard header { background-image: url("//s3.amazonaws.com/static.texastribune.org/common/images/membership-drive/star-black.png"); }
.scoreboard h3 { padding: 3px 3px 1px; font-size: 120%; font-weight: bold; }
.kiosk .scoreboard h3 { font-size: 100%; font-weight: normal; font-style: italic; }
.scoreboard h4 { padding: 2px 3px; }
.kiosk .scoreboard h4 { font-size: 90%; }
.scoreboard h5 { background: #faecc0; padding-top: 2px; text-align: right; }
.raceparty-rep .scoreboard h5 { background: #e6b4b3; }
.raceparty-dem .scoreboard h5 { background: #b6c5df; }
.scoreboard h5 span { margin-left: 10px; margin-right: 15px; }
.scoreboard .top { border: 2px solid #f8e3a4; }
.raceparty-rep .scoreboard .top { border-color: #d98e8d; }
.raceparty-dem .scoreboard .top { border-color: #92a9d0; }
.scoreboard .content { background: no-repeat scroll 50% 0 white; height: 75px; overflow-x: hidden; overflow-y: hidden; }
.kiosk .scoreboard .content { height: 105px; }
.raceparty-rep .scoreboard .content { background-image: url("//s3.amazonaws.com/static.texastribune.org/media/flatpages/election-2012/primary-may/icon-elephant-75px.png"); }
.raceparty-dem .scoreboard .content { background-image: url("//s3.amazonaws.com/static.texastribune.org/media/flatpages/election-2012/primary-may/icon-donkey-75px.png"); }
.scoreboard .actions { text-align: right; }
.scoreboard .actions > * { display: inline-block; }
.scoreboard .action a { background: #f8e3a4; color: inherit; display: inline-block; margin-left: 18px; padding-right: 5px; position: relative; line-height: 15px; }
.scoreboard .action a:hover { text-decoration: none; }
.scoreboard .action a:before { border-color: #f8e3a4 transparent; border-style: solid; border-width: 15px 0 0px 15px; content: " "; display: block; height: 0; left: -15px; position: absolute; top: 0; width: 0; }
.scoreboard .action .icon { margin-right: 0.5em; font-weight: bold; }
.raceparty-rep .scoreboard .action a { background: #dfa1a0; }
.raceparty-dem .scoreboard .action a { background: #a4b7d8; }
.raceparty-rep .scoreboard .action a:before { border-color: #dfa1a0 transparent; }
.raceparty-dem .scoreboard .action a:before { border-color: #a4b7d8 transparent; }
.scoreboard .more .icon:before { content: "+"; }
.expand .scoreboard .more .icon:before { content: "\2013"; }

.race-head { font-family: "LeagueGothicRegular"; font-weight: normal; display: none; font-size: 65px; margin-bottom: 5px; text-transform: uppercase; }
.kiosk .race-head { display: block; }
@media print { .race-head { display: block; } }

@media print { #controls, .ui-tabs-nav, .actions { display: none; }
  .ui-tabs .ui-tabs-hide { display: block !important; } }
.expand .scoreboard { position: absolute; width: 186px; z-index: 1; }
.expand .content { height: auto; }
.expand .more .icon { content: "-"; }

table.data { font-weight: bold; margin: 0; }
table.data thead td { padding: 0; }
table.data thead div { background: #222; color: #eee; display: none; font-size: 10px; margin-bottom: 4px; padding: 3px 0 0; text-align: center; text-transform: uppercase; }
.completed table.data thead div { display: block; }
.completed table.data thead div:before { content: "Decided"; }
.completed.runoff table.data thead div:before { content: "Runoff"; }
.completed table.data tbody > tr:first-child { background: #ffcc20; background: rgba(255, 204, 32, 0.75); }
.raceparty-rep.completed table.data tbody > tr:first-child { background: rgba(255, 130, 128, 0.75); }
.raceparty-dem.completed table.data tbody > tr:first-child { background: rgba(131, 175, 248, 0.75); }
.completed.runoff table.data tbody > tr:nth-child(2) { background: #ffcc20; background: rgba(255, 204, 32, 0.75); }
.raceparty-rep.completed.runoff table.data tbody > tr:nth-child(2) { background: rgba(255, 130, 128, 0.75); }
.raceparty-dem.completed.runoff table.data tbody > tr:nth-child(2) { background: rgba(131, 175, 248, 0.75); }
table.data tr > * { padding: 2px; }
table.data .incumbent .politician i { font-style: normal; }
table.data .count { text-align: right; width: 44px; }
table.data .name-container { white-space: nowrap; }
.primary table.data .name-container > .party { display: none; }
table.data .name-container > .party:after { content: "-"; font-weight: normal; }

.throbber { background: url("//s3.amazonaws.com/static.texastribune.org/common/images/ajax_indicator.gif") no-repeat scroll 50% 50%; height: 310px; }

#site_footer { height: 4em; }

.main { margin-bottom: 1em; }

.column { padding-top: 0; }

.kiosk #site_header { margin: 5px auto 0; width: auto; }
.kiosk h1 img { display: block; max-width: 100%; }
.kiosk .ui-tabs-nav { display: none; -webkit-transition-property: left; -moz-transition-property: left; -o-transition-property: left; transition-property: left; -webkit-transition-duration: 0.5s; -moz-transition-duration: 0.5s; -o-transition-duration: 0.5s; transition-duration: 0.5s; position: fixed; left: -213px; top: 0; border-bottom: 0 none; z-index: 1; background: url("//s3.amazonaws.com/static.texastribune.org/common/images/logo-43x49.png") no-repeat 10px 10px #222222; height: 100%; padding-top: 72px; }
.kiosk .ui-tabs-nav li { border-bottom: 1px solid #666; border-top: 1px solid #444; font-size: 1.5em; float: none; padding: 0.25em 0; }
.kiosk .ui-tabs-nav:hover { left: 0; }
.kiosk .ui-tabs-nav .cheat { background: rgba(255, 255, 255, 0.01); border-top: 0 none; height: 100%; position: absolute; right: -25px; top: 0; width: 25px; }
.kiosk .generated { display: none; }

.kiosk-control-container { bottom: 0; display: fixed; height: 100px; position: fixed; right: 0; width: 200px; }
.kiosk-control-container:hover .kiosk-control { display: block; }

.kiosk-control { background: rgba(0, 0, 0, 0.4); display: none; font-size: 20px; padding: 10px; margin: 10px; position: absolute; right: 0; bottom: 0; text-align: center; }
.kiosk-control > * { cursor: pointer; }
.kiosk-control > .active { color: white; }

.embed #electionboard { margin: 0 auto; }
@media only screen and (min-width: 480px) and (max-width: 576px) { .embed #wrapper { width: 396px; } }
@media only screen and (min-width: 576px) and (max-width: 768px) { .embed #wrapper { width: 588px; } }
@media only screen and (min-width: 768px) and (max-width: 960px) { .embed #wrapper { width: 780px; } }
@media only screen and (min-width: 960px) and (max-width: 1152px) { .embed #wrapper { width: 972px; } }
@media only screen and (min-width: 1152px) and (max-width: 1344px) { .embed #wrapper { width: 1164px; } }
@media only screen and (min-width: 1344px) { .embed #wrapper { margin: 0 10pt; } }

.kiosk #electionboard { margin: 0 auto; }
@media only screen and (min-width: 768px) and (max-width: 1152px) { .kiosk #wrapper { width: 780px; } }
@media only screen and (min-width: 1152px) and (max-width: 1536px) { .kiosk #wrapper { width: 1164px; } }
@media only screen and (min-width: 1536px) and (max-width: 1920px) { .kiosk #wrapper { width: 1548px; } }
@media only screen and (min-width: 1920px) and (max-width: 2304px) { .kiosk #wrapper { width: 1932px; } }
@media only screen and (min-width: 2304px) and (max-width: 2688px) { .kiosk #wrapper { width: 2316px; } }
@media only screen and (min-width: 2688px) { .kiosk #wrapper { margin: 0 10pt; } }

.shownav #wrapper { margin-left: 216px; }
.shownav .ui-tabs-nav { left: 0; }

@media only screen and (max-width: 480px) { #electionboard { padding-right: 6px; }
  #wrapper { width: auto; }
  #logo img { width: auto; }
  .columns { display: none; }
  .scoreboard-container { float: none; height: auto !important; margin-bottom: 1em; width: auto; }
  .scoreboard { margin-right: 0; }
  .scoreboard .content { height: auto; }
  .ui-tabs .ui-tabs-nav li { float: none; } }
