/* 
    Author     : pierre
*/




body {
    margin: 0;
    font-family: 'Poppins',sans-serif;
    line-height: 1.5;
}
:root {

    --gray: #7c7c7d;
    --nav-gray:  #f8f9fa;    /*    #212529 ;   */
    --menu: #575656;
    --primary-base: #02203e;
    --details-light: #73b3fb;
    --details-lighter: #1273ea;
    --details-dark: #157efb;
    --details-darker: #0f5fbc;
    --accent-base: #ff8225;
    --white-base: #ffffff;
    --default-transition: color .3s easy-in-out, background-color .3s easy-in-out, border-color .3s easy-in-out, fill .3s easy-in-out, transform .3s easy-in-out;

}

:root[data-theme="light"]{

    --bg-color: var(--nav-gray);
    --menu-link-color:  #7c7c7d;
    --switch-bg: transparent;
    --switch-circle-bg:#ffd371;
    --switch-circle-pos:0.24rem;
    --icon-sun: #997f44;
    --icon-moon: var( --primary-base);
    --bg-navBar: var( --nav-gray);
    --copGruen-color:var( --menu);
    --bg-card-header :var( --nav-gray);
    --btn-primary: var(--accent-base);
    --card-border-color: rgba(0, 0, 0, 0.125);
    --paragraph-color: #212529;
    --custom-card:var(--bg-color);
    --menu-bg-color:var(--bg-color);
    --txt-color-contrast: #3c3c3c;
    --dropdown-hover:var(--details-dark);
    
    --logo-codede: url(/images/institutionen_logos/Logocode.de.png);
}

:root[data-theme="dark"]{

    --bg-color: var( --primary-base);
    --menu-link-color: #eaeaea;
    --switch-bg:  var(--menu-link-color);
    --switch-circle-bg: var(--details-lighter);
    --icon-sun:#997f44;
    --icon-moon:var( --primary-base);
    --switch-circle-pos: 2.9rem;
    --bg-navBar: var(--primary-base);
    --copGruen-color:var(--menu-link-color);
    --bg-card-header :var(--details-darker);
    --btn-primary: var(--accent-base);
    --card-border-color:var(--details-light);
    --paragraph-color: var(--white-base);
    --custom-card: #08314f !important;
    --menu-bg-color: var(--details-lighter);
    --txt-color-contrast: #191919;
    --dropdown-hover: var(--accent-base);
    
    --logo-codede: url(/images/institutionen_logos/Logocode.de.dark.png);
    
}

/* Logos */
img.Logo-codede{
    content: var(--logo-codede);
    height: 80px;
}


/*Buttons*/

.btn-primary {
    border: none;
    font-size: 1rem;
    color: rgba(0,0,0,0.97);
    text-decoration: none;
    border-radius: 3px;
    background-color: var(--btn-primary);
}
.btn-primary:hover {
    border: none;
    font-size: 1rem;
    color: rgba(0,0,0,0.97);
    text-decoration: none;
    border-radius: 3px;
    background-color: var(--btn-primary);
}
.btn-primary.disabled, .btn-primary:disabled {
    border: none;
    font-size: 1rem;
    color: rgba(0,0,0,0.97);
    text-decoration: none;
    border-radius: 3px;
    background-color: var(--btn-primary);
}
.dropdown-divider {
    height: 0;
    margin: 0.5rem 0;
    overflow: hidden;
    border-top: 1px solid var( --card-border-color);
}


small, .small {
    font-size: 0.875em;
    font-weight: 400;
    color:  var( --menu-link-color) !important;
}


.dots {
    height: 17px;
    width: 130px;
    background: linear-gradient(90deg,var(--details-light) 25%,
        var(--details-dark) 25%,var(--details-dark) 50%,var(--details-darker) 50%,
        var(--details-darker) 75%,var(--accent-base) 75%);
    margin-bottom: 2em;
}

