:root {
	font-size: 0.75em;
	--main-font: Verdana, Arial, Helvetica, sans-serif;
}

body
{
	margin:0px;
	font-family: var(--main-font);
}

table.menu {
	background: #d4d0c8;
}

td
{
	font-family: var(--main-font);
	font-size: 1rem;
	color:#000000;
}

thead
{
	font-family: var(--main-font);
	font-size: 1rem;
	color:#000000;
	background-color:#FFFFFF;
}

img
{
	border:0px;
}

a
{
	color:#000000;
	text-decoration:none;
}

a.bold
{
	color:#110077;
	font-weight: bold;
	cursor: pointer;
}

a:hover
{
	color:#000000;
}

strong
{
	color:#110077;
}

input
{
	font-family: var(--main-font);
	font-size: 1rem;
	color:#110077;
}

button
{
	font-family: var(--main-font);
	font-size: 1rem;
	color:#110077;
}

button[disabled=disabled] {
	color: grey;
}

button.primary
{
	font-weight: bold;
}

button.wide
{
	min-width: 65px;
}

button.big {
    height: 30px;
}

select
{
	color:#110077;
}

ul.oneline {
	display: inline;
	padding-inline-start: 0px;
}
ul.oneline li {
	display: inline;
}

#zresult a{
	text-decoration:none;
	display:block;
	background-color:none;
	cursor:pointer;
}

#zresult a:hover{
	background-color:#f4e1ae;
}

a.selected {
	background-color:#f4e1ae !important;
}

.ui-datepicker {
	width: 220px !important;
}

.tablesorter th {
	cursor: pointer;
	text-align: left;
}
.selected td {
	background-color:#efe0cf
}

span.required {
	color: red;
}

html.progress, html.progress * {
	cursor: progress;
}

select:required:invalid.ng-dirty,
select:focus:invalid.ng-dirty,
select:invalid.ng-invalid-pattern,
select:invalid.ng-dirty,
input:required:invalid.ng-dirty,
input:focus:invalid.ng-dirty,
input:invalid.ng-invalid,
/* input.ng-invalid, */
input:invalid.ng-dirty,
input:read-only.invalid,
input:read-only.ng-invalid {
	background-color: #fdd;
}
div.container {
	margin: 0;
	padding: 0;
	display: flex;
	height: 100vh;
	min-height: 100vh;
	flex-direction: column;
	overflow: hidden;
	font-family: var(--main-font);
	font-size: 1rem;
}
body.popup div.container {
	overflow: auto;
}
div.form-container {
	margin: 0;
	padding: 0;
	display: flex;
	height: 100vh;
	min-height: 100vh;
	flex-direction: column;
	overflow: hidden;
	align-items: center;
	font-family: var(--main-font);
	font-size: 1rem;
}
body.popup div.form-container {
	overflow: auto;
}
div.statusbar {
	display: flex;
	padding: 4px;
	flex-direction: row;
	justify-content: center;
}
div.content {
	margin: 0;
	padding: 0;
	display: flex;
	flex: 1;
	height: 100%;
	width: 100%;
	overflow-y: auto;
}
div.jstable-frame {
	box-sizing: border-box;
	border: 1px solid #aaa;
	background-color: whitesmoke;
    margin: 0;
	padding: 0;
	display: block;
	height: 100%;
	width: 100%;
	overflow-y: auto;
}
div.row {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: row;
}

div.row-centered {
	justify-content: center;
}

div.col {
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}

div.row-rest {
	flex: 1;
	justify-content: flex-end;
}

div.col-rest {
	flex: 1;
	align-items: flex-end;
}

span.col-title {
	font-weight: bold;
	text-decoration: underline;
	padding: 5px;
}

span.warning {
	font-weight: bold;
	color: red;
}

div.border {
	box-sizing: border-box;
	border: 1px solid #003177;
}

.flex-frame-table {
	margin: 0;
	padding: 0;
	flex: 1;
	flex-direction: column;
}

.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
	font-family: var(--main-font) !important;
	font-size: 1em !important;
}
.ui-widget {
	font-family:  var(--main-font) !important;
	font-size: 1em !important;
}	
.full-width {
	width: 100%;
}

.full-height {
	height: 100%;
}

.max {
	width: 100%;
	height: 100%;
}

.max-content {
	width: 100%;
	height: 100%;
	overflow-y: auto;
}

