html,
body {
    height: 100%;
}

h1 {
    margin-bottom: 1em;;
}

a {
    color: #057a57;
}

a:hover {
    color: #158f6d;
}

.wrap {
    min-height: 100%;
    height: auto;
    margin: 0 auto -60px;
    padding: 0 0 60px;
}

.wrap > .container {
    padding: 90px 15px 70px 15px;
}

.container {
    width: auto;
    max-width: 1800px;
}


.footer {
    height: auto;
    background-color: #cecdbb;
    border-top: 1px solid #9d9c87;
    padding-top: 20px;
}

.jumbotron {
    text-align: center;
    background-color: transparent;
}

.jumbotron .btn {
    font-size: 21px;
    padding: 14px 24px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

.summary-btn {
    float: left !important;
    margin-right: 10px;
    margin-left: -10px;
    cursor: default;
}

.summary-btn:empty {
    display: none;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    padding-left: 5px;
}

a.asc:after {
    content: /*"\e113"*/ "\e151";
}

a.desc:after {
    content: /*"\e114"*/ "\e152";
}

.sort-numerical a.asc:after {
    content: "\e153";
}

.sort-numerical a.desc:after {
    content: "\e154";
}

.sort-ordinal a.asc:after {
    content: "\e155";
}

.sort-ordinal a.desc:after {
    content: "\e156";
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

.required label:after {
    content: " *";
}


.checklist-vertical label:after {
    content: "";
}

.multiselect-native-select label:after {
    content: "";
}

.bottom-margin {
    margin-bottom: 3em;
}

.top-margin {
    margin-top: 5em;
}

.head-buttons {
    margin-top: 20px;
    text-align: right;
}

.h3-add {
    margin-top: 0.8em;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding: 15px;
    border: none;
}

@media (max-width: 767px) {
    .nav li > form > button.logout {
        display: block;
        text-align: left;
        width: 100%;
        padding: 10px 15px;
    }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
}

.nav > li > form > button.logout:focus {
    outline: none;
}


/* allgemeine Anpassungen für das Layout */

.navbar-inverse {
    background-color: #ecece7;
    border-color: #cecbc0;
}

.navbar {
    background-color: #ecece7;
    border-color: #cecbc0;
    height: 51px;

}

.navbar-brand {
    padding: 5px 15px;
}

.navbar-brand > img {
    height: 80px;
    z-index: 100000;
}

.navbar .navbar-toggle .icon-bar {
    background-color: #057a57;
}

.navbar .navbar-toggle {
    border-color: transparent;
}

.navbar .navbar-toggle:focus {
    background-color: transparent;
}

.navbar .navbar-collapse {
    border-color: transparent;
}

.navbar-collapse.in {
    padding-top: 30px;
    background-color: #ecece7;
}

.navbar-collapse {
    padding-top: 30px;
    background-color: #ecece7;
}

.rforce {
    margin-top: -50px;
    margin-bottom: 10px;
    width: 80px;
}

.logo-start {
    width: 40%;
    margin-top: 22%;
}


.nav > li {
    margin-left: 5px;
}

.important {
    color: #f4801f;
    font-weight: bold;
    text-transform: uppercase;
}


#equipment-sketchid {
    display: none;
}

.field-equipment-sketchid > label {
    cursor: pointer;
    padding: 5px;
    height: 34px;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #555555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #ccc;
    border-radius: 4px;
    -webkit-box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
    box-shadow: inset 0 1px 1px rgb(0 0 0 / 8%);
}

.field-equipment-sketchid > label:hover {
    background: #eeeeee;
}


/*
.site-login {
    background-image: url(/images/group_login.png);
    background-repeat: no-repeat;
    background-position: right bottom;
    background-size: 70vh;
}
*/

@media (min-width: 768px) {
    .navbar-nav {
        margin-top: 15px;
    }

    .navbar > .container {
        position: relative;
    }

    ul.nav {
        position: absolute;
        bottom: -1px;
        right: 30px;
    }

    .nav > li > a {
        background-color: #057a57;
        padding: 5px 15px;
        color: #ffffff;
        border-top-right-radius: 6px;
        border-top-left-radius: 6px;
        border: 1px solid #057a57;
        border-bottom: 0px;
    }

    .nav > li.active a {
        background-color: #ffffff;
        color: #333333;
        border-color: #cecbc0;
    }

    .nav > li > a:hover {
        background-color: #158f6d;
        border-color: #158f6d;
    }

    .nav > li.active > a:hover {
        background-color: #ffffff;
        border-color: #cecbc0;
    }

    .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
        background-color: #158f6d;
    }


}

