/*
 css loader: 0
*/

:root {
  --appointmentPlaner-color-highlight: #4c4c4c;
  --appointmentPlaner-color-selectable: #D0E2E9;
  --appointmentPlaner-color-highlight-contrast: #ffffff;
  --appointmentPlaner-backgroundcolor-timeline: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-timeline: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-color-button: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-button-hover: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-color-button-contrast: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-color-button-contrast-hover: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-button-border: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-button-border-hover: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-backgroundcolor-appointment: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-appointment: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-backgroundcolor-appointment-hover: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-appointment-hover: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-backgroundcolor-appointment-selected: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-appointment-selected: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-backgroundcolor-time: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-time: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-backgroundcolor-time-hover: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-time-hover: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-backgroundcolor-time-selected: var(--appointmentPlaner-color-highlight);
  --appointmentPlaner-color-time-selected: var(--appointmentPlaner-color-highlight-contrast);
  --appointmentPlaner-color-light: #eeeeee;
  --appointmentPlaner-color-gray: #C5C5C5;
  --appointmentPlaner-color-base: #0D0D0D;
}

form-generator {
  /* SelectMultiTopic */
}
body > form-generator {
  font-family: "Trebuchet MS", Helvetica, Arial, sans-serif;
  font-size: 1rem;
}
form-generator .row {
  margin-left: auto;
  margin-right: auto;
}
form-generator .row [class*=col-sm] + [class*=col-sm] {
  margin-top: 0;
}
form-generator a {
  color: var(--appointmentPlaner-color-highlight);
  font-weight: 600;
}
form-generator .stepControl > .stepCount {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  float: none;
  overflow: hidden;
  border: 3px solid var(--appointmentPlaner-backgroundcolor-timeline);
  background-color: var(--appointmentPlaner-color-timeline);
  color: var(--appointmentPlaner-backgroundcolor-timeline);
  font-weight: 700;
}
form-generator .stepControl > .stepCount:before {
  content: "\f00c";
  font: normal normal normal 14px/1 FontAwesome;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-indent: 0;
  visibility: hidden;
  opacity: 0;
}
form-generator .stepControl > .stepCount.filled {
  background-color: var(--appointmentPlaner-backgroundcolor-timeline);
  color: var(--appointmentPlaner-color-timeline);
}
form-generator .stepControl > .stepCount.filled:not(.current) {
  text-indent: -2000em;
  color: transparent;
}
form-generator .stepControl > .stepCount.filled:not(.current):before {
  visibility: visible;
  opacity: 1;
  color: var(--appointmentPlaner-color-timeline);
}
form-generator .stepControl .stepLine {
  background-color: var(--appointmentPlaner-color-gray);
}
form-generator .stepControl .stepHighlight {
  background-color: var(--appointmentPlaner-backgroundcolor-timeline);
}
form-generator field-wrapper .topicDescription {
  margin-top: 1rem;
  padding-left: 10px;
}
form-generator field-checkbox .clear {
  display: flex;
  justify-content: flex-end;
}
form-generator field-checkbox .clear:after {
  display: none;
}
form-generator field-checkbox .clear .checkbox {
  margin-right: 0;
  margin-top: 7px;
  margin-left: 0;
}
form-generator field-checkbox .clear .checkbox + label {
  padding-right: 0;
  text-align: left;
}
form-generator field-checkbox i {
  top: 8px;
}
form-generator field-preview .row > .col-sm3 {
  font-weight: 700;
}
form-generator .pageControl {
  display: flex;
  flex-direction: column-reverse;
  align-items: flex-end;
}
form-generator .pageControl .button, form-generator .pageControl .button.submit {
  height: auto;
  width: auto;
  min-width: 300px;
  padding: 1rem 2rem;
  font-size: 1em;
  margin: 0 35px 1rem;
  background-color: var(--appointmentPlaner-color-button);
  color: var(--appointmentPlaner-color-button-contrast);
  border: 3px solid var(--appointmentPlaner-color-button-border);
  border-radius: 5px;
  transition: background-color 0.2s linear, color 0.2s linear;
}
@media (max-width: 990px) {
  form-generator .pageControl .button, form-generator .pageControl .button.submit {
    width: 100%;
    min-width: 0;
    margin-right: 0;
  }
}
form-generator .pageControl .button:hover, form-generator .pageControl .button:focus {
  background-color: var(--appointmentPlaner-color-button-hover);
  color: var(--appointmentPlaner-color-button-contrast-hover);
}
form-generator field-event-date .notice {
  padding: 8px;
  border: 1px solid #c9c9c9;
  display: inline-block;
  margin-top: 10px;
  margin-bottom: 10px;
}
form-generator field-event-date .notice span {
  color: #8b8b8b;
}
form-generator field-select-multi-topic .checkbox {
  float: none;
  margin-bottom: 10px;
  text-align: left;
}
form-generator field-select-multi-topic .checkbox .label {
  display: inline-block;
  padding: 0;
  margin-left: 10px;
}
form-generator field-select-multi-topic .checkbox .box {
  margin-bottom: -4px;
}
form-generator field-select-multi-topic .checkbox .customCheck {
  margin-top: 8px;
}
form-generator textarea,
form-generator input,
form-generator select {
  border: 2px solid transparent;
  border-radius: 3px;
  background-color: var(--appointmentPlaner-color-light);
  color: var(--appointmentPlaner-color-base);
  outline: 0;
  font-family: inherit;
  font-size: 0.75em;
  transition: border-color 0.2s linear;
}
form-generator textarea:hover, form-generator textarea:focus, form-generator textarea:focus-visible,
form-generator input:hover,
form-generator input:focus,
form-generator input:focus-visible,
form-generator select:hover,
form-generator select:focus,
form-generator select:focus-visible {
  border-color: var(--appointmentPlaner-color-highlight);
}

