/* Minification failed. Returning unminified contents.
(160,1): run-time error CSS1019: Unexpected token, found '@import'
(160,9): run-time error CSS1019: Unexpected token, found 'url('/css/region-specific-ui.css')'
(732,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(733,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(990,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(991,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(992,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(993,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(994,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(995,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1054,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1170,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1176,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1182,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1188,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1194,17): run-time error CSS1039: Token not allowed after unary operator: '-search-header-fg'
(1204,22): run-time error CSS1039: Token not allowed after unary operator: '-populated-control-bg'
(1205,17): run-time error CSS1039: Token not allowed after unary operator: '-populated-control-fg'
(1355,22): run-time error CSS1039: Token not allowed after unary operator: '-control-bg'
(1356,17): run-time error CSS1039: Token not allowed after unary operator: '-control-fg'
(1595,25): run-time error CSS1046: Expect comma, found '242'
(1595,32): run-time error CSS1046: Expect comma, found ')'
(2023,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2024,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2352,22): run-time error CSS1039: Token not allowed after unary operator: '-control-bg'
(2353,17): run-time error CSS1039: Token not allowed after unary operator: '-control-fg'
(2369,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2370,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2415,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2416,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2461,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2462,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2478,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2479,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(2495,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(2496,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
 */
.ui-widget-header {
    background:#00a6aa;
    color:#FFFFFF;
    border:none;
}

.ui-datepicker .ui-datepicker-prev, 
.ui-datepicker .ui-datepicker-next {
    display: flex;
    justify-content: center;
    align-items: stretch;
    color:#FFFFFF;
    border:0;
    padding: 5px;
    width: 32px;
    height: 32px;
    transition:0.5s;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    background:#008295;
    font-weight:600;
}

.ui-datepicker .ui-datepicker-prev {
    top:5px;
    left:5px;
}

.ui-datepicker .ui-datepicker-next {
    top:5px;
    right:5px;
}

.ui-datepicker .ui-datepicker-prev span:before, 
.ui-datepicker .ui-datepicker-next span:before {
    font-size: 1em;
    margin: 1px 5px 10px 4px;
}

.ui-datepicker .ui-datepicker-next span:before {
    margin: 1px 3px 10px 5px;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year {
    width: auto;
    padding: 0.2em;
    font-size: 16px;
    font-family: neue-kabel, sans-serif;
    margin-left: 8px;
    background: #d6e4e6;
    border: 0;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: 1px solid #ffffff;
    background: #efefef;
    font-weight: normal;
    color: #555555;
    text-align: center;
}


.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    background:#ffd800;
}
* {
	margin: 0;
}

html, body {
	min-height: 100%;
}

html {

}

body {
	margin:0;
	padding:0;
}

h1, h2, h3, h4, h5 {
	padding: 0;
	margin-bottom: 0.5em;
}

:hover {
	/*
	transition: ease 0.7s;
	transition-property: background, color;
	*/
}

a {
	text-decoration: none;
	cursor: pointer;
	color: #000000;
}

a:visited {
	color: #000000;
}

a:hover {
	text-decoration: none;
}

p {
	padding: 0;
	margin-bottom: 1rem;
}

/* 
	It is much more common to use lists as structural elements rather than the text content bulleted lists,
	so set that as a default. Text lists can have their own class.
*/
ul {
	padding: 0;
	margin: 0;
}

li {
	list-style: none;
}
/* */

input[type=submit],
input[type=image],
button { 
	cursor: pointer;
}

button.waiting:after {
    display: inline-block;
    font: normal normal normal 14px/1 "Font Awesome 5 Pro";
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    content: '\f110';
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear;
    margin-left: 0.75em;
}

table.alternating tr:nth-of-type(2n) {
  background: rgba(40, 95, 129, 0.1);
}

table.alternating tr td:nth-of-type(2n) {
  background: rgba(40, 95, 129, 0.1);
}
/*

    One stylesheet to rule them all

*/
@import url('/css/region-specific-ui.css');

* {
    font-family: neue-kabel, sans-serif;
    box-sizing: border-box;
}

h1 {
    font-size: 2.2rem;
}

h2 {
    font-size: 2rem;
}

h2 > span,
h2 > span * {
    font-size: 100%;
}

h3 {
    font-size: 1.8rem;
}

h4 {
    font-size: 1.5rem;
}

h5 {
    font-size: 1.2rem;
}

body {
    background: rgb(255,255,255);
    background: -moz-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(0,166,170,1) 0%, rgba(0,130,149,1) 100%);
    background: -webkit-linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(0,166,170,1) 0%, rgba(0,130,149,1) 100%);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(0,166,170,1) 0%, rgba(0,130,149,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#008295",GradientType=1);
    background-repeat: no-repeat;
    background-attachment: fixed;
    font-size: 17px;
}

.app-container,
.app-main,
.ko-deferred-module {
    min-height: 100%;
}

.login-page-wrapper {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    padding: 2rem 0;
    background-image: url(/images/background-base.svg);
    background-position: bottom;
    background-size: 100%;
    background-repeat: no-repeat;
}

.login-box .section > div.flex-container,
.flex-container {
    display: flex;
}

.col-1-2 {
    width: 50%;
}

.col-2-3 {
    width: 66.667%;
}

.col-1-3 {
    width: 33.333%;
}

.flex-container .col-1-2:nth-of-type(1) {
    padding-right: 1rem;
}

.flex-container .col-1-2:nth-of-type(2) {
    padding-left: 1rem;
}

.align-text-left {
    text-align: left;
}

.row.noflex {
    display: block;
}

.section-header {
    border: 1px solid #02a6aa;
    border-radius: 3px;
    color: #02a6aa;
    width: 100%;
    margin-bottom: 8px;
    padding: 5px;
}

.section-header.active {
    color: #ffffff;
    background: #02a6aa;
}

.row > .group {
    width: 100%;
}

.required-flag:before {
    font-family: "Font Awesome 5 Pro";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    font-style: normal;
    padding-left: 5px;
}

.required-flag.ok:before {
    content: '\f058';
    color: #00c26f;
}

.required-flag.not-ok:before {
    content: '\f06a';
    color: #ff3e00;
}

