/*** Reset ***/
p, form, fieldset, img, table, tr, td, th {
  margin: 0;
  padding: 0;
  border: none;
}
table {
  border-collapse: collapse;
}

* { zoom: 1; }


/*** Sticky footer ***/
/*  
Sticky Footer Solution
by Steve Hatcher 
http://stever.ca
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;}

/* must declare 0 margins on everything, also for main layout components use padding, not 
vertical margins (top and bottom) to add spacing, else those margins get added to total height 
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body, #wrap {height: 100%;}

body > #wrap {height: auto; min-height: 100%; width: 100%;}

#main {
  /*overflow:auto;*/
	padding-bottom: 120px; /* must be same height as the footer */
} 

#footer {
  position: relative;
	margin-top: -120px; /* negative value of footer height */
	height: 120px;
	clear:both;
} 

/*Opera Fix*/
body:before {/* thanks to Maleika (Kohoutec)*/
  content:"";
  height:100%;
  float:left;
  width:0;
  margin-top:-32767px;/* thank you Erik J - negate effect of float*/
}




/*** Application margins ***/
body {
    margin: 0;
    padding: 0;
}

/*** Header ***/
#header {
  color: white;
  background: #211b0a;
  border-bottom: 4px solid #663300;
  width: auto;
  padding: 1em 1em 1em 3em;
}
body.white-label #header {
  background: white;
  border-bottom: none;
  color: black;
}
#header .quicklinks {
  text-align: right;
}
#header h1 {
  display: inline;
  font-size: 400%;
}
#header h1 .beta {
  font-size: 25%;
  position: relative;
  bottom: 20px;
}
#header .subtitle {
  font-size: 125%;
}
#header h1 a {
  color: #6ebe46;
  text-decoration: none;
}
#header a {
  color: white;
  text-decoration: underline;
}
body.white-label #header a {
  color: blue;
}
.white-label-logo {
  float: left;
}
.white-label-content {
/*  margin-top: 5em; */
  margin-left: 5em;
  clear: both;
}
/* .white-label .footer {
  margin-top: 20em;
  margin-left: 5em;
}*/
/*** Help pages ***/
.help {
  margin-left: 2em;
  max-width: 50em; /* This is of course ignored in msie */
}
* html .help {
  width: 50em;
}
.help p, .help blockquote, .help div {
  margin-top: 0.7em;
  margin-bottom: 0.7em;
}
.help ul {
  margin-left: 2em;
}
.help h2 {
  margin-top: 1em;
}
.help h1, .help h3, .help h2 {
  clear: both;
  color: #4A802F;
}
.help img {
  float: left;
  width: 200px;
  padding: 0.5em;
}



/*** Footer ***/
#footer {
  background: #211b0a;
  color: white;
}
body.white-label #footer  {
  background: none;
  color: black;
}
#footer-content {
  border-top: 4px solid #663300;
  padding-top: 1em;
  padding-left: 3em;
}
body.white-label #footer-content {
  border-top: none;
}
#footer a {
  color: white;
  text-decoration: underline;
}
.separator {
  border-left: 1px dotted white;
  margin-left: 0.5em;
  margin-right: 0.5em;
}

/*** Main part ***/
#content {
  padding: 1em 1em 1em 3em;
}

/*** Smart input box ***/
div#input_search_smart {
    font-size: 14px;
    font-weight: normal;
    border: 1px #59990e solid;
    background: white;
    width: 350px;
    min-height: 20px;
    margin: 0 5px 0 0;
    padding: 5px 10px 0 10px;
    overflow: hidden;
}
div#input_search_smart span.mandatory {
    font-weight: bold;
}
div#input_search_smart span.prohibited {
    background: #FCC;
    font-weight: bold;
}
div#input_search_smart span.special {
    background: #CCF;
    font-weight: bold;
}
div#input_search_smart span.stopword {
    color: #888;
}

/*** Advanced search toggles ***/
#content #search_form a {
  color: #960;
}

/*** Caps lock ***/
.capslock {
  left: 1em;
  font-weight: bold;
  background: #F88;
}

/*** Search hint ***/
p.search_hint {
  margin-bottom: 0.5em;
  color: #444;
}

