/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* Hide scrollbar for Chrome, Safari and Opera */
*::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
* {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

* {
	text-shadow: none;
}
#wrapper {
	background: #fff;
	position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    overflow: auto;
}

#menu-wrapper {
	position: relative;
	top: 0px;
	left: 0px;
	z-index: 1400;
}

#menu-full-button {
	height: 100%;
	position: fixed;
	display: inline-block;
	top: 0px;
	width: 50px;
	font-weight: bold;
	line-height: 50px;
	font-size: 25px;
	z-index:1450;
}

.side-button {
		background: rgb(48 61 66 / 1);
    background: linear-gradient(90deg, rgb(48 61 66) 0%, rgb(65 84 93 / 1) 78%);
	color: #fff;
}

.side-button-horizontal {
		background: rgb(48 61 66 / 1);
    background: linear-gradient(0deg, rgb(48 61 66) 0%, rgb(65 84 93 / 1) 78%);
	color: #fff;
}

#menu-full-button .side-button {
	height: 50%;
	float: left;
	cursor: pointer;
	text-align: center;
	writing-mode:vertical-lr;
	transform: rotate(-180deg);
	height: 50%;
}

#menu-full-button .side-button-border {
		border-top: 2px solid #fff;
	
}

#menu-full-button .side-button span {
	display: block;
}

#menu-full-button-portrait {
	position:fixed;
	width: 100%;
	display: block;
	height: 50px;
	font-weight: bold;
	line-height: 50px;
	font-size: 25px;
	z-index:1450;
}

#menu-full-button-portrait .side-button {
	float: left;
	cursor: pointer;
	text-align: center;
	width: 50%;
}

#menu-full-button-portrait .side-button-border {
		border-right: 2px solid #fff;
	
}

#menu-full-button .side-button span {
	display: block;
}

#cover {
	position: absolute;
	top: 0px;
	bottom: 0px;
	overflow: hidden;
	width: 100%;
	height: 100%;
	z-index: 1000;
}

#picker-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgb(45,45,45, 0.3);
	z-index: 1500;
}
.picker-menu {
	color: #333;
	display: none;
	width: 100%;
	height:100%;
	background: rgb(255,255,255, 0.8);
	box-shadow: 10px 0 5px -5px #111;
	float: left;
	z-index: 1400;
	padding: 10px 10px 10px 60px;
	overflow-y: scroll;
	
}

/* Hide scrollbar for Chrome, Safari and Opera */
.picker-menu::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.picker-menu {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.picker-menu .picker-thumb-span {
	text-align: center;
	padding: 15px 0;
}

.picker-menu .picker-thumb-span p.details {
	margin-bottom: 0px;
}

.picker-menu .picker-thumb-span img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	margin-bottom: 5px;
}

.visualiser-image {
	z-index: 999;
	position: sticky;
	width:100%;
	top: 0;
}

#logo {
	position: fixed;
	z-index:1000;
	left: 65px;
	top: 65px;
	max-width: 25%;
}

#logo img {
	width: 100%;
}

#footer {
	position: fixed;
	z-index: 1000;
	padding: 10px;
	font-size: 18px;
	color: #fff;
	background: rgb(50,50,50, 0.75);
	line-height: 25px;
	font-weight: 400;
	font-family: sans-serif;
	bottom: 0px;
	left: 50px;
	max-width: 50%;
}

#footer p {
	margin: 0px;
}

#selected {
	position: fixed;
	z-index: 1001;
	font-size: 16px;
	color: #fff;
	background: rgb(50,50,50, 0.75);
	text-align: right;
	line-height: 25px;
	font-weight: 400;
	font-family: sans-serif;
	top: 50px;
	right: 0px;
	padding: 10px;
}

#selected h3 {
	font-size: 20px;
	font-weight: 500;
	text-decoration: underline;
	margin: 0px;
}

#selected h3.door-info-h3 {
	margin-top: 20px;
}

.picker-thumb {
	-webkit-box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.25);
	-moz-box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.25);
	box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.25);
	cursor: pointer;
}

.picker-thumb:hover {
	-webkit-box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.5);
	-moz-box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.5);
	box-shadow: 2px 2px 5px 2px rgba(0,0,0,0.5);
	cursor: pointer;
}

.clear {
	clear: both;
}

.circular--square {
  border-top-left-radius: 50% 50%;
  border-top-right-radius: 50% 50%;
  border-bottom-right-radius: 50% 50%;
  border-bottom-left-radius: 50% 50%;
}