a{
    color: var(--menu-link-color);
    text-decoration: none;
    background-color: transparent;
}
a:hover {
    color: var(--menu-link-color);

}

li{
    color: var(--menu-link-color);
    text-decoration: none;
    background-color: transparent;

}


/*MODAL CSS */

.modal-header{
    background-color: var(--menu-bg-color) !important;
    color: var( --menu-link-color);
    border-bottom: 1px solid var( --card-border-color)!important ;
}
.modal-content{
    background-color:var(--custom-card) !important;
    color: var( --menu-link-color);
}

.modal-footer {
    border-top: 1px solid var( --card-border-color)!important ;
}

/*Theme Switcher*/

#theme-switcher{
    background-color: var(--switch-bg);
    border-radius: 50px ;
    display: flex;
    align-items: center;
    align-items: center;
    gap: 1.33rem;
    cursor: pointer;
    padding: 0.66rem;
    position: relative;
    border: 1px solid rgba(0, 0, 0, 0.125);
}

#theme-switcher::before{
    content: '';
    position: absolute;
    width: 2.22rem;
    height: 2.22rem;
    background-color: var(--switch-circle-bg);
    border-radius: 50px;
    left: 0;
    z-index:0;
    transform: translateX(var( --switch-circle-pos));
    transition: var(--default-transition);


}

#theme-switcher svg{
    z-index:1;
}

#icon-sun{
    fill: var(--icon-sun);
}
#icon-moon{
    fill: var(--icon-moon);
}

/* End Theme Switcher*/


/*NavBar*/

.navbar{
    background-color: var(--bg-navBar) !important;
    padding-block: 16px !important;
    padding-inline: calc(min(40px,4vw)) !important;
}


.navbar-toggler {
    padding: 0.25rem 0.75rem;
    font-size: 1.25rem;
    line-height: 1;
    background-color:var(--switch-bg);
    border: 1px solid transparent;
    border-radius: 0.25rem;
}

.navbar-expand-lg .navbar-nav .nav-link
{
    text-transform: uppercase !important;
    color: var(--menu-link-color) !important;
    font-size: 17px !important;
}

.nav-item .nav-link a{
    color: var(--menu-link-color) !important;
}


/*End NavBar*/

.card-header p {
    margin-top: 0;
    margin-bottom: 0rem;
}
.card-header {
    padding: 0.75rem 1.25rem;
    margin-bottom: 0;
    background-color: var(--bg-card-header);
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}
.card-header p{
    color: var(--menu-link-color);

}
.card-title{
    color: var(--paragraph-color);
}
.myCenterPlaceTop p{
    color: var(--paragraph-color);

}
.border {
    border: 1px solid var( --card-border-color) !important;
}
.col-form-label{
    color: var(--paragraph-color);
}
.custom-control-label{
    color: var(--paragraph-color);
}
/*.copgruen-text{
    color: var(--menu-link-color);
}*/

.card {
    border-color: var( --card-border-color)!important ;
}
.card-body{
    background-color: var(--bg-color) !important;

}
.list-group-item {
    position: relative;
    display: block;
    padding: 0.75rem 1.25rem;
    /*    background-color:  var(--card-border-color) !important;*/
    background-color: var(--custom-card) !important;
    border: 1px solid var(--card-border-color);
}

.bg-light {
    background-color: var(--bg-color) !important;
}


/* Overwrite Datatables */
table.dataTable {
    border-collapse:collapse;
    border-spacing:0
}
table.dataTable
{
    font: 86%/1rem "Helvetica Neue",HelveticaNeue,Helvetica,Arial,sans-serif !important;
    color: var(--gray);

    margin: 0;
    padding: 0;
    background-color: #fff;
    position: relative;

    height: auto !important;
    min-height: 100%;
    box-sizing: border-box;
    -webkit-font-smoothing: inherit;
}

.table-bordered thead th, .table-bordered thead td {
    border-bottom-width: 0px;
    border-top-width: 0px;
}

