/* General defaults */

@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');

html ,
body {
	height: 100%;
}

html,
button,
input,
select,
textarea {
    color: #202020;
}

body {
	background: #ffffff;
	font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 1.5em;
}

h1, h2 {
	color: #505050;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #c0c0c0;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
	max-width: 100%;
	height: auto;
	width: auto\9; /* ie8 */
}

p {
	margin: 0.75em 0px;
}

p a {
	text-decoration: underline;
	color: #202020;
}

p a:hover {
	text-decoration: none;
}

a {
    text-decoration: underline;
	color: inherit;
}

a:hover {
    text-decoration: none;
}

ol, ul {
    padding: 0 0 0 1.5em;
	margin-top: 0px
}

/* Header */

#header-container {
	border-bottom: 20px solid #f5f5f5;
	background: #ffffff;
}

header {
	height: 150px;
}

#header-logo {
	display: inline-block;
	line-height: 150px;
	vertical-align: top;
	margin-right: 10px;
}

#header-logo img {
	max-height:130px;
}

#header-text {
	display: inline-block;
	margin: 0px;
	padding: 0px;
}

#header-text-tag {
	line-height: 150px;
	margin: 0px;
	padding: 0px;
}

#header-right {
	display: inline-block;
	float: right;
	line-height: 150px;
}

#header-search, 
#header-admin {
	display: inline-block;
	margin-right: 5px;
}

#header-login {
	display: inline-block;
}

#header-search input[type="text"] {
	width: 60px;
}

/* Body */

#content-container {
	position: relative;
	min-height: 100%;
}

.wrapper {
	width: 1200px;
	margin: 0 auto;
}

.main-container {
	padding-bottom: 100px;
}

.main {
    padding: 30px 0;
}

.main section {
	overflow: visible;
	float: left;
	width: 100%;
}

.main aside {
	float: right;
	width: 200px;
	text-align: center;
}

/* Footer */

#footer-container {	
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 70px;
	padding-top: 10px;
	padding-bottom: 10px;
	border-top: 20px solid #004487;
	background: #223243;
}

#footer-left {
	float: left;
}

#footer-right {
	float: right;
	text-align: right;
	color: #ffffff;
	font-size: 12px;
	line-height: 1.5em;
}

#footer-icons {
	font-size: 18px;
	color: #ffffff;
}

/* IE Fixes */

.ie7 .title {
    padding-top: 20px;
}

/* Forms */
   
button,
input,
textarea,
select {
	border: 1px solid #c0c0c0;
	border-radius: 3px;
	font-family: inherit;
	padding: 0.4rem;
	line-height: normal; 
}

input[type="text"],
input[type="password"],
textarea,
select {
	color: #333333;
	width: -webkit-fill-available;
	max-width: 12em;
	box-sizing: border-box;
}

input[type="button"],
input[type="submit"],
input[type="button"]:hover,
input[type="button"]:active,
input[type="submit"]:hover,
input[type="submit"]:active {
	background: #e0e0e0;
}

input[type="button"]:hover,
input[type="submit"]:hover {
	background: #d0d0d0;
}

input:required {
	border: 1px solid #333333;
}

input[type=submit]:disabled,
button:disabled {
	background: #b0b0b0;
}

input:invalid {
	border: 1px solid #505050;
}

textarea {
	overflow: auto;
	vertical-align: top;
	height: 5em;
}

input[type="checkbox"],
input[type="radio"],
input[type="file"],
input[type="hidden"],
input[type="image"] {
	border: 0;
	border-radius: 0;
	padding: 0;
	margin-top: 0.4rem;
	margin-bottom: 0.4rem;
}

label {
	display: block;
	line-height: 1.714285714;
}

fieldset, legend {
	background: #ffffff;
}

fieldset {
	vertical-align: top;
	display: inline-block;
	border: 1px solid #c0c0c0;
	padding: 2%;
	margin-bottom: 20px;
}

legend {
	padding: 0.5em 0.5em;
	border: 1px solid;
	font-weight: bold;
}

