body {
  display: block;
}
h4 {
  color: #FF7300;
  margin: 8px 0;
}
h5 {
  color: #FF7300;
  font-size: 16px;
}
form {
  margin-bottom: 0;
}
button,
.button {
  padding: 5px 10px;
  color: #FF7300;
  cursor: pointer;
  border-radius: 1em;
  background-color: #E9E9ED;
  border: 0.5px solid darkgray !important;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 40px;
  min-width: 40px;
  max-width: fit-content;
}
button:hover,
.button:hover {
  color: #FF7300 !important;
  text-decoration: none;
  background-color: darkgray;
}
button:hover:after,
.button:hover:after {
  border-radius: 0.3rem;
  background-color: #fcf8e3;
  position: absolute;
  top: 50px;
  width: max-content;
  word-break: break-word;
  max-width: 80px;
  min-width: 40px;
  left: -20px;
  content: attr(data-info);
  font-size: smaller;
  z-index: 999;
}
button.btn-cta,
.button.btn-cta {
  background: linear-gradient(135deg, #28a745, #218838) !important;
  color: #fff !important;
  border: none !important;
  padding: 12px 24px !important;
  font-weight: 600 !important;
  border-radius: 0.6rem !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.2s ease !important;
}
button.btn-cta:hover,
.button.btn-cta:hover {
  background: linear-gradient(135deg, #218838, #1e7e34) !important;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.2) !important;
}
button.btn-cta:active,
.button.btn-cta:active {
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15) !important;
}
select {
  max-width: 100%;
}
.dateinfo-buttons {
  display: flex;
}
.buttonbar {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.buttonbar > span {
  display: flex;
  gap: 8px;
}
.buttonbar .savedata {
  color: green;
  border-color: green;
}
.buttonbar.top {
  margin-bottom: 20px;
}
.buttonbar.bottom {
  margin-top: 40px;
}
.buttonbar .delete-button {
  color: red;
  border-color: red;
}
.buttonbar .backtoadminlist {
  border-color: #0c5460;
  color: #0c5460;
}
.edit-buttons {
  display: flex;
  justify-content: left;
  gap: 8px;
}
.fullwidth {
  width: 100%;
}
.hidden {
  display: none !important;
}
@media (max-width: 576px) {
  .choose {
    color: #FF7300;
    font-weight: bolder;
  }
}
.choose > span:before {
  content: '';
  display: block;
  height: 40px;
  width: 40px;
  border: 2px solid #FF7300;
  border-radius: 2.5em;
  position: absolute;
  left: calc(50% - 20px);
  color: white;
  top: calc(50% - 20px);
}
@media (max-width: 576px) {
  .choose > span:before {
    display: none;
    top: calc(50% - 18px);
    left: calc(50% - 20px);
  }
}
.not_available {
  opacity: 0.4;
  cursor: not-allowed;
}
.warning,
.field-error {
  color: red;
}
.warning input,
.field-error input,
.warning textarea,
.field-error textarea,
.warning select,
.field-error select,
.warning button,
.field-error button {
  border: 0.5px solid red;
  background-color: #FFE5E5;
}
.warning label,
legend.warning {
  font-weight: bold;
}
.message {
  color: green;
}
.message.noList {
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
}
.marked {
  color: white;
  background-color: #FF7300;
}
#teilnehmer-info {
  border: 1px solid #FF7300;
  color: #FF7300;
  font-weight: bolder;
  margin: 16px;
  padding: 16px;
  border-radius: 0.3rem;
  box-shadow: 5px 2px 2px #FF7300;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#teilnehmer-info svg {
  width: 10%;
  height: auto;
}
#teilnehmer-info p {
  text-align: center;
}
#form-namefield {
  margin-bottom: 16px;
}
#form-namefield > div {
  display: flex;
  gap: 15px;
}
#form-namefield > div > div {
  flex-grow: 1;
}
#form-namefield > div > div > input {
  width: 100%;
}
#form-name {
  margin-right: 5px;
}
#form-message-input {
  padding: 6px;
  min-height: 200px;
}
#form-schwerpunkt {
  margin-bottom: 15px;
}
#form-schwerpunkt ul {
  margin: 0;
  list-style: none;
  padding-left: 1rem;
}
#form-schwerpunkt h6 {
  margin: 1rem 0;
  text-decoration: underline;
}
#form-schwerpunkt .radio {
  display: flex;
  align-items: baseline;
  margin-bottom: 1rem;
}
#form-schwerpunkt input {
  cursor: pointer;
  position: relative;
  margin-right: 10px;
}
#form-schwerpunkt label {
  cursor: pointer;
  line-height: 1.2;
  margin: 0 10px 0 0;
}
#form-schwerpunkt #form-schwerpunkt-message-input {
  margin: 8px 0 0 8px;
  min-width: 75%;
}
#preisinfo p:last-child {
  margin-bottom: 1rem;
  font-size: smaller;
}
#form-personenzahl,
#form-kursinfo,
#form-begleiter {
  margin-bottom: 1rem;
}
#form-personenzahl > label,
#form-kursinfo > label,
#form-begleiter > label {
  margin-bottom: 0;
}
#form-personenzahl > p,
#form-kursinfo > p,
#form-begleiter > p {
  margin: 0 0 10px 10px;
  font-size: smaller;
}
#form-datenschutz-info {
  margin: 5px 10px 10px 23px;
  font-size: smaller;
}
#versendet {
  margin-top: 50px;
}
.calendarArea {
  padding: 10px;
  border: 0.5px solid darkgray;
  position: relative;
  margin-bottom: 15px;
  overflow: hidden;
}
.calendarArea .ortwahl {
  display: flex;
}
.calendarArea .ortwahl > label {
  margin-left: 5px;
}
.calendarArea .month {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 440px;
}
.calendarArea .month h4 {
  margin: 0 0 20px;
}
.calendarArea .month table {
  font-weight: bold;
}
.calendarArea .next {
  position: absolute;
  z-index: 2;
  width: 30px;
  height: 30px;
  line-height: 24px;
  text-align: center;
  top: 50%;
  font-size: 30px;
  font-weight: 200;
  right: 30px;
  color: black;
  cursor: pointer;
}
@media (max-width: 576px) {
  .calendarArea .next {
    right: 10px;
  }
}
.calendarArea .before {
  position: absolute;
  z-index: 2;
  width: 30px;
  height: 30px;
  line-height: 24px;
  text-align: center;
  top: 50%;
  font-size: 30px;
  left: 30px;
  font-weight: 200;
  color: black;
}
@media (max-width: 576px) {
  .calendarArea .before {
    left: 10px;
  }
}
.calendarArea .before:not(.not_available) {
  cursor: pointer;
}
.calendarArea table {
  text-align: center;
  margin: 0 auto;
  width: 77%;
}
.calendarArea table td {
  width: 14%;
  height: 50px;
  line-height: 46px;
  overflow: hidden;
  display: inline-block;
  white-space: nowrap;
  vertical-align: baseline;
  position: relative;
}
.calendarArea table td > span {
  display: inline-block;
  width: 100%;
  position: relative;
}
.calendarArea table td > span:hover:before {
  content: '';
  display: block;
  height: 40px;
  width: 40px;
  border: 2px solid #FF7300;
  border-radius: 2.5rem;
  position: absolute;
  left: calc(50% - 20px);
  opacity: 0.5;
  top: calc(50% - 20px);
}
@media (max-width: 576px) {
  .calendarArea table td > span:hover:before {
    top: calc(50% - 18px);
    left: calc(50% - 20px);
  }
}
@media (max-width: 576px) {
  .calendarArea table td {
    padding: 5px;
  }
}
.calendarArea table th {
  width: 14%;
  height: 50px;
  overflow: hidden;
  display: inline-block;
  white-space: nowrap;
  padding: 10px;
}
@media (max-width: 576px) {
  .calendarArea table th {
    padding: 5px;
  }
}
.calendarArea table.with-ellipsis td th {
  text-overflow: ellipsis;
}
#form-calendar td:not(.not_available) {
  cursor: pointer;
}
#dates {
  display: flex;
}
#dates > p {
  font-weight: 700;
  width: 50%;
  padding: 0 0 0 40px;
  display: flex;
  align-items: flex-end;
}
#dates h4 {
  width: 50%;
}
@media (max-width: 576px) {
  #dates h4 {
    font-size: 1rem;
  }
}
#form-bekannt-message-input {
  margin-top: 8px;
}
#form-datenschutz,
#sozialraum {
  display: flex;
  margin-bottom: 8px;
  align-items: start;
}
#form-datenschutz > input,
#sozialraum > input {
  margin-right: 10px;
  width: auto;
  margin-top: 10px;
}
#form-datenschutz > label,
#sozialraum > label {
  margin-bottom: 0;
}
@media (max-width: 576px) {
  #form-datenschutz,
  #sozialraum {
    display: flex;
    margin-bottom: 0;
  }
  #form-datenschutz input,
  #sozialraum input {
    margin: 10px;
  }
}
#login-body {
  margin-top: 20vH;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
