html,
body {
    min-height: 100vh;
}

* {
    /*border-radius: 0 !important;*/
}

body {
    padding-top: 100px;
    padding-bottom: 100px;
    background: #fafafa;
    color: #333;
}

.btn-link,
a {
    color: #003b7e;
}

.btn-primary {
    background-color: #013b7e !important;
    border-color: #013b7e !important;
}

.bg-primary {
    background-color: #013b7e !important;
}

.text-primary {
    color: #013b7e !important;
}

.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover {
    background-color: #012957 !important;
    border-color: #012957 !important;
}

#navigation-top {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 70px;
    border-bottom: 1px solid #ddd;
    padding: 10px;
    z-index: 1000;
    background: #fff;
}

#navigation-top a {
    display: inline-block;
    vertical-align: middle;
    margin-right: 40px;
}

#navigation-top p {
    font-size: 17px;
    font-weight: bold;
    color: #003b7e;
    text-transform: uppercase;
}

#footer-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    height: 40px;
    z-index: 1000;
    border-top: 1px solid #ddd;
    background: #fff;
}

#table-language-select tr td {
    width: 25%;
    height: 70px;
    vertical-align: middle;
}

#table-language-select tr td:hover {
    background-color: #eee;
}

#table-language-select tr td img {
    margin-right: 20px;
    width: 60px;
    height: 40px;
}

#feedback-wrapper {
    position: fixed;
    top: 27vh;
    right: 0;
    text-align: right;
    font-size: 0;
    width: 60px;
}

#feedback-wrapper button {
    position: relative;
    width: 50px;
    border-top-right-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    display: inline-block;
}

#feedback-wrapper button.-height-50 {
    height: 50px;
}

#feedback-wrapper button.-height-100 {
    height: 50px;
}

#feedback-wrapper button:hover {
    width: 60px;
}

#feedback-wrapper .badge.badge-danger {
    position: absolute;
    top: -0.5em;
    left: -0.5em;
}

.modal-content {
    background-color: #fafafa;
}

#iframe-feedback,
#iframe-notice {
    border: 0;
    margin: 0;
    padding: 0;
    width: 100%;
    min-height: 690px;
}

body.notice,
body.feedback {
    padding: 0 !important;
    margin: 0 !important;
}

body.notice .hidden-modal,
body.feedback .hidden-modal {
    display: none !important;
}

body.feedback textarea {
    min-height: 10em;
}

body.notice textarea {
    width: 100%;
}

.tab-content {
    border-left: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
    min-height: 50vh;
    background-color: #fff;
}

#modal-import-loading .modal-content {
    background-color: transparent;
    border: 0;
}

/* hide some dropdowns TODO change field type */
#meal_period_edit_period_start select:nth-of-type(1),
#meal_period_edit_period_start select:nth-of-type(2),
#meal_period_edit_period_start select:nth-of-type(3),
#meal_period_edit_period_end select:nth-of-type(1),
#meal_period_edit_period_end select:nth-of-type(2),
#meal_period_edit_period_end select:nth-of-type(3),
#meal_period_create_period_start select:nth-of-type(1),
#meal_period_create_period_start select:nth-of-type(2),
#meal_period_create_period_start select:nth-of-type(3),
#meal_period_create_period_end select:nth-of-type(1),
#meal_period_create_period_end select:nth-of-type(2),
#meal_period_create_period_end select:nth-of-type(3) {
    display: none;
}

.mb-30 {
    margin-bottom: 30px;
}

#language-select {
    position: relative;
    max-height: 1em;
    margin-left: 8px;
    top: -2px;
}

.table-kpis td:nth-of-type(2),
.table-kpis th:nth-of-type(2) {
    white-space: nowrap;
}

.trigger {
    font-size: 0;
}

.triggers > .row > .col-4 > div {
    min-height: 3em;
    font-size: 0.8em;
}

.schedule-preview-table {
    width: 100%;
}

.schedule-preview-table tr td {
    width: calc(100% / 24);
    height: 20px;
    border-top: 1px solid #eee;
    font-size: 0.7em;
    color: #666;
}

.font15em {
    font-size: 1.5em;
}

.btn.btn-warning {
    background-color: #f9ae00;
}

.modal-dialog-scrollable {
    height: 800px;
    min-height: 800px;
    max-height: 800px;
}

@media (min-width: 992px) {
    .container.container-snapshot {
        background: #fff;
        padding: 40px;
        box-shadow: 5px 5px 10px #999;
    }
}


body.dashboard_details_snapshot,
body.dashboard_overall_snapshot {
    background-color: #ccc;
    padding-top: 10vh;
}