span.hinterror {
    color: red;
    font-weight: bold;
}
td.hinterror,
input.hinterror {
    background-color: pink;
}
.tablesorter tr {
	background-color: #fffff7;
}
.tablesorter tr:focus {
	outline: 0px solid transparent;
}
.tablesorter tr.highlight {
	background-color: #bccbee;
}
.tablesorter tr.selected {
	background-color: #f4e1ae;
}
.tablesorter td {
	padding: 2;
	border-spacing: 0;
	font-size:  1rem;
	color: #000000;
	border: 1px solid #b2b2b2;
}
.tablesorter th.headerSortUp,
.tablesorter th.headerSortDown {
	color: rgb(53, 79, 215);
}

.tablesorter th div {
	display: none;
}

.tablesorter th.sticky div {
	padding: 0;
	margin: 0;
	position: fixed;
	background: lightsteelblue;
	display: block;
	opacity: 0.8;
	border-radius: 5px;
}

.tablesorter {
	border: 1px solid #aaa;
	border-collapse: collapse;
}

.js-table-container {
	overflow: auto;
	height: 100%;
}

/* Disable arrows for the number inputs */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type=number] {
    -moz-appearance:textfield; /* Firefox */
}

/* select2 */
.select2-results__option {
	font-family:  var(--main-font);
	font-size:  1rem;
}
.bigdrop {
	width: 400px !important;
}
a.button {
	border: 1px solid grey;
	background-color: lightgray;
	padding: 4px;
	display: inline;
}
span.readonly-input {
	border: 1px solid black;
	background-color: white;
	padding: 2px;
}
table.finance {
	border: 1px solid black;
	background-color: white;
}
table.finance tr:first-of-type {
	background-color: #cccccc;
}

table.celltable {
	border: 1px solid #c9c9c9;
}

/* forms */
fieldset legend,
div.line div.header {
    color: 110077;
    font-weight: bold;
}
fieldset {
    border: 1px solid #aaa;
    border-radius: 2px;
}
form div.caption {
	font-family: var(--main-font);
	font-size: 1rem;
	font-weight: bold;
}

.good {
	color:darkgreen;
	font-weight: bold;
}

.bad {
	color:darkred;
	font-weight: bold;
}

div.popeye-modal {
	min-width: fit-content;
}

.comment {
	color: #444;
}

div[ng-messages] {
	color:maroon;
}

.menu-button {
	padding:4px 6px 4px 6px;
	cursor: pointer;
}

.modal-fieldset {
	margin: 0 0 10px 0;
}

.d-flex {
	display: flex;
}

.flex-auto {
	flex: 1 1 auto;
}

.flex-wrap {
	flex-wrap: wrap;
}

.content-left {
	justify-content: left;
}

.content-center {
	justify-content: center;
}

.content-right {
	justify-content: right;
}

.align-left {
	text-align: left;
}

.align-center {
	text-align: center;
}

/** Margin top */
.mt-1 {
	margin-top: 0;
}
.mt-2 {
	margin-top: 0.5rem !important;
}
.mt-3 {
	margin-top: 1rem !important;
}
.mt-4 {
	margin-top: 1.5rem !important;
}
.mt-5 {
	margin-top: 2.0rem !important;
}

/** Margin bottom */
.mb-1 {
	margin-bottom: 0;
}
.mb-2 {
	margin-bottom: 0.5rem !important;
}
.mb-3 {
	margin-bottom: 1rem !important;
}
.mb-4 {
	margin-bottom: 1.5rem !important;
}
.mb-5 {
	margin-bottom: 2.0rem !important;
}

/** Margin left */
.ml-1 {
	margin-left: 0;
}
.ml-2 {
	margin-left: 0.5rem !important;
}
.ml-3 {
	margin-left: 1rem !important;
}
.ml-4 {
	margin-left: 1.5rem !important;
}
.ml-5 {
	margin-left: 2.0rem !important;
}

/** Margin right */
.mr-1 {
	margin-right: 0;
}
.mr-2 {
	margin-right: 0.5rem !important;
}
.mr-3 {
	margin-right: 1rem !important;
}
.mr-4 {
	margin-right: 1.5rem !important;
}
.mr-5 {
	margin-right: 2.0rem !important;
}

.h1 {
	font-size: 2em;
}

.h2 {
	font-size: 1.5em;
}

.h3 {
	font-size: 1.25em;
}

.padding-2 {
	padding: 2px;
}

.border-1-gray {
	border: 1px #999 solid;
}

.bold {
	font-weight: bold;
}

.blue {
	color: #110077;
}

.font-size-13 {
	font-size: 13px;
}
.font-size-14 {
	font-size: 14px;
}
.font-size-15 {
	font-size: 15px;
}
.font-size-16 {
	font-size: 17px;
}
.font-size-17 {
	font-size: 17px;
}

.min-h-160 {
	min-height: 160px;
}

.red {
	color: red !important;
}

.js-a-button {
	border: 1px solid gray;
    background: white;
    border-radius: 3px;
}