#login-body .headline {
  display: flex;
  align-items: center;
  flex-direction: column;
  margin-bottom: 50px;
}
#login-body .headline h1 {
  color: #FF7300;
}
#login-body .headline svg {
  width: 50px;
  height: 50px;
}
#login-body > form {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 50%;
}
#login-body > form label {
  display: none;
}
#login-body > form > input {
  min-width: 300px;
  padding: 5px 15px;
  font-size: 20px;
}
#login-body > form > button {
  margin: 50px auto;
  min-width: 300px;
}
#bearbeiten-menu {
  display: flex;
  margin: 10px 10px;
  justify-content: center;
}
#bearbeiten-menu button {
  margin: 5px 10px;
}
.sticky {
  position: fixed;
  top: 0;
  width: 58.3%;
  background-color: white;
  z-index: 9;
}
#monthchoose {
  display: flex;
  justify-content: space-evenly;
  padding: 10px 0;
}
#angezeigter-monat {
  position: relative;
}
#angezeigter-monat h4 {
  cursor: pointer;
  padding: 5px;
  border: 1px solid transparent;
  user-select: none;
}
#angezeigter-monat h4:hover {
  border-radius: 0.3rem;
  border: 1px solid #FF7300;
}
#select_date {
  position: absolute;
  top: 65px;
  z-index: 10;
  display: flex;
  justify-content: center;
  box-shadow: 5px 2px 2px grey;
  border: 1px solid grey;
  border-radius: 0.3rem;
}
#select_date > div {
  background-color: white;
  max-height: 210px;
  scrollbar-color: #FF7300;
  scrollbar-width: thin;
}
#select_date > div > div {
  color: #FF7300;
  font-size: 20px;
  padding: 4px;
  border: 1px solid #FF7300;
  border-radius: 0.3rem;
  margin: 1px;
  cursor: pointer;
}
#select_date > div > div:hover {
  background-color: darkgray;
}
#select_date > div .selected {
  background-color: darkgrey;
}
#select_date .select_month {
  overflow-y: scroll;
}
#adminpage {
  position: relative;
}
#adminpage .confirmed {
  color: green;
}
#adminpage .pending {
  color: orange;
}
#adminpage .not_confirmed {
  color: red;
}
#adminpage #bearbeiten {
  position: absolute;
  z-index: 2;
  background-color: #f7f7f7;
  opacity: 0;
  transition: opacity, linear, 250ms;
  border-radius: 0.3rem;
}
#adminpage #bearbeiten.active {
  opacity: 100;
  border: 1px solid gray;
  box-shadow: 10px 5px 5px grey;
  padding: 50px;
  transition: opacity, linear, 250ms;
}
#adminpage #admin-calendar {
  margin-bottom: 50px;
  z-index: 1;
}
#adminpage #admin-calendar table {
  width: 100%;
  border-collapse: collapse;
  padding-top: 45px;
}
#adminpage #admin-calendar table tr td,
#adminpage #admin-calendar table tr th {
  height: 25px;
  border-collapse: collapse;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  max-width: 200px;
}
#adminpage #admin-calendar .info td,
#adminpage #admin-calendar .klaerwerk td,
#adminpage #admin-calendar .wasserwerk td,
#adminpage #admin-calendar .bach td,
#adminpage #admin-calendar .info th,
#adminpage #admin-calendar .klaerwerk th,
#adminpage #admin-calendar .wasserwerk th,
#adminpage #admin-calendar .bach th {
  padding: 0 5px;
}
#adminpage #admin-calendar .day {
  width: 5%;
  font-weight: bold;
}
#adminpage #admin-calendar .dayname {
  width: 10%;
  font-weight: bold;
  border-right: 1px solid #dee2e6;
}
#adminpage #admin-calendar .info {
  width: 10%;
}
#adminpage #admin-calendar .klaerwerk {
  width: 25%;
  background-color: #DDD9C3;
}
#adminpage #admin-calendar .wasserwerk {
  width: 25%;
  background-color: #C6D9F1;
}
#adminpage #admin-calendar .bach {
  width: 25%;
  background-color: #DBEEF4;
}
#adminpage #admin-calendar .block {
  hyphens: auto;
  background-color: #999999;
  text-align: center;
}
#adminpage #admin-calendar .block > div {
  width: 100%;
  min-height: 150px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
