html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin        : 0;
  padding       : 0;
  border        : 0;
  outline       : 0;
  font-size     : 100%;
  vertical-align: baseline;
  background    : transparent;
}

body {
  line-height: 1;
}

img {
  max-width: 100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

a {
  margin         : 0;
  padding        : 0;
  font-size      : 100%;
  vertical-align : baseline;
  background     : transparent;
  color          : #ffffff;
  text-decoration: none;
}

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color           : #000;
  text-decoration : none;
}

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color           : #000;
  font-style      : italic;
  font-weight     : bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor       : help;
}

table {
  border-collapse: collapse;
  border-spacing : 0;
}

/* change border colour to suit your needs */
hr {
  display   : block;
  height    : 1px;
  border    : 0;
  border-top: 1px solid #cccccc;
  margin    : 1em 0;
  padding   : 0;
}

input,
select {
  vertical-align: middle;
}




/*  Fonts  */
@font-face {
  font-family: 'lato_regular';
  src        : url('../fonts/lato-regular.eot');
  src        : url('../fonts/lato-regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/lato-regular.woff') format('woff'),
    url('../fonts/lato-regular.ttf') format('truetype'),
    url('../fonts/lato-regular.svg#LatoRegular') format('svg');
  font-weight: normal;
  font-style : normal;

}


@font-face {
  font-family: 'lato_bold';
  src        : url('../fonts/lato-bold.eot');
  src        : url('../fonts/lato-bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/lato-bold.woff') format('woff'),
    url('../fonts/lato-bold.ttf') format('truetype'),
    url('../fonts/lato-bold.svg#LatoBold') format('svg');
  font-weight: normal;
  font-style : normal;

}


@font-face {
  font-family: 'avantgardelt-extralight';
  src        : url('../fonts/avantgardelt-extralight.eot');
  src        : url('../fonts/avantgardelt-extralight.eot?#iefix') format('embedded-opentype'),
    url('../fonts/avantgardelt-extralight.woff') format('woff'),
    url('../fonts/avantgardelt-extralight.ttf') format('truetype'),
    url('../fonts/avantgardelt-extralight.svg#avantgardelt-extralight') format('svg');
  font-weight: normal;
  font-style : normal;

}





::selection {
  color     : #ffffff;
  background: #353434;
}

::-moz-selection {
  color     : #ffffff;
  background: #353434;
}

body {
  /* background-color:rgba(255, 255, 255, 0.2); */
  background-color: white;
  color: #333;
}


.mui-textfield--float-label>label {
  color: #333;
}

h1 {
  display    : inline;
  line-height: 1;
  font-weight: bold;
}


a,
.link {
  transition        : all .2s linear;
  -webkit-transition: all .2s linear;
  -moz-transition   : all .2s linear;
  -o-transition     : all .2s linear;
}

.link {
  cursor: pointer;
}


.fehlermeldung {
  font-size       : 1em;
  font-family     : 'lato_regular', arial;
  letter-spacing  : 1px;
  line-height     : 18px;
  text-align      : center;
  color           : #D41320;
  border          : 2px solid #D41320;
  background-color: rgba(212, 19, 32, 0.1);
  padding         : 8px;
  margin          : 20px 20px 5px 20px;
}


.wrapper {
  max-width: 500px;
  height   : auto;
  margin   : 0 auto;
  position : relative;
}

sup {
  vertical-align: super;
  font-size     : 0.6em;
}



/* ##################### */
/* ##### HEADER ######## */
/* ##################### */
header {
  width     : 100%;
  height    : 80px;
  background: #353434;
}

header img.logo {
  float       : right;
  margin-top  : 16px;
  margin-right: 5px;
  height      : 53px;
}

header h1 {
  display: inline-block;
}

header #titel_sprachauswahl {
  overflow      : hidden;
  display       : inline-block;
  margin-top    : 10px;
  padding-top   : 8px;
  z-index       : 800;
  font-size     : 16px;
  font-family   : 'lato_bold', arial;
  letter-spacing: 1px;
  color         : white;
  float         : none;
}

header #sprachauswahl {
  margin-top: 10px;
}

