body{
	touch-action: manipulation;
}

.stepblock{
	display:none;
	margin:0px;
	padding:0px;
	border:0px;
	width:95vw;
	max-width:1200px;
}
.stepblock-narrow{
	max-width:800px;
	
}
#linkbox{
	font-family: Lucida Sans Typewriter,Lucida Console,monaco,Bitstream Vera Sans Mono,monospace;
	font-size: 24px;
	font-style: normal;
	font-variant: normal;
	font-weight: 500;
	color: #008;
}
#phonenumberwrapper{
	font-family:monospace;
	font-size:6vmin;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
#phonewrapper {
  width:51vmin;
  margin:0 auto 0 auto;
  position:relative;
  padding:5vmin 0 0 0;
  background:#fff;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.keyhighlight{
	background: #aaf;
}
.key {
  border-radius: 10vmin 10vmin 10vmin 10vmin;
  color:#444;
  width:14vmin;
  height:14vmin;
  text-align:center;
  font-size:6vmin;
  float:left;
  box-sizing:border-box;
  padding:5px 0 0 0;
  margin:0 1.4vmin 2vmin 1.4vmin;
  border:1px solid #444;
  cursor:pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.key span {
  display:block;
  color:#444;
  text-align:center;
  font-size:12px;
  text-transform:uppercase;
}
.key.special {
  line-height:12vmin;
}
.key.nb {
  border:none;
}
.key.phone {
  background:#5CDB74;
  border:none;
  color:#FFF;
  line-height:12vmin;
  font-size:8vmin;
}
.clear {
  clear:both;
}
.mycontainer {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
	margin:0px;
	padding:0px;
}
.top-progress{
	margin:0px;
}
.top-error{
	margin:5px;
}
.calendar-top{
	font-size:1.2em;
	width:100%;
	text-align:center;
}
.calendar-pick{
	margin-bottom:-7px;
	padding:0px;
}
.calendar-pick input{
	
}
.calendar-available-label{
	width:100%;
	background: #cfc;
	padding:10px;
}
.calendar-unavailable-label{
	width:100%;
	background: green;
	padding:10px;
	text-decoration: line-through;
	color:#aaa;
	background: #fcc;
}
.calendar-selected-label{
	width:100%;
	padding:10px;
	background: #d2ff52;
	background: radial-gradient(ellipse at center, #5f7 0%,#cfc 70%);
}

.calendar-table{
	border:1px solid;
	border-collapse:collapse;
	table-layout: fixed;
	width:100%;
}
.calendar-table tr{
	border:1px solid;
	border-top:2px solid;
	border-collapse:collapse;
}
.calendar-table td{
	border:1px solid;
	border-collapse:collapse;
	vertical-align:top;
}
.calendar-table-top{
	font-size:1.3em;
	font-weight:bold;
	text-align:center;
}

.promptheader{
	margin-bottom:5px;
}

.itemadder-visible{
	padding:5px;
}
.itemadder-hidden{
	display:none;
}

.itemadder-all{}

.btn-itemadder{
	margin:5px;
	font-size:4vmin;
}

.standard-input{}

.iteminlist{
	width:100%;
	padding:4px;
	margin:4px;
	border:1px solid #aaf;
	border-radius:2px;
}

#itemwarningzone{
	width:100%;
	padding:6px;
	margin:6px;
	border:1px solid #f58;
	border-radius:3px;
}

.input-error{
	border:1px solid red;
}
body{
}

.StripeElement {
  background-color: white;
  padding: 8px 12px;
  border-radius: 4px;
  border: 1px solid transparent;
  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;
}

.field{
	width:100%;
}
.employeecheckbox{
	font-size:1.4em;
}
.imgcontainer {
    position:relative;
    display:inline-block;
    text-align:center;
    border:1px solid #dfd;
}

.imgbutton {
    position:absolute;
    bottom:10px;
    right:10px;
}

.confirmationtable{
	width:100%;
	padding:2px;
}
.confirmationtable tr{
	padding:3px;
}
.confirmationtable td{
	padding:3px;
}
.autoh3{
	font-size:40px;
	white-space:nowrap;
	overflow: hidden;
	font-weight:bold;
}


.spinner {
  margin: auto auto;
  width: 70px;
  text-align: center;
  float:right;
  display:none;
}

.spinner > div {
  width: 18px;
  height: 18px;
  background-color: #333;

  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% { -webkit-transform: scale(0) }
  40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
  0%, 80%, 100% { 
    -webkit-transform: scale(0);
    transform: scale(0);
  } 40% { 
    -webkit-transform: scale(1.0);
    transform: scale(1.0);
  }
}

.btn-backonestep{}