table.dataTable
{
    clear: both;
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    border-spacing: 0;
}
.table th, .table td {
    padding: 0.6rem;
}
.table th {
    font-weight: 400;
    font-size: small;
}
.table td {
    color: var(--menu);
    line-height: 1.6;
}
table.dataTable>tbody>tr.child span.dtr-title {
    display: inline-block;
    min-width: 75px;
    color: var(--gray);
    font-weight: 400;
}
.dataTables_info{
    color: var(--gray);
}

/* DT Buttons */
.dt-buttons>button, .buttons-colvis{
    color: var(--gray);
    display: inline-block;

    border-radius: unset;
    background-color: unset;
    transition: unset;
    border:unset;

    margin: unset !important;
    margin-bottom: 0.0rem !important;
    margin-right: 1.5rem !important;

    padding: unset !important;
    padding-right: 1.5rem;
    padding-left: 0.0rem;
    flex: unset !important;
}
.dt-buttons>button:hover, .buttons-colvis:hover {
    color: var(--menu);
    background-color: unset;
    border-color: unset;
}
.dt-buttons>button:active, .buttons-colvis:active {
    color: var(--menu) !important;
    background-color: unset !important;
    border:unset !important;
}
.dt-buttons>button:focus, .buttons-colvis:focus {
    color: var(--menu) !important;
    background-color: unset !important;
    border:unset !important;
}

/* DT Header */
.dataTables_wrapper>.dt-buttons{
    width: 33.3%;
}

.dataTables_length{
    display: unset;
    float: left;
    width: 33.3%;
}
.dataTables_filter{
    display: unset;
    width: 33.3%;
    float: left;
}

.overlay {

    opacity: 0.5;
    z-index: 9999;
}



.ui-jqgrid-titlebar{
    display: none;
}

.row{
    margin-right: inherit;
    margin-left: initial;
}

.col-form-label, .form-control, .text-muted{
    font-size: small !important;
}

.mailPreviewBg{
    background-color: #fff !important;
    padding: 15px;
    border-color: #002752;
    border-style: solid;
    border-width: 1px;
}

.progress{
    /*    height: 35px;*/
    margin-bottom: 17px;
    border-radius: 0.0;
    background-color: #f2f7fb;
}

.progress-bar{
    background-color: #6e966d;
}


.callPhone{
}

/* roxyfileman bugfix Index */
.ui-dialog {
    z-index: 2000 !important;
}

/* Multiselect */
.ui-multiselect-menu{
    z-index: 200;
}

/* PHP GRID Multi Show overflow */
ul.ui-multiselect-checkboxes.ui-helper-reset {
    overflow: scroll !important;
}

.ui-multiselect-menu.ui-widget.ui-widget-content.ui-corner-all{
    z-index: 1050;
    height: auto  !important;
}
.ui-jqgrid-jquery-ui.ui-widget.ui-widget-content.ui-corner-all.ui-front {
    top: 100px;

}

/* add 08/2021 pb */
.grid-email-send{
    background-color: rgba(45, 183, 0, 0.14) !important;
}
.grid-email-no-send{
    background-color: rgba(183, 34, 0, 0.14) !important;
}

/* add 10/2021 pb, abstand im Texteditor */
.trumbowyg-editor p{
    /*    margin: 0!important;*/
    margin: 0 0 10px!important;
}


.dropdown-item{
    white-space: pre;
    overflow: hidden;
    padding-top: 0px;
/*    padding-bottom: 0px;*/
    padding-left: 5px;
    padding-right: 5px;
    /*    color: var(--menu-link-color);*/

}
.dropdown-item.active, .dropdown-item:active {
    color: var(--menu-link-color);
    text-decoration: none;
    background-color: transparent;
}

.dropdown-item:hover, .dropdown-item:focus {    
    color: var(--dropdown-hover); 
    text-decoration: none;
    /*    background-color:var(--menu-bg-color);*/
    background-color:transparent;
}