button.toggle,
.toggle {
    height: 40px;
    display: inline-flex;
    align-items: stretch;
    padding: 5px 3px;
    border-radius: 25px;
    background: #c3d7d8;
    text-transform: uppercase;
}

.toggle.checked {
    background: #00A6AA;
}

.toggle:before,
.toggle:after {
    display: flex;
    align-items: center;
    padding: 6px;
    height: 30px;
    font-size: 1rem;
    margin: 0 3px;
    box-sizing: border-box;
}

.toggle:before {
    content: 'No';
    background: none;
    border-radius: 50%;
    width: 42px;
}

.toggle:after {
    content: ' ';
    background: #FFFFFF;
    border-radius: 50%;
    width: 30px;
    height: 30px;
}

.toggle.checked:before {
    background: #FFFFFF;
    content: ' ';
    width: 30px;
    height: 30px;
}

.toggle.checked:after {
    background: none;
    content: 'Yes';
    width: 42px;
    height: 30px;
}

.toggle.tick:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f00c';
    width: 30px;
    color: rgba(255, 255, 255, 0.25);
}

.toggle.checked.tick:before {
    color: #00A6AA;
    font-weight: 900;
}

.toggle.tick:after {
    content: none;
}

.tooltip {
    position: absolute;
    z-index: 1;
    transform: translateX(2px);
}

.tooltip > span {
    opacity: 0;
    background: rgb(255,255,255);
    box-shadow: 2px 2px 5px -2px rgba(0, 0, 0, 0.5);
    padding: 5px;
    font-size: 13px;
    display: block;
}

.tooltip:before {
    font-family: "Font Awesome 5 Pro";
    content: '\f05a';
}

.tooltip.show > span {
    opacity: 1;
}

.tooltip.show:before {
    display: none;
}


.form-fields .section > div.decision > label:after {
    content: '' !important;
}

.popup .content > .text {
    padding: 20px;
}

.popup .content > .buttons {
    padding: 20px;
    padding-top: 0;
}

.popup .content > .buttons button,
.popup .content > .buttons .button,
.popup .content > .buttons .btn {
    min-width: 90px;
    margin-right: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.suid {
    font-size: 13px;
    color: #ff00d3;
}

.attention-item {
    color: #ff006e;
}

.na-item {
    opacity: 0.5;
}

td .additional-info.count-list {
    margin-top: 5px;
}

td .additional-info.count-list li {
    line-height: 0.7em;
    padding: 0.25rem;
    margin-bottom: 1px;
    border-radius: 3px;
}

td .additional-info.count-list li.is-white {
    border: 1px solid #dddddd;
}

td .additional-info.count-list li > * {
    font-size: 0.75em;
}

.scroll-helper {
    position: fixed;
    left: 50% !important;
    bottom: 32px !important;
    right: unset !important;
    top: unset !important;
    background: #ffffff;
    border: 1px dotted #909090;
    z-index: 10000;
    font-size: 14px;
    padding: 5px 10px 5px 10px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.scroll-helper:after {
    position: relative;
    content: '\f107';
    font-family: 'Font Awesome 5 Pro';
    padding-left: 10px;
    font-weight: 900;
    animation: ScrollHelper 0.5s ease 6;
    font-size: 18px;
}

.crlf {
    white-space: pre-wrap;
    display: block !important;
}

td.group-start {
    border-left-width: 5px;
}

td.actions-column a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    width: 40px;
    background: #EDEDED;
    border-radius: 6px;
}

td.actions-column a:hover {
    background: #02929e;
    color: #ffffff;
}

.waiter.wait-cards:before,
.waiter.wait-cards:after {
    min-width: 320px;
    max-width: 560px;
    margin: 1rem;
}

.waiting .pager,
.pager.waiting {
    animation: IFCAPagerWaitingAnimation 2s infinite !important;
}

.full-width {
    width: 100%;
}

i.selector {
    flex-grow: 1;
}

i.selector:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f0c8';
    font-style: normal;
    font-size: 24px;
    opacity: 0.5;
}

i.selector.selected:before {
    content: '\f14a';
    opacity: 1;
    color: #008295;
}

.start-emailer {
    display: flex;
    align-items: center;
}

.start-emailer i {
    margin-right: 0.5em;
}

.row > .section.w1 {
    flex-basis: 1;
}

.row > .section.w2 {
    flex-basis: 2;
}

.lat-long {
    display: flex;
    align-items: center;
}

.form-fields .lat-long {
    width: calc(100% - 240px);
}

.form-fields .lat-long input[type=text] {
    min-width: 98px;
}

.form-fields .lat-long input[type=text]:first-child {
    margin-right: 10px;
}

.form-fields .lat-long input[type=text] {
    width: calc(50% - 5px);
    font-family: 'Pragati Narrow';
    font-size: 0.8em;
}

.ui-datepicker-unselectable > span {
    position: relative;
    overflow: hidden;
}

.ui-datepicker-unselectable > span:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f715';
    position: absolute;
    font-weight: 100;
    left: 0;
    top: 0;
    font-size: 1.8em;
    opacity: 0.5;
}

.deleted-filter.showing-deleted {
    background: #dd001b;
    color: #ffffff;
}

.percent-editor:after {
    content: '%';
    padding-left: 0.25rem;
}

.percent-editor {
    display: inline-flex;
    align-items: center;
}

.popup.system-error > div.content {
    max-height: 400px !important;
    max-width: 600px !important;
    margin: auto;
}

.popup.system-error > div.content > h2 {
    background: #bf0606;
}

.checkbox-list.v {
    flex-direction: column;
}

.checkbox-list.v li {
    margin-bottom: 0.5em;
}

.checkbox-list.v label {
    width: 20em !important;
}

.checkbox-list.v label input {
    margin-left: auto !important;
}

table thead tr th .std {
    min-width: 3em;
}

.badged-id {
    display: inline-flex;
    align-items: center;
}

.badged-id i {
    padding-right: 0.5em;
}

.cf-dateselector {
    display: flex;
    align-items: center;
    width: calc(100% - 225px) !important;
}

select.cf-dsctor-part {
    margin-right: 5px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-image: none;
    width: 3em !important;
    text-align: center;
}