field-appointment-planer .hiddenField {
  display: none;
}
field-appointment-planer .legend {
  margin-bottom: 10px;
}
field-appointment-planer .legend > .row {
  margin-bottom: 5px;
}
field-appointment-planer .unavailable,
field-appointment-planer .available {
  display: inline-block;
  width: 22px;
  height: 14px;
  background-color: var(--appointmentPlaner-color-light);
}
field-appointment-planer .available {
  background-color: var(--appointmentPlaner-color-selectable);
  color: var(--appointmentPlaner-color-selectable-contrast);
}
field-appointment-planer .meetingTimes {
  margin-top: 1rem;
  font-size: 0.8em;
}
field-appointment-planer .meetingTimes .row > div {
  padding: 5px 15px;
  margin-bottom: 2px;
  cursor: pointer;
  background-color: var(--appointmentPlaner-backgroundcolor-time);
  color: var(--appointmentPlaner-color-time);
  transition: background-color 0.2s linear, color 0.2s linear;
}
field-appointment-planer .meetingTimes .row > div.selected {
  background-color: var(--appointmentPlaner-backgroundcolor-time-selected);
  color: var(--appointmentPlaner-color-time-selected);
}
field-appointment-planer .meetingTimes .row > div:hover, field-appointment-planer .meetingTimes .row > div:focus {
  background-color: var(--appointmentPlaner-backgroundcolor-time-hover);
  color: var(--appointmentPlaner-color-time-hover);
}
field-appointment-planer .meetingTimes .row > div.selected {
  font-weight: 700;
}

calendar {
  font-size: 0.8em;
}
calendar .week {
  display: flex;
}
calendar .day {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: var(--appointmentPlaner-color-light);
  transition: background-color 0.2s linear, color 0.2s linear;
}
calendar .day.selectable {
  background-color: var(--appointmentPlaner-backgroundcolor-appointment);
  color: var(--appointmentPlaner-color-appointment);
}
calendar .day.selectable:hover, calendar .day.selectable:focus {
  background-color: var(--appointmentPlaner-backgroundcolor-appointment-hover);
  color: var(--appointmentPlaner-color-appointment-hover);
}
calendar .day.selected {
  background-color: var(--appointmentPlaner-backgroundcolor-appointment-selected);
  color: var(--appointmentPlaner-color-appointment-selected);
  font-weight: 700;
}

