﻿* {
	box-sizing: border-box;
}

ul {
	list-style: none;
	padding-left: 0;
}

ol {
	list-style: decimal
}

	ol:first-of-type ol:nth-child(2n) {
		list-style: lower-roman;
	}

.flex {
	display: flex;
}

	.flex.dirColumn {
		flex-direction: column;
	}

	.flex.center {
		justify-content: center;
		align-items: center;
	}
	.flex.vCenter {
		align-items: center;
	}
	.flex.hCenter {
		justify-content: center;
	}
	.flex.centerSelf {
		justify-self: center;
		align-self: center;
	}

	/* Fill available space evenly */
	.flex.evenFill > *{
		flex:1;
	}

	.flex.wrap {
		flex-wrap: wrap;
	}



	.flex.center > * {
		display: flex;
		align-items: center;
	}

	.flex.between {
		justify-content: space-between;
	}

	.flex.flexEnd {
		justify-content: flex-end;
	}

	.flex.flexStart {
		justify-content: flex-start;
	}

	.flex.gap1 {
		gap: 1em;
	}
	.flex.gap05 {
		gap: 0.5em;
	}
	.flex.aEnd {
		align-items: flex-end;
	}
.bw {
	word-break: break-word;
}

.h100 {
	height: 100%;
}

.pill {
	padding: 2px 12px;
	background-color: #FFFFFF;
	border: 1px solid #333333;
	border-radius: 100px;
	color: #333333;
	cursor: pointer;
	white-space: nowrap;
	line-height: 32px;
}

	.pill.active {
		color: #FFFFFF;
		background-color: #333333;
	}

	.pill:disabled {
		/*		color: #FFFFFF;
		background-color: #333333;*/
	}

/********************************/
/* Authentication */
/********************************/
#authentication {
	background: url('../Images/seamless_2.png');
	background-repeat: repeat;
	background-size: 30em;
	height: 100%;
	width: 100vw;
}

	#authentication #logo {
		max-width: 200px;
		position: absolute;
		top: 12vh;
		left: 2vh;
	}

	#authentication #left {
		border-bottom-right-radius: 100%;
		border-top-right-radius: 100%;
		width: 54%;
		min-width: 633px;
		height: 120vh;
		background: white;
		top: -10vh;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}

		#authentication #left form {
			max-width: 400px;
		}
/********************************/
/* Dashboard */
/********************************/
#dashboardIndexForm {
}

	#dashboardIndexForm #logo {
		max-width: 200px;
		position: absolute;
		top: 2vh;
		left: 2vh;
	}

	#dashboardIndexForm #topRight {
		position: absolute;
		top: 2vh;
		right: 2vh;
		text-align: right;
	}

	#dashboardIndexForm #navContainer,
	#dashboardIndexForm #navContainer > * {
		max-width: 900px;
		width: 80%;
		align-self: center;
	}

		#dashboardIndexForm #navContainer #welcome {
			flex-direction: column;
			align-items: flex-start;
			margin-bottom: 3em;
		}

		#dashboardIndexForm #navContainer #nav{
		font-size:14pt;
		font-weight:500;
		}
		#dashboardIndexForm #navContainer #nav div.navIcon {
			display: flex;
			align-items: center;
			width: 100px;
			height: 100px;
			border-radius: 60px;
			background: rgba(248, 248, 248, 1);
		}
			#dashboardIndexForm #navContainer #nav div.navIcon:hover {
				background: rgba(240, 240, 240, 1);
			}

			#dashboardIndexForm #navContainer #nav div img {
				width: 100%;
				padding: 1.5em;
			}

#bottomWaveContainer {
	max-height: 200px;
	height: 20%;
	overflow: hidden;
}

	#bottomWaveContainer.inPadding {
		width: calc(100% + 40px);
		margin-left: -20px;
		position: relative;
	}

	#bottomWaveContainer #bottomWave {
		height: 100%;
		background: var(--secondary, rgba(168, 53, 58, 1));
		/*https://9elements.github.io/fancy-border-radius/#100.23.100.68--.*/
		border-radius: 23% 77% 32% 68% / 100% 100% 0% 0%;
		width: 120vw;
		left: -10vh;
		position: relative;
	}