.cf-dateselector:hover select.cf-dsctor-part,
.cf-dateselector:focus select.cf-dsctor-part {
    -moz-appearance: unset;
    -webkit-appearance: unset;
    appearance: unset;
    background-image: unset;
}

select.cf-dsctor-part.yc {
    padding-right: 0;
    border-right: none;
    margin-right: 0;
    width: unset;
    text-align: right;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

select.cf-dsctor-part.yd {
    padding-left: 0;
    border-left: none;
    margin-left: 0;
    text-align: left;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.cf-dsctor-sep:before {
    content: '/';
    padding-right: 5px;
}

.attention.due {
    color: #3585c1 !important;
}

.pwd {
    position: relative;
}

.icon.pwd-show:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f06e';
    font-weight: 500;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-style: normal;
}

.icon.pwd-show {
    position: absolute;
    top: 10px;
    right: 5px;
    z-index: 1;
    color: #008295;
}

.login-box .icon.pwd-show {
    top: 0.63em;
    right: 0.5em;
    font-size: 1.5em;
}

.mmyyyy {
    display: inline-flex;
}

.mmyyyy .mm {
    min-width: 4.5em;
}

.mmyyyy .yyyy {
    min-width: 5em;
}

@keyframes IFCAPagerWaitingAnimation {
    0% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 0%, rgba(0,130,149,1))
    }

    10% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 10%, rgba(0,130,149,1))
    }

    20% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 20%, rgba(0,130,149,1))
    }

    30% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 30%, rgba(0,130,149,1))
    }

    40% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 40%, rgba(0,130,149,1))
    }

    50% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 50%, rgba(0,130,149,1))
    }

    60% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 60%, rgba(0,130,149,1))
    }

    70% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 70%, rgba(0,130,149,1))
    }

    80% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 80%, rgba(0,130,149,1))
    }

    90% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 90%, rgba(0,130,149,1))
    }

    100% {
        background: linear-gradient(315deg, rgba(0,130,149,1), #ffffff 100%, rgba(0,130,149,1))
    }
}

@media screen and (max-width:960px) {
    .flex-container {
        flex-wrap: wrap;
    }

    
}
.row {
    display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
    position: relative;
}

.section {
    position: relative;
}

.section > div:not(.group),
.section > div.group > div {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.section > div > .efs {
    width: 100%;
}

.row > .section {
    flex-basis: 100%;
}

.form-fields .group > div,
.form-fields .section > div {
    padding-top: 5px;
    padding-bottom: 5px;
}

.form-fields .section > div.group > div {
    padding-top: 5px;
    padding-bottom: 5px;
}

.form-fields .group > div.complex-editor > div,
.form-fields .section > div.complex-editor > div {
    display: flex;
}

.edit-permit .form-fields .section > div.complex-editor > div {
    flex-wrap: wrap;
}

.form-fields .section > div:first-of-type {
    padding-top: 0;
}

.form-fields .section > div:last-of-type {
    padding-bottom: 0;
}

.form-fields .section > div > label,
.form-fields .section > div.group > div > label {
    flex-grow: 0;
    flex-shrink: 0;
    width: 200px;
}

.address-row {
    align-items: flex-start;
}

.address-row ul.address-lines {
    width: unset;
    margin: 0;
    padding: 0;
}

.form-fields .section > div > label:after,
.form-fields .section > div.group > div > label:after {
    content: ':';
}

.form-fields .section > div > label:empty:after,
.form-fields .section > div.group > div > label:empty:after,
.form-fields .section > div > label.q:after,
.form-fields .section > div.group > div > label.q:after {
    content: '';
}

input[type=checkbox] {
    zoom: 1.75;
}

.docs-not-ok.attention {
    color: #ee5700;
}

.docs-ok,
.docs-ok div.iconed {
    color: #078951;
}

td.id,
th.id {
    width: 1em;
}

.form-fields .section > div > .choices {
    display: flex;
}

.form-fields .section > div > .choices > *:not(:last-child) {
    margin-right: 5px;
}

.form-fields .section > div > .choices > li > button {
    opacity: 0.75;
}

.form-fields .section > div > .choices > li > button.selected {
    opacity: 1;
    font-weight: bold;
    border: 3px solid #000000;
}

.attention {
    color: #d90303;
}

.warning {
    color: #f8a803;
}

.good {
    color: #00c26f;
}

.form-fields div.help {
    position: relative;
    background: #c6fafb;
    padding: 5px !important;
    padding-left: 40px !important;
    border-radius: 3px;
    margin: 5px 0 5px 0;
    color: #513a82 !important;
    display: block;
}

.form-fields div.help > p,
.form-fields div.help > div > p {
    margin: 0;
    font-size: 0.9em;
}

.form-fields div.help > p:not(:last-child),
.form-fields div.help > div > p:not(:last-child) {
    margin-bottom: 5px !important;
}

.form-fields div.help:before {
    font-family: 'Font Awesome 5 Pro';
    width: 1em;
    font-size: 24px;
    color: #0088ff;
    position: absolute;
    left: 5px;
}

.form-fields div.help:before {
    content: '\f05a';
}

.form-fields .section > div > ul.checkbox-list,
.form-fields .section > .group > div > ul.checkbox-list {
    display: flex;
}

.form-fields .section > div > ul.checkbox-list > :not(:last-child),
.form-fields .section > .group > div > ul.checkbox-list :not(:last-child) {
    margin-right: 1em;
}

.form-fields .section > div > ul.checkbox-list label,
.form-fields .section > .group > div > ul.checkbox-list label {
    display: flex;
    align-items: center;
}

.form-fields .section > div > ul.checkbox-list label input,
.form-fields .section > .group > div > ul.checkbox-list label input {
    margin-left: 0.5em;
}

@media screen and (max-width:960px) {

    .form-fields .section > div > label, 
    .form-fields .section > div.group > div > label {
        width: 100%;
    }

    .form-fields .section > div label {
        margin: 8px 0;
    }

    .row {
        flex-wrap:wrap;
    }
}
:root {
    --control-bg: #d0d0d0;
    --control-fg: #1f5d7a;
    --search-header-bg: rgba(255, 255, 255, 0.25);
    --search-header-fg: #000000;
    --populated-control-bg: #00a6aa;
    --populated-control-fg: #ffffff;
}

table {
    border-collapse: collapse;
    background: #ffffff;
    width: 100%;
    margin: 2rem 0;
}

table.mini-columns {
    width: auto;
    background: #e5e5e5;
}

/*
	Headers / filters
*/
th {
    text-align: left;
    font-size: 1rem;
    padding: 10px;
    position: relative;
    background: #008295;
    color: #FFFFFF;
    font-weight: 600;
}

table.complex-filters th {
    vertical-align: top;
}

th:last-child {
    padding-right: 10px;
}

tr.advanced-filters th {
    font-size: 16px;
}

tr.advanced-filters input[type=text] {
    padding: 2px 5px 2px 5px;
    box-sizing: border-box;
}

table thead th.fill {
    width: 100%;
}

table tr.field-groups + tr > th {
    padding-top: 0;
}

table thead input,
table thead select {
    padding: 0.5rem;
    outline: none !important;
    border: none !important;
    background: #FFFFFF;
    color: var(--search-header-fg) !important;
    font-size: 16px;
    width: 100% !important;
    box-sizing: border-box;
}

table thead .generic_pager input {
    width: 60px !important;
}

table thead .compound,
table thead .multi-filters {
    display: flex;
    align-items: center;
}

table thead .compound > *:not(:last-child), 
table thead .multi-filters > *:not(:last-child) {
    margin-right: 10px;
}

table thead .multi-filters input {
    margin-left: 5px;
}

table thead .multi-filters.date input[type=text] {
    width: 6em !important;
}

table thead .multi-filters input:first-child {
    margin-left: 0;
}

table thead input:first-child {
    margin-right: 0;
}

table thead select option {
    color: #000000 !important;
}

table thead .micro select {
    width: 70px !important;
}

table thead select option {
    color: #707070;
}

table.catch-return-status tbody tr td {
    width:10%;
}

table.catch-return-status tbody tr td.period,
table.catch-return-status tbody tr td.fishing-area,
table.catch-return-status tbody tr td.permit-status {
    width:30%;
}

table.catch-return-status tbody tr td.permit-status {
    padding:1rem;
    background: none;
    margin-left: 0;
    border-radius: 0; 
    display: table-cell;
    line-height: unset;
}

.add-new-area {
    background: #FFFFFF;
    padding: 2px 7px 5px 7px;
    margin-left: 10px;
    border-radius: 3px;
    border: 1px solid #00a6aa;
    color: #00a6aa;
    transition: 0.3s;
    display: inline-block;
}

.add-new-area svg {
    display: inline-block;
    height: 22px;
    width: 22px;
    fill: #00a6aa;
    margin-right: 2px;
    position: relative;
    top: 5px;
    transition: 0.3s;
}

tr:hover .add-new-area:hover {
    background: #008295;
    color:#FFFFFF;
}
 
tr:hover .add-new-area:hover svg {
    fill:#FFFFFF;
}

.control-buttons {
    display:flex;
}

.control-buttons button {
    margin:1rem 1rem 1rem 0;
}

table thead select.populated option {
    color: #ffffff !important;
}

table thead tr.advanced-filters input {
    font-size: 16px;
}

table thead input::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: var(--search-header-fg);
    text-shadow: none;
    text-transform: none;
}

