

.table-with-tr-scroll td, .table-with-tr-scroll th{
  padding-right: 20px;
}

#edit_participant input:read-only{
  color: darkgray;
}

.uploader {
  display: block;
  clear: both;
  margin: 0 auto;
  width: 100%;
  max-width: 600px;
}
.uploader label {
  float: left;
  clear: both;
  width: 100%;
  padding: 2rem 1.5rem;
  text-align: center;
  background: #fff;
  border: 3px solid #f1f2f7;
  transition: all .2s ease;
  user-select: none;
}
.uploader label:hover {
  border-color: var(--main-color);
}
.uploader label.hover {
  border: 3px solid var(--main-color);
}


.uploader .upload-text{
  color:rgba(77,79,92, 0.5);
  font-size:21px;
}
.uploader .upload-next{
  color:#AAAAAA;
}
.uploader #start,
.uploader #start-form {
  float: left;
  clear: both;
  width: 100%;
}
.uploader #start.hidden,
.uploader #start-form.hidden {
  display: none;
}


.uploader #response,
.uploader #file-response {
  float: left;
  clear: both;
  width: 100%;
}
.uploader #response.hidden,
.uploader #file-response.hidden {
  display: none;
}
.uploader #messages,
.uploader #file-messages {
  margin-bottom: .5rem;
}


.uploader #file-image,
.uploader #file-preview {
  display: inline;
  margin: 0 auto .5rem auto;
  width: auto;
  height: auto;
  max-width: 150px;
}



.uploader #notimage {
  display: block;
  float: left;
  clear: both;
  width: 100%;
}
.uploader #notimage.hidden {
  display: none;
}


.uploader progress,
.uploader .progress {
  // appearance: none;
  display: inline;
  clear: both;
  margin: 0 auto;
  width: 100%;
  max-width: 180px;
  height: 8px;
  border: 0;
  background-color: #eee;
  overflow: hidden;
}

.uploader .progress[value]::-webkit-progress-bar {
  background-color: #eee;
}

.uploader .progress[value]::-webkit-progress-value {
  background: linear-gradient(to right, darken(var(--main-color-darker),8%) 0%, var(--main-color-darker) 50%);
  border-radius: 4px;
}
.uploader .progress[value]::-moz-progress-bar {
  background: linear-gradient(to right, darken(var(--main-color-darker),8%) 0%, var(--main-color-darker) 50%);
  border-radius: 4px;
}

.uploader input[type="file"] {
  display: none;
}

.uploader #file-drag,
.uploader #file-drag-form{
  background-color:#f1f2f7;
  box-sizing:border-box;
}
.uploader #file-upload-label,
.uploader #file-drag{
  position:relative;
}

.uploader #file-upload-form,
.uploader #file-upload{
  position:absolute;
  top:0;
  left:0;
  bottom:0;
  height:100%;
  opacity:0;
  display:block;
}
.uploader #image-upload-btn,
.uploader #file-upload-btn{
  color:var(--main-color);
  text-decoration: underline;
  cursor:pointer;
}
.extra-width{
  max-width:100% !important;
  height:100%;
  max-height:300px;
}
.uploader label{
  width:100% !important;
  height:100%;
  /* max-height:300px; */
  display:flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  overflow-y: scroll;
  max-height: 60vh;
}

/* .event-values .uploader label{
max-height:230px;
} */
.event-values .extra-width{
  max-width:100% !important;
  height:100%;
  max-height:230px;
}

#load_files #file-drag-form{
  max-height: 230px;
}

#video_link{
  display:none;
  width:100%;
  margin-top:10px;
}

/**
* Files upload
**/

#uploadPreview{
  margin: 10px 0;
}

#errorMessage{
  width:100%;
  color: #721c24;
  background-color:#f8d7da;
  border:1px solid #f5c6cb;
  padding:0 20px;
  box-sizing: border-box;
  display:none;
  margin-bottom:15px;
}

/**
* Dashboard settings
**/

.tiles {
  padding: 60px 0;
  width: 100%;
  max-width: 100%;
  margin: 0;
  display:flex;
  flex-direction:row;
  flex-wrap:wrap;
  justify-content:flex-start;
}


.tiles .tile-container:nth-of-child(4n){
  margin:0;
}

