/*
RESET
==================================================*/
html,ul,li{ margin: 0; padding: 0;}
body, input{ font-family: Verdana; font-size: 12px; }
img { border-width: 0; }

/*
MAIN PAGE ELEMENTS
==================================================*/
body {
    margin: 0;
    padding: 0;
    font-family: Oxygen, sans-serif;
    font-size: 13px;
    background-color: #ffffff;
    display: block;
}
body.stop_scrolling {
    height: 100%;
    overflow: hidden;
}
#header_wrap {
    background: #51708f url('../images/header-bg.png') repeat-x;
    width: 100%;
    min-width: 940px;
    position: relative;
}
#header {
    min-height: 100px;
    color: #ffffff;
    padding: 25px 25px 5px 25px;
}
#header, #footer {
    margin: 0 auto;
    width: 100% !important;
    box-sizing: border-box;
}
#footer {
    padding: 25px;
}
#header_buttons {
    float:right;
    margin-right: 20px;
    margin-top: 10px;
}
#header_left {
    width: 750px;
    float: left;
}
.tab_buttons {
    float: right;
    padding-bottom: 20px;
    font-size: 0.8em;
}
#page_separator {
    height: 50px;
    background: #FFF url('../images/page-separator.png?hey') repeat-x;
}
#page_title {
    font-size: 28px;
    font-family: Verdana, sans-serif;
    width: 375px;
    float: left;
}
#page_sub_title {
    font-size: 14px;
    color: #ececec;
    float: right;
    width: 375px;
}
#content-wrapper {
    display: inline-flex;
    width: 100%;
}
#left_menu {
    background-color: #51708f;
    height: auto;
    box-sizing: border-box;
    padding: 15px;
}
#left_menu ul {
    list-style: none;
}
#left_menu ul li {
    padding: 5px;
}
#left_menu ul li a {
    white-space: nowrap;
    color: #fff;
    font-size: 10pt;
    text-decoration: none;
}
#left_menu ul li a:hover {
    text-decoration: underline;
}
#content {
    margin: 0 auto;
    padding: 15px;
    min-height: 400px;
    height: auto;
    clear: both;
    overflow: visible;
    width: 100% !important;
    min-width: 800px;
    color: #545454;
    box-sizing: border-box;
}
#content ul,
#content ol {
    padding-left: 20px;
}
#content p {
    margin: 10px 0;
}
#app-header {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.full {
    width: 1200px !important;
}
.subtitle {
    font-size: 50%;
}
.hide {
  display: none;
}
.red    { color: red; }
.large  { font-size: 1.5em; }
.bold   { font-weight: bold; }
.light-border {
    padding: 5px;
    border: 1px solid #C3C3C3;
    border-radius: 5px;
}
h1, h2, h3, p, a {
    font-family: Oxygen, sans-serif;
}
h1 {
    font-size: 32px;
    margin: 5px 0 20px 0;
    color: #9B9999;
}
h2 {
    font-size: 24px;
    margin: 15px 0 10px 0;
    color: #F49300;
}
h3 {
    font-size: 16px;
    margin: 15px 0 5px 0;
    color: #9B9999;
}
a, a:visited {
    color: #545454;
    margin: 0 3px;
}
a:hover {
    text-decoration: none;
    color: #F49300;
}
table.table-portal {
    border-collapse: collapse;
    width: 100%;
}
table.table-portal tbody tr td {
    border: 1px solid #e3e3e3;
    padding: 5px 8px;
}
table.table-portal thead tr td {
    border: 1px solid #e3e3e3;
    padding: 5px 8px;
    font-weight: bold;
    background-color: #eee;
}
table.table-portal table, table.table-portal th, table.table-portal td {
    border-left: none !important;
    border-right: none !important;
}
.table-portal-search {
    border: 1px solid #e3e3e3;
}
.table-portal.hover-show-actions > tbody > tr:not(.row-details) > td:nth-last-child(1) {
    white-space: nowrap;
    text-align: right;
}
.table-portal.hover-show-actions > tbody > tr:not(.row-details) > td:nth-last-child(1) a {
    visibility: hidden;
}
.table-portal.hover-show-actions > tbody > tr:not(.row-details):hover > td:last-child * {
    visibility: visible;
}
.table-portal.hover-show-actions > tbody > tr:not(.row-details) {
    cursor: pointer;
}
.sort-asc::after {
    content: '▲';
}
.sort-desc::after {
    content: '▼';
}
div.pagination {
    padding: 3px;
    margin: 10px 3px 3px 3px;
    text-align: right;
    font-family: Tahoma,Helvetica,sans-serif;
}
div.pagination a {
    color: #000;
    border: 1px solid #e3e3e3;
    margin-right: 3px;
    padding: 2px 6px;
    background-position: bottom;
    text-decoration: none;
}
div.pagination a:hover, div.pagination a:active {
    background-image: none;
    background-color: #EEEEEE;
}
div.pagination span.total {
    margin-right: 15px;
    font-style: italic;
}
div.pagination span.current {
    color: #000;
    font-weight: bold;
    margin-right: 3px;
    padding: 2px 6px;
}
div.pagination span.disabled {
    border: 1px solid #ddd;
    color: #bbb;
    margin-right: 3px;
    padding: 2px 6px;
}
div.pagination .next {
    margin: 0 3px 0 8px;
}
div.pagination .prev {
    margin: 0 8px 0 0;
}
#welcome {
    color: #9B9999;
    float: right;
    margin-right: 20px;
    margin-top: 16px;
}
.warning, .message-warning {
  color:#ff0000;
  text-align:center;
  background-color: #FF0;
  border-top: #F93;
  border-bottom: #F93;
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-top-style: solid;
  border-bottom-style: solid;
  margin: 5px auto;
  padding: 5px;
}
.notice, .message-success {
  color:#0A0;
  text-align:center;
  background-color: #AFA;
  border-top: #0A0;
  border-bottom: #0A0;
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-top-style: solid;
  border-bottom-style: solid;
  margin: 5px auto;
  padding: 5px;
}
.message-error {
    color:#F00;
    text-align:center;
    background-color: #FFAA80;
    border-top: #F00;
    border-bottom: #F00;
    border-top-width: 1px;
    border-bottom-width: 1px;
    border-top-style: solid;
    border-bottom-style: solid;
    margin: 5px auto;
    padding: 5px;
}
.box {
	padding: 25px;
	margin: 20px 20px 0 30px;
	border: solid 1px #007db1;
	background-color: #E3EDF5;
    border-radius: 5px;
}
.clear {
    clear: both;
}
.ui-autocomplete {
    z-index: 900000 !important;
}
.fa-spinner {
    animation: rotation 2s infinite linear;
}
@keyframes rotation {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(359deg);
    }
}

