


* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: #f9c;

  background-color: #0cf;

  color: #fc0;
  font-family: sans-serif;
  font-size: 16px;
  padding: 10vh 10vw;
  scrollbar-color: #444 #0000;
  
  text-align: center;
}


.toptag {
  position: fixed;
  top: 5px;
  left: 5px;
  color: #0008;
}

a {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}

a.button {
  background-color: #000;
  color: #fc0;
  border-radius: 100px;
  padding: 5px 10px;
  font-weight: bold;
  transition: 1s;
}
a.button.alt {
  xcolor: #0cf;
}
a.button:hover {
  color: #fff !important;
  xbackground-color: #000;
  transition: 0s;
}


.page {
  max-width: 1000px;
  margin: auto;
  background-color: #333;
  border-radius: 5vw;
  border-radius: 30px;
  padding: 20px;
  overflow: hidden;
  position: relative;
}


.button.exit {
  position: absolute;
  top: 15px;
  right: 15px;
  background-color: #0000;
  color: #0cf;
  font-size: 150%;
}
.button.exit:hover {
  font-size: 200%;
}


img {
  object-fit: cover;
  width: 200px;
  height: 200px;
  border-radius: 200px;
  margin: 20px 0;
}

h1 {
  font-size: 170%;
}

.headmeta {
  color: #0cf;
  color: #f90;
}

.page h1, div {
  margin-bottom: 2px;
}

.label {
  text-transform: uppercase;
  font-size: 80%;
  color: #fff4;
}



.section {
  background-color: #222;
  padding: 30px 30px;
  border-radius: 30px;
  xmargin: 0 -20px;
}
.section.booking {
  background-color: #fc0;
  color: #222;
}
.section.booking .label {
  color: #0006;
}

.section.webco {
  xcolor: #fff;
}

.row {
  display: inline-block;
  overflow: hidden;
}
.row div {
}


.cell {
  display: inline-block;
  margin: 0 20px;
}


.hidden {
  display: none;
}
.hidden.updated {
  display: block;
}


input {
  border: 0;
  background-color: #0000;
  color: #fc0;
  font-size: 16px;
  text-align: center;
  transition: 1s;
}
input:hover {
  transition: 0s;
  color: #fff;
}
input.missing {
  color: #222;
  background-color: #fff;
  xborder: 2px solid #fc0;
  padding: 2px;
  xwidth: 100%;
}
input:focus {
  transition: 0s;
  color: #fff;
  font-size: 20px;
  xborder: 5px solid #fc0;
  outline: 0;
  background-color: #222;
  padding: 2px;
}




.framed {
  border: 1px solid #fc0;
  padding: 0px 5px 2px 5px;
  display: inline-block;
  margin: 0 2px 3px 2px;
  font-size: 95%;
}

.boxed {
  background-color: #fc0;
  color: #222;
  padding: 1px 5px;
  margin: 0 1px 3px 1px;
  display: inline-block;
}

.groups .framed {
  padding: 1px 5px 0px 5px;
  xborder-color: #fff;
}
.groups .boxed {
  padding: 1px 5px 0px 5px;
  background-color: #f90;
}

.aka .framed {
  xborder-color: #f90;
  xcolor: #f90;
}

.spaced {
  display: inline-block;
  padding: 1px 5px 0px 5px;
}  






.page.webco {
  background-color: #444;
  xtext-align: left;
}

.page.webco.state-RESERVATION {
  background-color: #fc0;
  color: #000;
}
.page.webco.state-CHECKOUT {
  background-color: #383;
  color: #fff;
}

.page.webco.state-RESERVATION .cell {
  color: #fc0;
}
.page.webco.state-CHECKOUT .cell {
  color: #2b2;
}


.page.webco table {
  width: calc(100% + 50px);
  margin: -20px;
  border-spacing: 0;
}
.page.webco td,
.page.webco .cell {
  font-size: 14px;
  vertical-align: top;
  padding: 20px;
  xcolor: #fff;
}

.page.webco .head {
  width: 0px;
  background-color: #333;
  white-space: nowrap;
}


.page.webco .body {
  width: 100%;
  xbackground-color: #444;
  vertical-align: middle;
  overflow: hidden;
}

.page.webco div {
  margin: 0;
}

.page.webco .id {
  font-size: 150%;
  font-weight: bold;
}

.page.webco img {
  margin: 0;
  border-radius: 0;
  width: 73px;
  height: 73px;
  display: block;
  float: left;
  margin: 1px;
  border-radius: 10px;
}


.page.webco img.conflict {
  border-bottom: 10px solid #000;
}
.page.webco.state-RESERVATION img.conflict {
  border-color: #292;
}
.page.webco.state-CHECKOUT img.conflict {
  border-color: #fc0;
}

/*
.page.webco {
  padding: 0;
  text-align: left;
}

.page.webco .cell.head {
  overflow: hidden;
  width: auto;
  xheight: 100%;
  background-color: #333;
  text-align: left;
  float: left;
}
.page.webco .cell.head div {
  xdisplay: inline-block;
}
.page.webco .cell.body {
}
.page.webco img {
  width: 75px;
  height: 75px;
  xdisplay: inline-block;
  xfloat: none;
}
*/

pre {
  margin-top: 1000px;
  padding: 10px;
  font-size: 12px;
  background-color: #111;
  text-align: left;
  overflow: auto;
}


.uc {
    text-transform: uppercase;
}
.lc {
    text-transform: lowercase;
}
.ucfirst:first-letter {
    text-transform: uppercase;
}

.nw {
  white-space: nowrap;
}


@media only screen and (max-width: 600px) {

  body {
    padding: 3vw;
  }




}