header .sprachauswahl_item a {
  display     : inline-block;
  width       : 28px;
  height      : 16px;
  font-size   : 0.7em;
  border      : 1px solid white;
  padding-top : 5px;
  margin-right: 4px;
  text-align  : center;
  font-family : 'lato_regular', arial;
  font-weight : normal;
}

header .sprachauswahl_item a:hover,
header .sprachauswahl_item a.ausgewaehlt:hover {
  text-decoration : none;
  background-color: rgba(255, 255, 255, 0.5);
}

header .sprachauswahl_item a.ausgewaehlt {
  background-color: rgba(255, 255, 255, 0.3);
}

header .wrapper {
  padding: 0 10px;
}





.waehler {
  text-align  : center;
  font-size   : 0.9em;
  font-variant: small-caps;
  margin-top  : 5px;
}

.waehler a {
  display        : inline-block;
  margin         : 5px 5px 0 0;
  border-radius  : 5px;
  background     : #dddddd;
  color          : #767575;
  padding        : 8px 12px 8px 12px;
  text-decoration: none;
  transition     : 0.1s;
}

.waehler a:hover {
  background     : #cccccc;
  text-decoration: none;
}





input[type="checkbox"] {
  display: none !important;
}

input[type="checkbox"]+label::before {
  width           : 15px !important;
  height          : 15px !important;
  border-radius   : 4px !important;
  border          : 2px solid #777 !important;
  background-color: #fff !important;
  display         : block !important;
  content         : "" !important;
  float           : left !important;
}

input[type="checkbox"]:checked+label::before {
  box-shadow      : inset 0px 0px 0px 3px #fff !important;
  background-color: #3C55A2 !important;
}

.mui-checkbox {
  margin-top   : 30px !important;
  margin-bottom: 30px !important;
}

.mui-checkbox>label {
  padding-left: 10px !important;
}

.mui-checkbox a {
  color          : #3C55A2;
  text-decoration: underline;
}





/* ##################### */
/* ###### INHALT ####### */
/* ##################### */

#inhalt {
  font-family: 'lato_regular', arial;
  font-weight: normal;
  line-height: 1.3em;
  padding    : 20px 10px 10px 10px;
  text-align : center;
}

#inhalt ul {
  list-style-position: inside;
  margin-top         : -6px;
}

#inhalt h2 {
  font-family  : 'lato_bold', arial;
  font-weight  : normal;
  font-size    : 1.4em;
  margin-bottom: 10px;
  text-align   : center;
}

#inhalt h3 {
  font-style   : italic;
  font-size    : 1.15em;
  text-align   : center;
}

#inhalt p {
  margin-bottom: 10px;
}

#inhalt p.shop_beschreibung a {
  /*
  color: #4f36f4;
  text-decoration: underline;
  */
  color:rgba(0,0,0,.87);
  text-decoration: underline;
  display: inline-block;
}
#inhalt p.shop_beschreibung a:hover {
  color: black;
  font-size: 1.01em;
}
#inhalt p.shop_beschreibung a:after {
  font-family: 'Font Awesome 5 Free';
  color:rgba(0,0,0,.87);
  content: "\f35d";
  font-weight: 900;
  font-size: 0.75em;
  display: inline-block;
  margin-left: 5px;
  margin-right: 2px;
}







fieldset {
  border: 1px solid #ddd;
  text-align: left;
  padding: 2% 4%;
  margin-bottom: 10px;
}
fieldset legend {
  padding: 10px;
  margin-left: 1%;
  font-style: italic;
}

/* ##################### */ 
/* ##### KALENDER ###### */
/* ##################### */
#kalender_anreise {
  font-family: "lato_regular", arial;
  padding: 2% 2%;
}
#kalender_anreise a {
  color: #333;
  font-family: "lato_bold", arial;
}
#vorheriger_monat, #naechster_monat {
  display: block;
  color: #DDD;
  font-size: 1.2em;
  margin-bottom: 12px;
}
#vorheriger_monat {
  float: left;
  margin-left: 20%;
}
#naechster_monat {
  float: right;
  margin-right: 20%;
}
#vorheriger_monat.aktiv, #naechster_monat.aktiv {
  color: #666;
  cursor: pointer;
}
#vorheriger_monat.aktiv:hover, #naechster_monat.aktiv:hover {
  color: #333;
}
#kalender_anreise div {
  margin: 0 auto;
  text-align: center;
}
#kalender_anreise table {
  width: 100%;
  margin-top: 10px;    
  text-align: right;
  user-select: none;
}
#kalender_anreise th, #kalender_anreise td {
  padding: 6px 4% 6px 0;
}
#kalender_anreise th {
  font-family: "lato_regular", arial;
  font-weight: normal;
  font-size: 0.7em;
  color: #9e9e9e;
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 2px;
}


