
/* globalnetmedia Internet Solutions www.globalnetmedia.de */


/* ------------------------------------- Variablen ----------------------------- */
:root {
	--textfarbe: #000;

    --dunkelgruen: #33877F;
    --gruen: #66A5A0;
    --mintgruen: #98D187;
    --hellgruen: #99C3BF;
    --rot: #DD0000;

    --grau:  #999;
    --dunkelgrau: #666;
    --hellgrau: #BBB;
    --hellgrau2: #cecece;
    --hellgrau3: #E9E9E9;

    --stepmenue-grau1: #8C8C8C;
    --stepmenue-grau2: #EBEBEB;
    --stepmenue-grau3: #ddd;

    --rostrot: #BE5F7C;
    --blau: #1F71B2;
    --hellblau: #4DB0F1;
    --blaugrau: #CDD5DF;
    --blaugrau-dunkel: #7787A1;
    --gelb: #ffd066;
    --gelborange: #FFB500;
}

/* ---------------------------------------------- Fonts -------------------------------------------*/

@font-face {
	font-family: "Oxygen";
	src: url("/fonts/Oxygen-Light.woff2") format("woff2");
	font-weight: normal;
	font-style: normal;
    font-display: fallback;
}

@font-face {
	font-family: "Cairo";
	src: url("/fonts/Cairo-Regular.woff2") format("woff2");
	font-weight: normal;
	font-style: normal;
    font-display: fallback;
}

@font-face {
	font-family: "Font Awesome";
	src:  url("/fontawesome/webfonts/fa-regular-400.woff2") format("woff2");
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: "Font Awesome Solid";
	src:  url("/fontawesome/webfonts/fa-solid-900.woff2") format("woff2");
	font-weight: normal;
	font-style: normal;
}

/* ---------------------------------------------- Big Guys -------------------------------------------*/

body {
	position: relative;
    z-index: 0;
    color: var(--textfarbe)!important;
	background-color: #fff;
	font-family: "Oxygen", OpenSans, arial, helvetica, clean, sans-serif!important;
	font-size: 17px;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 160%!important;
	letter-spacing: 0;
    z-index: 0;
    padding: 0!important;
    margin: 0!important;
    width: 100%;
    min-height: 100vh;
    background: -moz-linear-gradient(-45deg,  #e5e5e5 0%, #ffffff 38%, #ffffff 73%, #dddddd 100%);
    background: -webkit-linear-gradient(-45deg,  #e5e5e5 0%,#ffffff 38%,#ffffff 73%,#dddddd 100%);
    background: linear-gradient(135deg,  #e5e5e5 0%,#ffffff 38%,#ffffff 73%,#dddddd 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#dddddd',GradientType=1 );

    /*
    background: #e5e5e5;
    background: -moz-linear-gradient(45deg,  #e5e5e5 0%, #ffffff 38%, #ffffff 73%, #dddddd 100%);
    background: -webkit-linear-gradient(45deg,  #e5e5e5 0%,#ffffff 38%,#ffffff 73%,#dddddd 100%);
    background: linear-gradient(45deg,  #e5e5e5 0%,#ffffff 38%,#ffffff 73%,#dddddd 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e5e5e5', endColorstr='#dddddd',GradientType=1 );
    */

}

main {
	position: relative;
	z-index: 0;
}

#nav {
	position: relative;
	z-index: 100;
}

/*body #start */
#background  {
    background-image: url(/images/bg/calculator2.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    /*background-position: 50% 50%;*/
}

.full-screen {
    position: absolute;
    left: 0; right: 0; top: 0; bottom: 0;
    z-index: -1;
}

h1 {
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif!important;
    font-size: 35px;
    font-weight: normal;
    color: var(--dunkelgruen);
    text-transform: uppercase;
    margin: 20px 0;
}

h2 {
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif!important;
    font-size: 30px;
    font-weight: normal;
    color: var(--dunkelgruen);
    text-transform: uppercase;
    margin: 20px 0;
}

h3 {
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif!important;
    font-size: 25px;
    font-weight: normal;
    color: var(--blaugrau-dunkel);
    margin: 30px 0 10px 0;
}

h4 {
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif!important;
    font-size: 20px;
    font-weight: normal;
    color: var(--dunkelgruen);
    margin: 30px 0 10px 0;
}

a:not(.btn) {
    color: var(--dunkelgruen);
    text-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
/*    text-transform: uppercase; */
}

#app {
    min-height: calc(100vh - 70px - 40px);
}

@media (max-width: 576px) {
    h1 {
        font-size: 25px;
    }
    h2 {
        font-size: 22px;
    }
    h3 {
        font-size: 20px;
    }
}

/* ---------------------------------------------- header navbar  -------------------------------------------*/

a.navbar-brand {
    font-size: 0;
    text-indent: -9999px;
    width: 235px;
    height: 45px;
    background-image: url(/images/std/logo.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    margin: 5px 0;
}

@media (max-width: 576px) {
    a.navbar-brand {
        width: 111px;
        height: 31px;
    }
}

#nav {
   /*
    background: #f2f3f7;
    background: -moz-linear-gradient(left,  #f2f3f7 1%, #d3d5dc 27%, #b3b6bf 44%, #d3d5dc 81%, #cfd1d3 89%, #cfd1d3 100%);
    background: -webkit-linear-gradient(left,  #f2f3f7 1%,#d3d5dc 27%,#b3b6bf 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    background: linear-gradient(to right,  #f2f3f7 1%,#d3d5dc 27%,#b3b6bf 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f3f7', endColorstr='#cfd1d3',GradientType=1 );
*/
    background: #f2f3f7;
    background: -moz-linear-gradient(left,  #f2f3f7 1%, #d3d5dc 27%, #bdc1c9 44%, #d3d5dc 81%, #cfd1d3 89%, #cfd1d3 100%);
    background: -webkit-linear-gradient(left,  #f2f3f7 1%,#d3d5dc 27%,#bdc1c9 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    background: linear-gradient(to right,  #f2f3f7 1%,#d3d5dc 27%,#bdc1c9 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f3f7', endColorstr='#cfd1d3',GradientType=1 );
    
    border: 1px solid rgba(0, 0, 0, .05);
    -webkit-filter: drop-shadow( 0px 0px 2px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 2px rgba(0, 0, 0, .3));
    
    margin-bottom: 20px;
}


#nav a.nav-link {
	font-size: 1.0rem;
}

.start #nav .container {
    display: flex;
    justify-content: space-between;
}

.start #nav {
    height: 70px;
    background: rgba(255,255,255,0.7);
    border-bottom: 1px solid #fff;
    -webkit-filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    padding: 0;
}