table thead input::-moz-placeholder { /* Firefox 19+ */
    color: var(--search-header-fg);
    text-shadow: none;
    text-transform: none;
}

table thead input:-ms-input-placeholder { /* IE 10+ */
    color: var(--search-header-fg);
    text-shadow: none;
    text-transform: none;
}

table thead input:-moz-placeholder { /* Firefox 18- */
    color: var(--search-header-fg);
    text-shadow: none;
    text-transform: none;
}

table thead input::placeholder {
    color: var(--search-header-fg);
    text-shadow: none;
    text-transform: none;
}

table thead input:not(:placeholder-shown) {
    background: #fade9f !important;
}

table thead select.populated {
    background: var(--populated-control-bg);
    color: var(--populated-control-fg) !important;
}

table thead .icon_datepicker {
    padding-left: 5px;
}

table .group-header td {
    background: #e0ebe5;
    border-bottom: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    font-size: 18px;
    position: relative;
    font-weight: 100;
}

table .group-header.super td {
    font-weight: 400;
    font-size: 24px;
}

th .material-icons {
    padding-top: 5px
}

th.tools {
    padding: 0;
}

th.tools > span {
    padding: 5px 10px 5px 10px;
    vertical-align: middle;
}

th .primary-actions {
    margin: 0 10px 0 0;
    float: right;
}

th .primary-actions button {
    font-size: 16px;
    background: #13492c;
}

th .state-filter {
    background: #1b6940;
    color: #ffffff;
    margin-right: 5px;
    padding: 2px 5px 2px 5px;
}

table .primary-actions {
    float: right;
}

table .primary-actions button {
    font-size: 14px;
    background: #13492c;
    padding: 5px 10px 5px 10px;
}

table .group-header .primary-actions button {
    font-size: 14px;
    background: #13492c;
    padding: 2px 6px 2px 6px;
}

input[type=text].filter {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAnFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+TINBkAAAAM3RSTlMAAQIDBwgJDg8RExcdICMzPUJERUdMUVJcX2F5e36FiZigoqWrtcPF2eDi5Obp6+/z+fuRCq6wAAAAiklEQVQYGVXBRwKCMABFwU8QFbtgwV6wV/Dd/26GZKMzspIbUC5r8swB79mWs4VVHEbDN8+arC6MVWm8Wcpac5Q3pDSSLqTyImhJKujLC6Ej6UQmL4ampBkPI2fFXVb9Q25kjWGkSgKPrJ8egamc5IPzgomcaH4urpuuyWGqX8EeBvoV7FjoT9AzXxZnEVySl7A0AAAAAElFTkSuQmCC');
    background-repeat: no-repeat;
    background-position: 98% 5px;
    background-size: 10px;
    height: 44px;
}