/*** Search options ***/
fieldset#advanced_search_options {}
fieldset#debug_search_options {}


/*** Activity list ***/
.activity-list table td {
  padding: 0 1em;
}
.activity-list table th {
  padding: 0 1em;
  text-align: left;
}


/*** Organizations table ***/
table.organizations {
  margin-bottom: 1em;
}
table.organizations td, table.organizations th {
  padding: 2px;
}
table.organizations tr.even {
  background: #DDF;
}
table.organizations tr.odd {
  background: #CCF;
}
table.organizations input {
  width: 50em;
}


/*** Search gradient ***/
#content.search {
  background-image: url(/images/gradient.png);
  background-repeat: repeat-x;
}



/*** Search form ***/
fieldset {
  margin-top: 1em;
}


/*** Search examples ***/
.search_examples {
  margin: 3em;
}
.search_examples ul {
  margin: 1em;
}

/*** Advanced search links ***/
form.show_advanced_search a#advanced_search_on {
  display: none;
}
form.hide_advanced_search a#advanced_search_off {
  display: none;
}
form.hide_advanced_search fieldset#advanced_search_options {
  display: none;
}

form.show_debug_search a#debug_search_on {
  display: none;
}
form.hide_debug_search a#debug_search_off {
  display: none;
}
form.hide_debug_search fieldset#debug_search_options {
  display: none;
}

/*** Rounded buttons, single image ***/
button.simple_rounded {
  border: 0 none;
  cursor: pointer;
  padding: 0 15px 0 0;
  text-align: center;
  height: 30px;
  line-height: 30px;
  color: transparent;
}
* html button.simple_rounded {
  padding: 0;
}
button.simple_rounded:hover {
  background-position: 0% -30px;
}
button.button_search {
  background: transparent url(/images/button_search.gif) no-repeat scroll right top;
  width: 62px;
}
button.button_zanran_search {
  background: transparent url(/images/button_zanran_search.gif) no-repeat scroll right top;
  width: 110px;
}
button.button_back {
  background: transparent url(/images/button_back.gif) no-repeat scroll right top;
  width: 49px;
}
button:simple_rounded:-moz-focus-inner {
  border: none;
}

/*** New-style affiliate links to reports ***/
table.content-two-columns td {
  vertical-align: top;
}
.affiliate_reports {
  margin-left: 2em;
  width: 25em;
  padding-left: 1em;
  border-left: 1px solid #d5d1a1;
}
.affiliate_reports h4 {
  margin: 0;
}
.affiliate_reports {
  font-size: small;
}
.affiliate_reports {
  position: relative;
}
.affiliate_reports .full_preview_box {
  width: 400px;
  padding: 15px;
  margin-left: -430px;
  background: #FFA;
}
.affiliate_summary {
  padding: 0.5em;
}
.affiliate_zoom_icon {
  padding: 0.5em;
}

/*** Hints box ***/

.hints_box {
  position: absolute;
  top: 5em;
  right: 5em;
  width: 27em;
  display: none;
  border:1px solid #888888;
}
.hints_box div {
  margin: 0.3em;
}
.hints_box ul {
  margin-left: 1em;
}
.hints_box .hints_main {
  background-color: #feffb5;
  padding: 1em;
  margin: 0;
}  
.hints_box .hints_main em {
  color: #4A802F;
  font-style: normal;
  font-weight: bold;
}
.hints_box .hints_advanced {
  background-color: #e6ffff;
  padding: 1em;
  padding-bottom: 2em;
  margin: 0;
}
.hints_box .hints_advanced em {
  color: #4A802F;
  font-style: normal;
  font-weight: bold;
}
.hints_main .hints_off {
  float: right;
  background: white;
  padding: 0.5em;
}
.hints_off img {
  position: relative;
  top: 4px;
}

/*** *** Old-ish *** CSS ***/

/*** Search form ***/

.search_top {
  padding-left: 180px;
  padding-bottom: 4px;
  border-bottom: solid 1px #d6e3e7;
  visibility: hidden;
}

.search_box .search_top {
  visibility: visible;
}

