﻿/* Generelle Styles für Portale und Backoffice */
.serviceRazor {
    color: blue !important;
    background-color: #ccecff !important;
}

.devRazor {
    color: purple !important;
    background-color: #eee0cc !important;
}

body {
    -webkit-font-variant-ligatures: none;
    -moz-font-variant-ligatures: none;
    -o-font-variant-ligatures: none;
    font-variant-ligatures: none;
    color: black;
}

tbody > tr > th {
    font-weight: 400;
}

.pull-left {
    float: left;
}

.row.marginneutral {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

    .row.marginneutral > div:last-child {
        padding-right: 0px !important;
    }

.right {
    text-align: right;
}

label {
    font-weight: normal;
    margin: 0;
}

.fehlermeldung {
    color: #d73925;
    font-weight: bold;
}

.inputDateKlick {
    display: inline-block;
    line-height: normal;
    width: 150px;
}

.portalsection {
}

    .portalsection p {
        margin: 0;
    }

partial {
    height: 50px;
    background-color: red;
}

.desktopRightSmartLeft {
    text-align: right;
}

.custom-line-height {
    line-height: 110% !important;
}
/* Meldungen */
.fehlermeldungcenter {
    color: #d73925;
    font-weight: bold;
    text-align: center;
}

.infokasten {
    background-color: #dbeefc;
    border: 2px solid #0094ff;
    position: relative;
    /*width: 660px;*/
    margin: 5px auto;
    text-align: justify;
    hyphens: manual;
    font-size: 16px;
}

    .infokasten p {
        margin: 0;
    }

.infokasten-heading {
    padding: 0 5px;
}

.warningkasten {
    background-color: #ffeee1;
    border: 2px solid #d73925;
    position: relative;
    /*width: 660px;*/
    margin: 10px auto;
    text-align: justify;
    hyphens: manual;
    font-size: 16px;
}

.warningkasten-heading {
    background-color: #d73925;
    color: #ffffff;
    padding: 0 5px;
}

.warningkasten-body, .infokasten-body {
    padding: 0 5px;
    font-size: 14px;
    line-height: 115%;
    padding-bottom: 5px;
}

.warningkasten p {
    margin: 0;
}

.closeinfo {
    position: absolute;
    top: 5px;
    right: 10px;
    color: #0094ff;
}

.required:after {
    content: " *";
    font-weight: bold;
    color: red;
    font-size: initial;
    line-height: 90%;
}

.box {
    margin-bottom: 10px;
}

/* Sichbarkeiten */
.displayInDesktop {
    display: block;
}

.displayInSmart {
    display: none;
}

.standardHide {
    display: none;
}

.standardShow {
    display: block;
}

.blink {
    animation: blink 0.3s;
    animation-iteration-count: 3;
}

@keyframes blink {
    50% {
        opacity: 0.2
    }
}

/* Inputfelder */
input[type="password"]::-ms-reveal,
input[type="password"]::-ms-clear {
    display: none;
}

.form-group {
    margin-bottom: 5px;
}

.form-group p,
td.form-group,
.custom-control-label {
    color: black;
}

/*Färbung für Modale*/
.modal .panel-body{
    color:black !important;
    background-color: rgb(244,244,244);
}
.modal .panel{
    border: 1px solid grey;
}
.modal .panel-heading {
    background-color: #d9edf7 !important;
}
.modal .modal-body {
    background-color: white !important;
}
.modal .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.05);
}
.modal div[service] .panel-body {
    background-color: #ccecff !important;
}

input[type="date"]:not([value]), input[type="date"][value=""] {
    color: gray;
}

.panel-default > .panel-heading,
.box.box-solid.box-default > .box-header {
    color: black !important;
}

.form-control.input-validation-error {
    border-color: #dd4b39;
    background-color: #f9f2f4;
}

/*.portalsection input[type="checkbox"]:disabled,
.portalsection input[type="radio"]:disabled {
    border-color: silver;
    cursor: not-allowed;
}*/

.physical-unit {
    text-transform: none !important;
}