@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    .start #nav {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
  }
}

@media (max-width:768px) {
    .start #nav .container {
        max-width: 96%;
    }
}

.start #nav #navbarNavDropdown {
    justify-content: flex-end;
    flex-grow: unset;
}

.start #nav .claim {
    display: inline-block;
    text-align: center;
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif!important;
    font-size: 24px;
    text-transform: uppercase;
    color: var(--dunkelgruen);
}

@media (max-width: 992px) {
    .start #nav .claim {
        font-size: 18px;
    }
}

@media (max-width: 576px) {
    .start #nav .claim {
        display: none;
    }
}

#mainnav {
	margin-left: 40px;
}

/* ---------------------------------------------- footer -------------------------------------------*/

/*
.start footer {
    position: fixed;
    z-index: 10;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(255,255,255,0.7);
    border-top: 1px solid #fff;
    -webkit-filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    padding: 0;  
    margin: 0;
    font-size: 11px; 
}

@media (max-width: 765px) {
    .start footer {
        position: relative;
        margin-top: 40px;
    }
}
*/

footer {
    background: #f2f3f7;
    background: -moz-linear-gradient(left,  #f2f3f7 1%, #d3d5dc 27%, #bdc1c9 44%, #d3d5dc 81%, #cfd1d3 89%, #cfd1d3 100%);
    background: -webkit-linear-gradient(left,  #f2f3f7 1%,#d3d5dc 27%,#bdc1c9 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    background: linear-gradient(to right,  #f2f3f7 1%,#d3d5dc 27%,#bdc1c9 44%,#d3d5dc 81%,#cfd1d3 89%,#cfd1d3 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f3f7', endColorstr='#cfd1d3',GradientType=1 );    
    border: 1px solid rgba(0, 0, 0, .05);
    -webkit-filter: drop-shadow( 0px 0px 2px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 2px rgba(0, 0, 0, .3));
    font-size: 11px; 
    min-height: 70px;
    height: auto;
    margin-top: 40px;
}

@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    .start footer {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
  }
}

.footer-logo {
    float:right;
}

.footer-logo a {
    display: block;
    height: 35px;
    width: 250px;
    font-size: 0;
    text-indent: -9999px;
    background-image: url(/images/std/germanoncologylogo.svg);
    background-repeat: no-repeat;
    background-position: left top;
}

@media (max-width: 576px) {
    .footer-logo {
        float:none;
        text-align: center;
    }
}

footer .navbar-nav {
    flex-direction: row;
}

footer .nav-link {
    font-size: 15px;
    color: var(--dunkelgrau);
    margin-left: 20px;
}

footer .nav-item:first-of-type .nav-link {
    margin-left: 0;
}

footer .nav-link:hover {
    color: #000;
}

footer .col-md-6 {
    display: flex;
    align-items: center;
}

footer .col-md-6:last-of-type {
    justify-content: end;
}

@media (max-width: 576px) {
    footer .col-md-6 {
        justify-content: center!important;
        margin-bottom: 10px;
    }
}

/* ---------------------------------------------- forms  -------------------------------------------*/

label.block {
    display: block;
    width: 100%;
    font-size: 0.8em;
    line-height: 110%;
    margin: 0 0 5px 0;
}

.cardbox .form-check {
    margin-left: 5px;
    margin-bottom: 10px;
}

input::placeholder {
    color: var(--hellgrau2)!important;
}

input#email,
input#password {
    border-radius: 4px;
    background: rgba(255,255,255,0.8);
    box-shadow:   inset 3px 3px 8px rgba(0, 0, 0, .2),
                inset -3px -3px 8px rgba(255, 255, 255, 0.2);            
    border: none;
    text-align: center;
    color: #000;
    border: 1px solid var(--hellgrau);
}