#kalender_anreise td {
  color: #dddddd;
  width: 14.28%;
}

#kalender_anreise td.aktiv {
  color: #333;
  cursor: pointer;
  font-family: "lato_bold", arial;
}
#kalender_anreise td.aktiv:hover {
  background-color: #eee;
  color: #333;
}

#kalender_anreise td.anderer_monat {
  color: #ddd;
}
#kalender_anreise td.anderer_monat.aktiv:hover {
  background-color: #eee;
  color: #ccc;
}



#kalender_anreise td.ankunft_tag, #kalender_anreise td.weitere_tage {
  background-color: #2196F3 !important;
  color: white !important;
}
#kalender_anreise td.ankunft_tag:hover, #kalender_anreise td.weitere_tage:hover {
  background-color: #2196F3 !important;
  color: #eee !important;
}


#kalender_anreise td.anderer_monat.ankunft_tag:hover {
  background-color: #2196F3;
  color: #ddd;
}


#kalender_anreise .zeitraum_hover {
  color: white !important;
  background-color: #75B9F0 !important;
}



#anz_naechte_container {
  margin: 20px 2% 5px 2% !important;
  padding: 10px;
  display: none;
}
#anz_naechte_container .mui-select {
  text-align: left;
}
#anz_naechte_container .mui-select>select.leer {
  font-style: italic;
  color: #ccc;
}
#anz_naechte_container .mui-select__menu, #anz_naechte_container .mui-select__menu>div {
  text-align: left;
}
#anz_naechte_container .mui-select__menu>div::after {
  font-size: 0.8em;
}
#anz_naechte_container .mui-select__menu>div:first-of-type {
  display: none;
}



#stellplatz_waehlen {
  display: none;
}
#stellplatz_waehlen .mui-btn {
  width: 100%;
  margin: 0;
  margin-top: -10px;
}

#platz_vorschau {
  display: none;
  margin-top: -15px;
  margin-bottom: 9px;
  border-top: 3px solid #2196F3;
  border-left: 3px solid #2196F3;
  border-right: 3px solid #2196F3;
  width: calc(100% - 6px);
  box-shadow: 0 0 2px rgb(0 0 0 / 12%), 0 2px 2px rgb(0 0 0 / 20%);
  border-radius: 2px;
}




#karte_stellplaetze_container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
}
.karte_knopf {
  position: fixed;
  right: 16px;
  font-size: 1.4em;
  color: #D9D9D9;
  cursor: pointer;
  
}
.karte_knopf:hover {
  color: white;
}
#karte_stellplaetze_schliessen {
  top: 8px;
  right: 8px;
  font-size: 2.5em;
  color: white;
  background-image: linear-gradient(transparent 5px, rgba(255,255,255,.3) 5px, rgba(255,255,255,.3) 35px, transparent 35px);
}
#karte_stellplaetze_schliessen:hover {
  background-image: linear-gradient(transparent 5px, rgba(255,255,255,.6) 5px, rgba(255,255,255,.6) 35px, transparent 35px);
}
#karte_stellplaetze_zoom_in {
  top: 80px;
}
#karte_stellplaetze_zoom_out {
  top: 110px;
}
#karte_stellplaetze_move_up {
  right: 20px;
  top: 135px;
}
#karte_stellplaetze_move_left {
  right: 30px;
  top: 150px;
}
#karte_stellplaetze_move_right {
  right: 15px;
  top: 150px;
}
#karte_stellplaetze_move_down {
  right: 20px;
  top: 165px;
}

#karte_stellplaetze_testausgabe {
  position: fixed;
  left: 5px;
  top: 5px;
  width: 140px;
  background-color: white;
  padding: 5px;
}