select.filter {
    background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAnFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+TINBkAAAAM3RSTlMAAQIDBwgJDg8RExcdICMzPUJERUdMUVJcX2F5e36FiZigoqWrtcPF2eDi5Obp6+/z+fuRCq6wAAAAiklEQVQYGVXBRwKCMABFwU8QFbtgwV6wV/Dd/26GZKMzspIbUC5r8swB79mWs4VVHEbDN8+arC6MVWm8Wcpac5Q3pDSSLqTyImhJKujLC6Ej6UQmL4ampBkPI2fFXVb9Q25kjWGkSgKPrJ8egamc5IPzgomcaH4urpuuyWGqX8EeBvoV7FjoT9AzXxZnEVySl7A0AAAAAElFTkSuQmCC');
    background-repeat: no-repeat;
    background-position: 98% center;
    background-position: 98% 5px;
    background-size: 10px;
    height: 44px;
}

th input.full,
th select.full {
    width: 100%;
    box-sizing: border-box;
}

th .sort-header {
    display: flex;
    flex-direction: column;
    height: 44px;
}

th .sort-header a {
    color: #ffffff;
    background: #1f7a49;
    height: 33%;
    overflow: hidden;
    font-size: 20px;
}

th .sort-header.is-up a.up,
th .sort-header.is-down a.down {
    background: #41427f
}

th .sort-header a:hover {
    opacity: 0.5;
}

th .sort-header a:before {
    font-family: Material Icons;
    margin-top: -3px;
    display: block;
    text-align: center;
}

th .sort-header a.up:before {
    content: 'arrow_drop_up';
}

th .sort-header a.down:before {
    content: 'arrow_drop_down';
}

th .sort-header a.clear:before {
    content: 'clear';
    margin-top: -1px;
    font-size: 15px;
}

.multi-filters {
    display: flex;
    flex-direction: row
}

.multi-filters > label {
    height: 43px;
    position: relative;
    top: 5px;
    padding-right: 10px;
}

th button,
.multi-filters button {
    outline: none;
    border: none;
    background: var(--control-bg);
    color: var(--control-fg);
    position: relative;
    padding: 0.25rem 0.5rem;
    margin: 0 0.5rem;
    font-size: 1rem;
    line-height: 0.5rem;
    height: unset;
    min-height: 32px;
}

th button:hover,
.multi-filters button:hover {
    color: #FFFFFF;
}

.multi-filters button.has-tristate-flagged-icon i {
    display: inherit;
}

.multi-filters button.has-tristate-flagged-icon i.material-icons {
    font-size: 1em;
}

.multi-filters button.warning-filter:before,
.multi-filters button.good-filter:before,
.multi-filters button.has-tristate-flagged-icon:before,
.multi-filters button.tristate-text:before {
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    right: 3px;
    top: 3px;
    font-size: 10px;
}

.multi-filters button.tristate-text {
    color: #ffffff;
    padding-right: 20px;
}

.multi-filters button.tristate-text:before {
    content: '\f069';
}

.multi-filters button.warning-filter:before {
    content: '\f071';
}

.multi-filters button.good-filter:before {
    content: '\f058';
}

.multi-filters button.has-tristate-flagged-icon.tritrue:before,
.multi-filters button.tristate-text.tritrue:before {
    content: '\f058';
}

.multi-filters button.has-tristate-flagged-icon.trifalse:before {
    content: '\f071';
}

.multi-filters button.has-tristate-flagged-icon.close-not-warning.trifalse:before,
.multi-filters button.has-tristate-flagged-icon.not-warning.trifalse:before,
.multi-filters button.tristate-text.not-warning.trifalse:before {
    content: '\f05e';
}

.multi-filters button.has-tristate-flagged-icon.cross-not-warning.trifalse:before {
    content: '\f00d';
}

.multi-filters button.has-tristate-flagged-icon.trinull:before {
    content: '\f069'
}

.multi-filters button.active {
    background: #41427f;
}

.multi-filters button.tritrue {
    background: #41427f;
}

.multi-filters button.trifalse {
    background: #41427f;
}

.multi-filters .multistate.hasvalue {
    background: #41427f;
}

.tristate > * {
    display: none;
}

.tristate.trinull > .null {
    display: inline-flex;
}

.tristate.trifalse > .false {
    display: inline-flex;
}

.tristate.tritrue > .true {
    display: inline-flex;
}


th.micro {
    width: 20px !important;
}

th.mini {
    width: 80px !important;
}

th.midi {
    max-width: 200px !important;
}

th.select {
    width: 60px !important;
}

th.id {
    width: 80px !important;
}

th.name {
    min-width: 200px;
}

th.status {
    width: 90px !important;
}

th.type {
    width: 20px !important;
}

/*
	Body
*/
table.mini-columns td {
    border: none;
    border-left: 1px solid #ffffff;
}

td {
    padding: 1rem;
    font-size: 16px;
}

td.permit-type {
    min-width:160px;
}

td div.contact-name {
    min-width:120px;
}

td:first-of-type {
    
}

table.stealth td {
    padding-top: 2px;
    padding-bottom: 2px;
}

td.multi-row-item > * {
    display: block;
}