/********************************/
/* User */
/********************************/

/********************************/
/* Quote - Edit */
/********************************/
#quoteEditForm {
}

	#quoteEditForm #left {
		/*width: 62vw;*/
		width:72%;
	}

		#quoteEditForm #left .quoteItem {
			align-items: center;
			border-bottom: 1px solid black;
		}

			#quoteEditForm #left .quoteItem label {
				width: 10em;
			}

			#quoteEditForm #left .quoteItem img {
				margin-left: auto;
			}

		#quoteEditForm #left #other {
			margin-top: 1.5em;
		}

			#quoteEditForm #left #other label {
				font-weight: 400;
			}

	#quoteEditForm #right {
		/*width: 30vw;*/
		width:28%;
	}

		/*#quoteEditForm #right #prospect img {
			margin-left: auto;
		}*/

		#quoteEditForm #right #todo {
			margin-top: 1.5em;
			margin-bottom: 1.5em;
		}

			#quoteEditForm #right #todo a {
				color: black;
				text-decoration: none;
			}
/********************************/
/* Site Survey */
/********************************/
.siteSurvey h1 {
	justify-content: flex-start;
}

.siteSurvey h2 {
	margin-bottom: 0.5em;
	margin-top: 0.5em;
}

.siteSurvey input {
	min-width: 130px;
}

.siteSurvey label{
	font-weight:400;
}

.siteSurvey select {
	min-width: 172px; /* to match input total width 1 + 10 + 130 + 10 + 1*/
}

.siteSurvey .pill img {
	max-width: 1em;
	padding-right: 0.5em;
}

.siteSurvey {
	/*background: var(--Gray-7, rgba(248, 248, 248, 1));*/
}

	.siteSurvey .group li {
		/*background: var(--Gray-7, rgba(248, 248, 248, 1));*/
		padding: 0.5em;
	}

	.siteSurvey .group:first-of-type li li {
		/*background: var(--Gray-7, rgba(248, 248, 248, 1));*/
		padding: 0.5em 0em 0.5em 0.5em;
	}

	.siteSurvey .group li div {
	}

	.siteSurvey .group:first-of-type li:nth-of-type(odd) {
		/*background-color: rgba(255, 222, 24, 0.25);*/
		background-color: var(--secondary-med);
	}

	.siteSurvey li.Measurements #surveyDiagram {
		display: flex;
		flex-wrap: wrap;
	}

		.siteSurvey li.Measurements #surveyDiagram > #surveyDiagramImage {
			width: 80%;
			height: 680px;
			background-size: contain;
			background-repeat: no-repeat;
		}

		.siteSurvey li.Measurements #surveyDiagram > #surveyMeasurements li {
			background: none;
		}

			.siteSurvey li.Measurements #surveyDiagram > #surveyMeasurements li.alt {
				background-color: var(--secondary-med);
			}
	.siteSurvey li.generatorQuestion .signatureQuestion{
		width: 400px !important;
	}
				.siteSurvey li.generatorQuestion .signaturePadLayer {
		width: 400px !important;
	}

	.siteSurvey li.generatorQuestion .signaturePad {
		width: 400px !important;
	}
	.siteSurvey .required{
	border-right:3px solid red;
	}
.overflow-auto {
	overflow: auto;
}

.siteSurvey li.Measurements #surveyDiagram ul .highlight input {
	background-color: #f1e7e7;
	border: 1px solid red;
}

.siteSurvey li.Measurements input[type=number] {
	width: 60px;
	min-width: 60px;
	max-width: 60px;
	text-align: right;
}

/* Site Survey Checklist */
.checklistCategory {
	margin: 15px 0 5px 0;
	padding: 0;
	font-size: 1.1em;
}

.checklistGroup {
	list-style: none;
	padding: 0;
	margin: 0 0 10px 0;
}