#versorgungsformen .form-check {
    margin-left: 5px;
    margin-bottom: 5px;
}

.input-einheit {
    display: inline-block;
    width: 85%;
    margin-right: 3px;
}

.input-group {
    margin-bottom: 5px;
}

/* ---------------------------------------------- Modal  -------------------------------------------*/
.modal-content {
    background-color: rgba(255,255,255,0.8);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}    

.modal-header {
    border: none;
    padding-bottom: 0;
}

.modal-body {
    padding-top:0;
}

.modal .btn-close {
    text-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
}

/* ---------------------------------------------- Buttons  -------------------------------------------*/

.btn-toolbar {
    justify-content: center;
}

.btn {
    font-family: "Oxygen", OpenSans, arial, helvetica, clean, sans-serif !important;
    border: none;
    border-radius: 0.2rem!important;
    text-transform: uppercase;
    font-size: 15px;
    margin-bottom: 15px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    border-radius: 0.2rem;
}

.btn-primary {
    background-color: var(--dunkelgruen);
    background-color: var(--blau);
}

.btn-primary:hover,
.btn-primary.active {
    background-color: var(--hellgruen);
}

.btn-danger {
    background-color: var(--rostrot)
}

.btn-info {
    background-color: var(--blaugrau);
}

.btn-info:hover {
    background-color: var(--blaugrau-dunkel);
}

.btn-warning {
    background-color: var(--gelb);
}

.btn-light {
    background-color: var(--hellgruen);
}

.bg-secondary {
    background-color: #ccc!important;
    color: var(--textfarbe);
}

.btn.print {
    margin: 0!important;
}

.btn.next::before,
a.next::before {
    font-family: "Font Awesome Solid";
    content: "\f101 ";
}

.btn.previous::before,
a.previous::before {
    font-family: "Font Awesome Solid";
    content: "\f100 ";
}

.btn.print::before {
    font-family: "Font Awesome Solid";
    content: "\f02f";
}

/* --- Pager --*/

.page-item.active .page-link {
    background-color: var(--blau);
}

/* --- Toolbar ---*/

.btn-clear {
    border-radius: 0.2rem;
    background-color: rgba(255,255,255,0.4);
    border: solid 1px rgba(0,0,0,0.08);
    border: solid 1px rgba(255,255,255,0.5);
    margin: 0;
    padding-left: 15px;
    padding-right: 15px;
    display: inline-block;
    color: var(--dunkelgruen);
    font-weight: bold;
    font-size: 15px;
}

/* ----------------------------------------------  icons -------------------------------------------*/

.icon,
#nav a.nav-link.icon {
    border: none;
    position: relative;
    z-index: 0;
    height: 34px;
    font-size: 18px;
    line-height: 34px;
    padding: 0 10px 0 35px;
    color: var(--dunkelgrau)!important;
    border-radius: 5px;
    text-transform: uppercase;
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif;
    /*background-color: transparent;*/
    background: linear-gradient(145deg, rgba(0, 0, 0, .08), rgba(255, 255, 255, 0.6))!important;
    /*background: linear-gradient(145deg, rgba(190, 190, 190, 0.7), rgba(255, 255, 255, 0.6))!important;*/
    /*box-shadow:  5px 5px 10px rgba(100, 100, 100, 0.5),
                 -5px -5px 10px rgba(255, 255, 255, 0.3); */           
    transition: all .1s ease-in;         
    margin: 10px 0 0 0;  
    letter-spacing: -0.02em;  
    border: 1px solid var(--hellgrau)!important;  
}

#mainnav .icon,
#nav a.nav-link.icon {
    background: none!important;
    box-shadow: none;
    text-transform: none;
    padding-left: 30px;
    margin: 0 10px;
}

.icon::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;    
    color: var(--dunkelgrau);
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    font-family: "Font Awesome Solid";
    font-weight: normal;
    font-size: 20px;
    z-index: 10;
    line-height: 34px;
    text-align: left;
    padding-left: 10px;
}

#mainnav .icon::before {
    font-size: 18px;
}