.nav li > form > button.logout {
    padding: 5px 10px;
}

.nav li.logout {
    border-top: 2px solid #cecbc0;
    margin-top: 5px;
    padding-top: 5px;
}

/* Grid */

.panel-primary > .panel-heading {
    background-color: #9d9c87;
}

.panel {
    border: none;
    box-shadow: none;
    border-radius: 0;
}

.action-dropdown {
    left: auto;
    right: 22px;
    top: auto;
    bottom: -5px;
    z-index: 20000;
}

.no-caret > .caret {
    display: none;
}

.no-caret {
    padding: 2px 5px;
    line-height: 1.0;
}

.pagesize {
    padding: 7px 12px;
    margin: 20px 0;
}

.panel-footer {
    padding: 0;
    background-color: transparent;
    border: none;
}

.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
    background-color: #057a57;
    border-color: #057a57;
}

.pagination > li > a, .pagination > li > span {
    color: #057a57;
}

.pagination > li > a:hover, .pagination > li > span:hover, .pagination > li > a:focus, .pagination > li > span:focus {
    color: #057a57;
}

.filterResetButton {
    margin: 0;
    padding: 0 6px 0 0;
    font-size: 1.5em;
}

.filterResetButton > .glyphicon {
    font-size: 1.5em;
    top: 6px;
    margin: 0;
    padding: 0;
}

.filterResetButton:hover {
    background: inherit !important;
    color: red !important;
    cursor: pointer;
}

.control-label {
    color: #666666;
}

.kv-panel-before {
    padding-right: 0;
}

.btn-success {
    background-color: #057a57;
    border-color: #057a57;
}

.btn-success:hover {
    background-color: #158f6d;
}

.grid-summary {
    font-weight: bold;
    padding-top: 10px;
}

.action-column {
    text-align: right;
    width: 46px;
    min-width: 46px;
    max-width: 46px;
}

.action-column input[type="checkbox"] {
    margin: 2px 0 0 0;
}


.row-button {
    width: 100%;
    margin-top: 20px;
}

.add-button {
    margin-left: 50px;
}

.hr-narrow {
    margin-top: 5px;
    margin-bottom: 5px;
}

.btn-download {
    width: 100%;
    margin-top: 0px;
}

.row-button-no-label {
    width: 100%;
    margin-top: 0;
}

.bflocations-list label {
    display: block;
}

.checklist-vertical label {
    display: inline-block;
    width: 250px;
    vertical-align: top;
}

#equipment-sketchid img {
    border: 2px solid #ccc;
    margin-left: -15px;
}

#equipment-sketchid label {
    margin-bottom: 15px;
    margin-right: 4px;
}

#equipment-sketchid input[type='radio'] {
    visibility: hidden;
}

#equipment-sketchid input[type='radio']:checked ~ img {
    border: 2px solid #f4801f;
}

.tanksketches {
    display: none;
}

.inspectiontype-block {
    border: 1px solid #057a57;
    padding: 5px 10px;
    border-radius: 4px;
    margin-bottom: 20px;
}

.profile-name {
    font-size: 0.8em;
    font-weight: bold;
}

.multiselect {
    text-align: left;
}

.modal-content {
    height: 90%;
}

.modal-body {
    overflow-y: auto;
}


.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
    background-color: #54b298;
}

.ioCheck {
    margin: 0;
    padding: 0;
}

.cell-outer {
    position: relative;
    height: 100%;
    min-width: 100px;
}

.ioHistory {
    width: 120px;
    height: auto;
    max-height: 60px !important;
    overflow-y: auto;
    text-align: left;

}

.ioHistory p {
    margin: 0;
    padding: 0;
}


#reports-serviceidsdone {
    border-top: 1px solid #cccccc;
    padding-top: 10px;
}


#visits-inspectorids {
    border: 1px solid #cccccc;
    padding: 10px;
    max-height: 200px;
    overflow-y: scroll;
}


.editor-area {
    position: relative;
    width: 100%;
    border: 1px solid #cccccc;
    max-width: 1000px;
}

