body{
    --text-color: #111;
    --link-color: #BD0000;
    --link-bgcolor: #BD0000;
    --link-bghovercolor: #111;
    --linkbright-color: #fff;
    --bg-color: #fff;
    --bghighlight-color: #ddd;
    --bgdark-color: #111;
    --nav-color: #444;
    background: var(--bg-color);
    color: var(--text-color);
    font-size: 1.2em;
    font-family: Arial;
}

h1{
    font-size: 1.2em;
    font-weight: bold;
    margin: 20px 0 0;
    background: var(--bgdark-color);
    color: var(--linkbright-color);
    padding: 10px;
    position: relative;
}
h2{
    font-size: 1em;
    font-weight: bold;
    margin: 10px 0 20px;
}
a{
    color: var(--link-color);;
    font-weight: bold;
    border-bottom: 2px solid var(--link-color);
}
a:hover, a:focus{
    color: var(--text-color);
}
a.arrow-border{
    border: none;
}
.button{
    font-weight: bold;
}
table td input,
table td select,
table td textarea,
table td a.button{
    vertical-align: bottom !important;
    margin-top: 15px !important;
}

#login{
    background: var(--bghighlight-color);
    padding: 10px 20px;
    margin: 30px 0 20px;
    position: relative;
}
#login p{
    margin: 0 15px 20px 0;
}
#login .button{
    padding: 7px 20px 8px;
    margin-left: 20px;
}
a.btn-toggle{
    background: #444;
    color: #fff;
    position: absolute;
    right: 0;
    top: 0;
    padding: 12px 10px 12px 50px;
}
a.btn-toggle:hover,
a.btn-toggle:focus{
    background: var(--link-bghovercolor);
    color: var(--linkbright-color);
}
a.btn-toggle img{
    width: 1.6em;
    height: 1.6em;
    position: absolute;
    top: 0;
    left: 0;
}
#logo{
    margin-bottom: 40px;
}
nav{
    clear: both;
    background: var(--bgcolor);
    border-bottom: 3px solid var(--text-color);
}
nav a{
    border: none;
    padding: 20px 20px;
    display: inline-block;
    background: var(--link-bgcolor);
    color: var(--linkbright-color);
    margin-bottom: 0px;
}
nav a:hover,
nav a:focus,
nav a.active{
    background: var(--link-bghovercolor);
    color: var(--linkbright-color);
}
nav a.active{
    padding: 20px 20px;
    box-shadow: 1px 1px 10px var(--nav-color);

}

article{
    background: var(--bghighlight-color);
    margin: 0 0 40px;
    padding: 10px;
}
footer{
    margin: 0;
    background: var(--bgdark-color);
    color: var(--linkbright-color);
    padding: 30px;
    text-align: center;
    clear: both;
}
footer a,
footer a:hover,
footer a:focus{
    color: var(--linkbright-color);
    border-bottom: 2px solid var(--linkbright-color);
}

table td{
    vertical-align: top;
}
header img{
	float: left;
    margin: 10px;
}
blockquote{
    background: #111;
    color: var(--bg-color);
    padding: 5px 10px;
    border: 2px solid var(--text-color3);
    font-size: 0.9em;
    font-style: italic;
}
.path{
    clear: both;
    padding: 30px 10px 10px 0;
    color: var(--text-color);
}
.error,.success{
    margin: 20px 0 20px;
    padding: 15px;
    background: var(--link-color);
    color: var(--bg-color);
    font-weight: bold;
    font-size: 0.8em;
}
.success{
    background: darkgreen;
}
.error a,
.success a{
    color: var(--linkbright-color);
    border-bottom: 2px solid var(--linkbright-color);
}
header .error{
    margin: 30px 0 0 10px;
}
.add-question{
    margin-right: 10px;
}

.fullscreen,.minimized{
    color: var(--bg-color);
    position: absolute;
    right: 5px;
    top: 5px;
    padding: 3px 13px;
    border: 2px solid var(--linkbright-color);
    cursor: pointer;
}
.question-box{
    text-align: left;
    background: var(--bg-color);
    display: block;
    padding: 20px 10px 40px;
}
.progress-wrapper{
    margin: 0 0 50px;
    padding: 0 0 10px 0;
}
.progress-outline{
    display: inline-block;
    font-size: 1em;
    height: 33px;
    background: var(--bg-color);
    border: 2px solid var(--text-color);
    position: relative;
    margin: 0 0 10px;
}
.progress{
    font-size: 1em;
    text-align: center;
    background: var(--link-color);
    display: inline-block;
    height: 30px;
    color: var(--bg-color);
    border-right: 1px solid var(---text-color);
    position: absolute;
    top: 0;
    left: 0;
}
.remaining-time-wrapper{
    font-size: 1.1em;
    display: inline-block;
    padding: 15px;
    border: 2px solid var(--text-color);
}

.question-wrapper{
    clear: left;
    text-align: center;
    margin: 20px 0 0;
}
.question-wrapper textarea{
    border: 2px solid var(--text-color);
}
.label,
.label-red,
.label-green{
    background: var(--text-color);
    color: var(--bg-color);
    padding: 6px 10px;
    margin: 0 5px 0 0;
    font-size: 1.1em;
}
.label-red{
    background: var(--link-color);
}
.label-green{
    background: darkgreen;
}
.titel{
    font-size: 1.1em;
}
.question{
    margin: 0 0 20px;
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
}
.answer-wrapper{
    text-align: center;
}