.search_top strong {
  font-size: 14px;
  color: #549c00;
  padding: 2px 10px 4px 10px;
  border: solid 1px #d6e3e7;
  border-color: #fff #d6e3e7;
  text-decoration: none;
  font-weight: normal;
}

.search_top a:hover {
  text-decoration: underline;
}

.search_table {
  width: 100%;
  border: solid 1px #d6e3e7;
  background: #e6edf0 url(../images/search_bg.png) repeat-x top left;
  margin: 0 5px 20px 4px;
}

.search_box .search_table {
    border-top: none;
    margin: 0;
}

.search_table td, .search_table th {
    text-align: left;
}

.search_brand {
    padding: 15px 10px;
    font-family: Lucida Bright;
    font-size: 16px;
    font-weight: bold;
    width: 100px;
}

.search_text {
    width: 350px;
    height: 20px;
    font-size: 14px;
    font-weight: normal;
    border: 1px #59990e solid;
    margin: 0 5px 0 0;
    padding: 5px 10px 0 10px;
    background: white;
}

.search_button {
    height: 27px;
    padding: 4px 6px 5px 6px;
    border: 1px solid #59990e;
    background: #6eab26 url(../images/bt_off.gif) repeat-x center center;
    font-weight: bold;
    color: #fff;
    font-size: 14px;
}

* html .search_button {
    padding: 4px 0;
}

.search_button:hover {
    border-color: #3f8e00;
    background-image: url(../images/bt_on.gif);
}

fieldset {
    padding: 0.2em;
}

.advanced_control {
    float: left;
    margin-right: 0.5em;
}


/*** Typography ***/
#content a {
  color: #63c;
/*  text-decoration: none;*/
}
#content a:visited {
  color: #960;
}
#content a:hover {
  text-decoration: underline;
}
body, td, th {
  font-family: arial, sans-serif;
  font-size: 14px;
}

/*** Rails flash messages ***/
.messages {
  width: 40em;
  border: 1px solid #888;
}
.messages .notice {
  background: #AFA;
  padding: 1px;
}
.messages .warning {
  background: #FFA;
  padding: 1px;
}
.messages .error {
  background: #FAA;
  padding: 1px;
}


/*** Search results main cell ***/
.result_main h4 {
  margin-top: 1em;
  margin-bottom: 0em;
}
.result_main p {
  margin-top: 0;
  margin-bottom: 0;
}
.search_results .highlighting em {
	/*background-color: #FF8;*/
	font-style: normal;
	font-weight: bold;
}
.result_main .source {
  color: #390;
}
.result_main .date_created {
  color: #999;
}
.result_main {
  padding-left: 10px;
}

/*** Search results layout and extras ***/
table.results {
  margin: 1em 0;
  width: 100%;
  min-width: 500px;
}
*:first-child+html table.results { /* ie7 workaround */
  width: 800px;
}
* html table.results { /* ie6 workaround */
  width: 800px;
}
table.results td {
  vertical-align: top;
}
.search_results_summary .query {
	font-weight: bold;
	color: #F08;
}
table.results .thumbnail_cell {
  width: 80px;
  text-align: center;
  vertical-align: middle;
  padding-left: 1em;
}
table.results .thumbnail_cell .full_preview_box {
  text-align: left;
}
.full_preview_box hr {
  margin: 1em;
  color: #d5d1a1;
}
table.results .feedback_link {
  vertical-align: middle;
  text-align: right;
  padding-right: 1em;
}

tr.result_sec td.thumbnail_cell > *,
tr.result_sec td.result_main > * {
  position: relative;
  left: 2em;
}
a.results_more {
  /*font-weight: bold;*/
  font-size: small;
}

/*** Pagination ***/
.pagination {
  margin-top: 1em;
}
.pagination a {
	background: #FFF;
	border: 1px solid #DDD;
	color: #63C;
	padding: 2px 6px;
	text-decoration: none;
}
.pagination a:visited {
	color: #63C;
}
.pagination a:hover {
	background: #DDD;
	border: 1px solid #FFF;
}
.pagination .next {
	margin-left: 20px;
}
.pagination .prev {
	margin-right: 20px;
}
.pagination .current-page {
	font-weight: bold;
	color: #F08;
	padding: 2px 6px;
	border: 1px solid #DDD;
}
img.bubble {
  position: absolute;
  width: 258px;
  top: -50px;
  left: 64px;
}