.platz_vergeben_fehler {
  display: none;
  padding: 10px;
  color: #F44336;
  font-style: italic;
  text-align: center;
}




fieldset#personen {
  display: none;
}

fieldset.person {
  color: #2196F3;
  padding-top: 0;
  border-color: rgba(33, 150, 243, .5);
  display: none;
}


#anz_personen_container {
  margin: -10px 2% -10px 2% !important;
  padding: 10px;
}
#anz_personen_container .mui-select {
  text-align: left;
}
#anz_personen_container .mui-select>select.leer {
  font-style: italic;
  color: #ccc;
}
#anz_personen_container .mui-select__menu, #anz_personen_container .mui-select__menu>div {
  text-align: left;
}
#anz_personen_container .mui-select__menu>div:first-of-type {
  display: none;
}


.name_gender {
  display: grid;
  grid-template-columns: auto 36%;
  grid-column-gap: 3%;
}
.street_city {
	display: grid;
  grid-template-columns: 50% auto;
  grid-column-gap: 3%;
}
.zip_country {
  display: grid;
  grid-template-columns: 30% auto;
  grid-column-gap: 3%;
}
.birthdate_place {
  display: grid;
  grid-template-columns: 36% 28% auto;
  grid-column-gap: 3%;
}
.identity_document_type_country{
	display: grid;
  grid-template-columns: 50% auto;
  grid-column-gap: 3%;
}
.identity_document_date {
  display: grid;
  grid-template-columns: 64% auto;
  grid-column-gap: 3%;
}





fieldset#weitere_informationen {
  display: none;
}
fieldset#weitere_informationen div:first-of-type {
  margin-top: -10px;
}
fieldset#weitere_informationen div:last-of-type {
  margin-bottom: 15px !important;
}




















#sprachen_auswahl_container {
  display      : none;
  text-align   : center;
  width        : calc(80% - 20px);
  margin       : auto;
  margin-top   : 30px;
  margin-bottom: -20px;
  padding      : 3px 10px 10px 10px;
  border       : 1px solid rgba(0, 0, 0, .2);
}

#sprachen_auswahl_container legend {
  display      : inline;
  width        : auto;
  text-align   : center;
  font-size    : 0.7em;
  color        : rgba(0, 0, 0, .5);
  padding      : 0 5px;
  margin-bottom: 0;
}

#sprachen_auswahl_container label {
  margin-right: 5px;
  margin-left : 5px;
}


  .mui-tabs__bar {
    margin-bottom: 15px !important;
  }

  .mui-tabs__bar a {
    cursor: pointer !important;
  }

  .mui-panel--success {
    background-color: rgb(82, 145, 110)
  }

  .mui-autohide {
    animation  : fadein 0.5s, fadeout 0.5s 5.5s;
    position   : fixed;
    width      : 50%;
    margin     : 0 auto;
    bottom:30px;
    animation-fill-mode: forwards;
    z-index: 1000;
  }

  .mui-textfield small {
    font-size: .8em;
    color    : grey;
  }


  .input_zusatzinfo {
    font-size  : 0.7em;
    font-family: arial;
  }









#zusammenfassung {
  display: none;
  margin-top: 50px;
}

#zusammenfassung>p:first-of-type {
  font-family: 'lato_bold', arial;
  padding: 5px;
  background-color: #eee;
}

#erfolgreich_zusammenfassung {
  margin-top: 25px;
}

#zf_inhalt,
#erf_zf_inhalt {
  margin-top: 8px;
}

#zf_inhalt p,
#erf_zf_inhalt p {
  margin    : 0;
  padding   : 0;
  margin-top: 5px;
}

.zf_beschriftung {
  font-size: 0.9em;
  color    : #777;
}

.zf_beschriftung a {
  color: #777;
}


.zf_abstand_oben {
  margin-top: 10px !important;
}
.zf_abstand_unten {
  margin-bottom: 10px !important;
}
.zf_kein_abstand_oben {
  margin-top: 0px !important;
}

.zf_gebdat_kleiner {
  font-size: .75em;
  color: #777;
}

#zf_gesamtbetrag_container,
#erf_zf_gesamtbetrag_container {
  font-family: 'lato_bold', arial;
}