.panel-body > div:first-child {
    margin-top: -5px;
}

.flexRow {
    display: flex;
}

.sortTr {
    line-height: 1;
}

.sortTd {
    padding: 0 !important;
    line-height: 1;
    font-size: 10px;
}

.sortBtnASC {
    cursor: pointer;
    top: 2px;
}

.sortBtnDESC {
    cursor: pointer;
    top: -1px;
}

.modal-title {
    font-weight: normal;
}

.nav-tabs-custom > .nav-tabs > li.active > a,
.pnl-nav-paging > .nav-tabs > li.active > a,
.pnl-nav-paging > .nav-tabs > li.active > a:hover,
.nav-tabs-custom > .nav-tabs > li.active > a:hover {
    background-color: #3c8dbc;
    color: white;
    border-right-color: #3c8dbc;
    border-left-color: #3c8dbc;
    font-weight: bold;
}

.nav-tabs-custom > .nav-tabs > li > a,
.nav-tabs-custom > .nav-tabs > li > a:hover {
    padding: 5px 10px;
}

    .nav-tabs-custom > .nav-tabs > li > a.disabled {
        color: silver !important;
    }

.nav-tabs-custom > .nav-tabs > li.error-tab.active > a,
.pnl-nav-paging > .nav-tabs > li.error-tab.active > a,
.pnl-nav-paging > .nav-tabs > li.error-tab.active > a:hover,
.nav-tabs-custom > .nav-tabs > li.error-tab.active > a:hover {
    background-color: #d73925;
    color: white;
    border-right-color: #d73925;
    border-left-color: #d73925;
    font-weight: bold;
}

.nav-tabs-custom > .nav-tabs > li.error-tab > a,
.nav-tabs-custom > .nav-tabs > li.error-tab > a:hover,
.pnl-nav-paging > .nav-tabs > li.error-tab > a,
.pnl-nav-paging > .nav-tabs > li.error-tab > a:hover {
    border-right-color: #d73925;
    border-left-color: #d73925;
    border-top-color: #d73925;
    color: #d73925;
}

.blured {
    filter: blur(5px);
}