/*
TABS
==================================================*/
div#tabs {
    border: none;
}
#content #tabs > ul {
    padding-left: 5px;
}
#content #tabs a:focus {
    outline: 0;
}
li#edit-tab-li {
    padding-right: 10px;
}
li#edit-tab-li span.cancel {
    position: absolute;
    top: 50%;
    margin-top: -8px;
    margin-left: -12px;
}


/*
CONTROLS
==================================================*/
.ui-tabs-panel {
    padding-top: 30px !important;
}
div.controls {
    text-align: right;
}
div.controls > form > div > label {
    display: none;
}
div.controls > form div {
    display: inline-block;
    vertical-align:top;
    padding-right:10px;
}
div.controls > form div.hidden-input {
    display: none !important;
    padding: 0 !important;
}
div.controls > form a.ui-button.refresh-button {
    margin-right: 13px;
}
div.controls > form a.ui-button {
    vertical-align: bottom !important;
}

/*
TAB REPORT
==================================================*/
#tabs > div > div.tab-report-controls, div.tab-report-controls {
    text-align: right;
}
#tabs > div > div.tab-report-controls > form label, div.tab-report-controls > form label {
    display: none;
}
#tabs > div > div.tab-report-controls > form div, div.tab-report-controls > form div {
    display: inline-block;
    vertical-align:top;
    padding-right:10px;
}

