/*
*
* Nomis stylesheet for UI components generated by /js/ui.js
*
* Author: Spencer Hedger
*
*/
article { width: 30%; display: inline-block; vertical-align: top; margin: 0.7em 1em 0.7em 0; background: #fff; min-height: 13em; }
article h1 { margin-bottom: 0.3em; padding: 0.3em 1em; font-size: 1.3em; color: #325472; }
article h1 a, article h1 a:visited, article h1 a:hover { font-weight: bold; color: #325472; text-decoration: none; }
article h1 a:hover { color: #5799c4; }
article p, article div { margin-top: 0; padding: 0 1.3em }

button, input[type="button"], input[type="submit"], input[type="reset"] { border: 2px solid #789eb1; background-color: #789eb1; color: #fff; padding: 0.5em 1em; cursor: pointer; font-size: 1.1em; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
button:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover { border-color: #3c4f5a; }
button:disabled, button[disabled], input[type="button"]:disabled, input[type="submit"]:disabled, input[type="reset"]:disabled { background-color: #aaa !important; color: #ddd !important; border-style: dotted !important; border-color: #777 !important; cursor: default !important; }
button:disabled:hover, button[disabled]:hover, input[type="button"]:disabled:hover, input[type="submit"]:disabled:hover, input[type="reset"]:disabled:hover { border-color: #777 !important; }
input, button { margin: 0.2em; }
input[type=text], input[type=search], input[type=email] { -webkit-appearance: none; border: 2px solid #789eb1; color: #555; background-color: #fff; padding: 0.5em 1em; font-size: 1.1em; -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
input[type=text]:disabled, input[type=search]:disabled, input[type=email]:disabled, select:disabled { border-color: #ddd; background-color: #fff; color: #333; }

/* Table */
table th { text-align: left; }
table.ui-data-table { border-spacing: 0px; width: auto !important; }
table.ui-data-table > caption { color: #58798f; font-weight: bold; font-size: 1.2em; text-align: left; padding-bottom: 0.5em; position: relative; }
table.ui-data-table > caption > div { position: absolute; right: 0; font-size: 0.8em; color: #333; font-weight: normal; padding-right: 1.2em; bottom: -1em; text-align: right; }
table.ui-data-table > caption > div span:before { content: ', '; }
table.ui-data-table > caption > div span:first-child:before { content: ''; }
table.ui-data-table thead tr th { font-weight: normal; margin: 0; vertical-align: bottom; }
table.ui-data-table thead tr:first-child th { border-top: 2px solid #333; border-left: none; border-right: none; }
table.ui-data-table th[scope=col] { padding: 0.5em 0.2em 0.5em 2em; }
table.ui-data-table th[scope=row] { max-width: 50em; }
table.ui-data-table th, table.ui-data-table td { margin: 0; padding: 0.2em; }
table.ui-data-table tbody td { vertical-align: top; }
table.ui-data-table tbody th { font-weight: normal; text-align: left; min-width: 10em; }
table.ui-data-table tbody tr:hover { background-color: #f2f2f2; }
table.ui-data-table tbody tr:first-child th, table.ui-data-table tbody tr:first-child td { padding-top: 1em; border-top: 1px solid #333; }
table.ui-data-table tbody tr:last-child th, table.ui-data-table tbody tr:last-child td { padding-bottom: 1em; border-bottom: 2px solid #333; }
table.ui-data-table thead th, table.ui-data-table tbody td { text-align: right; min-width: 5em; }
table.ui-data-table thead th[colspan] { border-bottom: 1px solid #333; text-align: right; }
table.ui-data-table thead > tr:first-child > th:first-child { text-align: left; padding-left: 1em; }
table.ui-data-table tfoot td { font-size: 0.85em; color: #444; }
table.ui-data-table tfoot td { text-align: left; padding-top: 0.2em; width: 10em; }
table.ui-data-table tfoot div.table-footnote, tfoot div.table-flag, tfoot div.table-contact { padding: 0.5em 0 0 0; }
table.ui-data-table tfoot tr:last-child td { padding-bottom: 0.5em; }

/* Begin sticky column headings styles */
@media screen {
    table.ui-data-table { overflow: auto; }
    table.ui-data-table thead { position: -webkit-sticky; position: -moz-sticky; position: -ms-sticky; position: -o-sticky; position: sticky; top: 0; background: #ffffff; }

    /* Chrome only - has no support for sticky THEAD */
    @media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution: .001dpcm) {
        table.ui-data-table thead tr th  { position: sticky; top: -1px; background: #ffffff; }
    }
    /* End Chrome only fix for no sticky THEAD */
    
    /* Edge only - has no support for sticky THEAD */
    @supports (-ms-ime-align:auto) 
    {
        table.ui-data-table thead tr th  { position: sticky; top: -1px; background: #ffffff; }
    }
    /* End Edge only fix for no sticky THEAD */
     
    table.ui-data-table thead tr:nth-child(2) th { top: 43px; }
    table.ui-data-table thead tr:nth-child(3) th { top: 72px; }
    table.ui-data-table thead tr:nth-child(4) th { top: 101px; }
    table.ui-data-table thead tr:nth-child(5) th { top: 130px; }
}
/* End sticky column heading styles */

td.positive { color: #009200; background-color: inherit; font-weight: bold; }
td.neutral  { color: #8a8a8a; background-color: inherit; font-weight: bold; }
td.negative { color: #a35d5a; background-color: inherit; font-weight: bold; }
tr.table-row-sep-label th { text-align: left; }
tr.divider-light th, tr.divider-light td { border-top: 1px dashed #bbb; }
tr.divider-medium th, tr.divider-medium td, tr.divider th, tr.divider td { border-top: 1px dashed #999; }
tr.divider-heavy th, tr.divider-heavy td { border-top: 1px dashed #333; }
tr.before-line-above-solid th, tr.before-line-above-solid td { padding-bottom: 0.8em; }
tr.line-above-solid th, tr.line-above-solid td { border-top: 1px solid #ddd; padding-top: 0.8em; }
tr.space-above th, tr.space-above td { padding-top: 1em; }
.table-sidenotes { padding-top: 0.5em; text-align: right; padding-left: 3em; padding-bottom: 2em; max-width: 30em; }
div.table-sidenotes { float: right; }
table.ui-data-table .table-row-level-1, table.ui-data-table tr.table-row-level-1 th { padding-left: 1.5em; }
table.ui-data-table .table-row-level-2, table.ui-data-table tr.table-row-level-2 th { padding-left: 3em; }
table.ui-data-table .table-row-level-3, table.ui-data-table tr.table-row-level-3 th { padding-left: 4.5em; }
table.ui-data-table .table-row-level-4, table.ui-data-table tr.table-row-level-4 th { padding-left: 6em; }
table.ui-data-table .table-row-level-5, table.ui-data-table tr.table-row-level-5 th { padding-left: 7.5em; }
table.ui-data-table .table-row-level-6, table.ui-data-table tr.table-row-level-6 th { padding-left: 9em; }
table.ui-data-table .table-row-level-7, table.ui-data-table tr.table-row-level-7 th { padding-left: 10.5em; }
table.ui-data-table .table-row-level-8, table.ui-data-table tr.table-row-level-8 th { padding-left: 12em; }
table.ui-data-table .table-row-level-9, table.ui-data-table tr.table-row-level-9 th { padding-left: 13.5em; }
table.ui-data-table .table-row-level-10, table.ui-data-table tr.table-row-level-10 th { padding-left: 15em; }
.table-flag .table-flag-symbol { float: left; }
.table-flag-symbol { padding-right: 1em; font-weight: bold; }
.table-flag .table-flag-content { margin-left: 0; display: block; }
sup.table-cell-flag, sup.table-heading-flag { font-size: 0.7em; margin-left: 0.2em; color: #333; }
th.column-type-value { width: 8em; }
th.column-type-percent, th.column-type-rate, th.column-type-confidence { width: 3em; min-width: 3em; }
table.ui-data-table abbr { cursor: help; text-decoration: none; }
a.table-footnote-readmore { color: #00c; display: block; margin-top: 1em; margin-bottom: 1em; }
@media only print {
    a.table-footnote-readmore { display: none; }
    .table-footnote { display: block !important; }
}
/* Table end */

.positive { background-color: #009200 !important; color: #fff !important; border-color: #009200 !important; }
.positive:hover { border-color: #004c00 !important; }
.neutral  { background-color: #8a8a8a !important; color: #fff !important; border-color: #8a8a8a !important; }
.neutral:hover { border-color: #333 !important; }
.negative { background-color: #a35d5a !important; color: #fff !important; border-color: #a35d5a !important; }
.negative:hover { border-color: #6f0000 !important; }
.required { color: #b54149 !important; border-color: #b54149 !important; }

/* Breadcrumbs */
#breadcrumbs { margin: 0; background-color: #52708b; padding: 0.5em 0 0.5em 0; border-bottom: 1px solid #5b7c9a; }
#breadcrumbs:hover { background-color: #4e6b84; }
#breadcrumbs ol { margin: 0; padding-left: 1.5em; }
#breadcrumbs a { padding: 0.2em; font-size: 0.8em; color: #a4b4c0; }
#breadcrumbs a:hover { background-color: inherit; text-decoration: underline; }
#breadcrumbs li:before { content: ' > '; font-size: 0.8em; color: #a4b4c0; }
#breadcrumbs li:first-child:before { content: none; }

ul.controls, ol.controls { list-style: none; padding-left: 0; }

/* Tree */
.tree .opened { display: block; }
.tree .branch.opening { cursor: progress; }
.tree .branch.opening:after {
	content: 'Please wait...';
	background: rgba(182, 225, 255, 0.73);
	border: 3px solid #809eb3;
	margin: 1em;
	padding: 2em;
	color: #809eb3;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
.tree .branch { list-style: none; }
.tree > .branch { padding-left: 0; }
.tree .node .toggle-expander {
	font-size: 1em;
	padding: 0 0.3em;
	width: 2em;
	height: 2em; 
    border-radius: 50%;
    background-color: #fff;
    color: #789eb1;
	margin-right: 1em;
}
.tree .node { min-height: 2em; }
.tree .node > a:first-child, .tree .node > span:first-child { margin-left: 3.2em; }

/* Popup sub-menu */
.popup-menu-trigger:hover .popup-menu-content { display: block; }
.popup-menu-content a { border: none; padding: 0.5em; font-size: 0.8em; }
.popup-menu-content {
    display: none;
    position: absolute;
    padding: 0.5em;
    z-index: 1;
    margin: 0;
}

/* Checkbox */
input[type=checkbox] + label + details { margin-left: 5em; font-size: 0.8em; }
input[type=checkbox] { opacity: 0; position: absolute; }
input[type=checkbox] + label:hover:before { border-color: #1a7f20; }
input[type=checkbox], input[type=checkbox] + label {
    display: inline-block;
    vertical-align: middle;
    margin: 0.2em;
    cursor: pointer;
}
input[type=checkbox] + label:before {
    content: '';
    background: #fff;
    border: 2px solid #009200;
    display: inline-block;
    vertical-align: middle;
    width: 1.5em;
    height: 1.5em;
    padding: 0.2em 0.1em 0.1em 0.2em;
    margin-right: 1em;
    text-align: center;
}
input[type=checkbox] + label { position: relative; }
input[type=checkbox]:checked + label { color: #1d8f24; }
input[type=checkbox]:checked + label:before { content: "\2714"; color: #009200; border-color: #1a7f20; background-color: rgba(5, 178, 27, 0.08); }
input[type=checkbox].required + label { color: #b54149; }
input[type=checkbox].required + label:before { border-color: #b54149; }
input[type=checkbox].required:checked + label { color: #009200; }
input[type=checkbox].required:checked + label:before { border-color: #1a7f20; }

/* Radio */
input[type=radio] + label + details { margin-left: 5em; font-size: 0.8em; }
input[type=radio] { opacity: 0; position: absolute; }
input[type=radio], input[type=radio] + label { display: inline-block; vertical-align: middle; margin: 5px; cursor: pointer; }
input[type=radio] + label { position: relative; }
input[type=radio] + label:before {
    content: '';
    background: #fff;
    border: 2px solid #ddd;
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: 20px;
    padding: 2px;
    margin-right: 10px;
    text-align: center;
    border-radius: 50%;
}
input[type=radio]:checked + label { color: #1d8f24; }
input[type=radio]:checked + label:before { background-color: #00a700; border-color: #009200; box-shadow: inset 0px 0px 0px 4px #fff; }
input[type=radio]:hover + label:before { border-color: #009200; }

/* Select */
select {
	border: 2px solid #789eb1;
	color: #666;
	height: 2.7em;
	font-size: 1.1em;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

/* Focus for styled inputs */
input[type=checkbox]:focus + label, input[type=radio]:focus + label { outline: 1px solid #ccc; }

/* Reveal */
.opened { display: inline-block; }
.closed { display: none; }

/* Responsive 3 boxes per line */
@media screen and (max-width: 1900px) {
    article { width: 30%; }
}

/* Responsive 2 boxes per line */
@media screen and (max-width: 1200px) {
    article  { width: 47%; }
}

/* Responsive 1 box per line */
@media screen and (max-width: 870px) {
	article {
		display: block;
		width: auto;
		margin-right: 0;
		min-height: 0 !important;
		padding-bottom: 0.3em;
	}
	.table-source { float: none; }
	tbody th, thead th, td, tfoot td, th.column-type-value, th.column-type-percent, th.column-type-rate, th.column-type-confidence 
	{
	    width: auto;
	    min-width: 0;
	}
}




/* FIX for site search button style gets changed */
#site-search input[type="submit"] 
{
    color: #005aa0;
    background: #fff;
    border: .2em solid #005aa0;
    padding: .2em 1em;
    margin: .1em 0;
    font-size: .9em;
    text-align: center;
    cursor: pointer;
    text-decoration: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    vertical-align: top;
}
    
#site-search input[type="submit"]:hover
{
    background-color: #005aa0;
    color: #fff;
}