.tiles .tile-container {
  background-color: #fff;
  text-align: center;
  -webkit-box-shadow: 0px 2px 6px 2px rgba(0, 0, 0, 0.04);
  -moz-box-shadow: 0px 2px 6px 2px rgba(0, 0, 0, 0.04);
  box-shadow: 0px 2px 6px 2px rgba(0, 0, 0, 0.04);
  padding: 20px;
  margin-bottom: 15px;
  display: block;
  border-radius: 5px;
  width: 100%;
  box-sizing:border-box;
}

.tile h5 {
  margin-bottom: 0;
  color: #000;
  font-weight:700;
}

.tile img {
  max-width: 100px;
  margin-bottom: 20px;
}
.tile i{
  font-size:80px;
}
.dashboard-content{
  padding:0 50px 50px 50px;
}

.backend-table{
  width:100%;
  text-align:left;
}
.backend-table td > a i,
.backend-table td> i,
.backend-table td > button i{
  font-size: 24px !important;
  padding: 4px !important;
  border-radius: 50%;
  margin: 3px;
  color: var(--main-color);
  border: 1px solid var(--main-color);
  cursor: pointer;
  display: inline-block;
}
.backend-table td:last-of-type{
  display:flex;
  flex-wrap:wrap;
  justify-content: flex-start;
}

/* event.table */
.event-table th{
  width:calc(60% / 4);
}
.event-table th:first-of-type{
  width:40%;
}

.topic-table th:first-of-type{
  width:80%;
}

/* eventlist.table */
.appointmentlist-table th{
  width:calc(75% / 5);
}
.appointmentlist-table th:first-of-type{
  width:25%;
}

/* user.table, .product.table */

.more-products,
.more-users,
.hide-some,
.more-appointmentlists{
  display:none;
}

.show-user-buttons,
.show-product-buttons,
.show-appointmentlist-buttons{
  padding-top:20px;
}

.appointmentlist-table .next-time{
  display:block;
}

.user-table th,
.product-table th{
  width:calc(60% / 3);
}
.user-table th:first-of-type,
.product-table th:first-of-type{
  width:40%;
}

/* event.edit */
.shadow{
  box-shadow: 0px 2px 6px 2px rgba(0,0,0,0.04);
  padding:20px;
  margin:20px 0;
}
.event-values,
.product-values,
.user-values{
  display:flex;
  flex-direction:row;
  justify-content: space-between;
  flex-wrap: wrap;
  padding:40px;
}

.user-edit .edit-profile-image label{
  cursor:pointer;
}

.event-edit h1,
.event-edit h2,
.product-edit h1,
.product-edit h2,
.user-edit h1,
.user-edit h2{
  font-size:18px;
  font-weight:bold;
}
.no-shadow{
  padding-right:40px;
}
.right-part .shadow{
  width:100%;
}
.event-edit .left-part,
.event-edit .right-part,
.product-edit .left-part,
.product-edit .right-part,
.user-edit .shadow,
.full-part{
  width:100%;
  box-sizing:border-box;
}

button > i,
a > i{
  font-size:16px;
}
.action-td button{
  display:inline-block;
  padding:0;
}

.event-edit .unternehmensart.shadow:nth-of-type(4){
  order:5 !important;
}

.event-edit .buchungstyp.shadow:nth-of-type(5){
  order:4 !important;
}
/* .product-edit .both-part{
width:100%;
} */
.event-edit input,
.event-edit textarea,
.event-edit select,
.product-edit input,
.product-edit select{
  width:100%;
  border-radius:4px;
  border: 1px solid #E8E9EC;
  padding:5px;
  box-sizing: border-box;
}

.user-edit input,
.user-edit select{
  width:100%;
  border-radius:4px;
  border: 1px solid #E8E9EC;
  padding:5px;
  box-sizing: border-box;
}

.event-edit input,
.event-edit select,
.product-edit input,
.product-edit select,
#edit_topic input,
.user-edit input{
  height:40px;

}

#edit_topic input,
#edit_topic textarea{
  border-radius:4px;
  border: 1px solid #E8E9EC;
  padding:5px;
  box-sizing: border-box;
  width:100%;
}
.event-actions,
.product-actions,
.user-actions{
  display:flex;
  flex-wrap:wrap;
  flex-direction:column;
  justify-content: space-between;
  width:100%;
  margin-top:20px;
}