#zf_anreise,
#zf_abreise,
#zf_naechte,
#zf_platz,
.zf_person,
#zf_email_container,
#zf_tel_container,
#zf_email,
#zf_tel,
#zf_kennzeichen_container,
#zf_kennzeichen,
#zf_notiz_container,
#zf_privacy_ja,
#zf_preis_platz_container,
#zf_preis_ortstaxe_container,

#erf_zf_anreise,
#erf_zf_abreise,
#erf_zf_naechte,
#erf_zf_platz,
.erf_zf_person,
#erf_zf_email_container,
#erf_zf_tel_container,
#erf_zf_email,
#erf_zf_tel,
#erf_zf_kennzeichen_container,
#erf_zf_kennzeichen,
#erf_zf_notiz_container,
#erf_zf_preis_platz_container,
#erf_zf_preis_ortstaxe_container,

#bezahlvorgang_neu_starten_button,

#zf_allgemeiner_fehler,
#zf_platz_nicht_mehr_verfuegbar_fehler {
  display: none;
}


/*
#zusammenfassung_max_personen_erreicht_groesser_1>span,
#zusammenfassung_max_personen_erreicht_istgleich_1>span {
  font-family: 'lato_bold', arial;
  font-weight: normal;
}
*/


.zf_fehler, .zf_fehler_h {
  color     : #F44336;
  font-style: italic;
  font-size : 0.9em;
}
.zf_fehler_h {
  display: none;
}

#zf_platz_nicht_mehr_verfuegbar_fehler, #zf_allgemeiner_fehler {
  color     : #F44336;
  font-style: italic;
  font-family: 'lato_bold', arial;
}


#paypal_button_container {
  margin-top: 18px;
}

.paypal_button_container_mit_karte {
  min-height: 330px;
}

.paypal_button_container_ohne_karte {
  min-height: 230px;
}








.StripeElement {
  box-sizing: border-box;

  height: 40px;

  padding: 10px 12px;

  border          : 1px solid transparent;
  border-radius   : 4px;
  background-color: white;

  box-shadow        : 0 1px 3px 0 #e6ebf1;
  -webkit-transition: box-shadow 150ms ease;
  transition        : box-shadow 150ms ease;
}

.StripeElement--focus {
  box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
  border-color: #fa755a;
}

.StripeElement--webkit-autofill {
  background-color: #fefde5 !important;
}

#card-errors {
  color      : #F44336;
  font-family: 'lato_regular', arial;
  font-weight: normal;
  font-size  : 0.9em;
}

form#payment-form {
  margin-top      : 18px;
  background-color: #8FC6ED;
  padding         : 10px;
  border-radius   : 5px;
  font-family     : 'lato_regular', arial;
  font-weight     : normal;
}

form#payment-form button {
  margin-top      : 10px;
  background-color: #364E9D;
  border          : 0;
  border-radius   : 3px;
  padding         : 8px 20px;
  color           : white;
  font-size       : 0.9em;
  cursor          : pointer;
  box-shadow      : 0px 0px 3px 0px rgba(0, 0, 0, 0.5);
}

form#payment-form button:active {
  position  : relative;
  top       : 1px;
  box-shadow: none;
}



#bezahlmoeglichkeiten {
  display: none;
  margin-top: 30px;
}

.bezahlmoeglichkeiten_deaktiviert {
  opacity       : 0.2;
  filter        : alpha(opacity=20);
  pointer-events: none;
}

#bezahlvorgang_neu_starten_button {
  color          : #BBB;
  font-size      : 0.7em;
  font-family    : arial;
  font-weight    : normal;
  text-decoration: underline;
  cursor         : pointer;
  margin-top     : 10px;
}

#abstand_statt_bezahlvorgang_neu_starten_button {
  height: 20px;
}



#bezahlvorgang_overlay {
  display   : none;
  position  : fixed;
  top       : 0;
  left      : 0;
  width     : 100%;
  height    : 100%;
  width     : 100vw;
  height    : 100vh;
  max-width : 100%;
  max-height: 100%;
  min-width : 100%;
  min-height: 100%;
  z-index   : 1000;
  background: rgba(0, 0, 0, .3) url('../bilder/loader.svg') 50% 50% no-repeat;
}