.dropdown-bg-color {
    background-color: var(--menu-bg-color);
}


.drophead{
    margin-top: 0px;
    margin-left: 5px;
    margin-bottom: 2px;
    font-weight: 500;
}

.dropMainHead
{
    background-color: #17a2b8 !important;
}

.underline{
    border-bottom: 1px solid #5a5a5a;
    width: 100%;
    display: block;
}



/* Left sidebar menu */
#sidebarMenuLeft {
    /*    padding-top: 20px;        */
    left: 0;
    overflow-x: hidden;

    /*     margin-bottom: -101%;   */
    /*    padding-bottom: 101%;    */

}
#sidebarMenuRight {
    /*    padding-top: 20px;        */
    right: 0;
    overflow-x: hidden;

    /*    margin-bottom: -101%;
        padding-bottom: 101%;*/

    direction: rtl;
    text-align:right
}

.sidebar-wrapper{
    display: flex;
    align-items: stretch;
}

.sidebar-sticky a{
    color: var(--gray);
    text-transform: uppercase !important;
    color: var(--menu-link-color) !important;
    font-size: 17px !important;
    margin: 10px;
}
.sidebar-sticky a:hover{
    color: var(--menu);
    text-decoration: none;
}


.custom-card{
    background-color: var(--custom-card) !important;
}

.footer{
    /*margin-top: 25px;
    padding: 10px 0;
    position: relative;
    z-index: 100;*/

    /*    height: 144px;*/
    margin-top: 0px;
    padding: 25px 0;
    position: relative;

    background-color: var(--bg-color) !important;
    /*     border-top: 1px solid var( --card-border-color)!important;*/
}

.vh-97{
    min-height: calc(100vh - 250px)  !important;
}


p, h1, h2{
    color: var(--menu-link-color) !important;
}

.text-justify{
    text-align: justify!important;
}


/* Images */
.img-crop-250 {
    object-fit: cover;
    object-position: center;
    width: 100%;
    max-height: 250px;
    margin-bottom: 1rem;
}
.img-crop-150 {
    object-fit: cover;
    object-position: center;
    width: 100%;
    max-height: 150px;
    margin-bottom: 1rem;
}


cite{
    font-size: smaller;
    color: var(--menu-link-color);
}

/********** help *************/
.help{        
    padding-bottom: 0rem !important;
    border-bottom: 1px solid var(--menu-link-color);
    cursor: pointer;
    background-color: var(--bg-card-header);
}
.help-head{
    display: flex ;
    justify-content: space-between;    
}
.helpt-content{
    max-height: 0;
    overflow: hidden;
    transition: max-height 1.1s ease;
}
.helpt-content p{
    padding-top: 0.2rem;
    line-height: 1.2;
    font-size: 16px !important;
    color:var(--menu-link-color);
}
.help.active svg{
    transform: rotate(180deg);
}
.help.active .helpt-content{
    max-height: 10000px;
    /*    animation: fade 1.2s ease-in;*/
}
.help h6{
/*    color: var(--bg-navBar);*/
    color:var(--txt-color-contrast);
}


/********** FAQ *************/

.faq {
    max-width: 400px;
    margin-top: 1rem;
    padding-bottom:0rem;
    border-bottom: 1px solid var(--menu-link-color);
    cursor: pointer;
}

.questions{
    display: flex ;
    justify-content: space-between;
    align-items: center;
}

.questions h6{
    font-size:18px ;
    line-height: 1.2;
    color:var(--menu-link-color);
}

.answer{
    max-height: 0;
    overflow: hidden;
    transition: max-height 1.1s ease;
}
.answer p{
    padding-top: 0.2rem;
    line-height: 1.2;
    font-size: 16px !important;
    color:var(--menu-link-color);
}
.faq.active .answer{
    max-height: 300px;
    /*    animation: fade 1.2s ease-in;*/
}