.icon:hover,
#mainnav .icon:hover,
#nav a.nav-link.icon:hover {
    background: rgba(255, 255, 255, 0.4)!important;
    box-shadow: inset 5px 5px 10px rgba(100, 100, 100, 0.7),
                inset -5px -5px 10px rgba(255, 255, 255, 0.7);
    color: #000;      
    padding: 1px 11px 0 35px;          
}

#mainnav .icon:hover,
#mainnav .icon:hover::before {
    color: var(--dunkelgrau);
}

.icon:hover::before {
    color:  var(--dunkelgrau);       
}


.icon-login::before {
    content: "\f577";    
}

.icon-unlock::before {
    content: "\f023";    
}

.icon-unlock:hover::before {
    content: "\f09c";    
}

.icon-logout::before {
    content: "\f2f5";    
}

.icon-modul::before {
    content: "\f6d1";    
}

.icon-weiter::before {
    content: "\f101";    
}

.icon-user::before {
    content: "\f500";    
}

.icon-user {
    padding-left: 36px!important;
}

.icon-permission::before {
    content: "\f637";    
}

.icon-permission {
    padding-left: 27px!important;
}

.icon-data::before {
    content: "\f1c0";    
}

.icon-lizenz::before {
    content: "\f505";    
}

.icon-lizenz {
    padding-left: 36px!important;
}

.icon-adduser::before {
    content: "\f234";    
}

.icon-adduser {
    padding-left: 45px!important;
}

.icon-plus::before {
    content: "\f65e";    
}

/* ---------------------------------------------- table  -------------------------------------------*/

.table-bordered tbody,
.table-bordered td,
.table-bordered tfoot,
.table-bordered th,
.table-bordered thead,
.table-bordered tr {
    border-top: none!important;
    border-right: 1px solid #ececec!important;
    /*border-left: 1px solid #ececec!important;*/
    border-left: none;
}

.table-bordered tbody,
.table-bordered thead,
.table-bordered tr {
    border-left: none!important;
    border-right: none!important;
}

.table-bordered th {
    border-bottom-width: 2px;
}

.table-bordered tr:last-of-type {
    border-bottom: none!important;
}

.table-bordered tr > th:first-of-type,
.table-bordered tr > td:first-of-type {
    border-left: none!important;
}

.table-bordered tr > th:last-of-type,
.table-bordered tr > td:last-of-type {
    border-right: none!important;
}

/* datatables */

table.table-bordered.dataTable {
    margin-top: 30px!important;
}

 table.table-bordered.dataTable tr:last-of-type td {
    border-bottom-width: 0!important;
  }

  table.table-bordered.dataTable th {
    border-bottom-width: 2px!important;
  }

 /* table Helper */
 table form {
     padding: 0;
     margin: 0;
 } 

 table .btn {
     margin-bottom: 0px;
 }

 @media screen and (max-width: 800px) {
    table .btn {
        margin-bottom: 10px;
    }
}    

/*----- Ergebnis-Table ---------*/

table.ergebnis {
    margin: 15px 0 30px;
    border-collapse: collapse;
}

table.ergebnis.maindata {
    max-width: 80%;
}

table.ergebnis td,
table.ergebnis th {
    padding: 5px 12px!important;
}

table.ergebnis th {
    font-weight: normal;
    font-size: 0.9em;
    border-left: 1px solid var(--hellgrau2);
    border-bottom: 2px solid var(--hellgrau2);
    color: var(--dunkelgruen);
}

table.ergebnis td {
    /*border-left: 1px solid var(--hellgrau2); */ 
    border-bottom: 1px solid #ebebeb;
    padding: 6px 20px 6px 7px!important;
    background-clip: padding-box;
    position: relative;
}

table.ergebnis tr > th:first-of-type,
table.ergebnis tr > td:first-of-type  {
    border-left: none;
}

table.ergebnis tr:last-of-type td {
    border-bottom: none;
} 

table.ergebnis td.zahl {
    text-align: right;
    white-space: nowrap;
}

table.ergebnis td.zahl.neg {
    color: var(--rot);
}

table.ergebnis td.name,
table.ergebnis .erloes {
    font-weight: bold;
}

table.ergebnis td.name {
    color: #666;
}

table.ergebnis td .aw-icon{
    position: absolute;
    width: 20px;
    height: 20px;
    right: 55px;
    top: 6px;
    z-index: 1;
}

table.ergebnis.erloestab {
    width: 600px;
}


table.ergebnis.meditab {
    width: 880px;
}

@media (max-width: 860px) {
    table.ergebnis {
        font-size: 15px;
    }
    table.ergebnis.meditab,
    table.ergebnis.erloestab,
    table.ergebnis.maindata {
        width: 100%;
        max-width: 100%;;
    }
}    

/* ---------------------------------------------- Chart  -------------------------------------------*/

#chart {
    width: 90%;
    margin: 0 auto;
}