/*** Image previews ***/
.zoom_icon {
  height: 16px;
  width: 16px;
  position: absolute;
  top: -4px;
  right: 4px;
}
.zoomable_thumbnail {
  position: relative;
}
.thumbnail {
  width: 65px;
  height: 50px;
  cursor: pointer;
  margin-top: 5px;
  margin-right: 5px;
  border: 1px solid #888;
}
.in_focus .thumbnail {
  border: 1px solid #888;
}
.full_preview_box {
  border: 1px solid #888;
  margin-left: 90px;
  position: absolute;
  visibility: hidden;
  z-index: 10;
  background: white;
  overflow: hidden;
}
.in_focus .full_preview_box {
  visibility: visible;
}
.in_focus {
  z-index: 5;
}
.hints_main .preview_off {
  padding: 0.5em;
  background: white;
}
.preview_off {
  text-align: right;
}
.preview_off img {
  position: relative;
  top: 4px;
}
.preview_controls {
  width: 200px;
  border: 1px solid #d5d1a1;
  margin: 0.5em;
  background-image: url(/images/mouseover_gradient.png);
  background-repeat: repeat-x;
  background-position: bottom;
  padding: 5px;
}
.more_results_arrow {
  color: #888;
}

/*** Various user forms (login, registration, feedback) ***/
form h4 {
  color: #080;
  text-transform: uppercase;
}
form fieldset {
}
form p.help {
  margin-bottom: 0.5em;
}
fieldset.user_form .form_row, fieldset .button_row {
  clear: both;
}
fieldset.user_form .form_row label {
  text-align: right;
  float: left;
  width: 9em;
  margin-right: 0.5em;
}
fieldset.user_form .form_row.required label {
  font-weight: bold;
}
fieldset.user_form .form_row label .hint {
  font-style: italic;
  font-weight: normal;
}
fieldset.user_form .form_row.required label .hint {
  visibility: hidden;
}
fieldset.user_form .form_row:hover label .hint {
  visibility: visible;
}
fieldset.user_form .form_row input {
  width: 20em;
  margin-bottom: 0.5em;
}
fieldset.user_form .form_row textarea {
  width: 40em;
  height: 20em;
  margin-bottom: 0.5em;
}
fieldset.user_form .button_row {
  margin-left: 9.5em;
}
form {
  margin-top: 1em;
}
form h4 {
  font-size: 150%;
  border-bottom: 1px solid #AAAAAA;
  font-weight: normal;
  margin-bottom: 0.33em;
  padding-bottom: 0.17em;
}
.feedback-list li {
  margin-bottom: 1em;
}
.account-application-filter {
  float: right;
  width: 300px;
  border: 1px solid #888;
  padding: 5px;
}
.account-application-filter h4 {
  margin: 0;
  margin-bottom: 0.5em;
}
.account-application-list li {
  clear: both;
  margin-bottom: 1em;
}
.account-application .buttons div {
  float: left;
  margin-left: 1em;
}

/* Display something if no results */
#content_for_blank_results {
  margin-top: 2em;
}
#introVideoBox {
  margin-left: 5em;
  position: relative;
  cursor: pointer;
  width: 853px;
  height: 505px;
  overflow: hidden;
}
#introVideo {
  display: none;
}
#introVideoStatic {
  margin-left: 90px;
}

/*** Search box indentation etc. ***/

.search_box.blank_search {
  margin-left: 8em;
}
h3.search_form_header {
  margin-top: 6em;
  font-size: 200%;
}

/*** iPhone warning ***/
.mobile_warning {
  border: 1px solid black;
  background: #FF8888;
}

/*** Filter hints ***/
.filter_hints {
  clear: both;
}

.filter_hint {
  float: left;
  border: 1px solid black;
  background: #FF8;
  padding: 0.25em;
  margin: 0.5em;
}

#content #search_form .filter_hint a {
  color: black;
  text-decoration: none;
}