.col-xs-3 {
	margin-bottom: 20px;
}

.watauthbg {
	background: #000;
	color: #fcd127;
}

.autharea {
	background: #000;
	border: 2px dotted #fcd127;
	min-width: 600px;
	width: 50%;
	height: 600px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 100px;
	padding: 50px;
	text-align: center;
}

.authlogo {
	margin-left: auto;
	margin-right:auto;
	display: block;
}

.authform {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}

.autherror {
	color: red;
}

.watauthinput {
	color: #000;
	background: #e3b914;
	font-weight: bold;
}

.btn-yellowblack {
	background: #e3b914;
	color: #000;
	border: 1px solid #fcd127;
	font-weight: bold;
}
.btn-yellowblack:hover {
	background: #fcd127;
	color: #000;
	border: 1px solid #e3b914;
}

.btn-yellowblack:active {
	background: #fcd127;
	color: #000;
	border: 1px solid #e3b914;
}

.modal {
	z-index: 1800;
}

.form-control[disabled] {
	background-color: #d6d6d6;
}

select.filterselect.form-control option:disabled {
	background: #d6d6d6;
}

#worktopdata { 
	min-height:100vh;
}

.display-block {
	display: block;
}

.btn-depstyle {
		color: #fff;
    background-color: #196488;
    border-color: #344248;
	}

.btn-depstyle:hover, .btn-depstyle:focus, .btn-depstyle:active {
		color: #fff;
    background-color: #0e5e84;
    border-color: #2c4049;
	}

.btn-depstylereversed {
		color: #196488;
    background-color: fff;
    border-color: #344248;
	}

.btn-depstylereversed:hover, .btn-depstylereversed:focus, .btn-depstylereversed:active {
		color: #2c4049;
    background-color: #fff;
    border-color: #2c4049;
	}

#vismodalcontainer {
	position: fixed;
	z-index: 2000;
	background: rgb(0 0 0 / 75%);
	width: 100%;
	height: 100%;
	top: 0px;
	bottom: 0px;
	padding: 0 25px;
	display: none;	
}

#vismodalcontainer #vismodal {
	width: 100%;
	max-width: 800px;
	background: #fff;
	margin: 50px auto;
	padding: 25px;
	z-index: 2001;
}

#vismodalcontainer #vismodal p.terms {
	font-size: 10px;
}

#vismodalcontainer #vismodal span.asterisk {
	color: red;
	font-size: 14px;
	font-weight: 500;
}

.redbold {
	font-weight: 700 !important;
    color: red !important;
}

.redinputborder {
	border: 2px solid red !important;
}

.margin-top-10 {
	margin-top: 10px;
}

h1.modal-message-red {
	font-size: 3vh;
	color: red !important;
	text-align: center;
}

.modal-text {
	font-size: 2.5vh;
	text-align: center;
}

.btn-xl {
	font-size: 2.5vh;
	padding: 10px, 30px;
}

.glyphicon.spinning {
    animation: spin 1s infinite linear;
    -webkit-animation: spin2 1s infinite linear;
}

@keyframes spin {
    from { transform: scale(1) rotate(0deg); }
    to { transform: scale(1) rotate(360deg); }
}

@-webkit-keyframes spin2 {
    from { -webkit-transform: rotate(0deg); }
    to { -webkit-transform: rotate(360deg); }
}

#loading {
	background: rgb(0,0,0, 0.5);
	z-index:1900;
	position: fixed;
	width: 100%;
	height: 100%;
	text-align: center;
	display: block;
}

#loading #loading-inner {
	position: fixed;
	color: #fff;
	font-size: 5vh;
	top: 200px;
	margin-left: auto;
	margin-right: auto;
	width: 300px;
	left: calc(50% - 150px);
}


#splashcontainer {
	position: fixed;
	z-index: 2000;
	background: rgb(0 0 0 / 75%);
	width: 100%;
	height: 100%;
	top: 0px;
	bottom: 0px;
	padding: 0 25px;
	display: none;	
}

#splashcontainer #splash {
	width: 100%;
	max-width: 800px;
	margin: 50px auto;
	padding: 25px;
	z-index: 2001;
		color: #fff;
    background-color: #196488;
    border-color: #344248;
	}

.splash-text {
	font-size: 1.5vh;
	text-align: center;
}

.splash-copy {
	font-size: 1.2vh;
	text-align: center;
}

.termslink {
	color: #fff !important;
}