html, body {
  margin: 0;
  padding: 0;
  height: 100%;
  background: #000; /* falls das Bild nicht 100% füllt */
}
svg {
  width: 100%;
  height: 100%;
  display: block;
}
input[type=text] {
  width: 100%;
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border: 2px solid #7f7e7e;
  box-sizing: border-box;
  font-size: 20px;
}
input[type=password] {
  width: 100%;
  padding: 12px 20px;
  margin: 8px 0;
  display: inline-block;
  border: 2px solid #7f7e7e;
  box-sizing: border-box;
  font-size: 20px;
}
input[type="email"] {
  width: 100%; /* Full width */
  padding: 12px; /* Some padding */ 
  border: 2px solid #7f7e7e;
  box-sizing: border-box;
  margin-top: 6px;
  margin-bottom: 16px;
  font-size: 20px;
  resize: vertical;
}  
/* Style the submit button with a specific background color etc */
input[type=submit] {
  background-color: #04AA6D;
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 20px;
}

/* When moving the mouse over the submit button, add a darker green color */
input[type=submit]:hover {
  background-color: #45a049;
}
input[type="radio"],
input[type="checkbox"] {
	transform: scale(2.0);
  font-size: 20px;
border: 2px solid #7f7e7e
}
input[type="submit"],
	input[type="reset"],
	input[type="button"],
	button,
.button {
  background-color: #04AA6D;
  color: white;
  padding: 14px 20px;
  margin: 8px 0;
  border: none;
  cursor: pointer;
 font-size: 19px;
}
.button:hover {
  opacity: 0.8;
}
/* Add a background color and some padding around the form */
button {
  background-color: #04AA6D;
  color: white;
  padding: 14px 20px;
  margin: 8px 0;
  border: none;
  cursor: pointer;
  width: 100%;
}
button:hover {
  opacity: 0.8;
}
.button_2 {
  background-color: #04AA6D;
  color: white;
  padding: 14px 20px;
  margin: 8px 0;
  border: none;
  cursor: pointer;
  width: 100%;
  box-shadow: 4px 4px 2px grey;
  text-decoration: none;
  border-radius: 5px;
}
.button_2:hover {
  background-color: #2626da;
}
.cancelbtn {
  width: auto;
  padding: 10px 18px;
  background-color: #f44336;
}
.imgcontainer {
  text-align: center;
  margin: 20px 0 20px 0;
  position: relative;
}
img.avatar {
  width: 40%;
  border-radius: 50%;
}
.container {
  padding: 20px;
}
span.psw {
  float: right;
  padding-top: 16px;
}
.modal {
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
  padding-top: 0px;
}
.modal2 {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
  padding-top: 0px;
}
.modal-content {
  background-color: #e0e0e0;
  margin: 3% auto 5% auto; /* 5% from the top, 15% from the bottom and centered */
  width: 90%;
  border-radius: 10px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 20px;
}
.close {
  position: absolute;
  right: 25px;
  top: 10px;
  color: red;
  font-size: 40px;
  font-weight: bold;
  text-decoration: none;
}
.close:hover,
.close:focus {
  color: rgb(0, 0, 0);
  cursor: pointer;
    font-size: 45px;
  font-weight: bold;
}

.close2 {
  position: absolute;
  right: 100px;
  top: 23px;
  color: red;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
}
.close2:hover,
.close2:focus {
  color: rgb(7, 3, 239);
  cursor: pointer;
    font-size: 22px;
  font-weight: bold;
}

/* Add Zoom Animation */
.animate {
  -webkit-animation: animatezoom 0.9s;
  animation: animatezoom 0.9s
}

@-webkit-keyframes animatezoom {
  from {-webkit-transform: scale(0)} 
  to {-webkit-transform: scale(1)}
}
  
@keyframes animatezoom {
  from {transform: scale(0)} 
  to {transform: scale(1)}
}