#adminpage #admin-calendar .smalltext {
  margin: 0 4px;
  font-size: x-small;
}
#adminpage #admin-calendar .details {
  position: relative;
}
#adminpage #admin-calendar .details table,
#adminpage #admin-calendar .details div {
  position: relative;
}
#adminpage #admin-calendar .details table:before,
#adminpage #admin-calendar .details div:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border: 2px solid #FF7300;
  border-radius: 0.3rem;
  opacity: 0;
  transition: opacity linear 0.3s;
  pointer-events: none;
}
#adminpage #admin-calendar .details table:hover:before,
#adminpage #admin-calendar .details div:hover:before {
  opacity: 1;
  transition: opacity linear 0.3s;
}
#adminpage #admin-calendar .details:empty:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border: 2px solid #FF7300;
  border-radius: 0.3rem;
  opacity: 0;
  transition: opacity linear 0.3s;
  pointer-events: none;
}
#adminpage #admin-calendar .details:empty:hover:before {
  opacity: 1;
  transition: opacity linear 0.3s;
}
#adminpage #change_blockeddate_table {
  width: 100%;
}
#adminpage #change_blockeddate_table > tr > th {
  width: 10%;
}
#adminpage #change_blockeddate_table > tr > td > div > input {
  width: 5%;
}
#adminpage #change_blockeddate_table > tr > td > div label {
  padding-left: 5px;
}
#adminpage #details {
  margin: 20px 0;
}
#adminpage #details input,
#adminpage #details select {
  width: 100%;
}
#adminpage #details button {
  margin: 10px 0 0 10px;
}
#adminpage #details #change_date .td span {
  display: inline-block;
  width: 100%;
  height: 100%;
}
#adminpage #details #change_date .th {
  vertical-align: middle;
}
#adminpage #details #sozialCheckbox {
  cursor: pointer;
}
#adminpage .modal-body ul {
  padding-left: 1rem;
}
#adminpage #Termin-bearbeiten {
  width: 100%;
}
#adminpage #Termin-bearbeiten h4 {
  margin-bottom: 20px;
}
#adminpage #Termin-bearbeiten table {
  width: 100%;
}
#adminpage #Termin-bearbeiten th {
  width: 15%;
  padding: 0 10px;
}
#adminpage #Termin-bearbeiten td {
  width: 35%;
}
#adminpage #Termin-bearbeiten input:not([type=checkbox]),
#adminpage #Termin-bearbeiten select,
#adminpage #Termin-bearbeiten textarea {
  width: 100%;
}
#adminpage #Termin-bearbeiten #invoice_numbers {
  display: flex;
  gap: 8px;
}
#adminpage #Termin-bearbeiten #invoice_numbers span {
  color: blue;
}
#adminpage #Termin-bearbeiten #invoice_numbers span:hover {
  text-decoration: underline;
  cursor: pointer;
}
#adminpage #termin-blockieren {
  margin: 20px 0;
}
#adminpage #termin-blockieren table {
  width: 100%;
}
#adminpage #termin-blockieren th {
  max-width: 33%;
  padding: 5px;
}
#adminpage #termin-blockieren td > div {
  padding-left: 10px;
}
#adminpage #termin-blockieren ul {
  list-style: none;
}
#adminpage #commentblock {
  width: 100%;
}
.modal-backdrop {
  display: none !important;
}
#user-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  padding-top: 120px;
  gap: 8px;
}
#user-menu a {
  color: #FF7300;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px 10px;
  cursor: pointer;
  border-radius: 1em;
  background-color: #E9E9ED;
  border: 0.5px solid darkgray;
}
#user-menu a svg {
  margin-right: 4px;
  max-height: 16px;
}
#user-menu a:hover {
  text-decoration: none;
  background-color: darkgrey;
}
#users {
  display: flex;
  justify-content: center;
  flex-direction: column;
}
#users-list {
  margin: 30px auto;
  width: 50%;
}
#users-list td {
  min-width: 150px;
  cursor: pointer;
  padding-right: 15px;
}
#edit-user {
  margin: 30px auto;
  width: 50%;
}
#edit-user > form label {
  padding-right: 10px;
}
#edit-user > form > div {
  display: flex;
}
#edit-user > form > div > button {
  margin: 10px 20px 10px 0;
}
#error-area-user {
  margin: 30px auto;
  width: 50%;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}