.defect-item {
    position: absolute;
    width: 2.8vw;
    height: 2.8vw;
    line-height: 2.8vw;
    background-color: #cc0000;
    cursor: move;
    color: white;
    text-align: center;
    border-radius: 1.0vw;
    border-top-left-radius: 0;
    font-size: 1.8vw;
    margin-right: -2.7vw;
    max-width: 28px;
    max-height: 28px;
}

@media only screen and (min-width: 1000px) {
    .defect-item {
        font-size: 18px;
        margin-right: -27px;
        line-height: 28px;
        border-radius: 10px;
    }

}


.editor-sketch {
    width: 100%;
}

@media only screen and (min-width: 1200px) {
    .image-group {
        position: absolute;
        bottom: 50px;
        right: calc(50% - 570px);
        width: 700px;
    }

    .image-mascot {
        width: 350px;
        margin-right: -160px;
    }

    .image-logo {
        width: 150px;
        margin: 90px 0 0 0;
    }

    .start-title {
        font-size: 16pt;
    }
}


@media only screen and (min-width: 992px)  and (max-width: 1199px) {
    .image-group {
        position: absolute;
        bottom: 50px;
        right: calc(50% - 470px);
        width: 560px;
    }

    .image-mascot {
        width: 280px;
        margin-right: -90px;
    }

    .image-logo {
        width: 120px;
        margin: 90px 0 0 0;
    }

    .start-title {
        font-size: 18pt;
    }
}

@media only screen and (min-width: 768px)  and (max-width: 999px) {
    .image-group {
        position: absolute;
        bottom: 50px;
        right: calc(50% - 350px);
        width: 440px;
    }

    .image-mascot {
        width: 240px;
        margin: 30px -60px 0 10px;
    }

    .image-logo {
        width: 100px;
        margin: 100px 0 0 0;
    }
}


@media only screen and (max-width: 767px) {
    .image-group {
        width: 100%;
    }

    .image-mascot {
        width: 150px;
        margin: 0;
    }

    .image-logo {
        width: 90px;
        margin: 0;
    }
}

.row-equal {
    display: table;
    width: 100%;
}

.col-equal {
    display: table-cell;
}


.button-card {
    border: 1px solid #cccccc;
    border-radius: 10px;
    padding: 10px 10px;
    cursor: pointer;
    margin-bottom: 20px;
    height: 100%;
}

.button-card:hover {
    background: #e6e6e6;
}

select option:disabled {
    color: #cccccc;
}

.set-status {
    width: auto;
    min-width: 160px;
    float: right;
    margin-left: 20px;
}

/*DEFECT EDITOR*/

#editor-target {
    padding: 0px;
    margin-left: -15px;
    margin-right: -15px;
    text-align: right;
    width: 100%;
}

#editor-image {
    margin-top: -20px;
}

.editor-sketch-target {
    width: 100%;
    margin-top: 15px;
}

.defectNumber {
    position: absolute;
    width: 2.8vw;
}

.sketchContainer {
    padding-left: 1px !important;
    padding-right: 1px !important;
}

.sketchRow {
    margin-left: 0px !important;
    margin-right: 0px !important;
}

.defectNumberRow {
    margin-bottom: 50px;
}

.defectNumberWrapper {
    margin-left: 2.6vw; /*4%;*/
    margin-top: 1.4vw;
    margin-bottom: 1.2vw;
    display: inline-block;
}

.contentRight {
    text-align: right;
    padding-right: 3vw;
}

#trash {
    z-index: 99999;
    position: relative;
    left: 93%;
    top: 95%;
    width: 5%;
    height: 5%;
    color: lightgray;
}

.trashIcon {
    font-size: 3.5vw;
}

input[type="checkbox"]:checked {
    background-color: #057a57;
}

/*END DEFECT EDITOR*/

.calendar {
    width: 100%;
    overflow-x: scroll;
    overflow-y: scroll;
    height: 65vh;
}

@media screen and (min-height: 1100px) {
    .calendar {
        height: 75vh;
    }
}
@media screen and (min-height: 1600px) {
    .calendar {
        height: 80vh;
    }
}

.cal-select {
    display: inline-block !important;
    width: auto !important;
}

.cal-block {
    display: inline-block;
    border: none;
    border-right: 1px solid #eee;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.cal-row {
    display: flex;
    white-space: nowrap;
    border: none;
    border-bottom: 1px solid #eee;
    margin: 0;
    padding: 0;
    max-height: 28px;
    background: transparent;

}

