body.no_curtain div#curtain {
    display: none;
}

body.no_curtain div#header,
body.no_curtain div#section_bar_container {
    z-index: auto;
}

html, body {
    margin: 0;
    padding: 0;
    font-family: Calibri, Sans-Serif;
}

body {
    background: #fcfdfe;
}

div#header {
    height: 72px;
    line-height: 72px;
    background-color: #2a5690;
    color: white;
    position: relative; /* So that z-index applies */
    z-index: 11;
    padding: 40px 20px;
}

div#header img#immigo-logo {
    margin-left: 106px;
}

div#header img {
    vertical-align: middle;
    margin: 0 20px;
}

div#header .header-version {
    position: absolute;
    right: 10px;
    bottom: 0px;
    line-height: 20px;
    font-size: 10px;
    color: #85a3cb;
}

div#header .env-banner {
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    line-height: 24px;
    padding: 5px;
    color: rgba(255, 255, 255, 0.3);
    box-shadow: 0px 2px 5px rgb(0 0 0 / 40%);
}
div#header .env-banner.dev {
    background-color: #236038;
}
div#header .env-banner.staging {
    background-color: #937e38;
}

div#section_bar_container {
    height: 58px;
    position: relative;
    overflow: hidden;
    width: 100%;
    z-index: 11;
}

div#section_bar_container div.scroller {
    height: 58px;
    width: 100%;
    overflow: hidden;
}

div#section_bar_container .scroll_left {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 50px;
    z-index: 1;
}

div#section_bar_container .scroll_right {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 50px;
    z-index: 1;
}

ul#section_bar {
    background-color: #2a5690;
    color: white;
    display: block;
    margin: 0;
    height: 46px;
    white-space: nowrap;
    padding: 0 40px;
    overflow: visible;
}

ul#section_bar li {
    display: inline-block;
    font-weight: bold;
    margin: 0;
    border-bottom: 6px solid black;
    background-color: #2a5690;
    height: 40px;
    padding: 0 20px;
    min-width: 100px;
    text-align: center;
    line-height: 46px;
    position: relative;
}

ul#section_bar li:hover {
    background-color: #7aacd8;
    cursor: pointer;
}

/*ul#section_bar li#section_home { border-bottom-color: #bfe1ff; }*/
ul#section_bar li#section_home {
    border-bottom-color: #6cc5ff;
}

ul#section_bar li#section_case {
    border-bottom-color: #ee436c;
}

ul#section_bar li#section_company {
    border-bottom-color: #fff781;
}

ul#section_bar li#section_applicant {
    border-bottom-color: #95e8b8;
}

ul#section_bar li#section_billing {
    border-bottom-color: #8bcdec;
}

ul#section_bar li#section_payment {
    border-bottom-color: #8bcdec;
}

ul#section_bar li#section_fee {
    border-bottom-color: #c791bf;
}

ul#section_bar li#section_supplier {
    border-bottom-color: #98a0fd;
}

ul#section_bar li#section_subuser {
    border-bottom-color: #ffa655;
}

ul#section_bar li#section_report {
    border-bottom-color: #799ec0;
}

ul#section_bar li#section_sla {
    border-bottom-color: #5cded4;
}

ul#section_bar li#section_notificationmessage {
    border-bottom-color: #c0e0e0;
}

ul#section_bar li#section_quest {
    border-bottom-color: #e035a3;
}

ul#section_bar li a {
    text-decoration: none;
    color: white;
    display: block;
    font-size: 1.07em;
}

ul#section_bar li div.section_arrow {
    width: 20px;
    height: 12px;
    position: absolute;
    bottom: -18px;
    left: 50%;
    display: none;
}

ul#section_bar li div.section_arrow div {
    width: 20px;
    height: 12px;
    position: relative;
    left: -10px;
}

ul#section_bar li#section_home div.section_arrow div {
    /*background: url("../section_arrow_iceblue.6f66068dbb6b.png");*/
    background: url("../section_arrow_blue2.a52d37acec32.png");
}

ul#section_bar li#section_case div.section_arrow div {
    background: url("../section_arrow_red2.7f5e2e1d0bee.png");
}

ul#section_bar li#section_applicant div.section_arrow div {
    background: url("../section_arrow_green.adfbd6edab74.png");
}

ul#section_bar li#section_company div.section_arrow div {
    background: url("../section_arrow_yellow.76adc2b5f2a2.png");
}

ul#section_bar li#section_supplier div.section_arrow div {
    background: url("../section_arrow_aqua.23b3dd7b4ff8.png");
}

ul#section_bar li#section_billing div.section_arrow div,
ul#section_bar li#section_payment div.section_arrow div {
    background: url("../section_arrow_invoice_blue.2ff08e2e5574.png");
}

ul#section_bar li#section_fee div.section_arrow div {
    background: url("../section_arrow_purple.2a1dd4064f3a.png");
}

ul#section_bar li#section_report div.section_arrow div {
    background: url("../section_arrow_darkblue.f5991fb574fc.png");
}