@media (max-width: 860px) {
    #chart {
        width: 100%;
    }
}


/* ---------------------------------------------- helper  -------------------------------------------*/

.text-gruen {
    color: var(--gruen);
}

.text-hellgruen {
    color: var(--hellgruen);
}

.text-gruen {
    color: var(--dunkelgruen);
}

.margin-auto {
    margin: 0 auto;
}

.text-right {
    text-align: right;
}

.text-center {
    text-align: center;
}

.text-klein {
    font-size: 0.85em;
    font-weight: normal;
}

.bordered-attention {
    border: 2px solid var(--gelborange);
    padding: 5px 10px;
}

.attention {
    padding: 10px 35px;
    border-radius: 0.2em;
    background-color: var(--gelborange);
    color: #000;
    font-weight: bold;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    font-size: 0.9em;
}

.unsichtbar {
    display: none;
}

.legende {
    margin-top: 30px;
    font-size: 0.9em;
}

/* Acord - Acordion */
.collapse.show .acord {
    padding: 45px 15px 15px;
    margin-top: -40px;
    margin-bottom: 30px;
    border: 1px solid var(--hellgrau);
    width: 50%;
}

#versorgungsformen .collapse.show .acord {
    padding: 35px 15px 15px;
    margin-top: -35px;
    margin-bottom: 10px;
}

/* Mensch */
.how-therapie {
    position: relative;
    z-index: 0;
    min-height: 140px;
}
.human-data {
    text-align: right;
    height: 140px;
    background-image: url(/images/bg/mensch.png);
    background-position: left top;
    background-repeat: no-repeat;
    position: relative;
    z-index: 0;
    display: flex;
    align-items: flex-end;
    font-size: 0.9em;
}

.human-data .koerpergroesse {
    transform: rotate(90deg);
    position: absolute;
    top: 40%;
    left: -20px;
    z-index: 5;
    color: var(--dunkelgrau);
    background-color: #fff;
    padding: 0 2px;
}

.human-data-div {
    text-align: left;
    color: var(--dunkelgrau);
    margin-left: 65px;
}

.human-data-print {
    display: none;
}



/*-- Cards --*/

.my-card {
    margin: 0 auto;
    padding: 25px;
    background: rgba(255,255,255,0.5);
    border: 1px solid rgba(255, 255, 255, 0.4);
    -webkit-filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    border-radius: 0.3em;
    margin-top: 50px;
}

.modul-card {
    background-image: url(/images/bg/proben.jpg);
    background-size: cover;
    background-position: center;
    border-radius: 4px;
    padding: 100px 25px 25px;
}

.modul-card h3 {
    color: #fff;
    display: block;
    text-align: center;
}

.modul-card .card-body {
    background: rgba(255,255,255,0.4);
    border: 1px solid rgba(255, 255, 255, 0.4);
    -webkit-filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    filter: drop-shadow( 0px 0px 5px rgba(0, 0, 0, .3));
    border-radius: 10px;
    font-weight: normal;
}

@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    .my-card,
    .modul-card .card-body {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    background: rgba(255,255,255,0.6);
  }
}

@supports not ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
    .my-card,
    .modul-card .card-body {
      background-color: rgba(255, 255, 255, .75);
      position: relative;
      z-index: 1;
    }
/*
    .my-card::before,
    .modul-card .card-body::before {
        background-attachment: fixed;
        background-image: -moz-element(#background);
        background-size: cover;
        content: "";
        filter: blur(10px);
        position: absolute;
        left: 0; right: 0; top: 0; bottom: 0;
        z-index: -1;
      }
  */  
  }



/*------------------------ Bootstrap ---------------------------*/

.bg-success {
    background-color: var(--gruen)!important;
}

.badge {
    border-radius: .1em;
    font-weight: normal;
    text-transform: uppercase;
}

/* tooltip */

.aw-icon {
    font-size: 20px;
    color: var(--mintgruen);
}

a.aw-icon {
   text-decoration: none!important;
   color: var(--mintgruen)!important;
}

.aw-icon:hover {
    cursor: help;
}

th .aw-icon {
    font-size: 18px;
}

.color-tooltip > .tooltip-inner {
    max-width: 400px!important;
    width: auto!important;
    background-color: var(--dunkelgruen);
    border-radius: 5px;
    text-align: left;
    box-shadow: 0px 0px 4px black;
    opacity: 1!important;
}

.color-tooltip.bs-tooltip-bottom > .tooltip-arrow::before,
.color-tooltip.bs-tooltip-auto[data-popper-placement^=bottom] > .tooltip-arrow::before {
    border-bottom-color: var(--dunkelgruen);
}

.color-tooltip.bs-tooltip-top > .tooltip-arrow::before,
.color-tooltip.bs-tooltip-auto[data-popper-placement^=top] > .tooltip-arrow::before {
    border-top-color: var(--dunkelgruen);
}