/*
MENU
==================================================*/
#top-menu {
    float: right;
    height: 100%;
    margin-right: 20px;
    position: absolute;
    right: 10px;
}
#header .menu ul {
    position: relative;
    float: right;
    list-style-type: none;
    margin-top: 10px;
}
#header .menu ul li {
    position: relative;
    z-index: 100;
    float: left;
}
#header .menu ul li label {
    display: block;
    padding: 10px 20px;
    margin: 0;
    text-decoration: none;
    color: #ffffff;
    border: 1px solid transparent;
    font-size: 13px;
    line-height: 18px;
    cursor: pointer;
    user-select: none;
}
.menu input[type="checkbox"] {
    display: none;
}

/* ===== DROP DOWN MENU ===== */
#menu_hamburger {
    display: none;
}
#header .menu li > ul {
    display: none;
}
#header .menu li > ul li {
    float: none;
    width: auto;
    white-space: nowrap;
}
#header .menu li > ul label {
    margin: 0;
    border-radius: 0;
}
#header .menu li > ul label:hover {
    border: 1px solid transparent;
    border-radius: 0;
    text-decoration: underline;
    /*background-color: #EEE;*/
}
#header .menu li > ul li:first-child a:hover {
    border-radius: 0 8px 0 0;
}
#header .menu li > ul li:last-child a:hover {
    border-radius: 0 0 8px 8px;
}
#header .menu ul li a {
    text-decoration: none;
}
#header .menu ul li label:hover {
    text-decoration: underline;
}

/* ===== DROP DOWN SUB-MENU ===== */
#header .menu ul > li > ul > li > ul {
    top: -10px;
    left: 120px;
}

/*
APP MENU
==================================================*/
#app-menu {
    position: relative;
    float: right;
    top: 12px;
    left: -15px;
    text-align: right;
    font-size: 14px;
    z-index: 75;
}
#app-menu.redmond {
    color: #fff;
}
#app-menu.redmond a, #app-menu.redmond a:visited {
    color: #fff;
    text-decoration: none;
}
#app-menu.redmond a:hover {
    color: #AEF;  /* #F49300 is normal */
    text-decoration: underline;
}