field-collection textarea,
field-collection input {
  color: var(--appointmentPlaner-color-base);
  font-weight: 400;
}

/*# sourceMappingURL=main.css.map */



/*
 css loader: 2
*/

:root {
	
	--appointmentPlaner-color-highlight: #e1001a; /*Hintergrundfarbe für Timeline, aktiver Termin, aktive Uhrzeit. Schriftfarbe für Text Links*/
	--appointmentPlaner-color-selectable: #ffc830; /*Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-highlight-contrast: #ffffff; /*Schriftfarbe für Buttons, Timeline, aktiver Termin, aktive Uhrzeit*/

/*Timeline*/
	--appointmentPlaner-backgroundcolor-timeline: #e1001a; /*Hauptfarbe für Button-Timeline*/
	--appointmentPlaner-color-timeline: #ffffff; /*Schriftfarbe für Timeline*/

/*Buttons*/
	--appointmentPlaner-color-button: #e1001a; /*Hintergrundfarbe für Buttons*/
	--appointmentPlaner-color-button-contrast: #ffffff; /*Schriftfarbe für Buttons*/	
	--appointmentPlaner-color-button-hover: #ffffff; /*Hover-Hintergrundfarbe für Buttons*/	
	--appointmentPlaner-color-button-contrast-hover: #e1001a; /*HoverSchriftfarbe für Buttons*/	
	--appointmentPlaner-color-button-border: #e1001a; /*Farbe der Umrandung für Buttons*/
	--appointmentPlaner-color-button-border-hover: #e1001a; /*HoverFarbe der Umrandung für Buttons*/

/*Termine*/
	--appointmentPlaner-backgroundcolor-appointment: #ffc830; /*Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-appointment: #000000; /*Schriftfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-backgroundcolor-appointment-hover: #e1001a; /*Hover-Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-appointment-hover: #ffffff; /*Hover-Schriftfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-backgroundcolor-appointment-selected: #e1001a; /*selected-Hintergrundfarbe für ausgewählte Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-appointment-selected: #ffffff; /*selected-Schriftfarbe für ausgewählte Termine, freie Uhrzeiten*/

/*Uhrzeiten*/	
	--appointmentPlaner-backgroundcolor-time:#ffc830;/*Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-time:#000000;/*Schriftfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-backgroundcolor-time-hover:#e1001a;/*Hover-Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-time-hover:#ffffff;/*Hover-Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-backgroundcolor-time-selected:#e1001a;/*selected-Hintergrundfarbe für freie Termine, freie Uhrzeiten*/
	--appointmentPlaner-color-time-selected:#ffffff;/*selected-Hintergrundfarbe für freie Termine, freie Uhrzeiten*/

}

/*:root{
	--appointmentPlaner-color-highlight: #4c4c4c;
	--appointmentPlaner-color-selectable: #D0E2E9;
	--appointmentPlaner-color-highlight-contrast: #ffffff;
	--appointmentPlaner-color-selectable-contrast: #0D0D0D;

	--appointmentPlaner-color-light: #eeeeee;
	--appointmentPlaner-color-gray: #C5C5C5;
	--appointmentPlaner-color-base: #0D0D0D;
}*/

/* fira-sans-regular - latin */
@font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: italic;
    font-weight: 400;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-500 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 500;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-500italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: italic;
    font-weight: 500;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-600 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 600;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-600italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: italic;
    font-weight: 600;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-700 - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 700;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }

  /* fira-sans-700italic - latin */
  @font-face {
    font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
    font-family: 'Fira Sans';
    font-style: italic;
    font-weight: 700;
    src: url('/terminvereinbarung/assets/appointmentPlaner/fonts/fira-sans-v17-latin/fira-sans-v17-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }





body > form-generator {
  font-family: "Fira Sans", Helvetica, Arial, sans-serif;
  font-size: 1.125rem;
  padding-left: 64px;
  padding-right: 64px;
  padding-top: 64px;
}