.color-tooltip.bs-tooltip-start > .tooltip-arrow::before,
.color-tooltip.bs-tooltip-auto[data-popper-placement^=left] > .tooltip-arrow::before {
    border-left-color: var(--dunkelgruen);
}

.color-tooltip.bs-tooltip-end > .tooltip-arrow::before,
.color-tooltip.bs-tooltip-auto[data-popper-placement^=right] > .tooltip-arrow::before {
    border-right-color: var(--dunkelgruen);
}

:root {
	--tooltip-color: red!important;
    --tooltip-max-width:  1500px!important;
}

/* accordion */

.accordion {
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
}

.accordion,
.accordion-button {
    border-radius: 0!important;
}

.accordion-button:focus {
    outline:0!important;
    outline:none!important;
    box-shadow: none;
    border-color: transparent;
}

.accordion-item h4 {
    margin-top: 0!important;
    margin-bottom: 0!important;
    padding-top: 0!important;
    padding-bottom: 0!important;
    font-size: 18px;
}

.accordion-item h4 button {
    font-family: "Cairo", OpenSans, arial, helvetica, clean, sans-serif;
    font-size: 18px;
    font-weight: normal;
    color: var(--dunkelgruen);
}

.accordion-button:not(.collapsed) {
    background-color:var(--hellgrau3);
    color: var(--dunkelgruen)!important;
}

.accordion-button::before {
    flex-shrink: 0;
    width: var(--bs-accordion-btn-icon-width);
    height: var(--bs-accordion-btn-icon-width);
    content: "";
    background-image: var(--bs-accordion-btn-icon);
    background-repeat: no-repeat;
    background-size: var(--bs-accordion-btn-icon-width);
    transition: var(--bs-accordion-btn-icon-transition);
  }

  .accordion-button:not(.collapsed)::before {
    background-image: var(--bs-accordion-btn-active-icon);
    transform: var(--bs-accordion-btn-icon-transform);
  }

#btn-back-to-top  {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    border: none;
    outline: none;
    background-color: var(--grau);
    color: white;
    cursor: pointer;
    font-size: 0;
  }

  #btn-back-to-top::before {
    content: "\f062";    
    font-family: "Font Awesome Solid";
    width: 30px;
    height: 30px;  
    font-size: 18px;  
}

/* ----------------------------------------------   -------------------------------------------*/

table td {
    background-color: #fff;
}

/*Hidden class for adding and removing*/
.lds-dual-ring.hidden {
	display: none;
}

/*Add an overlay to the entire page blocking any further presses to buttons or other elements.*/
.overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw!important;
	height: 100vh!important;
	background: rgba(0,0,0,.8);
	z-index: 999;
	opacity: 1;
	transition: all 0.5s;
}

/*Spinner Styles*/
.lds-dual-ring {
	display: inline-block;
	width: 80px;
	height: 80px;
}
.lds-dual-ring:after {
	content: " ";
	display: block;
	width: 64px;
	height: 64px;
	margin: 10% auto;
	border-radius: 50%;
	border: 6px solid #fff;
	border-color: #fff transparent #fff transparent;
	animation: lds-dual-ring 1.2s linear infinite;
}
@keyframes lds-dual-ring {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* ---------------------------------------------- Navigation -------------------------------------------*/

.start #nav .navbar-nav a {
    color: var(--dunkelgrau)!important;
    text-transform: uppercase;
}

.nav-link {
    text-transform: uppercase;    
}

.navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 15px;
    padding-left: 15px;
    border-radius: 0.2em;
}

.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .show > .nav-link {
    color: var(--dunkelgruen);
    font-weight: bold;
}

.navbar-light .navbar-nav .nav-link:hover {
    color: var(--dunkelgruen);
}

/* -- mobile --*/

.navbar-light .navbar-toggler {
    color: var(--dunkelgruen)!important;
    border-color: var(--dunkelgruen)!important;
}

.navbar-light .navbar-toggler-icon {
    fill: var(--dunkelgruen)!important;
    stroke: var(--dunkelgruen)!important;
}

/* --- Nav Pills Stepmenue    -- */

.pill-navigation,
.stepmenue,
.stepmenue .btn-primary {
    position: relative;
}

.stepmenue .btn-primary {
    background-color: var(--blau)!important;
    border: 1px solid var(--blau)!important; 
    color: #fff!important;
}

.stepmenue .btn-primary:hover {
    background-color: var(--hellblau)!important;
    border-color: var(--hellblau)!important; 
    color: #fff!important;
}

.stepmenue .btn-primary.disabled,
.stepmenue .btn-primary:disabled {
    background-color:#fff!important;
    border-color: var(--blau)!important; 
    color: var(--blau)!important;
    cursor: not-allowed!important;
    opacity: 0.3;
}