/*
CHARTS
==================================================*/
.loading {
  background-image: url("../images/ajax-loader.gif");
  background-repeat: no-repeat;
  background-position: center;
}
span.loading {
  display: inline-block;
  height: 32px;
  width: 32px;
  vertical-align: top;
}
.loading.small {
  background-image: url("../images/ajax-loader-small.gif");
}
span.loading.small {
  height: 16px;
  width: 16px;
}
.chart, .table_container {
    width: 555px;
    min-height: 200px;
    box-shadow: 5px 5px 2px #bbb;
    margin: 10px;
    float: left;
    position: relative;
}
.chart:empty {
  box-shadow: none;
}
.chart_full, .table_container_full {
    width: 1130px;
    min-height: 300px;
    height: auto;
    box-shadow: 5px 5px 2px #bbb;
    margin: 10px;
    float: left;
}
.chart_third {
    width: 363px;
    min-height: 200px;
    box-shadow: 5px 5px 2px #bbb;
    margin: 10px;
    float: left;
    position: relative;
}
.chart_fourth {
    width: 267px;
    min-height: 200px;
    box-shadow: 5px 5px 2px #bbb;
    margin: 10px;
    float: left;
    position: relative;
}
.table_container, .table_container_full {
    position: relative;
    background-color: #eeeeee;
}
.export_link {
	background: #FFF;
	border-radius: 3px;
	font-weight: bold;
	padding: 2px 6px;
	cursor: pointer;
	float: right;
	position: relative;
	top: 10px;
	right: 20px;
}
.dialog_modal {
	display: none;
}
.dialog_modal .export_text {
	width: 100%;
	height: 100%;
	min-height: 250px;
	font-size: 8px;
}
.export_wrapper {
	position: absolute;
	top: 0;
	right: 0;
	background: #F0F0F0;
	border: 1px solid #CCC;
	text-align: right;
}
.time_changer {
/*  text-align: right;*/
}
.time_changer .datepicker {
  padding: 0 3px;
  text-align: center;
  font-size: 1em;
  width: 7em;
}
.table_title {
    font-size: 16px;
    font-weight: bold;
    stroke: none;
    stroke-width: 0px;
    fill: #3e576f;
    margin: 10px 20px;
}
.table_title a.selected {
    font-weight: bold;
}
.table_title a {
    font-weight: normal;
}
.table {
    width: 515px;
    min-height: 200px;
    height: auto;
    margin: 10px 20px;
    overflow: auto;
}
.shrink {
    min-height: 0 !important;
}
.shrink.loading {
  min-height: 100px !important;
}
.table_full {
    width: 1090px;
    overflow: auto;
    min-height: 200px;
    height: auto;
    margin: 10px 20px;
}
div.form-fields .instructions, #theme-editor span.instructions {
    left: 205px;
}
/* These lines are duplicated in form.css */
.instructions {
    display: inline-block;
    margin: 2px 0;
    width: 21px;
    height: 21px;
    background: url('/admin/images/qmark.png') no-repeat center center #EEE;
    border-radius: 5px;
    font: 0/0 a;
    text-shadow: none;
    color: transparent;
    position: absolute;
    z-index: 70;
    /*  -moz-transition:    all 0.4s;
    -webkit-transition: all 0.4s;
    transition:         all 0.4s;*/
}
.instructions:hover {
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    z-index: 200;
    font-size: 12px;
    line-height: 14px;
    font-family: inherit;
    color: #000;
    width: 225px;
    height: auto;
    padding: 8px 10px 10px 10px;
    background-image: none;
}
.chart>.instructions {
  top: 5px;
  right: 5px;
  opacity: 0;
  background-color: #FFF;
  -moz-transition:    opacity 0.4s;
  -webkit-transition: opacity 0.4s;
  transition:         opacity 0.4s;
}
.chart:hover .instructions {
  opacity: 1;
}
/*
POPUP BOX
==================================================*/
.messagepop a.selected {
  background-color:#1F75CC;
  color:white;
  z-index:100;
}
.messagepop {
  background-color:#FFFFFF;
  border:1px solid #999999;
  cursor:default;
  display:none;
  margin-top: 18px;
  position:absolute;
  text-align:left;
  z-index:50;
  padding: 15px 20px;
}
.messagepop label {
  display: block;
  margin-bottom: 3px;
  padding-left: 15px;
  text-indent: -15px;
}
.messagepop p, .messagepop.div {
  border-bottom: 1px solid #EFEFEF;
  margin: 8px 0;
  padding-bottom: 8px;
}
.messagepop li {
     list-style-type: none;
}
.messagepop .close {
    margin-top: 15px;
    text-align: right;
}
.messagepop .close a {
    text-decoration: none;
    color: red;
}

/* Theme edits to apply over the defaults */
.ui-widget-header {
    border: none !important;
    border-bottom: 1px solid #ccc !important;
    border-radius: 0!important;
    padding: 0!important;
    /*background: #35414f url("images/ui-bg_dots-small_35_35414f_2x2.png") 50% 50% repeat;*/
    background: none !important;
    color: #e1e463;
    font-weight: bold;
}
.ui-widget.ui-widget-content {
    /*border: 1px solid #93c3cd;*/
    border: none;
}
.ui-dialog .ui-dialog-title {
    color: black;
    font-size: 16px;
    padding: 3px;
}