td.multi-row-item > .secondary {
    font-size: 14px;
    color: #707070;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

td .compound-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

td.multi-row-item > .secondary > *,
td .compound-item > * {
    padding-right: 5px;
}

td.multi-row-item > .secondary > *:last-child,
td .compound-item > *:last-child {
    padding-right: 0;
}

td i.material-icons {
    font-size: 1.25em;
}

td .shortcut i.material-icons {
    font-size: 1.5em;
}

td .shortcut {
    display: inline-block;
}

td .shortcut:hover {
    background: #419366;
    color: #ffffff;
}

td > i.fa,
td > span > i.fa,
td > i.material-icons,
td > span > i.material-icons,
td > .icon-container,
td > span > .icon-container {
    display: block;
    text-align: center;
}

/* Use ONE or other of these depending on whether you want row colouring to start */
tbody tr {
    border-bottom: 1px solid #008295;
}

.mobile {
    display:none;
}

.ui-datepicker-calendar tbody tr {
    border-bottom: none;
}

table.clickable tbody tr:hover,
tr.clickable:hover {
    background: rgb(230 242 255);
    cursor: pointer;
    transition: 0.5s;
    border-bottom: 1px solid #009d72;
}

table tr.field-groups th.group > span {
    display: block;
    font-size: 16px;
    border-bottom: 2px solid #ffffff;
    margin-left: 5px;
    margin-right: -5px;
    padding-bottom: 3px;
}

td.midi > span {
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: inline-block;
}

td.select {
    align-items: center;
    justify-content: center;
    padding: 0;
    text-align: center;
}

ul.additional-items {
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

ul.additional-items.mini {
    display: inline-flex;
}

ul.additional-items li {
    margin: 2px;
    padding: 2px;
    font-size: 0.8em;
    background: #eeeeee;
    white-space: nowrap;
}

.record-summary {
    display: flex;
    flex-direction: column;
}

.record-summary .codes {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.record-summary .codes > * {
    white-space: nowrap;
}

tr.row-group-start {
    border-top: 1px dotted rgba(0, 0, 0, 0.3);
}

td.col-group-start {
    border-left: 2px solid rgba(0, 0, 0, 0.3);
}
/*
	CONTEXT SPECIFIC PRESENTATION 
*/
.popup th {
    font-size: 16px;
}

.popup td {
    font-size: 15px;
}

.popup table thead select {
    font-size: 14px;
}

table.stealth {
    zoom: 95%;
}

table.compact {
    zoom: 90%;
}

.stealth th {
    text-align: left;
    font-size: 16px !important;
    font-weight: 600 !important;
    padding: 5px;
    position: relative;
    background: #99ada2;
    color: #ffffff;
}

.stealth thead input,
.stealth thead select {
    font-size: 16px !important;
    font-weight: 600 !important;
    height: 32px !important;
}

.stealth th button,
.stealth .multi-filters button {
    height: 32px !important;
}

.stealth .generic_pager > * {
    font-weight: 100 !important;
}

.stealth .generic_pager input,
.stealth .generic_pager button,
.stealth .generic_pager a {
    height: 24px !important;
    padding: 0 5px 0 5px;
}

.stealth .long-text-container > span {
    font-size: 14px;
    white-space: pre-wrap;
}

.stealth input[type=text].filter {
    height: inherit;
}

.stealth input[type=text].filter {
    height: inherit;
}


/*
    UTILITY 
*/
.atomic {
    white-space: nowrap;
}

/*
    JQUERY UI FIXES
*/
.ui-widget table th {
    font-size: unset;
    background-color: inherit;
    color: inherit;
}

tbody {
    vertical-align: unset;
}

@media screen and (max-width:960px) {

    thead.mobile {
        display:table-header-group;
    }

    .mobile-table-header {
        display: table-row;
        background:#008295;
        color:#FFFFFF;
    }
}

@media screen and (max-width:640px) {

    table.catch-return-status tbody tr td.period, table.catch-return-status tbody tr td.fishing-area, table.catch-return-status tbody tr td.permit-status, table.catch-return-status tbody tr td.validation-status {
        width: 100%;
    }
    .list-header,
    .list-vessel-summary {
        flex-wrap:wrap;
    }

    thead {
            background: #008295;
    }

    thead tr,
    tbody tr {
        flex-wrap: wrap;
        display: flex;
    }

    body, input, select, textarea, td, th {
        width: 100%;
    }

    td.select {
        text-align:left;
        padding:10px;
    }

    td, th {
        padding: 8px 12px;
    }

    permit-search td div.contact-name,
    permit-search td, 
    permit-search th {
        display:flex;
        gap:8px;
        flex-wrap: wrap;
    }
}
/*
	POPUPS / DIALOGS ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/
.popup {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    min-height: 100vh;
    z-index: 20;
    height:100vh;
}

.popup.confirm-logout {
    display: flex;
    justify-content: center;
    align-items: center;
}

.popup:before {
    content: ' ';
    background: rgba(221,226,232,0.9);
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    min-height: 100%;
    z-index: -1;
}

.popup > div {
    position: fixed;
    top: 5%;
    right: 10%;
    left: 10%;
    min-height: 80vh;
    height:100vh;
    overflow-y:auto;
    padding-bottom: 40px;
}

/*
    Provides a specific medium sized popup in case the defaults are overridden
*/
.popup.midi > div {
    top: 5%;
    right: 10%;
    left: 10%;
}

/*
    Mini popup for short confirmation messages
*/
.popup.mini > div {
    top: 10%;
    left: 20%;
    right: 20%;
    min-height: 50vh;
}

.popup.confirm-logout > div {
    height: 50vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.popup.fullscreen > div {
    top: 0;
    right: 0;
    left: 0;
    min-height: 100vh;
}

.popup > div > h2 {
    position: relative;
    background: #202020;
    color: #ffffff;
    padding: 10px;
    margin-bottom: 0;
    height: 32px;
}

.popup > div > h2 > button.close {
    position: absolute;
    right: 0;
    top: 0;
    height: 52px;
    width: 52px;
    padding: 0;
    justify-content: center;
    margin:0;
}

/*
.popup > div > h2:before {
    font-family: Material Icons;
    content: 'edit';
    position: relative;
    top: -2px;
    font-size: 1.4em;
    vertical-align: middle;
    padding-right: 10px;
}
    */

.popup.overlay.security > div > h2:before {
    content: 'security';
}

.popup.overlay.info > div > h2:before {
    content: 'info';
}

.popup.overlay.delete > div > h2:before {
    content: 'delete';
}

.popup.overlay.warning > div > h2:before {
    content: 'warning';
}

.popup.overlay.session-timeout > div > h2:before {
    content: 'timer_off';
}

/*
	TOOLBARS -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/
.toolbar {
    display: flex;
    flex-wrap: wrap;
}

.toolbar.owned-by-title {
    position: absolute;
    right: 10px;
    top: 10px;
}

.popup .toolbar.owned-by-title {
    right: 60px;
    top: 5px;
}

.popup > div > .toolbar {
    background: #404040;
}

.toolbar li {
    display: inline-flex;
    margin-right: 10px;
}

.toolbar li:last-child {
    margin-right: 0;
}

/*
	UBIQUITOUS JQUI -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/
input[type=text].hasDatepicker + .icon_datepicker {
    padding-left: 5px;
    color: #298296;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 50%;
    padding: 0.2em;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    display: flex;
    justify-content: center;
    align-items: stretch;
}

.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
    background-image: unset !important;
    left: unset !important;
    top: unset !important;
    margin: 0 !important;
    position: static !important;
    width: unset !important;
    height: unset !important;
}

.ui-datepicker .ui-datepicker-prev span:before,
.ui-datepicker .ui-datepicker-next span:before {
    font-family: 'Font Awesome 5 Pro';
    font-size: 1.75em;
    display: inline-block;
    text-indent: 99999px;
}

.ui-datepicker .ui-datepicker-prev span:before {
    content: '\f053';
}

.ui-datepicker .ui-datepicker-next span:before {
    content: '\f054';
}

.ui-datepicker-container {
    white-space: nowrap;
}

/*
	ANIMATIONS ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
*/
@keyframes waiter {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(359deg);
        transform: rotate(359deg);
    }
}

.waiter:before {
    display: inline-block;
    font-family: Material Icons;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -webkit-animation: fa-spin 2s infinite linear;
    animation: fa-spin 2s infinite linear;
    content: 'camera';
    font-style: normal;
    font-weight: normal;
}

.waiter.wait-large:before,
.popup .waiter:before {
    font-size: 64px;
}

.waiter.content-wait {
    text-align: center;
    margin: 40px;
}

.waiter.content-wait:before {
    font-size: 64px;
}

table.waiting {
    overflow: hidden;
}

table.waiting thead:before {
    content: ' ';
    position: absolute;
    background: rgba(255, 255, 255, 0.5);
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.waiting .waiter-bar,
.waiter-bar.waiting {
    background: linear-gradient(315deg, #3d9292, #ffffff 0%, #3d9292);
    animation: PagerWaitingAnimation 1s ease infinite;
    height: 15px;
}

.waiting .pager-row .waiter-bar {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 8px;
}

input[type=text].waiting {
    background-image: url('data:image/gif;base64,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');
    background-repeat: no-repeat;
    background-size: 24px 24px;
    background-position: right 10px center;
    transition: none;
}

.loading {
    position: relative;
    display: inline-flex;
    width: 4.25em;
    box-sizing: content-box !important;
    padding: 10px;
    font-size: 64px;
}

.element-loading-placeholder {
    display: none;
    position: absolute;
}

.element-loading .element-loading-placeholder {
    background: rgba(255, 255, 255, 0.9);
    width: 100%;
    z-index: 1;
    height: 100%;
    display: flex;
    align-items: center;
    top: 0;
    box-sizing: border-box;
}

.loading:before,
.element-loading .element-loading-placeholder:before {
    content: 'Loading';
}

.loading:after,
.element-loading .element-loading-placeholder:after {
    content: '...';
    animation: LoadingAnimation 2s linear infinite;
    overflow: hidden;
    flex-shrink: 0;
    flex-grow: 0;
}


.waiter.wait-cards:before,
.waiter.wait-cards:after {
    display: block;
    content: ' ';
    background: rgba(0, 0, 0, 0.05);
    width: 50%;
    height: 25vh;
    background: linear-gradient(315deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.02) 0%, rgba(0, 0, 0, 0.05));
    animation: PlaceholderWaitingAnimation 1s linear infinite;
}

.waiter.wait-cards:after {
    margin-top: 1em;
}

/* ================================================================================================================================================================ */
/* ERRORS */
/* ================================================================================================================================================================ */
.efs {
    padding: 0 !important;
    margin: 0 !important;
    flex-basis: 100%;
}

.efs:empty {
    display: none;
}

.ef {
    display: none;
    padding: 0.5em 1rem 0.6rem 1rem;
    color: #ffffff;
    border-radius: 3px;
    margin-bottom: 0.25em;
    background: #e4002b;
}

.wf {
    display: none;
    padding: 0.5em;
    background: rgb(249, 197, 0);
    color: #000000;
    border-radius: 2px;
    margin-bottom: 0.25em;
}

.if {
    display: none;
    padding: 5px !important;
    background: #4f1eff;
    color: #ffffff;
    border-radius: 2px;
    margin-bottom: 5px;
}

.if:before {
    font-family: "Font Awesome 5 Pro";
    content: '\f05a';
    padding-right: 10px;
}

.ef.static,
.wf.static,
.if.static {
    display: inherit;
}

.login-errors.efs .efs.static {
    color: #FFFFFF;
    background: #ff7f50;
    cursor: pointer;
    transition: 0.7s;
    font-size: 1.2rem;
    font-weight: 600;
    display: block;
    margin: 1rem 0!important;
    padding: 0.7rem!important;
    text-decoration: none;
    border-radius: 3px;
}

/*
    ========================================================================================================================================================================================
*/
.flash-message {
    position: fixed;
    top: 0;
    text-align: center;
    font-size: 24px;
    border: 1px solid #f9ed81;
    border-top: none;
    background: #f9ed81;
    z-index: 1000;
    transition: all ease 3s;
    opacity: 0;
    width: 800px;
    margin-left: -400px;
    left: 50%;
    height: 0;
    overflow: hidden;
}

.flash-message.dock-bottom {
    bottom: 0;
    top: unset;
}

.flash-message > * {
    display: inline-block;
    padding: 33px;
}

.flash-message.show {
    transition: all ease 0.2s;
    opacity: 1;
    height: 100px;
}

.flash-message:before {
    font-family: 'Material Icons';
    content: '\e88e';
    padding-right: 20px;
    font-size: 48px;
    vertical-align: middle;
}

.flash-message.fm-owned span {
    padding: 0;
}

.flash-message.fm-owned {
    position: absolute;
    top: 0;
    right: 0;
    height: 40px;
    font-size: 22px;
    background: transparent;
    border: none;
    width: unset;
    padding: 0;
    margin: 0;
}

.flash-message.fm-owned:before {
    content: none;
}

.flexy:not(tr),
.iflexy:not(tr) {
    display: flex;
    align-items: center;
}

.iflexy:not(tr) {
    display: inline-flex;
}

.flexy:not(tr),
.iflexy:not(tr) > :not(:last-child) {
    margin-right: 0.5em;
}

/*
    ========================================================================================================================================================================================
*/
.pager {
    width: 100%;
    display: flex;
    align-items: center;
    margin:0.5rem 0;
}
.pager span,
.pager b {
    color:#FFFFFF;
}

.pager > * {
    display: flex;
    align-items: center;
}

.pager .pager-pages {
    margin-left: 20px;
    margin-right: 10px;
}

.pager .pager-info {
    margin-left: 10px;
    margin-right: 20px;
}

.pager .pager-pages > *:not(:last-child),
.pager .pager-info > *:not(:last-child) {
    margin-right: 10px;
}

.pager > .goto-first:before {
    content: 'First';
}

.pager > .goto-prev:before {
    content: 'Prev';
}

.pager > .goto-next:before {
    content: 'Next';
}

.pager > .goto-last:before {
    content: 'Last';
}

.pager input[type=text] {
    background: var(--control-bg) !important;
    color: var(--control-fg) !important;
    text-align: center;
    width: 4em !important;
    font-size: 1rem;
    min-height:32px;
    padding:0.25rem 0.5rem;
    border: none;
}

.waiting .pager,
.pager.waiting {
    animation: PagerWaitingAnimation 2s infinite;
}
/* ================================================================================================================================================================ */
/* ANIMATIONS */
/* ================================================================================================================================================================ */
@keyframes PagerWaitingAnimation {
    0% {
        background: linear-gradient(315deg, #41427f, #ffffff 0%, #41427f)
    }

    10% {
        background: linear-gradient(315deg, #41427f, #ffffff 10%, #41427f)
    }

    20% {
        background: linear-gradient(315deg, #41427f, #ffffff 20%, #41427f)
    }

    30% {
        background: linear-gradient(315deg, #41427f, #ffffff 30%, #41427f)
    }

    40% {
        background: linear-gradient(315deg, #41427f, #ffffff 40%, #41427f)
    }

    50% {
        background: linear-gradient(315deg, #41427f, #ffffff 50%, #41427f)
    }

    60% {
        background: linear-gradient(315deg, #41427f, #ffffff 60%, #41427f)
    }

    70% {
        background: linear-gradient(315deg, #41427f, #ffffff 70%, #41427f)
    }

    80% {
        background: linear-gradient(315deg, #41427f, #ffffff 80%, #41427f)
    }

    90% {
        background: linear-gradient(315deg, #41427f, #ffffff 90%, #41427f)
    }

    100% {
        background: linear-gradient(315deg, #41427f, #ffffff 100%, #41427f)
    }
}

@keyframes PlaceholderWaitingAnimation {
    0% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 0%, rgba(0, 0, 0, 0.05))
    }

    10% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 0%, rgba(0, 0, 0, 0.05))
    }

    20% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 20%, rgba(0, 0, 0, 0.05))
    }

    30% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 20%, rgba(0, 0, 0, 0.05))
    }

    40% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 40%, rgba(0, 0, 0, 0.05))
    }

    50% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 40%, rgba(0, 0, 0, 0.05))
    }

    60% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 60%, rgba(0, 0, 0, 0.05))
    }

    70% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 60%, rgba(0, 0, 0, 0.05))
    }

    80% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 80%, rgba(0, 0, 0, 0.05))
    }

    90% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 80%, rgba(0, 0, 0, 0.05))
    }

    100% {
        background: linear-gradient(90deg, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.075) 90%, rgba(0, 0, 0, 0.05))
    }
}