.event-actions a,
.product-actions a,
.user-actions a{
  margin-bottom:10px;
  text-align:center;
}

#de,
#custom_de,
#lhi_de,
#registration_de,
#checkbox_de{
  text-decoration: underline;
  cursor:pointer;
}
#en,
#custom_en,
#lhi_en,
#registration_en,
#checkbox_en{
  cursor: pointer;
}

#event_registration_de,
#event_registration_en{
  /* height:126px!important; */
  min-height: 126px;
  width:100%;
}
.event-edit textarea[name="description_en"],
.event-edit input[name="url_en"],
.event-edit input[name="aurl_en"],
#description-label-en,
#url-label-en,
#aurl-label-en,
.lhimail_en,
.custommail_en,
.registration_en,
.checkbox_en{
  display:none;
}
.event-edit textarea{
  height:360px;
}
.event-edit label,
.product-edit label{
  width:100%;
  margin-bottom:10px;
}

.user-edit .form-group label{
  width:100%;
  margin-bottom:10px
}

.title-image-container{
  width:100% !important;
  height:300px;
  display:flex;
  flex-direction: row;
  flex-wrap:wrap;
  justify-content: center;
  align-items: center;
  background-color:#f1f2f7;
  border:none;
}
.file-upload-container{
  width:100% !important;
  display:flex;
  flex-direction: row;
  flex-wrap:wrap;
  justify-content: center;
  align-items: center;
  background-color:#f1f2f7;
  border:none;
}
.file-upload-container label{
  margin:0 !important;
}
#edit_product .title-image-container{
  height:340px;
}
#edit_product   #image-to-change{
  max-height:340px;
}


.btn-upload{
  margin:10px 0;
  width:100%;
  text-align:center;
  font-size:16px;
  cursor:pointer;
}
.dashboard-content a.btn{
  display:inline-block;
}
.dashboard-content > .shadow{
  margin: 50px 0;
}
.loadImage{
  display:none;
}
#image-to-change{
  max-height:300px;
  width:auto;
}
#label-change{
  padding:10px 0;
  width:100%;
  display:block;
  text-align:center;
  cursor:pointer;
}
.blue-background{
  background-color:#f1f2f7;
  width:100%;
  display:flex;
  justify-content: center;
}
.title_img_text{
  font-weight:700;
  color:var(--main-color);
  padding-top:15px;
  cursor:pointer;
}
.edit_title_image img{
  max-height:300px;
}
.event-edit .form-group,
.product-edit .form-group,
.user-edit .form-group{
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  flex-wrap: wrap;
  margin:15px 0;
}

.user-edit .form-group{
  align-items: center;
}

.user-edit .top-part input[type='file']{
  display:none;
}

.user-edit .top-part{
  display:flex;
  flex-direction:column;
  justify-content: space-between;
  align-items: flex-start;
}
.user-edit .top-part .edit-profile-image{
  align-self: flex-end;
}
.user-edit .login-info-image{
  width:38px;
  height:38px;
  margin-left:10px;
  display:inline-block;
}
.user-edit .top-part #file-drag{
  display:flex;
  align-items: center;
}
.user-edit .login-info-image img{
  display:block;
  width:100%;
  height:auto;
  border-radius:50%;
}
.event-edit .table-header,
.product-edit .table-header{
  display:flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items:flex-start;
}

.dropdown-select{
  max-width:250px;
  margin-top:10px;
}

.event-edit .table-header h2,
.product-edit .table-header h2{
  margin: 0 10px 10px 0 !important;
}

.table-wrapper, .table-scroll{
  width:100%;
  overflow-x:auto;
}


.table-scroll .event-table{
  min-width:520px;
}

.table-scroll .topic-table{
  min-width: 270px;
}
.table-scroll .appointmentlist-table{
  min-width:840px;
}
.table-scroll .product-table{
  min-width:650px;
}
.product-edit .table-wrapper .part-table{
  min-width:440px;
}
.event-values .table-wrapper .part-table{
  min-width:380px;
}
.part-table td:last-of-type{
  display:flex;
  flex-wrap:wrap;
  justify-content: flex-start;
}

.part-table{
  width:100%;
  margin-top:20px;
  border-collapse: collapse;
}
.part-table th{
  background-color:#F5F6FA;
  color:#A3A6B4;
  text-align:left;
  padding:15px;
  font-size:11px;
}
.part-table th:last-of-type{
  width:60px;
}