aside fieldset {
	margin: 0px;
	text-align: center;
}

aside fieldset legend {
	color: #333333;
}

label.bold {
	font-weight: bold;
}

fieldset.record-view {
	width: 83%;
	margin-right: 1%;
}

fieldset.additional-record-view {
	display: block;
	width: 83%;
	margin-right: 1%;
}

fieldset#record-actions {
	text-align: center;
	position: -webkit-sticky;
	position: sticky;
	top: 10px;
}

fieldset#tracking-search-fieldset {
	text-align: center;
	position: -webkit-sticky;
	position: sticky;
	top: 10px;
}

fieldset.search {
	display: block;
	margin-right: 0px;
	padding-right: 0px;
	width: 98%;
}

fieldset.variables {
	display: block;
	margin-right: 0px;
	padding-right: 0px;
	width: 98%;
}

fieldset div:last-child {
	margin-right: 0px;
}

fieldset.inline {
	margin-right: 2%;
	display: -webkit-inline-box;
}

textarea.record-edit, 
input.record-edit {
	width: 95%;
	max-width: 95%;
}

textarea.record-edit {
	height: 5em;
}

/* Tables */

table {
	vertical-align: top;
	margin-bottom: 20px;
}

th {
	font-weight: bold;
	text-align: left;
}

th a {
	text-decoration: none;
	color: inherit;
}

td, th {
	border-bottom: 1px solid #202020;
    border-collapse: collapse;
	padding-right: 10px;
	padding-left: 0px;
	padding-top: 5px;
	padding-bottom: 5px;
}

td {
	font-size: 1em;
	vertical-align: text-top;
}

th:first-child , td:first-child {
	padding-left: 10px;
}

th input[type="button"] {
	font-size: 1em;
}

table#records-table,
table.records-table {
	width: 100%;
}

table#records-table tbody tr td:hover {
	cursor: pointer;
}

table#records-table tbody tr td:last-child:hover,
table#records-table tbody tr.row-deleted td:hover {
	cursor: inherit;
}

table#records-table tbody tr.row-viewed {
	background: #e0e0e0;
    background: -webkit-linear-gradient(#ffffff, #e0e0e0); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#ffffff, #e0e0e0); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#ffffff, #e0e0e0); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#ffffff, #e0e0e0); /* Standard syntax */
}

table#records-table tbody tr.row-updated {
	background: #c0c0c0;
    background: -webkit-linear-gradient(#ffffff, #c0c0c0); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#ffffff, #c0c0c0); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#ffffff, #c0c0c0); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#ffffff, #c0c0c0); /* Standard syntax */
}

table#records-table tbody tr.row-deleted {
	background: #a0a0a0;
    background: -webkit-linear-gradient(#ffffff, #a0a0a0); /* For Safari 5.1 to 6.0 */
    background: -o-linear-gradient(#ffffff, #a0a0a0); /* For Opera 11.1 to 12.0 */
    background: -moz-linear-gradient(#ffffff, #a0a0a0); /* For Firefox 3.6 to 15 */
    background: linear-gradient(#ffffff, #a0a0a0); /* Standard syntax */
}

table#records-table th#title-column {
	width: 50%;
}

table#records-table th#title-column-wide  {
	width: 65%;
}

table#records-table th,
table#records-table td {
	padding-right: 5px;
}

table#records-table th:first-child , 
table#records-table td:first-child {
	padding-left: 5px;
}

table#records-table td.reference-cell {
	white-space: nowrap;
}

table#logins-table td {
	vertical-align: middle;
}

/* Custom classes */

div.max-width-50, th.max-width-50, td.max-width-50, input.max-width-50, select.max-width-50, textarea.max-width-50  {
	max-width: 50px;
}

div.max-width-75, th.max-width-75, td.max-width-75, input.max-width-75, select.max-width-75, textarea.max-width-75  {
	max-width: 75px;
}