@keyframes fadeInAnimation {
    0% {
        display: none;
        opacity: 0;
    }

    1% {
        opacity: 0;
        display: inherit;
    }

    100% {
        opacity: 1;
        display: inherit;
    }
}

@keyframes fadeOutAnimation {
    0% {
        opacity: inherit;
        display: inherit;
    }

    99% {
        opacity: 0;
        display: inherit;
    }

    100% {
        opacity: 0;
        display: none;
    }
}

@keyframes LoadingAnimation {
    0% {
        width: 0;
    }

    100% {
        width: 1.25em;
    }
}

@media screen and (max-width:960px) {
    .popup > div {
        position: relative;
        top: 0;
        right: unset;
        left: 0;
        min-height: unset;
    }
}

@media screen and (max-width:640px) {
    .pager {
        flex-wrap: wrap;
    }
}

@media screen and (max-height:860px) {
    .popup.overlay.confirm > div {
        top: 0;
        right: 0%;
        left: 0%;
        border-radius:0;
    }
}
.pager .pager-action:before {
    font-family: 'Font Awesome 5 Pro';
    font-weight: 900;
}

.pager > .goto-first:before {
    content: '\f048';
}

.pager > .goto-prev:before {
    content: '\f355';
}

.pager > .goto-next:before {
    content: '\f356';
}