.part-table td{
  padding: 20px 15px;
  font-size:13px;
}
.part-table tbody tr{
  border-bottom:1px solid #F1F1F3;
}
.part-table tr td:last-of-type > i,
.part-table tr td:last-of-type button i,
.part-table tr td:last-of-type a > i,
.part-table tr td.action-td a > i,
.part-table tr td.action-td button i{
  padding: 2px;
  border-radius: 50%;
  margin: 3px;
  color: var(--main-color);
  border: 1px solid var(--main-color);
  cursor: pointer;
  display: inline-block;
  font-size:16px;
}
.part-table tr td:last-of-type button{
  display:inline-block;
  padding:0;
}
.cm-edit-modal{
    max-height: 100vh;
    overflow: auto;
  display:none;
  z-index:9999;
  position:fixed;
  top:50%;
  left:50%;
  background-color:#fff;
  border-radius:4px;
  transform:translate(-50%,-50%);
  width:calc(100% - 30px);
  max-width:500px;
  /* border:1px solid #000; */
  padding:15px;
  box-sizing:border-box;
}

.cm-edit-appointment{
  max-width: 800px;
  height:100%;
  max-height:calc(100% - 40px);
}

.cm-edit-appointment .edit-part{
  display:flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-height: calc(100% - 106px);
  overflow-y:auto;
}
.cm-edit-appointment .edit-part .part-left,
.cm-edit-appointment .edit-part .part-right{
  width:100%;
}
.cm-edit-appointment .checkbox-label{
  box-sizing: border-box;
}

.own-label .checkmark{
  top:50%;
  transform:translate(0,-50%);
}
.own-label input[type='text']{
  width:100% !important;
}
#appointment-checkboxes{
  flex-wrap:wrap;
  box-sizing: border-box;
}

#appointment-checkboxes .checkbox-label{
  width:100%;
  box-sizing: border-box;
}

.cm-edit-business,
.cm-edit-discount_code{
  /* max-height:760px; */
}
.cm-edit-business .edit-part,
.cm-edit-discount_code .edit-part{
  max-height: calc(760px - 136px);
  overflow-y:auto;
}
.notify{
  position:fixed;
  top:0px;
  width:80%;
  height:0;
  box-sizing:border-box;
  color:#4D4F5C;
  text-align:center;
  background:rgba(0,0,0,.6);
  overflow:hidden;
  box-sizing:border-box;
  transition:height .2s;
  display:flex;
  align-items: center;
  justify-content: center;
}

#notifyType:before{
  display:block;
  margin-top:15px;

}
input:read-only{
  color: #E8E9EC;
}
.active{
  height:50px;
}

.success{
  background-color: #d4edda;
}

.danger{
  background-color:#f8d7da;
}

.edit-part{
  margin:10px 0;
}
.edit-part label,
.edit-part input{
  width: 100%;
  margin:5px 0;
}
.edit-part textarea,
.edit-part select{
  margin:5px 0;
}
.cm-edit-item .edit-part textarea{
  width:100%;
  height:auto;
}
.cm-edit-booking .edit-part .price_input{
  width:90%;
}
#label_price_chf,
#label_price_euro,
#label_price_usd,
#label_price_sgd
{
  display:none;
}
.cm-edit-booking .edit-part > div{
  display:flex;
  justify-content: space-between;
  align-items: center;
}

.cm-edit-booking .edit-part > #fixpreis{
    display: block;
}

#edit_discount_code .part-table th,
#edit_business .part-table th{
  background-color:transparent;
}

#edit_discount_code .part-table th:first-of-type,
#edit_business .part-table th:first-of-type{
  color:#000;
  font-weight:bold;
  font-size:14px;
}

#edit_discount_code .part-table th,
#edit_business .part-table th:last-of-type{
  color:#000;
  font-weight:normal;
}

.booking-table th{
  width:calc(100% / 4);
}

.booking-table tr{
  border-bottom:0 !important;
}

.booking-table tbody td{
  padding: 0 15px;
}
.colored-yellow{
  background-color:rgba(255,202,131,0.3);
  padding:5px 15px;
  border-radius: 25px;
}