.orange-text {
  color: #FF7300;
}
#confirm_check_div table {
  border: 1px solid;
  width: 100%;
}
#confirm_check_div td,
#confirm_check_div th {
  padding: 5px;
}
#confirm_check_div .modal-body {
  padding: 10px;
}
#confirm_check_div .modal-body > div {
  display: flex;
  margin-top: 10px;
}
#confirm_check_div .modal-body .smalltext {
  color: #6c757d;
  font-size: smaller;
}
#datensicherung {
  margin-bottom: 2em;
}
#datensicherung h2 {
  margin-bottom: 20px;
}
#dokumentausgabe a {
  width: 50%;
  padding: 5px 2em;
  color: #FF7300;
  cursor: pointer;
  border-radius: 0.3rem;
  border: 2px solid #FF7300;
}
#dokumentausgabe a:hover {
  background-color: #555;
  /* Add a dark-grey background on hover */
}
#dokumentausgabe > div {
  width: 50%;
  align-content: center;
}
#alertMessage {
  margin-top: 20px;
}
#search select,
#search input {
  border-radius: 0.3rem;
}
#search button {
  width: 25%;
  min-width: fit-content;
  margin: 0.5rem;
}
#search #search-filter {
  border-radius: 0.3rem;
  box-shadow: 10px 5px 5px grey;
  border: 1px solid grey;
  padding: 1rem;
}
#search #search-filter label,
#search #search-filter input,
#search #search-filter select {
  width: 20%;
  min-width: 20%;
  max-width: 25%;
}
#search #search-filter label {
  padding: 0.5rem;
}
#search #search-filter .buttonbar {
  justify-content: center;
}
#search #search-filter #search-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-bottom: 2rem;
}
#search #search-filter #search-header > div {
  width: 100%;
  display: flex;
  justify-content: center;
}
#search #search-filter #search-header h3 {
  text-align: center;
}
#search #search-filter #search-header .selected-button {
  background-color: grey;
}
#search #search-results {
  margin-top: 1rem;
}
#search #search-results table {
  width: 100%;
}
#search #search-results table tr {
  border-radius: 0.3rem;
  box-shadow: 10px 5px 5px grey;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}