ul#section_bar li#section_subuser div.section_arrow div {
    background: url("../section_arrow_salmon.94795ef30138.png");
}

ul#section_bar li#section_sla div.section_arrow div {
    background: url("../section_arrow_aqua_light.484d17357b48.png");
}

ul#section_bar li#section_notificationmessage div.section_arrow div {
    background: url("../section_arrow_grey.ed63410d853b.png");
}

ul#section_bar li#section_quest div.section_arrow div {
    background: url("../section_arrow_pink.b30ac3bbb34b.png");
}

h1, h2, h3, h4, th {
    font-family: Calibri, Sans-Serif;
    color: #37495d;
}

h1 {
    font-weight: normal;
    font-size: 2em;
}

h2 {
    font-size: 1.5em;
}

h3 {
    font-size: 1.3em;
}

h4 {
    font-size: 1.1em;
}

th {
    font-size: 1em;
}

div#main {
    margin: 0 106px;
}

div#controls,
div#controls_placeholder {
    overflow: hidden;
    padding-right: 8px;
    /* The bottom padding is so you can see all of the box-shadow */
    padding-bottom: 14px;
    float: right;
    z-index: 10;
    border: 8px solid transparent;
    border-radius: 4px;
}

div#controls_placeholder {
    display: none;
}

div#controls.displaced {
    border: 8px solid #f2f2f2;
    padding-top: 14px;
    padding-left: 6px;
    background-color: #f2f2f2;
    position: fixed;
    top: 8px;
    right: 106px;
    opacity: 1.0;
    box-shadow: -2px 5px 5px #999;
}

div#controls.displaced #delete_button {
    display: none;
}

div#controls .ui_button {
    float: right;
}

[id^="filters_popup"] .ui_button {
    float: none;
}

div.field-group {
    padding: 1em;
    background-color: #f0f0c0;
}

div.field {
    margin: 1.1em 0;
}

div.field label,
tr.field label,
p label {
    min-width: 15em;
    display: inline-block;
    font-weight: bold;
    color: #37495d;
}

table.object_list {
    border-collapse: collapse;
    background-color: #fcfdff;
    font-size: 0.96em;
}

table.object_list th,
table.object_list td {
    padding: 12px;
}

table.object_list th {
    background-color: #f0f0fa;
    text-align: left;
}

table.object_list tr:nth-child(even) {
    background-color: #fcfdff;
}

table.object_list tr:nth-child(odd) {
    background-color: #f0f0fa;
}


table.object_list tbody.sortable tr:nth-child(odd) {
    background-color: #fcfdff;
}

table.object_list tbody.sortable tr:nth-child(even) {
    background-color: #f0f0fa;
}


/* tbody.note_rows is used to prepend notes in kwik saves, and the counter
 * starts at the first row after the header etc. */
tbody.note_rows tr:nth-child(odd) {
    background-color: #fcfdff;
}

tbody.note_rows tr:nth-child(even) {
    background-color: #f0f0fa;
}

table.object_list ul {
    margin-left: 10px;
    padding-left: 10px;
}

table.object_list li {
    margin: 0;
    padding: 0;
}

div#content_wrapper {
    background-color: white;
    margin-bottom: 50px;
}

.instructions {
    font-family: serif;
    font-style: italic;
    font-size: 1.12em;
}

ul.instructions li {
    margin-top: 0.8em;
    margin-bottom: 0.8em;
}

table.filter_set td {
    padding: 5px;
}

table.filter_set label {
    color: #37495d;
    font-weight: bold;
}

div#tools_container {
    float: right;
    margin-right: 2em;
}

div#tools_container a {
    font-weight: bold;
    color: white;
    text-decoration: none;
    margin-left: 0.5em;
}

div.progress_bar {
    position: relative;
    border: 1px solid white;
    border-radius: 10px;
}

div.progress_bar div.completed {
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 10px;
}

div.progress_bar div.completed.red {
    background-color: #ff709b; /* red */
}

div.progress_bar div.completed.amber {
    background-color: #ffec99;
}

div.progress_bar div.completed.green {
    background-color: #b6ffaa; /* greeen */
}

div.progress_bar div.tooltip {
    visibility: hidden;
    position: absolute;
    z-index: 1;
    top: 10px;
    left: 5px;
    padding: 2px;
    background-color: #ffffca;
    color: black;
    border: 1px solid;
}

div.progress_bar:hover div.tooltip {
    visibility: visible;
}

table#steps tr.entry {
    border-bottom: 2px solid #149737;
}

table#steps tr.work {
    border-bottom: 2px solid #116f93;
}

table#target_dates td {
    padding: 5px;
}

table#target_dates td.entry {
    color: #149737;
}

table#target_dates td.work {
    color: #116f93;
}

table tr.shared_with_applicant {
    background-color: #d1fbe0;
    color: black;
}

tr.shared_with_applicant td {
    background-color: #d1fbe0;
    border-bottom: 2px solid white;
}

table tr.shared_with_company {
    background-color: #fffc94;
    color: black;
}