.colored-green{
  background-color:rgba(105,228,166,0.2);
  padding:5px 15px;
  border-radius: 25px;
}

.colored-red{
  background-color:rgba(255,114,133, 0.2);
  padding:5px 15px;
  border-radius:25px;
}

#backdrop{
  background-color: black;
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 1010;
  display: none;
  opacity: 0.5;
}
/*
.js-off-canvas-overlay{
position:absolute;
top:0;
left:0;
z-index:999;
width:100%;
height:100%;
transition: opacity .5s ease,visibility .5s ease;
background: hsla(0,0%,99.6%,.25);
opacity: 0;
visibility: hidden;
overflow: hidden;

}

/* Delete Modal */

.delete-top i{
  font-weight:700;
  font-size:20px;
  vertical-align:middle;
}
.delete-cm-modal-header .la-close,
.edit-modal-header .la-close {
  float: right;
  padding: 5px;
  font-size: 18px;
  color: var(--main-color);
}

#delete-heading,
#edit-heading-meeting,
#edit-heading-discount,
#edit-heading-category {
  font-size: 20px;
  font-weight: bold;
  vertical-align: top;
}
#delete-heading i,
.edit-top i {
  font-size: 32px;
}


.delete-cm-modal {
  display:none;
  z-index:9999;
  position:fixed;
  top:50%;
  left:50%;
  background-color:#fff;
  border-radius:4px;
  transform:translate(-50%,-50%);
  width:calc(100% - 30px);
  max-width:500px;
  /* border:1px solid #000; */
  padding:15px;
  box-sizing:border-box;
}

.delete-button,
.edit_button{
  margin: 15px auto;
  display:block;
  text-align:center;
  cursor:pointer;
}

#delete-item-info{
  display:none;
  width:100%;
  color: #721c24;
  background-color:#f8d7da;
  border:1px solid #f5c6cb;
  padding:5px;
  box-sizing: border-box;
}

.position-left{
  top:0;
  left:0;
  height:100%;
  overflow-y:auto;
  width:250px;
}

.off-canvas-content .off-canvas.position-left,
.position-left{
  -webkit-transform: translateX(-250px);
  transform:translateX(-250px);
}

.off-canvas{
  position: fixed;
  z-index: 12;
  transition: -webkit-transform .5s ease;
  transition: transform .5s ease;
  transition: transform .5s ease,-webkit-transform .5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: #e6e6e6;
}

@media print, screen and (min-width:350px){
  .event-actions,
  .product-actions,
  .user-actions{
    flex-direction:row;
  }

  .event-actions a,
  .product-actions a,
  .user-actions a{
    margin-bottom:0px;
  }
}

@media print, screen and (min-width:450px){
  .event-edit .table-header,
  .product-edit .table-header{
    flex-direction: row;
    justify-content: space-between;
  }
  /* .event-edit .table-header h2,
  .product-edit .table-header h2{
    margin:0px;
  } */
}
/*.js-off-canvas-overlay.is-overlay-fixed{} */
@media print, screen and (min-width: 40em) {
  .tiles .tile-container {
    width: 49%;
    margin: 0 2% 10px 0;
  }
  .tiles .tile-container:nth-child(2n) {
    margin: 0 0 10px 0;
  }
  .tile h5 {
    font-size: 10px;
  }

  .user-edit .top-part{
    flex-direction: row;
    align-items:center;
  }

  .user-edit input{
    width:80%;
  }
  .user-edit .form-group label{
    width:20%;
    margin-bottom:0;
  }
  .cm-edit-appointment .edit-part .part-left,
  .cm-edit-appointment .edit-part .part-right{
    width:48%;
  }
  .cm-edit-appointment{
    max-height:860px;
  }

  #appointment-checkboxes .checkbox-label{
    width:49%!important;
  }
}

.agenda-label-wrapper{
    display: flex;
    justify-content: space-between;
}
.agenda-label-wrapper label{
    flex-basis: auto;
}


#agenda-file-preview{
    width: 100%;
    position: relative;
    display: block;
}
#delete-agenda{
    cursor: pointer;
    display: none;
    /* position: absolute; */
    color: red;
   /* bottom: 20px; */
    /* right: 0px; */
    display: inline-block;
    padding: 2px 10px;
    border-radius: 50%;
    background-color:lightgray;
    /* z-index: 50; */
    max-height: 27px;
    flex-basis: auto;
}