#search #search-results table tr td:first-child,
#search #search-results table tr th:first-child {
  padding-left: 1rem;
}
#search #search-results table tr td,
#search #search-results table tr th {
  padding: 0.5rem;
  text-align: center;
}
#search #action-confirm .modal-body table {
  width: 100%;
}
#search #action-confirm .modal-header {
  flex-direction: column;
}
#search .flexCenter {
  display: flex;
  justify-content: center;
  align-items: center;
}
#search .tablehead > td,
#search .listed > td,
#search .tablehead th,
#search .listed th {
  text-align: center;
}
#summary .summary-table,
#payone-return .summary-table {
  margin-bottom: 32px;
}
#summary .summary-table td,
#payone-return .summary-table td {
  padding: 5px;
}
#summary h1,
#payone-return h1 {
  font-weight: 300;
  font-size: 2.5rem;
  margin: 2rem 0;
  background-color: #FF7300;
  color: #fff;
  padding: 0.5rem 1rem;
  font-family: 'Roboto', sans-serif !important;
}
#summary .wasserschule-logo img,
#payone-return .wasserschule-logo img {
  width: 50%;
  margin: 32px 0 0 0;
}
#summary .payone-logo,
#payone-return .payone-logo {
  width: 80px;
  height: auto;
}
#summary .buttonbar,
#payone-return .buttonbar {
  max-width: fit-content;
  margin: 16px 0;
}
.form-submit-button {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}
.form-submit-button .new {
  border: 1px solid #FF7300;
  box-shadow: 5px 2px 2px #FF7300;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem;
  transform: rotate(-10deg);
}
.form-submit-button .new svg {
  width: 50px;
  height: 40px;
}
.form-submit-button .new p {
  text-align: center;
  color: #FF7300;
  margin: 0;
}
.form-submit-button button {
  height: fit-content;
}
#Anmeldungs-Formular,
#summary {
  margin-bottom: 2rem;
  padding-top: 100px;
}
@media (min-width: 901px) {
  #Anmeldungs-Formular,
  #summary {
    padding-top: 120px;
  }
}
.l-canvas {
  background: unset !important;
  color: unset !important;
}
input,
select,
textarea {
  border: 1px solid #212529 !important;
}
.warning input,
.warning select,
.warning textarea {
  border: 1px solid red !important;
  background-color: #FFE5E5 !important;
}
button:hover {
  background: #0A3C7A !important;
}
input[type=checkbox] {
  -webkit-appearance: checkbox !important;
  box-shadow: unset !important;
  height: unset !important;
}
input[type=checkbox]:before {
  content: unset !important;
}
ul {
  margin-bottom: 1rem !important;
}
h1 {
  font-size: 2.5rem !important;
}
table td,
table th {
  vertical-align: middle;
  padding: unset;
  border-bottom: unset;
}
input[type=date],
input[type=datetime-local],
input[type=email],
input[type=file],
input[type=month],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
input[type=time],
input[type=url],
input[type=week],
select {
  min-height: unset !important;
  line-height: unset !important;
  padding: 2px 6px !important;
  box-shadow: unset !important;
}
input:not([type=submit]),
textarea,
select {
  border-radius: unset !important;
}
select {
  padding: 3px 2px !important;
  height: unset !important;
}
button[type=submit]:not(.w-btn) {
  font-size: 16px !important;
  background: #e9e9ed !important;
  color: #ff7300 !important;
}
button[type=submit]:not(.w-btn):hover {
  background: darkgray !important;
  box-shadow: unset !important;
}
.button:before {
  content: unset !important;
}
#form-kursanfrage .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}
#form-kursanfrage legend {
  font-size: 16px;
  margin: 0 0 8px 0;
}
#form-kursanfrage legend + div {
  display: flex;
  gap: 15px;
}
#form-kursanfrage legend + div > div {
  flex: 1;
}
#form-kursanfrage legend + div > div input {
  width: 100%;
}
#datensicherung-tabs {
  margin-top: 2em;
}
#datensicherung-tabs .tab-buttons {
  display: flex;
  gap: 8px;
  margin-bottom: 1.5em;
}
#datensicherung-tabs .tab-btn.active {
  background-color: #FF7300;
  color: #fff;
  border-color: #FF7300 !important;
}
#datensicherung-tabs .tab-content {
  display: none;
}
#datensicherung-tabs .tab-content.active {
  display: block;
}
#auswertung h2 {
  margin-bottom: 20px;
}
#auswertung .buttonbar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 2em;
  flex-wrap: wrap;
}
#auswertung #auswertung-chart-wrap {
  max-width: 800px;
  margin-top: 1em;
}
/*# sourceMappingURL=main.css.map */