.kalkulator .nav-pills .nav-link,
.kalkulator .btn.next,
.kalkulator .btn.previous {
    position: relative;
    color: #fff;
    background-color: var(--dunkelgruen)!important;
    border: 1px solid var(--dunkelgruen)!important;
    margin-right: 25px;
}

.kalkulator .btn.previous {
    color: var(--dunkelgruen);
    background-color: #fff!important;
    border: 1px solid var(--dunkelgruen)!important;
}

.kalkulator .nav-pills .nav-link:disabled,
.kalkulator .btn.next.disabled,
.kalkulator .btn.next:disabled,
.kalkulator .btn.previous.disabled,
.kalkulator .btn.previous:disabled  {
    background-color: #fff!important;
    border-color: var(--dunkelgruen)!important;
    color: var(--dunkelgruen);
    opacity: 0.3;
}

.kalkulator .nav-pills .nav-link.result,
.stepmenue .btn-primary.result {
    background-color: var(--gelborange)!important;
    border: 1px solid var(--gelborange)!important;    
    position:absolute;
    right: 0;
} 

.kalkulator .nav-pills .nav-link.result:disabled,
.stepmenue .btn-primary.result.disabled,
.stepmenue .btn-primary.result:disabled {
    background-color: #fff!important;
    color: var(--gelborange)!important;
    opacity: 0.3;
}

.stepmenue .btn-primary.chevron-right {
    margin-right: 25px!important;
}

.kalkulator .nav-pills .nav-link.chevron-right::after,
.stepmenue .btn-primary.chevron-right::after {   
    font-family: "Font Awesome Solid";
    content: "\f101";
    position: absolute;
    right: -22px;
    width: 18px;
    height: 16px;
    font-size: 16px;
    color:var(--grau)
}

.kalkulator .nav-pills .nav-link.active,
.kalkulator .nav-pills .show > .nav-link,
.kalkulator .nav-pills .nav-link:hover {
    color: #fff;
    background-color: var(--blau);
    border: 1px solid var(--blau);        
  }

.start .nav-pills .nav-link{
    border-radius: 0.2rem;
    background-color: rgba(255,255,255,0.4);
    border: solid 1px rgba(0,0,0,0.08);
    border: solid 1px rgba(255,255,255,0.5);
    margin: 0 10px 15px;
    padding-left: 15px;
    padding-right: 15px;
    display: inline-block; 
    color: var(--dunkelgruen); 
    font-weight: bold;
    font-size: 15px;
}

.start .nav-pills .nav-link:hover,
.start .nav-pills .nav-link.active {
    background-color: rgba(6,104,95,0.4);
    border: solid 1px rgba(0,0,0,0.08);  
    color: #fff;
}

.stepmenue2 ul {
    text-align: center;
}

.stepmenue2 {
    margin: 10px 0 10px 0;
}

.stepmenue2 li,
.stepmenue2 ul { 
    margin: 0;
    padding: 0;
    position: relative;
}

.stepmenue2 li {
    list-style: none;
    list-style: none;
    display: inline-block;
    margin-bottom: 20px;
}

.stepmenue2 li a {
    font-family: "Oxygen", OpenSans, arial, helvetica, clean, sans-serif !important;
    font-size: 15px;
    text-transform: uppercase;
    text-decoration: none!important;
    padding: 5px 20px;
    /*border: 1px solid var(--stepmenue-grau3);
    background-color: var(--stepmenue-grau2);
    color: var(--stepmenue-grau1)!important;*/
    border: 1px solid var(--blau);
    background-color: #fff;
    color: var(--blau)!important;
    border-radius: 15px;
    margin: 0 20px;
    width: 100%;
}

.stepmenue2 li.active a,
.stepmenue2 li a:hover {
    background-color: var(--blau);
    border-color: var(--blau);
    color: #fff!important;
}

.stepmenue2 li a::after,
.stepmenue2 li a::before {
    content: "";
    /*border-top: 2px solid var(--stepmenue-grau2);*/
    border-top: 2px solid var(--blau);
    display: inline-block;
    width: 22px;
    height: 2px;
    position: absolute;
    top: 50%;
}

@media (max-width: 840px) {
    .stepmenue2 li a {
        padding: 5px 10px;
        margin: 0 10px;
        font-size: 14px;
    }
    .stepmenue2 li a::after,
    .stepmenue2 li a::before {
        width: 12px;
    }
}

.stepmenue2 a[type="submit"] {
    -webkit-appearance: none!important;
}

.stepmenue2 li.active ~ li a {
    border: 1px solid var(--stepmenue-grau3);
    background-color: var(--stepmenue-grau2);
    color: var(--stepmenue-grau1)!important;
    pointer-events: none!important;
    cursor: default;
    padding: 5px 20px;
    font-size: 15px;
    margin: 0 20px;
}