.checklistItem {
	display: flex;
	align-items: center;
	padding: 12px 15px;
	border-bottom: 1px solid #e0e0e0;
	cursor: pointer;
	user-select: none;
	-webkit-user-select: none;
	transition: background-color 0.2s;
}

.checklistItem:active {
	background-color: #f0f0f0;
}

.checklistItem.checked {
	background-color: #f0faf0;
}

.checklistItem.checked .checklistText {
	color: #888;
	text-decoration: line-through;
}

.checklistBox {
	width: 24px;
	height: 24px;
	min-width: 24px;
	border: 2px solid #bbb;
	border-radius: 6px;
	margin-right: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: background-color 0.2s, border-color 0.2s, transform 0.2s;
}

.checklistItem.checked .checklistBox {
	background-color: #4CAF50;
	border-color: #4CAF50;
	transform: scale(1.15);
}

.checklistCheckmark {
	width: 16px;
	height: 16px;
	fill: none;
	stroke: white;
	stroke-width: 3;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-dasharray: 30;
	stroke-dashoffset: 30;
	transition: stroke-dashoffset 0.3s ease 0.1s;
}

.checklistItem.checked .checklistCheckmark {
	stroke-dashoffset: 0;
}

.checklistText {
	flex: 1;
	transition: color 0.2s, text-decoration 0.2s;
}

@keyframes checklistPop {
	0%   { transform: scale(1); }
	40%  { transform: scale(1.25); }
	100% { transform: scale(1.15); }
}

.checklistItem.justChecked .checklistBox {
	animation: checklistPop 0.3s ease;
}

/********************************/
/* Options */
/********************************/
#options {
	max-width: 800px;
}

	#options .equipmentItems label {
		font-weight: 400;
	}
	#options .equipmentItems select{
	width:100%;
	}

	#options #equipmentItems_Other > * {
		width: 392px;
	}
	#options input[type=text] {
		width: 100%;
	}

	#options #costBreakdown label{
		width:200px;
	}
	#options #costBreakdown span{
	text-align:left;
	}
/********************************/
/* Review */
/********************************/
#reviewAndApprove ul {
	margin-left: 2em;
	margin-top:0em;
	list-style: unset;
}

#reviewAndApprove #costSummary label,
#reviewAndApprove ul.equipmentList label {
	width: 200px;
}
#reviewAndApprove img {
	height: 32px;
	width: 32px;
}
/********************************/
/* to override */
/********************************/
a {
	color: rgba(51, 51, 51, 1);
}

	a.noFormat {
		text-decoration: none;
	}

img.icon {
	max-width: 2em;
	max-height: 2em;
	padding: 0.5em;
}

.wAuto{
width:auto;
}
.w400 {
	width: 400px;
}
.w600 {
	width: 600px;
}
.w800 {
	width: 800px;
}
.mwIpad {
	width: calc(810px - 76px);
}

.w100p {
	width: 100%;
}

input {
	padding: 10px !important;
	margin: 0px !important;
}

	input[type=checkbox],
	input[type=radio] {
		height: 18px;
		width: auto;
	}

.textCenter {
	text-align: center;
}

label {
	font-weight: 700;
}

.borderObj {
	padding: 0.5em;
	border: 1px solid black;
	border-bottom: 3px solid black;
}

.secondary-light {
	background: var(--secondary-light);
}
/********************************/
/* Brand Management */
/********************************/
#brandManagement .childQuestion{
padding-left:1em;
}
/********************************/
/* TO MERGE */
/********************************/
.pad-025 {
	padding: 0.25em;
}

.pad-05 {
	padding: 0.5em;
}

.pad-1 {
	padding: 1em;
}
.pad-2 {
	padding: 1em;
}
.padTop-05 {
	padding-top: 0.5em;
}
.padVert-05 {
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}