.large-row {
    min-width: 980px;
}

.cal-row.active {
    background: #dff5e5;
}

.segment-row {
    padding: 20px 0 5px 0;
    max-height: 100px !important;
    text-align: center;
    font-size: 1.2em;
    color: #999999;
    letter-spacing: 0.7em;
}

.cal-head {
    height: 40px !important;
    max-height: 40px !important;
}


.cal-day {
    width: 2.42%;
    min-width: 18px;
    box-sizing: border-box;
    overflow: hidden;
    height: 28px;
    max-height: 28px;
    margin: 0;
    padding: 2px 1px;
    flex-grow: 1;
}

.cal-week {
    border-right: none !important;
    text-align: center;
    font-size: 0.8em;
    font-style: italic;
}

.cal-dayhead {
    width: 2.42%;
    min-width: 18px;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    text-align: center;
    font-size: 0.8em;
    flex-grow: 1;
}

.cal-user {
    width: 15%;
    min-width: 200px;
    height: 28px;
    max-height: 28px;
    line-height: 24px;
}

.cal-user-card {
    width: 35%;
    height: 28px;
    max-height: 28px;
    line-height: 24px;
}

.cal-location {
    width: 15%;
    min-width: 200px;
    font-weight: bold;
    text-align: left;
    height: 28px;
    max-height: 28px;
    line-height: 28px;
    border-left: 10px solid #eeeeee;
    padding-left: 10px;
}

.cal-date {
    width: 100%;
    background: #057a57;
    text-align: center;
    box-sizing: border-box;
    border: none;
    border-bottom: 1px solid white;
    margin: 0;
    padding: 0;
}

.cal-legend {
    width: 100%;
    text-align: center;
    margin: 0 0 25px 0;
    padding-left: 15%;
    font-size: 0.8em;
}

@media (max-width: 980px) {
    .cal-legend {
        padding-left: 0;
    }
}

.cal-legend-text {
    display: inline-block;
    width: auto;
    margin: 0 15px 0 0;
    vertical-align: bottom;
}

.cal-legend-color {
    display: inline-block;
    width: 20px;
    height: 14px;
    margin: 0 1px 0 0;
}


.cal-color-N {
    background-color: #ffd449;
}

.cal-color-C {
    background-color: #aab4ff;
}

.cal-color-F {
    background-color: #03ffe9;
}

.cal-color-A {
    background-color: #00db19;
}

.cal-color-I {
    background-color: #00520a;
}

.cal-color-transparent {
    background-color: transparent;
}

.cal-color-1 {
    background-color: #b2bfc7;
}

.cal-color-2 {
    background-color: #f7ad93;
}

.cal-color-3 {
    background-color: #7a6b6d;
}

.cal-color-4 {
    background-color: #147db6;
}

.cal-color-5 {
    background-color: #845ef7;
}

.cal-color-group {
    background-color: #44bcd8;
}

.cal-height-1 {
    height: 24px;
}

.cal-height-2 {
    height: 12px;
}

.cal-height-3 {
    height: 8px;
}

.cal-height-4 {
    height: 6px;
}

.cal-weekend-6 {
    background-color: #f5f5f2;
    border-bottom: 1px solid #eee;
}

.cal-weekend-7 {
    background-color: #f3f3f0;
    border-bottom: 1px solid #eee;
}

.cal-today {
    background-color: #e6ffe6;
    border-bottom: 1px solid #eee;
}

.no-break {
    white-space: nobreak;
}

/*  Versuche mit Grid-Layout im Kalender  */
.c-row {
    display: grid;
    grid-template-columns: 200px auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto auto;
    grid-template-rows: 30px;
    border-bottom: 1px solid #ccc;
    grid-column-gap: 0;
}