#dunkles_overlay {
  display   : none;
  position  : fixed;
  top       : 0;
  left      : 0;
  width     : 100%;
  height    : 100%;
  width     : 100vw;
  height    : 100vh;
  max-width : 100%;
  max-height: 100%;
  min-width : 100%;
  min-height: 100%;
  z-index   : 1000;
  background: rgba(0, 0, 0, .3);
}








#erfolgreich,
#allgemeiner_fehler {
  margin-top : 30px;
  line-height: 1.3em;
  display    : none;
}

#erfolgreich_download_pdf_button {
  margin-top      : 20px;
  background-color: #0B8AAA;
  border-radius   : 7px;
  display         : inline-block;
  cursor          : pointer;
  color           : #ffffff !important;
  font-size       : 1.1em;
  padding         : 10px 23px;
  text-decoration : none !important;
}

#erfolgreich_download_pdf_button:hover {
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.34);
}





#erfolgreich_titel,
#allgemeiner_fehler_titel {
  font-size  : 2em;
  line-height: 1em;
}

#erfolgreich_titel {
  color: #009D46;
}

#allgemeiner_fehler_titel {
  color: #F44336;
}

#erfolgreich a,
#allgemeiner_fehler a {
  color          : black;
  text-decoration: underline;
}

#qrcode {
  margin    : auto;
  height    : 160px;
  width     : 160px;
  margin-top: 25px;
}

#qrcode_text {
  margin-top : 5px;
  text-align : center;
  color      : black;
  font-size  : 0.9em;
  font-family: 'Courier New';
  font-weight: normal;

}

.erfolgreich_bemerkung {
  /* display   : none; */
  margin-top: 30px;
  text-align: center;
  font-size : 0.9em;
  color     : #777;
}




#reservieren_button_gratis {
  color: darkblue;
  padding    : 12px;
  font-size  : 1.3em;
  cursor     : pointer;
  font-weight: bold;
  width      : 100%;
}



#interner_abbrechen_button {
  color  : red;
  padding: 10px 20px;
  cursor : pointer;
}

#interner_ok_button,
#interner_ok_danach_button {
  color      : green;
  padding    : 20px;
  font-size  : 2em;
  cursor     : pointer;
  font-weight: bold;
  width      : 80%;
}

#interner_ok_danach_button {
  margin-top   : 30px;
  margin-bottom: 10px;
}






#fehler_seite_neu_laden {
  padding   : 10px 20px;
  margin-top: 15px;
}




#impressum {
  margin-top : 30px;
  padding-top: 10px;
  border-top : 1px solid #999;
  color      : #999;
  font-size  : 0.8em;
}

#impressum a {
  color          : #999;
  text-decoration: none;
}

#impressum a:hover {
  color          : #999;
  text-decoration: underline;
}





/* ############################### */
/* ########## TOOLTIP ############ */
/* ############################### */
#tooltip
{
    text-align: center;
    font-size: .8em;
    line-height: 1.5;
    color: #fff;
    background: rgba(0,0,0,.8);
    border-radius: 10px;
    position: absolute;
    z-index: 100;
    padding: 15px;
}
 
    #tooltip:after /* triangle decoration */
    {
        width: 0;
        height: 0;
        border-left: 10px solid transparent;
        border-right: 10px solid transparent;
        border-top: 10px solid rgba(0,0,0,.8);
        content: '';
        position: absolute;
        left: 50%;
        bottom: -10px;
        margin-left: -10px;
    }
 
        #tooltip.top:after
        {
            border-top-color: transparent;
            border-bottom: 10px solid rgba(0,0,0,.8);
            top: -20px;
            bottom: auto;
        }
 
        #tooltip.left:after
        {
            left: 10px;
            margin: 0;
        }
 
        #tooltip.right:after
        {
            right: 10px;
            left: auto;
            margin: 0;
        }