/* Change styles for span and cancel button on extra small screens */
@media screen and (max-width: 300px) {
  span.psw {
     display: block;
     float: none;
  }
  .cancelbtn {
     width: 100%;
  }
}
.imagezoomkarte {
transition: transform 0.9s;
box-shadow: 2px 2px 1px grey;
border-radius: 5%;
}
.imagezoomkarte:hover {
transform: scale(1.5, 1.5);
box-shadow: 4px 4px 2px grey;
border-radius: 5%;
}
.btn-115 {
    position: relative;
    font-weight: 600;
    background-color: transparent;
    border: none;
    outline: none;
    color: #000;
    font-family: Arial, Helvetica, sans-serif;
    cursor: pointer;
    text-decoration: none;
    user-select: none;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    overflow: hidden;
    z-index: 1;
    border-radius: 5px;
    padding: 13px 25px;
    box-sizing: border-box;
    /*** full width block ***/
    /* width: 100%; */
}
.btn-115::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 2px;
    background-color: #00e95d;
    z-index: -1;
    transition: all 0.3s;
    box-sizing: border-box;
}
.btn-115:hover::before {
    height: 100%;
}
.btn-115:disabled {
    pointer-events: none;
    opacity: .65;
    color: #7e7e7e;
    background: #dcdcdc;
    box-shadow: none;
    text-shadow: none;
}
.btn-115:disabled::before {
    background-color: #b8b8b8;
}
/* Videoliste */
.video-playlist-wrapper {
  position: relative;
  width: 452px;
  height: 202px;
  overflow: hidden;
  font-family: Arial, sans-serif;
}
.video-overlay-liste {
  position: absolute;
  top: 0;
  right: -110px;
  width: 160px;
  height: 140px;
  background: rgba(0, 0, 0, 0.25);
  padding: 0px;
  border-bottom-left-radius: 4px;
  transition: right 0.3s ease, opacity 0.3s ease;
  opacity: 0.5;
  z-index: 10;
}
.video-playlist-wrapper:hover .video-overlay-liste {
  right: 0;
  opacity: 8;
  height: auto;  
}
.liste-titel {
  color: #fff;
  font-size: 9px;
  font-weight: bold;
  margin-bottom: 2px;
  text-transform: uppercase;
}
.video-overlay-liste button {
  display: block;
  width: 100%;
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  border: none;
  padding: 3px 7px;
  margin-bottom: 4px;
  text-align: left;
  font-size: 16px;
  cursor: pointer;
  border-radius: 3px;
  transition: background 0.2s;
}
.video-overlay-liste button:hover {
  background: #3498db;
  color: #fff;
}
#tooltip {
  white-space: pre-line; /* erlaubt Zeilenumbrüche durch \n */  
  position: absolute;
  background: rgba(254, 254, 254, 1.0);
  color: #050000;
  padding: 6px 10px;
  border-radius: 5px;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 20px;
  pointer-events: none;
  display: none;
  z-index: 1000;
  box-shadow: 4px 4px 2px grey;

} 
.popup_3_sekunden {
  position: fixed;
  top: 5px;
  right: 10%;
  background-color: #333;
  color: #fff;
  padding: 15px 25px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  font-family: sans-serif;
  z-index: 1000;
  
  /* Startzustand: Unsichtbar für die CSS-Animation */
  opacity: 0;
  display: none;
  transition: opacity 0.5s ease-in-out;
}