.overlayContainer {
    position: relative;
}

    .overlayContainer > .overlay {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .overlayContainer .overlay {
        z-index: 50;
        background: rgba(255, 255, 255, 0.7);
    }

        .overlayContainer .overlay > .fa {
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -15px;
            margin-top: -15px;
            color: #000;
            font-size: 30px;
        }

.trEven {
    background-color: #f6f6f6;
}

.fixBold {
    font-weight: bold;
}

.textkurzhinten {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    direction: ltr;
}

.overflowXAuto {
    max-height: 85vh;
    overflow-y: auto;
}

.inactiveDataset {
    color: grey;
    font-style: italic;
}

.alert.alert-simpledanger {
    background-color: mistyrose;
    color: black;
    border-color: #d73925;
}

.alert.alert-simplewarning {
    background-color: #f9edb1;
    color: black;
    border-color: darkorange;
}

@media (min-width: 176px) {
    .padding-md {
        padding: 0 5px;
    }
}

@media (min-width: 476px) {
    .padding-md {
        padding: 0 20px;
    }
}

@media (min-width: 768px) {
    .padding-md {
        padding: 0 65px;
    }
}

.col-lg-2, .col-lg-3, .col-lg-4, .col-lg-6, .col-lg-8, .col-lg-10, .col-lg-5,
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col.md-6, .col-md-8, .col-md-9, .col-md-10, .col-md-11,
.col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-8, .col-sm-9, .col-sm-10,
.col-xs.col-s-5, .col-sm-12, .col-md-12, .col-lg-12 {
    padding-left: 0px !important;
    padding-right: 5px !important;
}

/* Erweiterung Bootstrap */
/* Zwischenschritt zwischen col-xs und col-sm*/
.col-s-1, .col-s-2,
.col-s-3, .col-s-4,
.col-s-5, .col-s-6,
.col-s-7, .col-s-8,
.col-s-9, .col-s-10,
.col-s-11, .col-s-12 {
    position: relative;
    min-height: 1px;
    padding-right: 5px;
    padding-left: 0px;
}

.visible-s-inline,
.visible-s-block {
    display: none !important;
}

@media (min-width:500px) and (max-width:767px) {
    .col-s-1, .col-s-2,
    .col-s-3, .col-s-4,
    .col-s-5, .col-s-6,
    .col-s-7, .col-s-8,
    .col-s-9, .col-s-10,
    .col-s-11, col-s-12 {
        float: left;
    }

    .col-s-12 {
        width: 100%;
    }

    .col-s-11 {
        width: 91.66666667%;
    }

    .col-s-10 {
        width: 83.33333333%;
    }

    .col-s-9 {
        width: 75%;
    }

    .col-s-8 {
        width: 66.66666667%;
    }

    .col-s-7 {
        width: 58.33333333%;
    }

    .col-s-6 {
        width: 50%;
    }

    .col-s-5 {
        width: 41.66666667%;
    }

    .col-s-4 {
        width: 33.33333333%;
    }

    .col-s-3 {
        width: 25%;
    }

    .col-s-2 {
        width: 16.66666667%;
    }

    .col-s-1 {
        width: 8.33333333%;
    }

    .hidden-s {
        display: none !important;
    }
}

@media (max-width: 400px) {
    .col-xxs-1, .col-xxs-2,
    .col-xxs-3, .col-xxs-4,
    .col-xxs-5, .col-xxs-6,
    .col-xxs-7, .col-xxs-8,
    .col-xxs-9, .col-xxs-10,
    .col-xxs-11, col-xxs-12 {
        float: left;
    }

    .col-xxs-12 {
        width: 100%;
    }

    .col-xxs-11 {
        width: 91.66666667%;
    }

    .col-xxs-10 {
        width: 83.33333333%;
    }

    .col-xxs-9 {
        width: 75%;
    }

    .col-xxs-8 {
        width: 66.66666667%;
    }

    .col-xxs-7 {
        width: 58.33333333%;
    }

    .col-xxs-6 {
        width: 50%;
    }

    .col-xxs-5 {
        width: 41.66666667%;
    }

    .col-xxs-4 {
        width: 33.33333333%;
    }

    .col-xxs-3 {
        width: 25%;
    }

    .col-xxs-2 {
        width: 16.66666667%;
    }

    .col-xxs-1 {
        width: 8.33333333%;
    }

    .hidden-xxs {
        display: none;
    }
}
/* xs-Bereich */
@media (max-width: 499px) {
    td.form-group /*,
    .form-group p,
        .custom-control-label*/ {
        font-size: 16px;
    }

    .modal-dialog {
        margin: 0px;
    }

    .overflowXAuto {
        max-height: 75vh;
    }

    .desktopRightSmartLeft {
        text-align: left;
    }

    .desktopCenterSmartLeft {
        text-align: left;
        padding: 10px;
    }

    .visible-xs
    .visible-xs-block {
        display: block !important;
    }

    .visible-xs-inline {
        display: inline !important;
    }

    .visible-xs-inline-block {
        display: inline-block !important;
    }

    .visible-lg-block,
    .visible-lg-inline,
    .visible-lg-inline-block,
    .visible-lg,
    .visible-md-block,
    .visible-md-inline,
    .visible-md-inline-block,
    .visible-md {
        display: none !important;
    }
}
/* s-Bereich */
@media (min-width:499px) and (max-width:767px) {
    td.form-group /*,
    .form-group p,
        .custom-control-label*/ {
        font-size: 16px;
    }

    .overflowXAuto {
        max-height: 75vh;
    }

    .modal-dialog {
        margin: 0px;
    }

    .desktopRightSmartLeft {
        text-align: left;
    }

    .desktopCenterSmartLeft {
        text-align: left;
        padding: 10px;
    }

    .visible-s-inline {
        display: inline !important;
    }

    .visible-s-block {
        display: block !important;
    }

    .visible-xs
    .visible-xs-block,
    .visible-xs-inline,
    .visible-xs-inline-block,
    .visible-sm,
    .visible-sm-block,
    .visible-sm-inline,
    .visible-sm-inline-block {
        display: none !important;
    }

    .visible-lg-block,
    .visible-lg-inline,
    .visible-lg-inline-block,
    .visible-lg,
    .visible-md-block,
    .visible-md-inline,
    .visible-md-inline-block,
    .visible-md {
        display: none !important;
    }
}

/* sm-Bereich */
@media (min-width: 768px) and (max-width: 991px) {
    .form-group p,
    td.form-group,
    .custom-control-label {
        font-size: 14px;
    }

    .overflowXAuto {
        max-height: 75vh;
    }

    .desktopCenterSmartLeft {
        text-align: left;
        padding: 10px;
    }

    .visible-sm,
    .visible-sm-block {
        display: block !important;
    }

    .visible-sm-inline {
        display: inline !important;
    }

    .visible-sm-inline-block {
        display: inline-block !important;
    }

    .visible-lg-block,
    .visible-lg-inline,
    .visible-lg-inline-block,
    .visible-lg,
    .visible-md-block,
    .visible-md-inline,
    .visible-md-inline-block,
    .visible-md {
        display: none !important;
    }
}
/* md und lg-Bereich */
@media (min-width: 992px) {
    .form-group p,
    td.form-group,
    .custom-control-label {
        font-size: 13px;
    }

    .visible-lg,
    .visible-md {
        display: inline-block !important;
    }
}
/* Bildschirmgrößen*/
@media all and (max-width: 625px) {
    .panel-body {
        padding: 5px;
    }

    .flexRow {
        display: block;
    }
}

@media (max-width: 991px) {
    .balkencolor {
        height: 0;
    }

    .flexRow {
        display: block;
    }
}

@media (min-width: 200px) and (max-width: 991px) {
    .displayInDesktop {
        display: none;
    }

    .displayInSmart {
        display: block;
    }
}



table.tbl, tr.tbl, td.tbl {
    padding: 2px !important;
    vertical-align: bottom !important;
    margin-bottom: 0;
}

table.subTable {
    padding: 0 !important;
    border-collapse: collapse;
    border: 0;
}
.table .tdWithSubtable {
    padding: 0;
    border: 0;
}
textarea {
    resize: vertical;
    width: 100%;
}

/* Navigationslinks */
.navlinkKlick {
    font-weight: bold;
    font-size: 15px;
    padding: 0.2rem 1.5rem 0.3rem 1.5rem;
    display: inline-block;
    margin-bottom: 5px;
    border-radius: 5px;
}

    .navlinkKlick.grey {
        border: 2px solid #c4c4c4;
        background-color: #ededed;
        color: black !important;
        text-align: center;
    }

.coloredLinkActive {
    color: #808080;
    border-bottom: 2px solid #808080;
    border-radius: 0px;
}

    .coloredLinkActive:hover {
        color: #808080;
    }

.coloredLinkInactive {
    background-color: #ffffff;
    color: #d7d7d7;
    border: none;
    border-radius: 0px;
}

    .coloredLinkInactive:hover {
        color: #808080;
    }

ol, ul {
    margin-bottom: 0;
}

.sumtr {
    font-weight: bold;
    border-top-style: double;
    background-color: #FFFFFF;
    border-top-color: #000000;
}

    .sumtr:hover {
        background-color: #FFFFFF !important;
        border-top-color: #000000 !important;
    }

/* 
        Eine Klasse die dafür sorgt, dass alle inneren divs ein Padding von 10px haben
        und das erste div bekommt border-radius an den oberen Kanten
        und das letzte div bekommt border-radius an den unteren Kanten
    */
.box-rounded > div {
    padding: 10px;
}

    .box-rounded > div:first-child {
        border-top-left-radius: 5px;
        border-top-right-radius: 5px;
    }

    .box-rounded > div:last-child {
        border-bottom-left-radius: 5px;
        border-bottom-right-radius: 5px;
    }

.highlight-filter {
    background-color: #DFFFA5;
    padding: 2px;
}

input[type=date].highlight-filter,
input[type=month].highlight-filter,
input[type=datetime-local].highlight-filter {
    border: 1px solid rgb(118,118,118);
    border-radius: 2px;
    padding: 1px;
}

select.highlight-filter {
    padding: 0px;
    padding-left: 3px;
}

.filterTd {
    padding: 5px;
    border-right: solid 1px lightgray;
    font-size: 13px;
}

input[type=radio].filterRadio {
    margin: 2px;
    padding: 0px;
}

@media print {
    .noPrint,
    a.navlinkKlick,
    button,
    button.navlinkKlick,
    .noPrint.flexRow {
        display: none;
    }

    .col-print-12 {
        width: 100%;
    }

    a[href]:after {
        content: none !important;
    }

    #stickyheader {
        display: none;
    }

    .wrapper {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}
/* Damit bei der Projektauswahl, die ausgewählten Elemente ensprechend angezeigt werden */
.select2-container--default .select2-selection--single, .select2-selection .select2-selection--single {
    padding-left: 8px;
    padding-right: 20px;
}

.select2-project.highlight-filter + .select2 > .selection > .select2-selection {
    padding-left: 8px;
    padding-right: 20px;
    background-color: #DFFFA5;
}

.select2-project.failure-filter + .select2 > .selection > .select2-selection {
    padding-left: 8px;
    padding-right: 20px;
    background-color: #f2dede;
}

.m-0 {
    margin: 0;
}

.m-0i {
    margin: 0 !important;
}

.p-0 {
    padding: 0;
}

.p-0i {
    padding: 0 !important;
}

a.stealthy {
    color: initial;
    text-decoration: initial;
    ;
}

[hidden] {
    display: none !important;
}

.site-search-link {
    color: #333 !important;
    display: block;
    width: 100%;
    border-radius: 2.5px;
}

    .site-search-link:focus {
        color: #fff !important;
        background-color: #337ab7 !important;
    }

    .site-search-link:hover {
        color: #fff !important;
        background-color: #337ab7 !important;
    }

.site-search-link-focus {
    color: #fff !important;
    background-color: #337ab7 !important;
}

@media (min-width: 768px) {
    .modal-md {
        width: 600px;
    }
}

.formtaghelper-input-container {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.formtaghelper-input-container input{
    margin: 0px;
}

.clickpath-input-container{
    display: flex;
    gap: 4px;
    align-items: center;
}

.clickpath-input-container input{
    margin: 0;
}

.clickpath-input-container textarea {
    margin-bottom: 0;
}

.required-red::after{
    color:red !important;
}

.counter-bg:hover {
    background-color: #2c7cb5 !important;
}

.dirty-required::after{
    color: red !important;
}

/* Style from newer bootstrap version 4 from 2015*/
.d-flex{
    display: flex;
}

.flat-types-container {
    display: flex;
    gap: 120px;
}

.flat-types-table-head {
    max-width: 800px;
    display: flex;
    flex-direction: row-reverse;
    gap: 80px;
}


@media only screen and (max-width: 1300px) {
    .flat-types-container{
        gap:40px;
    }
    .flat-types-table-head {
        gap: 0;
    }
}
@media only screen and (max-width: 400px) {
    .flat-types-container {
        gap: 20px;
    }
}


/* REMOVE ARROWS UP/BOTTOM FROM INPUT TYPE=NUMBER */

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

input[type="number"]{
    text-align: right;
}

.portalsection * > .panel-body {
    background-color: rgb(244, 244, 244) !important;
}

.autocomplete-suggestions {
    margin-top: 2px;
    border: 1px solid black;
    border-radius: 5px;
    background: #fff;
    max-height: 150px;
    overflow-y: auto;
    scrollbar-width: thin;
    position: absolute;
    z-index: 1000;
    width: 100%;
    box-sizing: border-box;
}

.autocomplete-suggestion {
    padding: 3px;
    cursor: pointer;
}

    .autocomplete-suggestion:hover {
        background-color: #e9e9e9;
    }

    .autocomplete-suggestion.active {
        background-color: #d0d0d0;
    }