/* ############################### */
/* ####### FEHLERMELDUNGEN ####### */
/* ############################### */
/* The snackbar - position it at the bottom and in the middle of the screen */
#snackbar {
  visibility      : hidden;
  /* Hidden by default. Visible on click */
  width           : 450px;
  /* Set a default minimum width */
  margin-left     : -241px;
  /* Divide value of min-width by 2 + padding*/
  background-color: #333;
  /* Black background color */
  color           : #fff;
  /* White text color */
  text-align      : center;
  /* Centered text */
  font-family     : 'lato_regular', arial;
  font-weight     : normal;
  font-size       : 1.1em;
  line-height     : 1.3em;
  border-radius   : 4px;
  /* Rounded borders */
  padding         : 16px;
  /* Padding */
  position        : fixed;
  /* Sit on top of the screen */
  z-index         : 1000;
  /* Add a z-index if needed */
  left            : 50%;
  /* Center the snackbar */
  bottom          : 30px;
  /* 30px from the bottom */
}

/* Show the snackbar when clicking on a button (class added with JavaScript) */
#snackbar.show {
  visibility       : visible;
  /* Show the snackbar */
  /* Add animation : Take 0.5 seconds to fade in and out the snackbar.
    However, delay the fade out process for 2.5 seconds */
  -webkit-animation: fadein 0.5s, fadeout 0.5s 5.5s;
  animation        : fadein 0.5s, fadeout 0.5s 5.5s;
}

#snackbar.fehler {
  background-color: #e4685d;
}

#snackbar.hinweis {
  background-color: #77b55a;
}

html {
  height: 100%;
}

.manage {
  display       : flex;
  flex-direction: row;
  height        : 100%;
}

.manage nav {
  flex-basis      : 12.5rem;
  background-color: #333;
  padding         : 20px;
}
.manage nav li {
  margin: 8px 0px;
}

.manage nav .title {
  font-size     : 1.3em;
  text-transform: uppercase;
  color         : white;
}

.manage main {
  flex      : 1;
  padding   : 20px;
  overflow  : hidden;
  overflow-y: auto;

}

/* Animations to fade the snackbar in and out */
@-webkit-keyframes fadein {
  from {
    bottom : 0;
    opacity: 0;
  }

  to {
    bottom : 30px;
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    bottom : 0;
    opacity: 0;
  }

  to {
    bottom : 30px;
    opacity: 1;
  }
}

@-webkit-keyframes fadeout {
  from {
    bottom : 30px;
    opacity: 1;
  }

  to {
    bottom : 0;
    opacity: 0;
  }
}

@keyframes fadeout {
  from {
    bottom : 30px;
    opacity: 1;
  }

  to {
    bottom : 0;
    opacity: 0;
  }
}








/* ############################################################################################################################################################################################################################### */
/* ###### RESPONSIVE ############################################################################################################################################################################################################# */
/* ############################################################################################################################################################################################################################### */


/* ##################### */
/* ##### HEADER ######## */
/* ##################### */

@media (max-width:540px) {
  fieldset {
    padding: 2% 2%;
  }
}



@media (max-width:460px) {
  #snackbar {
    width      : 350px;
    /* Set a default minimum width */
    margin-left: -191px;
    /* Divide value of min-width by 2 + padding*/
  }
}

@media (max-width:360px) {
  #snackbar {
    width      : 300px;
    /* Set a default minimum width */
    margin-left: -166px;
    /* Divide value of min-width by 2 + padding*/
  }
}


@media (max-width:330px) {
  header img.logo {
    display: none;
  }

  header .titel {
    float       : none;
    padding-left: 0;
  }
}

@media (max-width:310px) {
  #snackbar {
    width      : 250px;
    /* Set a default minimum width */
    margin-left: -141px;
    /* Divide value of min-width by 2 + padding*/
  }
}

@media (max-width:260px) {
  #snackbar {
    width      : 200px;
    /* Set a default minimum width */
    margin-left: -116px;
    /* Divide value of min-width by 2 + padding*/
  }
}

@media (max-width:210px) {
  #snackbar {
    width      : 150px;
    /* Set a default minimum width */
    margin-left: -91px;
    /* Divide value of min-width by 2 + padding*/
  }
}

@media (max-width:160px) {
  #snackbar {
    width      : 100px;
    /* Set a default minimum width */
    margin-left: -66px;
    /* Divide value of min-width by 2 + padding*/
  }
}







/*
  @media screen and (max-width: 400px) {
      #paypal_button_container {
          width: 100%;
      }
  }
  
  @media screen and (min-width: 400px) {
      #paypal_button_container {
          width: 250px;
      }
  }
  */