div.max-width-100, th.max-width-100, td.max-width-100, input.max-width-100, select.max-width-100, textarea.max-width-100  {
	max-width: 100px;
}

div.max-width-130, th.max-width-130, td.max-width-130, input.max-width-130, select.max-width-130, textarea.max-width-130  {
	max-width: 130px;
}

div.max-width-125, th.max-width-125, td.max-width-125, input.max-width-125, select.max-width-125, textarea.max-width-125  {
	max-width: 125px;
}

div.max-width-150, th.max-width-150, td.max-width-150, input.max-width-150, select.max-width-150, textarea.max-width-150  {
	max-width: 150px;
}

div.max-width-200, th.max-width-200, td.max-width-200, input.max-width-200, select.max-width-200, textarea.max-width-200  {
	max-width: 200px;
}

div.max-width-300, th.max-width-300, td.max-width-300, input.max-width-300, select.max-width-300, textarea.max-width-300  {
	max-width: 300px;
}

div.max-width-400, th.max-width-400, td.max-width-400, input.max-width-400, select.max-width-400, textarea.max-width-400  {
	max-width: 400px;
}

.link {
	cursor: pointer;
}

/* Pagination arrows */

span.arrow-left {
	display: inline;
	width: 0; 
	height: 0; 
	border-bottom: 8px solid transparent;
	border-top: 10px solid transparent;
	font-size: 0;
	line-height: 0;
	margin-right: 8px;
	vertical-align: middle;
	cursor: pointer;
	border-right: 10px solid #333333;
}

span.arrow-right {
	display: inline;
	width: 0; 
	height: 0; 
	border-bottom: 8px solid transparent;
	border-top: 10px solid transparent;
	font-size: 0;
	line-height: 0;
	margin-left: 8px;
	vertical-align: middle;
	cursor: pointer;
	border-left: 10px solid #333333;
}

/* Tracking */

div#tracking-view {
	display: inline-block;
	width: 82%;
	margin-right: 1%;
}

div#tracking-search {
	display: inline-block;
	width: 16%;
}

/* View record */

div.record-column {
	display: inline-block;
	float: left;
	width: 45%;
	padding-right: 5%;
	vertical-align: top;
}

div.record-column:last-child {
	padding-right: 0px;
}

div.image-box {
	display: inline-block;
	padding: 0 1em 1em 0;
}

#print-area {
	margin: 0px;
	padding: 0px;
	overflow-x: auto;
}

pre.xml {
	color: #045f44;
}

/* Search form */

div.search-field {
	display: inline-block;
	width: 24%;
	margin-bottom: 5px;
}

div.search-field:nth-child(5), 
div.search-field:nth-child(9),
div.search-field:nth-child(13) {
	clear: both;
}

/* Variables classes */

div.variable-field {
	display: inline-block;
	margin-right: 2%;
	vertical-align: top;
}

div.variable-field.col3 {
	width: 30%;
}

/* Images */

img.image-thumb {
	max-width: 50px;
	width: 50px;
}

img.image-full {
    width: 100%;
    height: auto;
}

/* Media */

.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px; height: 0; 
	overflow: hidden;
}
 
.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Related records */

div.related-list * {
	margin: 0; 
	padding: 0.375em 0 0.25em 0;
	list-style: none;
}

div.related-list ul li {
	margin-left: 1.5em; 
	position: relative; 
	padding-left: 1em;
}

div.related-list ul li::before {
	content: " "; 
	position: absolute; 
	width: 2px; 
	background-color: #505050; 
	top: 0.5em; 
	bottom: -1em; 
	left: -1em;
}

body > div.related-list ul > div.related-list li:first-child::before {
	top: 1em;
}

div.related-list ul li:last-child::before {
	display: none;
}

div.related-list ul li::after {
	content: " "; 
	position: absolute; 
	left: -1em; 
	width: 1em; 
	height: 2px; 
	background-color: #505050; 
	top: 1em;
}

/* Edit records */

p.record-admin {
	color: #606060;
}