body.dashboard_details_snapshot #navigation-top,
body.dashboard_overall_snapshot #navigation-top,
body.dashboard_details_snapshot #feedback-wrapper,
body.dashboard_overall_snapshot #feedback-wrapper {
    display: none;
}

.transedit {
    outline: 2px dotted red;
    cursor: pointer;
}

.transedit:hover {
    color: white;
    background: green;
}

#cookie-banner {
    padding-top: 40px;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100vw;
    min-height: 50vh;
    background-color: rgba(255, 255, 255, 1);
    border-top: 1px solid #ddd;
}

#loader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(255, 255, 255, 0.5);
    z-index: 10000;
}

.flag {
    width: 30px;
    height: 20px;
    margin-right: 20px;
}

.flag-small {
    width: 24px;
    height: 16px;
}

.table-hover-blue {
    color: #343A40;
}

.table-hover-blue tr td {
    vertical-align: middle;
    color: #343A40;
}

.table-hover-blue tr th {
    text-transform: uppercase;
    color: #6C757D;
    font-size: 12px;
    font-weight: bold;
}

/*Set Border on tr, not td/th*/
.table-hover-blue tr {
    border-top: 0;
    border-bottom: 1px solid #dee2e6;
}


.table-hover-blue tr:hover {
    background-color: #EBF3FE;
}

.table-hover-blue tr.active td {
    background-color: #EBF3FE;
}


.table-hover-blue tr .toggle-up-state {
    display: none;
}

.table-hover-blue tr.active .toggle-down-state {
    display: none;
}

.table-hover-blue tr.active .toggle-up-state {
    display: inline-block;
}

.status-light {
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #CCC;
}

.status-light.-red {
    background-color: #DC3545;
}

.status-light.-green {
    background-color: #28A745;
}

.status-pill,
.status-pill.-none {
    background-color: #E9EBEC;
    color: #6C757D;
    display: inline-block;
    border-radius: 20px;
    height: 40px;
    padding: 0.5em 1em;
}

.status-pill.-draft {
    background-color: #FFECDC;
    color: #BD5D0F;
}

.status-pill.-preparation {
    background-color: #E5F1FF;
    color: #003E80;
}

.status-pill.-measure {
    background-color: #DFF2E3;
    color: #18662B;
}

.-text-blue {
    color: #013B7E;
}

tr.-height-80 td,
.-height-80 {
    height: 80px;
}

.no-hover:hover {
    background-color: transparent !important;
}

.bg-light-gray {
    background: #EEF0F2;
}

.wrapper-compare-imports {
    position: fixed;
    display: none;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
    z-index: 1010;
    box-shadow: 0 -4px 12px rgba(72, 89, 102, 0.16);
}

.-color-dark-blue {
    color: #013B7E !important;
}

.table-hover-blue th,
.table-hover-blue td {
    border: 0;
}

.dimension-pill {
    display: inline-block;
    background: #DDEAFE;
    height: 26px;
    border-radius: 13px;
    font-size: 12px;
    color: #1552AC;
}

.-table-shadow {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.input-calendar-icon {
    position: absolute;
    top: 42px;
    opacity: 0.7;
    left: 30px;
}

.bg-active {
    background: #cce5ff;
}

.pointer:hover,
[data-click]:hover {
    cursor: pointer;
}

.toasts-wrapper {
    position: absolute;
    right: 75px;
    top: 100px;
    width: 300px;
    max-width: 300px;
    z-index: 5;
    padding-bottom: 100px;
}


/***********************
 * Globale Styles:
 ************************/
.sticky {
    position: sticky;
    top: 0;
    background: #fafafa;
    padding: 20px 0 10px;
}

.sticky-bar {
    top: 70px;
}

table tr.done {
    background: #CCE5FF;
    position: relative;
}

table.processedjobs {
    background: repeating-linear-gradient(45deg,
    rgba(255, 255, 255, 0.05),
    rgba(255, 255, 255, 0.05) 10px,
    rgba(0, 0, 0, 0.05) 10px,
    rgba(0, 0, 0, 0.05) 20px),
    repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05) 10px, rgba(0, 0, 0, 0.05) 10px, rgba(0, 0, 0, 0.05) 20px);
}

tr[attr-deleted="true"] {
    box-shadow: -5px 0 0 #f00 inset;
}

table.processedjobs .import_headline {
    /* background: #CCE5FF; */
    background: #3a3a3a;
    color: white;
    text-align: center;
}