/* Klasse für das sanfte Einblenden */
.popup_3_sekunden.show {
  display: block;
  opacity: 1;
}
.hide_id {
  display: none;
}
.myDIV_id:hover + .hide_id {
  display: block;
  color: rgb(255, 0, 0);
}
.button-wiederruf {
  background-color:#d9534f;
  color:white;
  padding:10px 20px;
  border:none;
  cursor:pointer;
}
.eng {
line-height: 2.0;
}
#unsichtbar {
visibility: hidden;
}
/* Kommentar-Box */
fieldset.kommentarBox {
 background-color: #dddcdc;
 opacity: 0.9;
 border: Solid 1px #4d4d4d;
 border-radius: 10px;
 padding: 20px;
 margin: 25px Auto 25px Auto;
 max-width: 99%;
 cursor: Default;
}
kommentar_sicherheitsabfrage_farbe.kommentarBox {
color: #ffffff; 
font-size: 150%;	
}
/* Überschrift */
fieldset.kommentarBox legend {
 font-size: 16px;
 padding: 0 5px 0 5px;
 letter-spacing: 1px;
 color: #2c02fc;
 box-shadow: 5px 5px 7px #A4A4A4;
 display: block;
  margin-left: auto;
  margin-right: auto;
}
/* Navigation */
fieldset.kommentarBox nav {
 text-align: Right;
}
/* Kommentar */
fieldset.kommentarBox dl.kommentar dt {
 border-bottom: Solid 3px #D8D8D8;
 font-size: 16px;
  font-weight: bold;
    font-style: italic;
}
fieldset.kommentarBox dl.kommentar dd {
 margin-left: 10px;
 margin-right: 10px;
}
/* Hyperlinks */
fieldset.kommentarBox a:link,
fieldset.kommentarBox a:visited {
 color: #4169E1;
 text-decoration: None;
}
/* Formularfelder */
fieldset.kommentarBox input,
fieldset.kommentarBox textarea,
fieldset.kommentarBox select {
 font-family: Verdana, Arial, Sans-Serif;
 font-size: 0.94rem;
 margin-top: 5px;

}
/* Optionen */
fieldset.kommentarBox input[type=radio]:checked + label {
 color: #4169E1;
}
fieldset.kommentarBox input[type=radio]#lbl2:checked + label {
 color: #EE0000;
}
/* Pflichtangabe */
fieldset.kommentarBox mark {
 color: #FF0000;
 background-color: Transparent;
}
/* Bewertung */
fieldset.kommentarBox span.bewertung_ok {
 color: #8a8a8a;
}
fieldset.kommentarBox span.bewertung_ko {
 color: #C8C8C8;
}
/* Statusmeldung */
p.status {
 color: #00B32D;
 background-color: #EAFFEF;
 padding: 5px 5px 5px 15px;
 margin: 25px Auto 25px Auto;
 width: 200px;
 border: Solid 1px #D8D8D8;
 border-radius: 5px;
}
p.statusx {
 color: #EE0000;
 background-color: #FFE8E8;
 padding: 5px 5px 5px 15px;
 margin: 5px Auto 25px Auto;
 width: 200px;
 border: Solid 1px #D8D8D8;
 border-radius: 5px;
}
/* Smileys */
span.smiley1::before {
 content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAIAAAC0D9CtAAAABnRSTlMAAQAAAABTxi4hAAABtklEQVR42mNgZGCAo/VFlkLsjEpq3J3ZgovBqNONTYmDXciyCFkZguUnwWgdJnZ/s8X/E7Yo6ID27Wpeaw4Jv4VnUPRYs7PWtav/RFONhH4ul6iT53Gcfgaqp1WDMbVR8w9uDRD0Z6VYKodp/5kXDFfmOjPYib0mpAGCXjdysnsuZOjUYOydaAYVXatuz8bWsNAGoe6wYYMIk187TMFemV4OUwZrBv7rR2AqZkgDXWtZbYrQs1bNEigUrgcTMbsUycDAjuywTTq5miLL1yK557DJIgeeutmWcJGX9RwMxHsG7iUGEQvRl6ToeVrJxuDJwHdpL9wlZtdWmKPF0s8NRuc3wEPF4IwfA8NCT4b8dpgX12q4cTEpWSmsnGJ4c4v5zQXac0P5hdmYo3rNoQo2SuQzhDM82JohIi94B2bVzz2mR6plAzQ51eSAiCcgTu3Iemt4oN1KY5Eo3w9KB6vC2Q3S5L4Q8smX6QIGEhmI9Fauy24QK/XmAC4NFm96+QzYrdHT9Vw/CR5xrqW9qh9QdFp8WCS11IqJXSEES16AoDRgDmIAZiE2By0QUuJgAOaetLkHkdUAALjTihuw3OU+AAAAAElFTkSuQmCC");
 vertical-align: Middle;
}
span.smiley2::before {
 content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAIAAAC0D9CtAAAABnRSTlMAAQAAAABTxi4hAAACCElEQVR42mNgZGCAo/VFlkLsjEpq3J3ZgovBqNONTYmDXciyCFkZguUnwWgdJnZ/s8X/E7Yo6ID27Wpeaw4Jv4VnUPRYs7PWtav/RFONhH4ul6iT53Gcfgaqp1WDMbVR888Jm0/rtO7O13uDQ9uflWKpHKb9Z14wXJnrzGAn9vqEzevFglf7+G8vNf6CUGf9Yb3hg4VK95cbvT5gAxR53cjJ7rmQoVODsXei2Z8NKtd7Be9vtkE2+P1S4St93DfnyN+aynq1T+EpUHCvTC+HKYM1A//1I7Yfl0vfXGL6Z5NWvJzA7JUwbUetf+01vzxb//JGyy+HrMGCZpciGRjYQQ6DKZohDfShZbUplHvYsEGBTU2OU02aLaTdDCL4sp6DgQFZzyatEH6O7sUw7h6T25shbIsbK80hgkAvMYhYiL7EHcSY6GklG4MnA9+lvcTrMTjjx8Cw0JMhv10PLnoshtkgRf/FYQjX5mG/pBK/7Em4no0S+QzhDA+2ZojIC96BWfVzg06GNBMHP4eLp5iLCDMDF2/bbHNY+jC7lcYiUb4flA5WhbMbpMkhR+WbVYZ7p+juXWDy5gDCYV+mCxhIZCDSW7kuu0GsFLIKVGTxppfPgN0aPV3P9ZPgEeda2qv6AUWnxYdFUkutmNgVQrDkBQhKA+YgBmAWYnPQAiElDgZg7kmbexBZDQBCbIS3PtWfrwAAAABJRU5ErkJggg==");
 vertical-align: Middle;
}
span.smiley3::before {
 content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAIAAAC0D9CtAAAABnRSTlMAAAAAAABupgeRAAABtUlEQVR42mNgQAJ7qmyFORiV1Lg7swUXg1GnG5sSB4ewbRUDVhAixWgdJnZ/s8X/E7Yo6ID27Wpeaw6pkDW3Eap/3p5rz8Fa167+E001Evq5XKJOntdtEUxbnzZjaqPmH9waIOjPSrFUDsuZt38yPF7hwWAn9pqQBgh63cjJ4beGYbI2Y+9EM6joYfNrs40eHkZWZ31/gf6NnTDuXpleDksGewb+60dgQrNlOBgY/NrNEXo2qNszMIimGMJEzC5FMjBwIDsMU88WTT8UPbYv64FKUDxjcQPdbTYPFyG5DewlBlEL0ZfEBQAEPa1kY/Bj4Lu0F1XisOXL9UZHp+geXWr6co8Nqh6DM0C3rvFjyG/Xg4s+mSSlycXAwc+hJsepJs3KwcBsnmnwBq5no0Q+QyzDh0P5ovKCd2BW3Z2ovGK++VeYoq9bDFdU6z2BBdqtNBaphrOgdLAtlsMgTe4LIZ98mS5gIJWPSHINBhwGsVJvDuDSYPGml8+Aw34uMOEggxUhUjziXEt7VT+g6LT4sEhqqRUTh1IU9uzw9PSKXGAOYgBmITYHLRBS4mAA5p7cFeeRlQEA7QyV3pMFdZAAAAAASUVORK5CYII=");
 vertical-align: Middle;
}
span.smiley4::before {
 content: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAARCAIAAAC0D9CtAAAABnRSTlMAAQAAAABTxi4hAAAB/0lEQVR42mNgZGCAoz1VtsIcjEpq3J3ZgovBqNONTYmDQ9i2ClkZghUixWgdJnZ/s8X/E7Yo6ID27Wpeaw6pkDW3EXp+3p5rz8Fa167+E001Evq5XKJOntdt0W2onj5txtRGzT+4NUDQn5ViqRyWM2//ZHi8woPBTuw1IQ0Q9LqRk8NvDcNkbcbeiWZQ0bXq9mxsDQttEOoOGzaIMPm1wxTslenlsGSwZ+C/fgSmYoY00LWW1aYIPWvVLIFC4XowEbNLkQwMHMgO26STqymyfC2Sew6bLHLgqZttCRd5Wc/BQLxn4F5iELUQfQl3WMHmayemTQMRBdNOIIhrmwvgzntaycbgx8B3aS9Yz2wZjtm3/r8+dAhEzD70GkH8vzVbNMUQrMfgjB8Dwxo/hvx2sBmHDaoNvPNSHRxCy1IddB1SEUSet1r1PHBgbpTIZ4hl+HAoX1Re8A7YqjeTnBcc2oRuz6ZDS8v13oAD7VYai1TDWVA62BbLYZAm9wUkanO7XSxh7tUb26eClE9dd/l4p2OQzsPDIBO/TBcwkMpHpNEGAw6DWKk3B8BJa4/pmR61lliZlmrtM2stwYnQ4k0vnwGH/dzbP1HS9YoQKR5xrqW9qh8OIAeuxYdFUkutmDiUorDkBSB6enpFLjAHMQCzEJuDFggpcTAAc0/uivPIygDruZRTAdsDUwAAAABJRU5ErkJggg==");
 vertical-align: Middle;
}