@media print, screen and (min-width: 48em) {

  .tile h5 {
    font-size: 12px;
  }
  .tile-container {
    padding: 30px 20px;
  }
  .event-edit .form-group input,
  .event-edit .form-group textarea,
  .event-edit .form-group select,
  .product-edit .form-group input,
  .product-edit .form-group select{
    width:70%;
  }
  .event-edit .form-group label,
  .product-edit .form-group label{
    width:30%;
    margin-bottom:0;
  }
}

@media print, screen and (min-width: 50em) {

  .left-side {
    width: 32%;
    /* max-width:370px; */
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
  }
  .right-side {
    width: 68%;
    /* top: 0;
    bottom: 0;
    right: 0; */
    margin-left:auto;
    display:flex;
    flex-direction:column;
    min-height:100vh;
  }
  .notify{
    width:68%;
  }
  .position-left {
    transform: none;
  }
  .user-edit input{
    width:85%;
  }
  .user-edit .form-group label{
    width:15%;
  }
}

@media print, screen and (min-width: 64em) {
  .left-side{
    width:25%;
  }
  .right-side {
    width: 75%;
  }
  .notify{
    width:75%;
  }
  .tiles .tile-container,
  .tiles .tile-container:nth-child(2n){
    width: 24%;
    margin: 0 calc(4% / 3) 10px 0;
  }
  .tiles .tile-container:nth-child(4n){
    margin:0 0 10px 0;
  }


}

@media print, screen and (min-width: 74em) {
  .tile h5 {
    font-size: 16px;
  }
  .left-side{
    width:20%;
  }
  .right-side {
    width: 80%;
  }
  .notify{
    width:80%;
  }
  .event-edit .left-part,
  .event-edit .right-part,
  .product-edit .left-part,
  .product-edit .right-part{
    width:45%;
  }

  .event-edit .unternehmensart.shadow:nth-of-type(4){
    order:4 !important;
  }

  .event-edit .buchungstyp.shadow:nth-of-type(5){
    order:5 !important;
  }
}


/* The snackbar - position it at the bottom and in the middle of the screen */
#snackbar {
  visibility: hidden; /* Hidden by default. Visible on click */
  min-width: 250px; /* Set a default minimum width */
  margin-left: -125px; /* Divide value of min-width by 2 */
  background-color: #333; /* Black background color */
  color: #fff; /* White text color */
  text-align: center; /* Centered text */
  border-radius: 2px; /* Rounded borders */
  padding: 16px; /* Padding */
  position: fixed; /* Sit on top of the screen */
  z-index: 1; /* 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 2.5s;
  animation: fadein 0.5s, fadeout 0.5s 2.5s;
}

#snackbar.success{
  background-color: darkgreen;
}
#snackbar.error{
  background-color: darkred;
}

/* 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;}
}

.spinner-overlay{
    position: fixed;
    top: 0px;
    left: 0px;
    display: none;
    height: 100vh;
    width: 100vw;
    background: rgba(0, 0, 0, 0.5);
    pointer-events: none;
    z-index: 9999;
}
.spinner, #spinner {
    position: absolute;
    left: 50%;
    top: 50%;
    height:60px;
    width:60px;
    margin:0px auto;
    -webkit-animation: rotation .6s infinite linear;
    -moz-animation: rotation .6s infinite linear;
    -o-animation: rotation .6s infinite linear;
    animation: rotation .6s infinite linear;
    border-left:6px solid rgba(0,174,239,.15);
    border-right:6px solid rgba(0,174,239,.15);
    border-bottom:6px solid rgba(0,174,239,.15);
    border-top:6px solid rgba(0,174,239,.8);
    border-radius:100%;
  }

  @-webkit-keyframes rotation {
    from {-webkit-transform: rotate(0deg);}
    to {-webkit-transform: rotate(359deg);}
  }
  @-moz-keyframes rotation {
    from {-moz-transform: rotate(0deg);}
    to {-moz-transform: rotate(359deg);}
  }
  @-o-keyframes rotation {
    from {-o-transform: rotate(0deg);}
    to {-o-transform: rotate(359deg);}
  }
  @keyframes rotation {
    from {transform: rotate(0deg);}
    to {transform: rotate(359deg);}
  }