table.processedjobs tr:not(.outdated) {
    position: relative;
    background: white
}

table.processedjobs tr.outdated > td {
    color: #9e9e9e;
}

table.processedjobs tr.extra > td {
    border-top: none;
    font-size: 12px;
}


table.processedjobs tr .changeMessage {
    color:#dc3545!important
}  



/***********************
 * Projekt-Detail - Global
 ************************/

table.no-borders td {
    border: none;
}

table.small td {
    font-size: 14px;
    padding: 0;
}

table.small tr td:nth-child(2) {
    font-weight: 600;
}

#project_edit_cash_system_id[readonly] {
  background: #eee;
  pointer-events: none;
  touch-action: none;
}

/***********************
 * Projekt-Detail - Step 1
 ************************/

.js_noe {
    display: none;
}

.hidden-ids, .js-hide_additional_ids {
    display: none;
}

.suggestions .ele {
    padding: 2px 5px;
    font-size: 12px;
    cursor: pointer;
    display: flex;
}

.suggestions .ele .column {
    flex: 1 1 50%;
}

.suggestions .ele:nth-child(even) {
    background: whitesmoke;
}

.suggestions .ele:hover {
    background: lightgrey;
}

.suggestions h5 {
    margin: 0;
    font-size: 14px;
    font-weight: bold;
}

.suggestions .loading {
    width: 80px;
}

/***********************
 * Projekt-Detail - Step 2
 ************************/
table tr td.actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    font-size: 20px;
}

table tr td.actions a {
    display: block;
    color: white;
    padding: 2px 9px;
    border-radius: 5px;
    margin-right: 5px;
}

table tr td.actions a svg {
    width: auto;
    height: 18px;
}

.importButton {
    background: #003b7e;
}

.importButton:hover {
    background: #0954B9;
}

.downloadButton {
    background: #17810C;
}

.downloadButton:hover {
    background: #20C00F;
}

.deleteButton {
    background: #7B121A;
}

.deleteButton:hover {
    background: #BC1926;
}

.text-warning {
    color: #f9ae00 !important;
}

.card-text {
    min-height: 3em;
}

.text-warning.jumbotron {
    background-color: #f9f9f9;
    border: 1px solid rgba(249, 174, 0, 0.50);
}
.js-delegate-click-to-button:hover{
    cursor: pointer;
}

.textarea-comment {
    min-height: 200px;
    border-color: #ccc;
}

input-group.date {
    margin-top: 5px;
}

textarea:focus,
select:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus {
  border-color: #ced4da!important;
  box-shadow: none!important;
  outline: 0 none!important;
}

/* switch-toggle */

.activetoggle {
    margin: 17px;
}


/* Input as div */
#import_edit_start_date, #import_edit_end_date {
    border: none;
    background-color: transparent;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    font-size: inherit;
    line-height: inherit;
    display: inline-block;
}


.start-end-date-import {
    background: #013b7e;
    color: white;
    border-radius: 4px;
    display: inline-block;
    padding: 5px 10px;
    font-size: 14px;
    vertical-align: text-bottom;
}

#mapping-data-table td.autofilled {
    background: #fff1c9;
}

.js-datepicker.normal + [role=right-icon] {
    right: 6px;
    top: 7px;
}

.differentnames .button-container {
    justify-content: flex-end;
    margin-top: 10px;
    margin-bottom: 10px;
    display: flex;
}
.differentnames .button-container.hidden {
    display: none;
}

.differentnames .button-container a {
    margin-left: 5px;
}

.differentnames h3 {
    margin-top: 30px;
    font-size: 16px;
    font-weight: bold;
}

.differentnames ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.differentnames .card-header {
    padding: 0;
}

.differentnames .card-header button {
    color: black;
    font-weight: bold;
}

.differentnames td.bold {
    font-weight: bold;
}

.differentnames button:focus       , .differentnames a:focus {
    box-shadow: none;
}

.differentnames .card-body {
    padding: 20px 20px 10px;
}

.chosen {
    background: #28a745!important;
    border-color: #28a745!important;
}
.estab_data_row{
    border: 1px solid #ced4da;
    border-radius: .25rem;
}
.atlwdg-trigger.atlwdg-RIGHT {
    top: 46% !important;
}
.js-table-projects thead.sticky {
    top: 136px !important;
}
.js-table-projects td:nth-child(2),
.js-table-projects th:nth-child(2) {
    width: 31%;
}

/* Required field styling */
label.required::after,
legend.required::after {
    content: " *";
    color: #dc3545;
    font-weight: bold;
}
.kpis-card {
    height: 72%;
}