.c-user {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[data-date] {
    cursor: cell;
}


.page-menu {
    font-size: 1.0em;
    text-align: center;
    margin: -10px 0 2em 0;
}

.page-menu a, .page-menu .btn {
    display: inline-block;
    padding: 0 10px;
    margin: 0 3px;
    border: 1px solid #057a57;
    border-radius: 5px;
    background: white;
    vertical-align: middle;
    color: #057a57;
}

.page-menu a:hover, .page-menu .btn:hover {
    text-decoration: none;
    background: #eeeeee;
}


.btn-success:focus, .btn-success:active {
    background-color: #057a57;
    border-color: #057a57;
}

.action-center {
    text-align: center !important;
}

.kv-grid-table td p {
    margin: 0;
    line-height: 110% !important;
}

.kv-grid-container {
    overflow: inherit;
}

a.orange-link {
    color: #ffb90f;
}

.alert-red {
    color: #ee0000;
    font-weight: bold;
}

.alert-yellow {
    color: #ffb90f;
    font-weight: bold;
}

.alert-grey {
    color: #dddddd;
}

.show-not {
    display: none;
}

.reportdefects-form .help-block {
    min-height: 24px;
}

.full-width {
    width: 100%;
    margin: 0;
    padding: 0;
}

.image-container {
    display: grid;
    grid-template-columns: 20% 20% 20% 20%;
    gap: 20px 20px;
    justify-content: space-between;
}

.image-item {
    width: 100%;
}

.image-block {
    border: 1px solid #cccccc;
    margin-bottom: 5em;
}

.image-text {
    height: 30px;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 5px;
    line-height: 110%;
    white-space: nowrap;
}

.image-link {
    background: #ffffff;
    text-align: right;
    height: 30px;
    padding: 3px 5px;
    font-size: 1.3em;
}

#drag-area {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}

#symbols-area {
    position: relative;
    width: 100%;
    margin: 0 0 15px 0;
    padding: 0;
}

.symbol-number {
    width: 4.2%;
    margin: 0 0 5px 0;
    padding: 0;
    z-index: 1000;
}

.symbol-space {
    display: inline-block;
    width: 4%;
    margin: 0 0 5px 0;
    padding: 0;
}

.symbol-item {
    position: absolute;
    width: 4.2%;
    margin: 0;
    padding: 0;
    z-index: 1000;
}

.symbol-large, [data-symbolid="10"] {
    width: 8%;
    margin: 0;
    padding: 0;
}

#image-area, .image-area {
    position: relative;
    margin: 0;
    padding: 0;
}

#image-description {
    margin: 2em 0 1em 0;
    padding: 0;
}

.ui-tooltip {
    width: auto;
    max-width: 500px !important;
}

.ui-tooltip-content {
    width: auto;
    max-width: 500px !important;
}

.underline {
    border-bottom: 1px solid #cccccc;
    margin-bottom: 2em;
}

.leakage-block {
    background: #eeeeee;
    padding: 15px 0;
    margin-bottom: 3em;
}

.leakage-diagram {
    width: 100%;
    margin-bottom: 2em;
}

.link-disabled {
    color: #057a57;
    opacity: 0.6;
}

.btn-disabled {
    opacity: 0.6;
}

.link-disabled:hover, .btn-disabled:hover {
    cursor: not-allowed;
    opacity: 0.4;
}

.not-draggable {
    cursor: not-allowed;
}

.tpc-report {
    margin-right: 50px;
}

.bfcard-body {
    border: 1px solid #057a57;
    padding: 15px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    height: 300px;
    overflow-y: auto;
}

.bfcard-head {
    margin: 30px 0 0 0;
    padding: 5px 15px;
    font-size: 1.1em;
    line-height: 150%;
    font-weight: bold;
    text-align: center;
    color: white;
    background: #057a57;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.bfcard-head a {
    display: block;
    color: white;
    text-decoration: none;
}

.trlink:hover {
    cursor: pointer;
    background-color: #c5e8d4 !important;
}


td.disabled.day {
    color: #cccccc !important;
}

.inspectionhistory {
    min-width: 130px;
    white-space: nowrap;
    max-height: 46px;
    overflow: auto;
}

.new-block {
    background: #eee;
}

.linkanchor {
    margin-top: 100px;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
}

.default-values {
    background: #ecece7;
    padding: 20px;
}

.form-infotext {
    margin: -10px 0 20px 0;
}

.jw {
    visibility: collapse;
}

.price-lists-bulk-update-form,
.special-prices-bulk-update-form {
    margin: 20px;
}

.update-blocks {
    margin: 40px;
}

.update-block {
    border: 1px solid #dddddd;
    padding-top: 15px;
    margin: 0 15px 20px 0;
}

.block-title .help-block {
    margin: 0;
}

.select2-container--krajee .select2-selection--multiple .select2-selection__choice__remove {
    margin: 0 0 0 4px !important;
}

.collapse .panel .panel-heading .panel-title {
    font-size: 24px;
}