.svg-faq{
    fill:var(--menu-link-color) !important;
    transition: transform 0.5s ease-in  !important;
}
.faq.active svg{
    transform: rotate(180deg);
}

.faq-text{
    color: var(--menu-link-color) !important;
    line-height: 1.2;
    font-size: 18px;
    font-weight: 600;
    /*    text-align: center !important;*/
}

select.multiple{    
    height: 240px !important;
}

/* DataTables */
div.dt-container div.dt-info{
    color: var(--gray);
}
div.dt-container div.dt-search label {
    color: var(--gray);
}
div.dt-container div.dt-length label{
    color:var(--gray);
}

/* UPLOAD */
.krajee-default.file-preview-frame{
    background-color: #fff;
}
.file-caption {
    background-color: #fff;
}


/* FK 17.05.2024 */
#pruefung_layermap{
    width: 100%;
    height: 80%;
}

#modal_body_dt112_dat_services{
    height: 450px;
}


#layertree_results{
    width: 25%;
    border-right: 1px solid #ccc;
    padding: 10px;
    box-sizing: border-box;
    color: var(--menu-link-color) !important;
    max-height: 80%;
    overflow-y: auto;
}

layertree_results h5 {
    margin: 0px;
}


#resultsmapcontainer{
    width: 100%;
    height: calc(100% - 30px);
    display: flex;
    flex-direction: row;

}

#resultsmap {
    width: 100%;
    position: relative;
}

#help-featureinfo{
    height: 20px;
    bottom: 0px;
    position: absolute;
    color: var(--menu-link-color);
    left: calc(20% + 20px);
}

#resultmap_tooloverlay{
    display: flex;
    z-index: 20;
    flex-direction: column;
    width: 220px;
    align-content: flex-end;
    flex-wrap: wrap;
    position: absolute;
    top: 15px;
    right: 30px;
}

#resultsmap_tool_toprow{
    display: flex;
    justify-content: space-between;

}


#resultmap_featureinfo{
    background-color: aliceblue;
}


#northarrow{
    display: flex;
    flex-direction: column;
    position: absolute;
    bottom: 105px;
    right: 30px;
    background-color: aliceblue;
    padding: 10px;
    border-radius: 30px;
}

#northarrow > i{
    text-align: center;
    vertical-align: middle;
    font-size: x-large;
}

#northarrow > div{
    text-align: center;
}

#legend-container {
/*    background-color: white;
    border: 1px solid #ddd;
   position: absolute;
    right: 5px;
    margin: 5px;
    top: 135px;
    display: block;*/
    max-height: 500px;
    overflow-y: auto;
    border: 2px solid black;
  /*  border-radius: 10px;
    border: 1.74px solid black;*/
}

.toggle-button {
  width: 100%;
  /*padding: 5px;*/
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.legend-tabs {
  display: flex;
  background-color: #f8f8f8;
  border-bottom: 1px solid #ddd;
}

.legend-tab {
  flex: 1;
  padding: 5px;
  text-align: center;
  cursor: pointer;
  border-right: 1px solid #ddd;
}

.legend-tab:last-child {
  border-right: none;
}

.legend-tab.active {
  background-color: #e0e0e0;
}

.legend-content {
    padding: 10px;

}

.legend-item {
  margin-bottom: 2px;
  font-size: 12px;
  display: flex;
}

.color-box {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin-right: 5px;
}

.vertical-legend-item {
  display: flex;
  align-items: center;
}

.vertical-gradient-container {
  height: 120px; /* Adjust height as needed */
  width: 15px;
  margin-right: 10px;
  border: 1px solid #000; /* Optional: to give the gradient a border */
}

.vertical-gradient-bar {
  height: 100%;
  width: 100%;
}

.vertical-labels-container {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 120px; /* Match the height of the gradient */
}

.vertical-label {
  font-size: 12px;
  /*margin-bottom: 4px;*/
}

.legend-entry {
  display: flex;
  align-items: center;
  margin-bottom: 5px;
}

.original-daten{
    margin-top: 10px;
}


#mapscale{
    display: flex;
    flex-direction: row;
    position: absolute;
    bottom: 40px;
    right: 30px;
    background-color: aliceblue;
    padding: 10px;
    border-radius: 10px;   
    font-size:12px;
}