.stepmenue2 li a.submit-to-next {
    pointer-events: none!important;
    cursor: default!important;
    color: var(--blau)!important;    
}

.stepmenue2 li a::after {
    right: -2px;
}

.stepmenue2 li a::before {
    left: -2px;
}

.stepmenue2 li.active a::after,
.stepmenue2 li.active a::before {
    border-color: var(--blau);
}

.stepmenue2 li.active ~ li a::after,
.stepmenue2 li.active ~ li a::before {
    border-top: 2px solid var(--stepmenue-grau3);
}

.stepmenue2 li:first-of-type a {
    margin-left: 0;
}

.stepmenue2 li:last-of-type a {
    margin-right: 0;
}

.stepmenue2 li:first-of-type a::before,
.stepmenue2 li:last-of-type a::after {
    display: none;
}

.stepmenue2 li:last-of-type a {
    margin-right: 0;
}

/* --- Dropdown -- */

.dropdown-menu {
	border-top: none;
	background-color: rgba(255,255,255,0.85);
    border-radius: 0 0 0.2rem 0.2rem;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    text-transform: uppercase;
}

.dropdown-menu[data-bs-popper]
/* ---- Seitennavigation ---*/

.dropdown-menu[data-bs-popper] {
    margin-top: -8px;
}



/* -------- welcome -------*/

.welcome h1 {
    width: 100%;
    text-align: center;
}

span.welcome-pic {
    width: 100%;
    display: block;
    text-align: center;
}

.welcome-pic img {
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 0.2em;
    margin: 0 auto 20px;
    -webkit-box-shadow: 2px 2px 14px 2px rgba(0,0,0,0.6); 
    box-shadow: 2px 2px 14px 2px rgba(0,0,0,0.6);
    max-width: 100%;
}

.zitat {
    display: block;
    padding: 15px;
    border-radius: 0.2em;
    background-color: rgba(6,104,95,0.5);
    border: 1px solid rgba(255, 255, 255, .08);
    -webkit-box-shadow: 2px 2px 8px 2px rgba(0,0,0,0.5); 
    box-shadow: 2px 2px 8px 2px rgba(0,0,0,0.5);
    color: #fff;
}

.zitat i {
    padding-bottom: 15px;
}

/* Color Version */

body {
    background-image: linear-gradient(
        110deg,
        hsl(170deg 15% 85%) 0%,
        hsl(170deg 15% 85%) 9%,
        hsl(170deg 15% 85%) 18%,
        hsl(170deg 15% 85%) 27%,
        hsl(171deg 17% 83%) 36%,
        hsl(172deg 20% 79%) 45%,
        hsl(173deg 23% 75%) 55%,
        hsl(174deg 25% 71%) 64%,
        hsl(174deg 24% 71%) 73%,
        hsl(175deg 22% 73%) 82%,
        hsl(175deg 19% 75%) 91%,
        hsl(177deg 15% 77%) 100%
        );
}

#application #nav,
#application footer {
    background: #fff;
}

#application main > .container {
    background: rgb(255,255,255);
    padding: 30px 30px 40px;
    min-height: 50vh;
    border-radius: 0.2em;
    max-width: 90vw;
}

@media (max-width: 1080px) {
    #application main > .container {
        max-width: 96vw;
    }
}

@media (max-width: 840px) {
    #application main > .container {
        padding: 30px 20px 40px;
    }
}


@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    #application main > .container {
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
  }
}  

a.navbar-brand,
.footer-logo a {
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.2))!important;
}  

.table-bordered tbody,
.table-bordered td,
.table-bordered tfoot,
.table-bordered th,
.table-bordered thead,
.table-bordered tr {
    border-color: #BBCDCC!important;
}

.side-menu {
    padding-left: 15px!important;
    padding-right: 15px!important;
}

.side-menu li {
    list-style: none;
}

.side-menu .nav-link {
    padding: 2px 0 !important;
    text-transform: none;
    color: var(--textfarbe);
    font-size: 0.8em;
    text-shadow: 0 5px 15px rgba(0, 0, 0, 0.15);
    border-radius: 0.2rem;
    background-color: rgba(0,0,0,0.05);
    border: solid 1px rgba(0,0,0,0.07);
    padding: 1px 2px !important;
    text-align: center;
    margin: 5px 0;
    text-align: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
  }

  .side-menu .nav-link:hover {
    background-color: rgba(0,0,0,0.14);
    color: #fff;
  }

  .side-menu .nav-link.subline {
      background: none!important;
      border: none!important;
      text-align: left;
      font-size: 0.9em;
      margin-top: 15px!important;
      color: var(--dunkelgrau)!important;
      box-shadow: none;
      text-align: center;
  }

  .side-menu .nav-link.mainline {
    margin-top: 0;
    font-weight: bold;
    text-align: center;
    text-transform: uppercase;
  }

  #calc_result {
    line-height: 110%!important;
  } 