.pager > .goto-last:before {
    content: '\f051';
}

.popup > div > h2 .close {
    background: none !important;
    color: #ffffff !important;
    outline: none !important;
    border: none !important;
}

.popup > div > h2 .close:before {
    font-family: 'Font Awesome 5 Pro';
    font-weight: 500;
    content: '\f057';
    font-size: 32px;
}

.waiter:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f251';
}

.form-fields .section > div {
    position: relative;
}

.form-fields .section > div label {
    position: relative;
    color:#7a7a7a;
}

.form-fields .section > div label.attention {
    color: #d90303
}


.cfaf-application-emailer .emailer_popup h1 {
    background: #00A6AA !important;
}

.cfaf-application-emailer .emailer_popup .cfaf-toolbar {
    background: #00A6AA !important;
}

.cfaf-application-emailer .emailer_popup h1 > * {
    font-size: 24px !important;
    padding: 10px !important;
    font-weight: bold;
}

.cfaf-application-emailer .emailer_popup a.close {
    padding: 0 !important;
    padding-top: 5px !important;
}

.cfaf-application-emailer .emailer_popup a.close i {
    font-size: 40px !important;
}

.flash-message:before {
    font-family: 'Font Awesome 5 Pro';
    content: '\f05a'
}

.ui-multi-lookup > ul > li {
    background: #f0f0f0;
    padding: 5px;
    margin-bottom: 4px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ui-multi-list-delete {
    margin-left: auto;
    margin-right: 5px;
}

.cfaf-application-emailer .emailer_popup .email_option {
    flex-wrap: wrap;
}

.cfaf-application-emailer .emailer_popup .email_option .field_help {
    width: 100%;
}

.cfaf-application-emailer .edit_controls .edit_area_left h2 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