tr.shared_with_company td {
    background-color: #fffc94;
    border-bottom: 2px solid white;
}

tr.document td.guru_doc {
    background-color: #cee5fd;
    border-bottom: 2px solid white;
}

tr.shared td:first-child.guru_doc {
    background-color: #cee5fd;
    border-bottom: 2px solid white;
}

@keyframes warn-pink {
    from {
        background-color: rgba(252, 194, 221, 0.0);
    }
    50% {
        background-color: rgba(252, 194, 221, 1.0);
    }
    to {
        background-color: rgba(252, 194, 221, 0.0);
    }
}

@keyframes warn-pinker {
    from {
        background-color: rgba(252, 174, 210, 0.0);
    }
    50% {
        background-color: rgba(252, 174, 210, 1.0);
    }
    to {
        background-color: rgba(252, 174, 210, 0.0);
    }
}

tr.document td.warn_expiry {
    animation: warn-pink 4s infinite;
    color: #505050;
    font-weight: bold;
    border-bottom: 2px solid white;
}

tr.document td.warn_renew {
    animation: warn-pink 4s infinite 2s;
    color: #505050;
    font-weight: bold;
    border-bottom: 2px solid white;
}

tr.fee td.warn_overdue {
    animation: warn-pinker 3s infinite;
    color: #505050;
    font-weight: bold;
    border-bottom: 2px solid white;
}

@keyframes prompt-pink {
    from {
        background-color: rgba(249, 214, 238, 0.0);
    }
    50% {
        background-color: rgba(249, 214, 238, 1.0);
    }
    to {
        background-color: rgba(249, 214, 238, 0.0);
    }
}

tr.document td.prompt_upload {
    animation: prompt-pink 4s infinite;
    color: #505050;
    font-weight: bold;
    border-bottom: 2px solid white;
}

table.object_list td.status_red {
    background-color: #ff709b;
    border-bottom: 2px solid white;
}

table.object_list td.status_amber {
    background-color: #ffeca8;
    border-bottom: 2px solid white;
}

table.object_list td.status_green {
    background-color: #c4fbc3;
    border-bottom: 2px solid white;
}

table.object_list td.status_cyan {
    background-color: #c5f9f7;
    border-bottom: 2px solid white;
}

table.object_list td.status_blue {
    background-color: #c0e2ff;
    border-bottom: 2px solid white;
}

table.object_list td.status_grey {
    background-color: #e0e0f5;
    border-bottom: 2px solid white;
}

table.object_list td.billing_amount {
    font-weight: bold;
}

td.billing_amount.zero {
    color: #ee145e;
}

html, body {
    position: relative;
}

div#curtain {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 11;

    background-color: #f2f2f2;

    font-size: 32px;
    color: #777;
    text-align: center;
    padding-top: 100px;
}

div.tab_handle.new_messages {
    background: url("../envelope.88901fd64c87.png") no-repeat center right 30px;
}

a#new_messages {
    display: inline-block;
    width: 32px;
    height: 32px;
    margin: 0 2px 0 0;
    position: relative;
    top: 10px;
    background: url("../envelope-inv.3d93bda5fc3e.png");
}

a#new_messages.disabled {
    display: none;
}

div#action_panel {
    background-color: #ddddde;
    padding: 1em;
    display: none;
}

div#action_panel.active {
    display: block;
}

div.fragment_list a {
    display: block;
}

tr.shared td:first-child {
    background: url("../../chainlink.c20671c1f81d.png") right 4px bottom 4px no-repeat;
}

.hint {
    position: fixed;
    top: 10px;
    right: 10px;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    background: white;
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
    color: red;
}

.hint.hidden {
    display: none;
}

.ex-dialog .expiration_session_popup {
    min-height: auto !important;
}

.ex-dialog .expire_seconds {
    color: #d50a0a;
}

.send-request-button[disabled] {
    background: grey;
}

.ex-dialog {
    width: 300px !important;
}

.ex-dialog h3, .ex-dialog h4 {
    margin: 0 0 15px 0;
}

.ex-dialog h4:last-child {
    margin-bottom: 0;
}

.ex-dialog p:nth-child(2) {
    color: #ff6f6f;
}

.ex-dialog .ui-dialog-titlebar-close:focus-visible {
    outline: none !important;
}

.ex-dialog .ui-button-text {
    outline: none !important;
    background: none !important;
    border: none !important;
}

.overlay {
    top: 0;
    width: 100%;
    position: fixed;
    height: 100%;
    background: black;
    opacity: 0.7;
    z-index: 100;
}

.overlay__hidden {
    height: 0;
}

.inline-icon {
	display: inline-block;
	width: 16px;
	height: 16px;
}
.green-plus-small {
	background: url("green-plus-small.2cc9be3cd84c.png");
}
.red-minus-small {
    background: url("red-minus-small.c2acce532c1a.png");
}
.sort-arrow-small {
	background: url("sort-arrow-small.9812ca924ea5.png");
}
.chainlink {
	width: 44px;
	height: 26px;
    background: url("../../chainlink.c20671c1f81d.png")
}