/* Helper classes */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* Responsivity */

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

	body {
		font-size: 13px;
	}
	
	div#header-search input, 
	div#header-login input, 
	div#header-admin select {
		font-size: 13px;
	}

	.wrapper {
		width: 94%;
		padding: 0 3%;
	}

	.main {
		padding: 3% 0;
	}
	
	nav a {
		padding: 0 7px;
	}

}

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

	body {
		font-size: 12px;
	}
	
	div#header-search input, 
	div#header-login input, 
	div#header-admin select {
		font-size: 12px;
	}
	
	th#title-column {
		width: 40%;
	}
	
	fieldset.record-view {
		width: 80%;
	}
	
	fieldset.additional-record-view {
		width: 80%;
	}

}

@media only screen and (max-width: 736px) {
	
	fieldset.record-view {
		width: 77%;
	}
	
	fieldset.additional-record-view {
		width: 77%;
	}
	
	div#header-admin input,
	div#header-login input, 
	div#header-search input {
		font-size: 11px;
	}
	
	div#header-search input[type="text"] {
		width: 50px;
	}
	
	input[type="text"],
	textarea,
	select {
		max-width: 80%;
	}

}

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

	body {
		font-size: 11px;
	}
	
	h1, h2, h3, h4, h5, h6 {
		font-size: 110%;
	}
	
	header {
		height: inherit;
	}
	
	#header-text-tag {
		line-height: inherit;
	}
	
	#header-logo {
		display: none;
	}

	#header-text {
		display: block;
		float: inherit;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	
	#header-right {
		display: block;
		float: inherit;
		line-height: inherit;
		margin-top: 0px;
		margin-bottom: 10px;
	}
	
	#footer-right {
		font-size: 11px;
	}
	
	div.search-field {
		width: 32%;
	}
	
	div.search-field:nth-child(5), 
	div.search-field:nth-child(9) {
		clear: none;
	}
	
	div.search-field:nth-child(4), 
	div.search-field:nth-child(7),
	div.search-field:nth-child(10) {
		clear: both;
	}
	
	fieldset {
		padding: 3%;
	}
	
	fieldset.search {
		width: 96%;
	}
	
	fieldset.record-view {
		width: 73%;
		margin-right: 5px;
	}
	
	fieldset.additional-record-view {
		width: 73%;
		margin-right: 5px;
	}
	
	div.record-column {
		display: inline;
		float: inherit;
		width: 100%;
		padding-right: 0px;
		vertical-align: top;
	}
	
	td, th {
		padding-right: 2px;
	}

}

@media only screen and (max-width: 480px) {
		
	fieldset.record-view {
		width: 64%;
		margin-right: 5px;
	}
	
	fieldset.additional-record-view {
		width: 64%;
		margin-right: 5px;
	}
	
	div.search-field {
		width: 49%;
	}
	
	div.search-field:nth-child(4), 
	div.search-field:nth-child(7),
	div.search-field:nth-child(10) {
		clear: none;
	}
	
	div.search-field:nth-child(3), 
	div.search-field:nth-child(5),
	div.search-field:nth-child(7),
	div.search-field:nth-child(9),
	div.search-field:nth-child(11) {
		clear: both;
	}
	
	tr:first-child {
		display: none;
	}
	
	td {
		float: left;
		width: 100%;
		border-bottom: inherit;
		border-collapse: collapse;
		padding-right: 0px;
		padding-left: 5px;
		padding-top: 3px;
		padding-bottom: 3px;
	}

	td:last-child {
		border-bottom: 1px solid #202020;
		margin-bottom: 5px;
		padding-bottom: 7px;
	}
	
	button, input, textarea, select {
		padding: 0.25rem;
	}
	
	p.pagination-navigation {
		background: #e0e0e0;
		padding: 7px;
	}
	
}

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

	h1, h2, h3, h4, h5, h6 {
		font-size: 100%;
	}

	div.search-field {
		display: block;
		width: 100%;
		margin-bottom: 5px;
	}
	
}