#mapscaleinput{
    width: 100px;
    padding: 2px;
    margin-left: 10px;
}

#mapscale > div{
    font-size: 15px;
    display: flex;
    align-content: center;
    flex-wrap: wrap;
    flex-direction: row;
}
.maptool{
    border-radius: 10px;
    background-color: white;
    margin: 5px;
}

.activetool{
    border: 2px solid yellow
}

#removeDrawBtn{
    font-size: 20px;
}

.measurement{
    width: 100%;
    background-color: white;
    border-radius: 5px;
    margin: 5px;

    height: 20px;
    font-size: 15px;
    display: none;
    justify-content: space-between;
}

#measurement_value{
    width: 50%;
}

#removeMeasurementBtn{
    float: right;
    border-radius: 50%;
    height: 17px;
    width: 17px;
    margin-top: 1px;
    border: 1px solid black;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
}

.hiding{
    display: none;
}

.layerlist{
    list-style-type: none;
    padding-inline-start: 10px;
    
}

.layerlist > li{
}

.layerlist > li > label{
    margin-left: 10px;
    font-size: 12px;
    margin-bottom: 0px;
}

.settings-icon {
    margin-left: 10px;
    cursor: pointer;
}

.property-dropdown {
    display: block;
    position: absolute;
    background: white;
    border: 1px solid #ccc;
    padding: 10px;
}

#results_wms{
    display: none;
}

.main_layerdiv


.maplayerlist{
    list-style-type: none;
}

.card-img, .card-img-top{
    padding:10px;
}

.input-group-prepend, .input-group-append {
    flex-direction: row-reverse;
}


.orders-title{
    color: var(--menu-link-color);
}

.datepicker table tr td span{
    font-weight: bold;
}

.datepicker table tr td span.disabled {
    font-weight: normal; /* or another value like 400 */
}

.float-right{
    margin-top: 10px !important;
}

#naturraum-legend {
        position: relative;
        padding: 5px;
        display: flex;
        align-items: center;
        color: var(--menu-link-color);
}

#naturraum-legend .legend-color-box {
    width: 20px;
    height: 20px;
    background-color: rgba(0, 255, 0, 0.2); /* Fill color of your layer */
    border: 1px solid #000; /* Optional border for visibility */
    margin-right: 5px;
}

#orgboeden-legend {
        position: relative;
        padding: 5px;
        display: flex;
        align-items: center;
        color: var(--menu-link-color);
}

/*#orgboeden-legend .legend-color-box {
    width: 20px;
    height: 20px;
    background-color: rgba(0, 255, 0, 0.2); 
    border: 1px solid #000; 
    margin-right: 5px;
}*/

#orgboeden-legend .legend-color-box {
    width: 20px;
    height: 20px;
    background: linear-gradient(
        135deg,
        rgba(255, 0, 0, 0.4),   /* Red */
        rgba(255, 127, 0, 0.4), /* Orange */
        rgba(255, 255, 0, 0.4), /* Yellow */
        rgba(0, 255, 0, 0.4),   /* Green */
        rgba(0, 0, 255, 0.4),   /* Blue */
        rgba(75, 0, 130, 0.4),  /* Indigo */
        rgba(143, 0, 255, 0.4)  /* Violet */
    );
    border: 1px solid #000; /* Optional border for visibility */
    margin-right: 5px;
}


@media (min-width:500px) and (max-width: 1199px){

    .card {

        margin-top:2rem !important;
    }
}