.padSide-2 {
	padding-left: 2em;
	padding-right: 2em;
}
.padSide-05 {
	padding-left: 0.5em;
	padding-right: 0.5em;
}
.padSide-1 {
	padding-left: 1em;
	padding-right: 1em;
}
.padLeft-05 {
	padding-left: 0.5em;
}
.padLeft-1 {
	padding-left: 1em;
}
.padRight-05 {
	padding-right: 0.5em;
}
.padRight-1 {
	padding-right: 1em;
}

.margin-05{
margin:0.5em;
}
.marginTop-05 {
	margin-top: 0.5em;
}
.marginTop-1 {
	margin-top: 1em;
}
.marginVert-05 {
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
.marginVert-1 {
	margin-top: 1em;
	margin-bottom: 1em;
}

.marginLeft-1 {
	margin-left: 1em;
}

.marginLeft-2 {
	margin-left: 2em;
}

.marginLeft-5 {
	margin-left: 5em;
}

.marginRight-2 {
	margin-right: 2em;
}
.marginLeft-auto{
	margin-left: auto;
}
.marginSide-05 {
	margin-left: 0.5em;
	margin-right: 0.5em;
}
.marginSide-1 {
	margin-left: 1em;
	margin-right: 1em;
}
.marginSide-2 {
	margin-left: 2em;
	margin-right: 2em;
}
.white {
	background: white;
}

.whiteText{
color:white;
}

h4 {
	margin: 1em 0;
}

.red {
	border-radius: 1em;
	background: var(--Error, rgba(197, 18, 26, 1));
}

.darkGrey {
	background: var(--Gray-1, rgba(51, 51, 51, 1));
}

.lightGrey {
	background: var(--Gray-2, rgba(79, 79, 79, 1));
}

.noWrap {
	white-space: nowrap;
}

.pointer{
cursor:pointer;
}

.primary{
	background-color: var(--primary);
	color:white;
}

/*jquery*/
.validation-errors .validation-summary-errors {
	padding: 0.1em 0.5em;
	border: red 1px solid;
	background: #f001;
	margin-top: 1em;
	margin-bottom: 1em;
}

/*redo these with new classes*/

#prebuiltOptionSelect {
	display: flex;
	overflow-x: auto;
	justify-content: center;
	margin-top: 1em;
	margin-bottom: 1em;
}


	#prebuiltOptionSelect > div {
		border-top: 1px solid black;
		border-bottom: 1px solid black;
		border-right: 1px solid black;
		padding: 0.5em;
		max-width: 250px;
		cursor: pointer;
	}

		#prebuiltOptionSelect > div:hover {
			background: #e5e5e5;
		}

		#prebuiltOptionSelect > div:first-child {
			border-left: 1px solid black;
			border-top-left-radius: 10px;
			border-bottom-left-radius: 10px;
		}

		#prebuiltOptionSelect > div:last-child {
			border-top-right-radius: 10px;
			border-bottom-right-radius: 10px;
		}

	#prebuiltOptionSelect .description {
		font-size: 0.9em;
		padding: 0.2em;
		border: 1px solid #5358eb;
		background: #f1f3ff;
		width: 100%;
	}

	#prebuiltOptionSelect label {
		font-size: 1.0em;
		margin: 0;
	}
/*
.slider {
	margin: 15px auto 35px auto;
	vertical-align: middle;
	max-width: 570px;
	min-width: 300px;
	width: 98%;
	float: right;
}*/
.noUi-handle {
	background: white;
	border: 1px outset lightgray;
}

	.noUi-handle:before, .noUi-handle:after {
		background: gray;
	}

	.noUi-handle:focus, .noUi-handle:active {
		background: #d4efde;
	}

.noUi-background {
	background: var(--primary);
}
/*
.sliderPercentage, .sliderAmount {
	color: #0d82b6;
}*/

.noUi-origin {
	background-color: var(--secondary-med);
}
.textRight{
text-align:right;
}
.textLeft {
	text-align: left;
}
.highlight {
	background-color: #f7ff0c;
}
.documents.quotes .hasBeenSent {
	background-color: #3aa93c;
	color:white;
}