p.answer-radio{
    position: relative;
    margin: 0 20px 0 0;
    display: inline-block;
}
p.answer-radio label{
	border-radius: 8px;
    padding: 3.5em 0.5em 1.5em;
    font-weight: bold;
    min-width: 120px;
    background: var(--bg-color);
    border: 2px solid var(--text-color);
    cursor: pointer;
    line-height: 1em;
    font-size: 1.1em;
}
p.answer-radio label.selected{
    background: var(--text-color);
    color: var(--bg-color);
}

input[type="radio"] {
	position: absolute;
	top: 1.5em;
	left: 50%;
	margin-left: -12px;
    font: inherit;
    color: var(--text-color);
    width: 24px;
    height: 24px;
    border: 0.15em solid var(--text-color);
    transform: translateY(-0.075em);
}

.arrow-wrapper{
    display: block;
    height: 50px;
    margin-top: 30px;
}
.arrow-left, .arrow-right{
    border: none;
    text-align: center;
    cursor: pointer;
    float: left;
    display: inline-block;
    padding: 10px 20px;
    border: 2px solid var(--text-color)
}
.arrow-left:focus, .arrow-right:focus{
    background: var(--text-color);
    color: var(--bg-color);
}

.arrow-left span, .arrow-right span{
    display: inline-block;
    padding: 18px 0 0;
}
.arrow-left img, .arrow-right img {
    width: 50px;
    vertical-align: top;
    float: left;
}
.arrow-right{
    float: right;
}
.arrow-right img{
    float: right;
}

.clear-left{
    clear: left;
}
.text-center{
    text-align: center;
}
.display-none{
    display: none;
}
.margin-right-20{
    margin: 0 20px 0 0;
}
.margin-top-20{
    margin-top: 20px;
}
.small-font{
    font-size: 0.8em;
}
tr.no-border td{
    border-bottom: none;
    padding-bottom: 0;
}
td.tdshowpw{
    padding-top: 0;
    padding-bottom: 25px;
    line-height: 0.3em;
    font-size: 0.9em;
}
/* Diagramme */
.diagramm{
    margin: 10px 5px 90px 0;
    float: left;
	height: 100px;
	width: 400px;
	border-left: 2px solid var(--text-color);
	border-bottom: 2px solid var(--text-color);
	position: relative;
}
.balken{
    color: var(--linkbright-color);
	display: inline-block;
	width: 60px;
	background: var(--link-bgcolor);
	position: absolute;
	bottom: 0;
}
.balken.border{
    border-left: 1px solid var(--linkbright-color);
    border-right: 1px solid var(--linkbright-color);
    border-top: 1px solid var(--linkbright-color);
}
.barvalue{
	position: absolute;
	top: 5px;
	width: 60px;
	text-align: center;
}
.barvalue.top0{
    top: -20px;
    color: var(--text-color);
}
.desc,.topdesc,.bottomdesc, .barvalue{
    font-size: 0.7em;
    font-weight: bold;
}
.desc{
	position: absolute;
	top: 103px;
	width: 60px;
	text-align: center;
    background: var(--text-color);
    color: var(--bg-color);
}
.topdesc{
	position: absolute;
	top: -5px;
	left: -20px;
}
.bottomdesc{
	position: absolute;
	bottom: -5px;
	left: -20px;
}
.float-left{
    float: left;
}

/* Druckversion */
@media print {
    body{
        font-size: 0.7em;
        position: relative;
    }
    nav, #login, .path, .button, .btn-toggle, header, footer{
        display: none;
    }
    h1{
        font-size: 1.5em !important;
    }
    label, input, select{
        width: 50% !important;
        float: left !important;
        margin: 0 !important;
        font-size: 0.9em !important;
        font-weight: bold !important;
    }
    label{
        width: 25% !important;
    }
    thead tr,
    tbody td{
        border-top: 2px solid #000 !important;
        border-bottom: 2px solid #000 !important;
    }
    .diagramm{
        border-left: 2px solid #000 !important;
        border-bottom: 2px solid #000 !important;
    }
    .balken{
        border: 1px solid #000 !important;
        border-bottom: 0 !important;
    }
    .balken.no-border{
        border: none !important;
    }
        
}
/* Dark Mode Styles */
body.dark-mode{
    --text-color: #fff;
    --link-color: #fff;
    --link-bgcolor: #333;
    --bg-color: #000;
    --bg-color2: #222;
    --nav-color:transparent;
    background: var(--bg-color2);
    color: var(--text-color);
}

body.dark-mode #login,
body.dark-mode h1,
body.dark-mode label,
body.dark-mode td,
body.dark-mode blockquote,
body.dark-mode .label-green{
    background: var(--bgdark-color);
    color: var(--text-color);
}

body.dark-mode article,
body.dark-mode input,
body.dark-mode select,
body.dark-mode textarea,
body.dark-mode .progress,
body.dark-mode .desc{
    background: var(--link-bgcolor);
    color: var(--text-color);
}

body.dark-mode nav a,
body.dark-mode input[type="submit"],
body.dark-mode a.button,
body.dark-mode a.btn-toggle,
body.dark-mode .arrow-left,
body.dark-mode .arrow-right{
    border: 2px solid var(--text-color); 
    background: var(--link-bgcolor);
    color: var(--text-color);
}
body.dark-mode nav a{
    border-bottom: 0px;
}
body.dark-mode .error,
body.dark-mode .success,
body.dark-mode .fullscreen,
body.dark-mode .minimized{
    border: 2px solid var(--text-color);
    background: var(--bg-color);
    color: var(--text-color);
}

body.dark-mode a:hover,
body.dark-mode a:focus,
body.dark-mode a.active,
body.dark-mode input[type="submit"]:hover,
body.dark-mode input:focus,
body.dark-mode .balken{
    background: var(--link-color);
    color: var(--bg-color);
}