@charset "utf-8";

/**
 * FONTS
 */

@font-face {
	font-family: 'Parkinsans-Regular';
	src: url( '../../../fonts/parkinsans/Parkinsans-Regular.ttf' );
}

@font-face {
	font-family: 'Parkinsans-Bold';
	src: url( '../../../fonts/parkinsans/Parkinsans-Bold.ttf' );
}

@font-face {
	font-family: 'Parkinsans-Light';
	src: url( '../../../fonts/parkinsans/Parkinsans-Light.ttf' );
}

@font-face {
	font-family: 'Parkinsans-Medium';
	src: url( '../../../fonts/parkinsans/Parkinsans-Medium.ttf' );
}

@font-face {
	font-family: 'Parkinsans-SemiBold';
	src: url( '../../../fonts/parkinsans/Parkinsans-SemiBold.ttf' );
}



/**
 * ROOT
 */

:root {
	--primary-color: #ffff00;
	--secondary-color: #41b2e1;
	--background-body: #f0f2f5;
	--background-button-primary: #41b2e1;
	--background-button-green: #00c40b;
	--background-button-red: #E12F2F;
	--background-container: #ffffff;
	--background-container-dark: #181818;
	--background-input: #ffffff;
	--background-input-hover: #f0f2f5;
	--background-loader-overlay: rgba( 26, 26, 26, 0.8 );
	--background-message: #f0f2f5;
	--background-takeover: rgba( 0, 0, 0, 0.9 );
	--box-shadow-container: 
		0 0px 0px rgba( 47, 225, 225, .3 ), 
		0 4px 10px rgba( 47, 225, 225, .3 );
	--box-shadow-input-default-focus: 0px 0px 4px rgba( 0, 0, 0, .1 );
	--box-shadow-user-menu-color: rgba( 225, 225, 225, .3 );
	--border-grey: #e3e3e3;
	--border-red: #E12F2F;
	--border-green: #00c40b;
	--color-light-grey: #b5a3a3;
	--text-color: #181818;
	--text-color-error: #E12F2F;
	--text-color-light-grey: #b5a3a3;
	--text-color-white: #ffffff;
	--text-color-black: #000000;
	--font-light: 'Parkinsans-Light';
	--font-medium: 'Parkinsans-Medium';
	--font-bold: 'Parkinsans-Bold';
	--font-regular: 'Parkinsans-Regular';
}



/**
 * TAGS
 */

a {
	text-decoration: none;
}

body {
	font-family: var( --font-light );
	background: var( --background-body );
	color: var( --text-color );
	padding: 0;
	margin: 0;
}

html, body {
	scroll-behavior: smooth;
}

h1 {
    font-family: var( --font-bold );
    margin: 0;
    font-size: 28px;
}

h3, h5 {
	padding: 0px;
	margin: 0px;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 30px var( --background-input ) inset !important;
    -webkit-text-fill-color: var( --text-color );
}

p {
	margin: 0;
	padding: 0;
}

select option,
select optgroup {
	font-weight: normal;
	font-family: 
		var( --font-medium ),
		'Helvetica';
}


/**
 * CLASSES
 */

.a-default {
	text-decoration: none;
	color: var( --secondary-color );
}

.a-phone {
	color: var( --secondary-color );
	text-decoration: none;
}
.action-row-two-column {
	display: flex;
	gap: 20px;
}

.body-container {
	padding: 20px;
	padding-top: 75px;
}

.border-radiate-green {
	animation: borderRadiateGreen 1.5s ease-out infinite;
}

.border-radiate-red {
	animation: borderRadiateRed 1.5s ease-out infinite;
}

.body-container-video {
	position: fixed;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	transform: translate(-50%, -50%);
	object-fit: cover;
	z-index: -2;
	pointer-events: none; /* prevents blocking clicks */
}

.default-button {
	font-family: var( --font-medium );
	color: var( --text-color-white );
	width: 100%;
    font-size: 16px;
    padding: 10px;
    border-radius: 5px;
    border: 0px;
    border: 0px;
    cursor: pointer;
    text-align: center;
    box-sizing: border-box;
    user-select: none;
    -webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
}

.default-button.small {
	font-size: 12px;
	padding: 5px;
}

.default-button.primary {
	background: var( --background-button-primary );
}

.default-button.red {
	background: var( --background-button-red );
}

.default-label {
	cursor: pointer;
	font-family: var( --font-medium );
}

.display-flex {
	display: flex;
	gap: 10px;
}

.display-flex-5 {
	display: flex;
	gap: 5px;
}

.display-flex-lease {
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
	margin-top: 10px;
}

.display-flex-lease-img {
	align-content: center;
}

.display-leases-line {
	line-height: 1;
}

.dealer-heading {
	font-family: var( --font-regular );
	border-bottom: 1px solid var( --border-grey );
	color: var( --text-color-black );
	font-size: 16px;
	padding: 10px;
	line-height: 12px;
}

.dealer-heading-name {
	font-family: var( --font-medium );
	font-size: 16px;
	color: var( --text-color-black );
}

.form-disclaimer-text {
	color: var( --text-color );
	font-family: var( --font-medium );
	font-size: 14px;
	text-align: center;
}

.form-disabled {
	opacity: 0.5;
}

.footer-container {
	border: 1px solid var( --border-grey );
	background: var( --background-container );
	padding: 10px;
	margin-top: 100dvh;
	width: 100%;
	box-sizing: border-box;
	display: block;
}

.footer-icon {
	color: var( --secondary-color );
}

.footer-col-header {
	color: var( --color-light-grey );
	font-family: var( --font-bold );
	font-size: 12px;
}

.footer-col-item {
	font-family: var( --font-regular );
	margin-top: 5px;
	font-size: 12px;
}

.footer-columns {
	display: flex;
	gap: 10px;
	margin: 0 auto;
	border-bottom: 1px solid var( --border-grey );
	padding-bottom: 10px;
}

.footer-bottom {
	color: var( --color-light-grey );
	font-family: var( --font-bold );
	margin: 0 auto;
	font-size: 12px;
	margin-top: 10px;
}

.footer-bottom img {
	height: 19px;
	float: right;
}

.flex-one {
	flex: 1;
}

.global-overlay-takover {
	background: var( --background-takeover );
	position: fixed;
	height: 100%;
	width: 100%;
	top: 0;
	z-index: 1;
	display: none;
}

.header-nots-alert {
	position: relative;
	display: none;
}

.header-notifictaion-icon {
	position: absolute;
	right: 17px;
	color: var( --text-color-error );
	top: -17px;
	z-index: 2;
	background: var( --background-user-menu );
	border-radius: 50%;
	height: 19px;
	width: 20px; 
	font-size: 20px;
}

.has-nots {
	color: var( --text-color-error );
}

.header-pro-pic-img {
	border-radius: 50%;
	display: block;
	margin: 0 auto;
	animation: rotateOnY 4s infinite linear;
}

.header-section-nav {
	display: flex;
	gap: 10px;
}

.header-section-nav-pro-pic-container {
	flex: 0 100px;
}

.header-section-nav-title {
	font-family: var( --font-bold );
	font-size: 20px;
	padding-bottom: 5px;
	border-bottom: 1px solid var( --border-grey );
	margin-bottom: 5px;
}

.header-section-nav-sub-title {
	font-family: var(--font-medium );
	font-size: 12px;
	color: var( --text-color-light-grey );
}

.header-container {
	background: var( --background-container-dark );
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 1;
}

.header-container-pad {
	padding: 10px;
	user-select: none;
}

.header-container-flex {
	display: flex;
}

.header-flex-left {
	font-family: var( --font-bold );
	flex: 1;
}

.header-flex-mid{
	flex: 1;
}

.header-flex-right {
	flex: 1;
	text-align: right;
}

.header-flex-mid-inner {
	display: flex;
	gap: 40px;
	justify-content: center;
}

.header-logo {
	color: var( --text-color-white );
	text-decoration: none;
	font-size: 24px;
}

.header-logo img {
	height: 30px;
	float: left;
	display: block;
	margin-right: 5px;
}

.header-nav-menu-item {
	color: var( --color-light-grey );
	font-family: var( --font-medium );
	font-size: 14px;
	margin-top: 8px;
}

.header-nav-menu-item-icon.active {
	color: var( --primary-color );
}

.header-nav-menu-item-bottom-bar {
	position: relative;
}

.header-nav-menu-item-bottom-bar-inner {
	position: absolute;
	width: 100%;
	margin-top: 13px;
}

.header-nav-menu-item-bottom-bar-inner.active {
	border-bottom: 4px solid var( --primary-color );
}

.header-site-display-name {
	display: inline-block;
}

.hero-card {
	background: var( --background-container );
	box-shadow: 
		0 0px 4px var( --box-shadow-grey-color ), 
		0 0px 16px var( --box-shadow-grey-color );
	border-radius: 5px;
	margin: 0 auto;
	height: max-content;
	flex: 1;
	margin-bottom: 20px;
	width: 200px;
	text-align: center;
}

.hero-card-icon {
	color: var( --secondary-color );
	font-size: 50px;
}

.hero-card-heading {
	font-family: var( --font-medium );
	font-size: 22px;
	margin-top: 10px;
}

.hero-card-text {
	margin-bottom: 10px;
	height: 120px;
}

.icon-phone {
	font-size: 14px;
}

.icon-map-pin {
	font-size: 18px;
	align-content: center;
}

.input-disabled {
	opacity: 0.7;
}

.input-default,
.select-default {
	border: 1px solid var( --border-grey );
	font-family: var( --font-medium );
	font-size: 16px;
    padding: 10px;
    border-radius: 5px;
    outline: none;
    width: 100%;
    box-sizing: border-box;
    background: var( --background-input );
    filter: none;
}

.input-label-default {
	font-family: var( --font-medium );
    color: var( --text-color-light-grey );
	font-size: 10px;
    margin-bottom: 3px;
    outline: none;
    filter: none;
}

.input-label-default.nobottom {
	margin-bottom: 0px;
}

.input-default-error {
	border: 1px solid var( --text-color-error );
}

.input-error-message {
	font-family: var( --font-medium );
	color: var( --text-color-error );
	font-size: 10px;
	margin-top: 3px;
	display: none;
}

.loader-overlay {
	background: var( --background-loader-overlay );
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	z-index: 4;
	display: none;
}

.loader-container {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50% );
	z-index: 5;
	display: none;
}

.loader img {
	animation: rotation 2s infinite linear;
}

.margin-top {
	margin-top: 20px;
}

.mob-fixed-nav {
	display: none;

	background: var( --background-container-dark );
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 0;
}

.mob-fixed-nav-flex {
	display: flex;
	gap: 10px;
	justify-content: space-evenly;
	padding: 4px;
}

.mob-fixed-nav-item {
	color: var( --color-light-grey );
	font-size: 20px;
	text-align: center;
}

.mov-fixed-nav-title {
	font-family: var( --font-medium );
	font-size: 12px;
}

.mob-menu-icon.active {
	color: var( --primary-color );
}

.header-title {
	color: var( --color-light-grey );
	font-family: var( --font-regular );
	font-size: 16px;
}

.header-title-center {
	color: var( --color-light-grey );
	font-family: var( --font-regular );
	font-size: 16px;
	text-align: center;
}

.notif-unread-icon {
	color: var( --text-color-error );
	font-size: 24px;
}

.notif-read-icon {
	color: #B8F434;
	font-size: 24px;
}

.notifictaions-container {
	display: flex;
	gap: 20px;
	flex-direction: column;
}

.notifictaions-container .section-container {
	width: 100%;
}

.no-access-container {
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
}

.or-divider {
	font-size: 12px;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
    opacity: 0.6;
}

.pulse {
	animation: pulse 1.5s ease-in-out infinite;
	transform-origin: center;
  	will-change: transform;
}

.pro-pic-actions {
	justify-content: center;
	margin: 0 auto;
	display: flex;
	gap: 10px;
}

.page-nav-overflow {
	overflow-x: auto;
	overflow-y: hidden;
}

.page-nav-container {
	display: flex;
	gap: 10px;
	margin-top: 40px;
	color: var( --text-color-light-grey );
	font-size: 14px;
}

.page-nav-item {
	width: 100px;
	text-align: center;
	padding-bottom: 10px;
	font-family: var( --font-medium );
	cursor: pointer;
	color: var( --text-color-light-grey );
}

.page-nav-bar {
	position: relative;
}

.page-nav-bar-inner {
	position: absolute;
	width: 100%;
	margin-top: 10px;
}

.page-nav-item-active {
	color: var( --secondary-color );
  	border-bottom: 4px solid var( --secondary-color );
}

.page-nav-item:hover {
  	color: var( --secondary-color );
}

.page-nav-item:hover .page-nav-bar-inner {
  	border-bottom: 4px solid var( --secondary-color );
}

.page-nav-tab-section {
	display: none;
}

.page-nav-tab-section-active {
	display: block;
}

.pro-pic-img {
	border-radius: 50%;
	display: block;
	margin: 0 auto;
	animation: rotateOnY 4s infinite linear;
}

.pop-up {
	display: none;
	position: absolute;
	width: 100%;
	margin: 0 auto;
	z-index: 3;
	height: 100%;
	top: 0;
}

.pop-up-overlay {
	background: var( --background-loader-overlay );
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	z-index: 2;
	display: none;
}

.pop-up-container {
	background: var( --background-container );
	box-shadow: 
		0 0px 4px var( --box-shadow-container ), 
		0 0px 16px var( --box-shadow-container );
	border: 1px solid var( --border-grey );
	color: var( --text-color );
	top: 0px;
	margin: 0 auto;
	height: auto;
	width: 500px;
	border-radius: 3px;
	margin-top: 100px;
}

.pop-up-header-container {
	border-bottom: 1px solid var( --border-grey );
	font-weight: bold;
	width: 100%;
	display: inline-block;
	border-top-right-radius: 3px;
	border-top-left-radius: 3px;
}

.pop-up-header {
	display: flex;
	padding: 10px;
}

.pop-up-content-container {
	padding: 10px;
	overflow-x: hidden;
	overflow-y: auto;
}

.pop-up-header-text {
	font-family: var( --font-medium );
	flex: 1;
	font-size: 18px;
}

.pop-up-header-close {
	display: inline-block;
	float: right;
	cursor: pointer;
}

.pro-pic-preview {
	border: 1px solid var( --border-grey );
	border-radius: 50%;
  	margin: 0 auto;
  	max-width: 200px;
}

.pro-pic-error-message-container {
	display: none;
	margin-bottom: 10px;
	border-radius: 3px;
}

.pro-pic-error-message-container-inner {
	padding: 5px;
	font-weight: bold;
	font-size: 12px;
	border-radius: 3px;
}

.pro-pic-edit-img-cont {
	text-align: center;
	margin: 0 auto;
	display: block;
	margin-bottom: 10px;
}

.pro-pic-edit-actions {
	padding: 0px;
}

.pro-pic-button-update {
	margin-top: 10px;
}

.page-heading {
	color: var( --text-color-black );
	font-family: var( --font-medium );
	text-align: center;
	font-size: 16px;
	padding: 10px;
}

.rotate-on-y {
	animation: rotateOnY 4s infinite linear;
}

.row-flex {
	display: flex;
	gap: 10px;
	font-size: 14px;
}

.row-flex-left {
	flex: 1;
	text-align: left;
}

.row-flex-mid {
	flex: 1;
	text-align: center;
}

.row-flex-right {
	flex: 1;
	text-align: right;
}

.row-text {
	font-family: var( --font-medium );
	color: var( --text-color-black );
	font-size: 14px;
}

.row-permissions {
	margin-top: 3px;
}

.row-text-permissions {
	cursor: pointer;
	font-family: var( --font-medium );
	color: var( --secondary-color );
	font-size: 12px;
}

.row-permissions-section {
	margin-left: 15px;
	font-size: 12px;
	font-family: var( --font-regular );
	margin-top: 5px;
	display: none;
}

.row-text-blue {
	font-family: var( --font-regular );
	color: var( --secondary-color );
	font-size: 14px;
}

.start-container {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 20px;
}

.show-more {
	display: none;
}

.sections-container-flex {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.sections-container-flex > div {
	flex: 1;
	width: 100%;
}

.section-container {
	background: var( --background-container );
	box-shadow: var( --box-shadow-container );
	border-radius: 5px;
	margin: 0 auto;
}

.section-container-header {
	background: var( --background-container );
	box-shadow: var( --box-shadow-container );
	border-radius: 5px;
	margin: 0 auto;
}

.section-container.small {
	width: 400px;
}

.section-container-pad {
	padding: 10px;
}

.section-container-pad-nav {
	padding: 10px;
	padding-bottom: 0px;
}

.section-title {
	text-align: center;
}

.section-heading {
	font-family: var( --font-regular );
	font-size: 16px;
	padding: 10px;
	border-bottom: 1px solid var( --border-grey );
	color: var( --color-light-grey );
}

.section-heading-button {
	font-family: var( --font-regular );
	font-size: 16px;
	padding: 10px;
	border-bottom: 1px solid var( --border-grey );
	color: var( --color-light-grey );
	display: flex;
}

.section-heading-button-title {
	flex: 1;
	align-content: center;
}

.section-row {
	margin-top: 10px;
}

.section-row.top {
	margin-top: 0px;
}

.section-message {
	border: 1px solid var( --border-grey );
	background: var( --background-message ); 
	color: var( --text-color );
	font-family: var( --font-medium );
	border-radius: 5px;
	font-size: 12px;
	padding: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
	display: none;
}

.section-row-two-column {
	display: flex;
	gap: 10px;
}

.section-row-two-column .section-row {
	flex: 1;
}

.snowflake-logo {
	letter-spacing: 1px;
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	padding-right: 50px;
	user-select: none;
}

.snowflake-logo img {
	display: block;
	height: 25px;
	width: 25px;
}

.snowflakes {
	width: 100%;
	height: calc( 100vh );
	position: absolute;
	left: 0;
	z-index: -1;
	box-sizing: border-box;
	overflow: hidden;
}

.snowflakes div:after,
.snowflakes div:before {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	-webkit-transform: rotate( 120deg );
}

.snowflakes div:before {
	-webkit-transform: rotate( 240deg );
}

.snowflakes div {
	display: inline-block;
	-webkit-animation: snowflakes 3s linear 2s 20;
	-moz-animation: snowflakes 3s linear 2s 20;
	position: relative;
	opacity: 0.6;
}

.snowflakes div:nth-child( 3n ) {
	-webkit-animation-duration: 4s;
	-webkit-animation-iteration-count: 30;
	-webkit-transform-origin: right -45px;
}

.snowflakes div:nth-child( 3n + 1 ) {
	-webkit-animation-duration: 6s;
	-webkit-animation-iteration-count: 45;
	-webkit-transform-origin: right -30px;
}

.snowflakes div:nth-child( 3n + 2 ) {
	-webkit-animation-duration: 8s;
	-webkit-animation-iteration-count: 60;
	-webkit-transform-origin: right -15px;
}

.snowflakes div:nth-child( 7n ) {
	-webkit-animation-delay: 0s;
	-webkit-animation-timing-function: ease-in;
}

.snowflakes div:nth-child( 7n + 1 ) {
	-webkit-animation-delay: 1s;
	-webkit-animation-timing-function: ease-out;
}

.snowflakes div:nth-child( 7n + 2 ) {
	-webkit-animation-delay: 1.5s;
	-webkit-animation-timing-function: linear;
}

.snowflakes div:nth-child( 7n + 3 ) {
	-webkit-animation-delay: 2s;
	-webkit-animation-timing-function: ease-in;
}

.snowflakes div:nth-child( 7n + 4 ) {
	-webkit-animation-delay: 2.5s;
	-webkit-animation-timing-function: linear;
}

.snowflakes div:nth-child( 7n + 5 ) {
	-webkit-animation-delay: 3s;
	-webkit-animation-timing-function: ease-out;
}

.system-clock-container {
	position: relative;
	margin-top: 2px;
} 

.system-clock {
	position: absolute;
	font-size: 10px;
	font-family: var( --font-regular );
	top: -5px;
}

.two-columns-container {
	display: flex;
	gap: 20px;
}

.two-columns-container > div {
	flex: 1;
	align-self: flex-start;
}

.user-menu-container {
	position: relative;
	z-index: 2;
	margin-top: 5px;
}

.user-menu-container.hide {
	display: none;
}

.user-menu-container-inner {
	background: var( --background-container );
	position: absolute;
	width: 200px;
	right: 0;
	border-radius: 5px;
}

.user-menu {
	font-size: 16px;
	box-shadow: 
		0 0px 0px var( --box-shadow-user-menu-color ), 
		0 4px 10px var( --box-shadow-user-menu-color );
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
}

.user-menu-item {
	font-family: var( --font-medium );
  	border-bottom: 1px solid var( --border-grey );
  	cursor: pointer;
  	padding: 10px;
}

.user-menu-item.top {
	border-top-right-radius: 5px;
  	border-top-left-radius: 5px;
}

.user-menu-item.bottom {
	border-bottom-right-radius: 5px;
  	border-bottom-left-radius: 5px;
}

.user-menu-item.bottom {
	border-bottom: 0px;
}

.user-item {
	color: var( --text-color );
	display: flex;
}

.user-item-icon {
	flex: 1;
}

.user-menu-bars {
	font-size: 30px;
	cursor: pointer;
	position: relative;
	z-index: 2;
	color: var( --text-color-white );
}

.user-heading-name {
	font-family: var( --font-medium );
	font-size: 16px;
	margin-bottom: 5px;
	color: var( --text-color-black );
}

.user-pro-pic-conatiner {
	align-content: center;
}

.user-sub-heading {
	font-family: var( --font-medium );
	color: var( --text-color-light-grey );
	font-size: 12px;
	line-height: 1;
}

.vehicles-container {
	display:  flex;
	flex-direction: column;
	gap: 20px;
}

.vehicle-heading {
	font-family: var( --font-regular );
	border-bottom: 1px solid var( --border-grey );
	color: var( --text-color-black );
	font-size: 16px;
	padding: 10px;
	line-height: 12px;
}

.vehicle-heading-name {
	font-family: var( --font-medium );
	font-size: 16px;
	margin-bottom: 5px;
}

.vehicle-sub-heading {
	font-family: var( --font-medium );
	color: var( --text-color-light-grey );
	font-size: 10px;
}

.vehicle-sub-section-heading {
	color: var(--secondary-color );
	font-family: var( --font-medium );
    outline: none;
    filter: none;
	font-size: 12px;
}

.vehicle-sub-section-heading.mid {
	margin-top: 10px;
}

.vehicle-stat-heading {
	font-family: var( --font-medium );
    color: var( --text-color-light-grey );
	font-size: 10px;
    outline: none;
    filter: none;
}

.vehicle-stat-heading.flex {
	display: flex;
}

.vehicle-stat-grey {
	font-family: var( --font-medium );
	color: var( --text-color-light-grey );
	font-size: 12px;
}

.vehicle-stat-black {
	font-family: var( --font-medium );
	font-size: 14px;
}

.vehicle-stat-heading.mid {
	margin-top: 10px;
}

.vehicle-stat-blue {
	font-family: var( --font-medium );
}

.vehicle-odo-stats {
	display: flex;
	margin-bottom: 3px;
}

.vehicle-odo-stats-left-col {
	flex: 1;
}

.vehicle-odo-stats-mid-col {
	flex: 1;
	text-align: center;
}

.vehicle-odo-stats-right-col {
	flex: 1;
	text-align: right;
}

.vehicle-odo {
	font-family: var( --font-medium );
	border: 2px solid var( --border-grey );
	border-radius: 5px;
	padding: 10px;
	text-align: center;
	font-size: 20px;
	margin: 0 auto;
	cursor: pointer;
}

.vehicle-odo.over {
	border: 2px solid var( --border-red );
}

.vehicle-odo.under {
	border: 2px solid var( --border-green );
}

.vehicle-odo-text {
	font-family: var( --font-bold );
}

.vehicle-odo-edit {
	right: 45px;
	position: absolute;
	cursor: pointer;
}

.vehicle-odo-edit-inner {
	color: var( --secondary-color );
	position: relative;
}

.vehicle-odo-over-under {
	display: flex;
	gap: 10px;
	margin-top: 10px;
}

.vehicle-odo-over {
	background: var( --background-button-red );
	color: var( --text-color-white );
	text-align: center;
	border-radius: 5px;
	padding: 10px;
	flex: 1;
	align-content: center;
}

.vehicle-odo-under {
	background: var( --background-button-green );
	color: var( --text-color-white );
	text-align: center;
	border-radius: 5px;
	padding: 10px;
	flex: 1;
	align-content: center;
}

.vehicle-odo-over.disabled,
.vehicle-odo-under.disabled {
	opacity: 0.2;
}

.vehicle-odo-over-under-title {
	font-family: var( --font-bold );
	font-size: 14px;
}

.vehicle-odo-over-text {
	font-size: 12px;
	font-family: var( --font-medium );
}

.vehicle-odo-over-cost {
	font-family: var(--font-bold);
}

.vehicle-odo-miles {
	font-size: 18px;
	font-family: var( --font-bold );
}

.vehicle-odo-last-updated {
	font-family: var( --font-medium );
    color: var( --text-color-light-grey );
	font-size: 10px;
    outline: none;
    filter: none;
	margin-top: 10px;
	text-align: center;
}

.vehicle-miles-stats {
	display: flex;
	gap: 10px;
}

.vehicle-miles-stats-col-left {
	flex: 1;
}

.vehicle-miles-stats-col-mid {
	flex: 1;
	text-align: center;
}

.vehicle-miles-stats-col-right {
	flex: 1;
	text-align: right;
}

.vehicle-miles-stats.mid {
	margin-top: 10px;
}

.vehicle-progress-container {
	border: 1px solid var( --border-grey );
	background: var( --background-body );
	height: 30px;
	border-radius: 5px;
}

.vehicle-progress-text-container {
	font-size: 12px;
	position: relative;
}

.vehicle-progress-text-container-inner {
	font-family: var( --font-medium );
	position: absolute;
	width: 100%;
	text-align: center;
	margin-top: 7px;
}

.vehicle-progress-bar {
	background: var( --primary-color );
	height: 30px;
	border-radius: 5px;
}

.vehicle-progress-bar-values {
	display: flex;
	font-size: 12px;
	font-family: var( --font-medium );
	margin-top: 5px;
}

.vehicle-progress-bar-values-left {
	flex: 1;
}

.vehicle-progress-bar.red {
	background: var( --text-color-error );
}

.vehicle-progress-text-container-inner.red {
	color: var( --text-color-white) ;
}
.item {
	flex: 1;
	width: 100%;
}

/**
 * HOVER
 */

.a-default:hover {
	text-decoration: underline;
	cursor: pointer;
}

.default-button:hover {
	opacity: 0.8;
}

.input-default:hover,
.select-default:hover {
	background: var( --background-input-hover );
}

.header-nav-menu-item:hover {
	color: var( --primary-color );
	cursor: pointer;
}

.header-nav-menu-item:hover .header-nav-menu-item-bottom-bar-inner {
	border-bottom: 4px solid var( --primary-color );
}

.user-menu-item:hover {
	background: var( --primary-color );
}



/**
 * Datepicker
 */
#ui-datepicker-div {
	z-index: 3 !important;
}

.ui-datepicker-header,
.ui-state-default {
	background: var( --background-body ) !important;
	border: 1px solid var( --background-body ) !important;
	color: var( --text-color ) !important;
	font-size: 14px;
}

.ui-datepicker .ui-state-active {
	border: 1px solid var( --secondary-color ) !important;
	font-family: var( --font-regular );
	background: var( --secondary-color ) !important;
	color: var( --text-color-white ) !important;
}

.ui-datepicker-calendar th {
	color: var( --text-color ) !important;
	padding: 10px;
	font-size: 12px;
}

.ui-datepicker.ui-widget {
	background: var( --background-container ) !important;
	border: 1px solid var( --border-grey ) !important;
}

.ui-datepicker-prev:hover,
.ui-datepicker-next:hover,
.ui-state-default:hover {
	border: 1px solid var( --secondary-color ) !important;
	cursor: pointer;
	background: transparent;
}

#ui-datepicker-div {
	font-family: var( --font-regular );
}

.ui-timepicker-div,
.ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all {
	color: var( --text-color );
	font-size: 12px;
}

.ui-slider-handle {
	border: 1px solid var( --secondary-color ) !important;
}

.ui-timepicker-div .ui_tpicker_time .ui_tpicker_time_input {
	font-family: var( --font-regular );
}

.ui-datepicker .ui-datepicker-buttonpane button {
	font-size: 14px;
	font-family: var( --font-regular );
}

.ui-datepicker .ui-datepicker-buttonpane button {
	font-size: 12px;
}

/**
 * IDS
 */
#lease,
#dealer,
#payment {
	scroll-margin-top: 70px; /* header height */
}

/**
 * FOCUS
 */

.input-default:focus,
.select-default:focus {
	background: var( --background-input-hover );
	box-shadow: var( --box-shadow-input-default-focus ) ;
}



/**
 * KEYFRAMES
 */

@keyframes rotation {
	from {
		transform: rotate( 0deg );
	}
	to {
		transform: rotate( 360deg );
	}
}

@keyframes rotateOnY {
	  to {
	    -webkit-transform: rotateY( 360deg );
        transform: rotateY( 360deg );
	  }
}

@keyframes rotateOnZ {
	  to {
	    -webkit-transform: rotateZ( 360deg );
        transform: rotateZ( 360deg );
	  }
}

@keyframes snowflakes {
	0% {
		-webkit-transform: translate3d( 0, 0, 0 ) rotate( 0deg );
	}
	100% {
		-webkit-transform: translate3d( 15px, calc( 100vh + 100px ), 0px ) rotate( 360deg );
	}
}

@keyframes pulse {
	0% {
		transform: scale( 1 );
	}
	50% {
		transform: scale( 1.5 ) ;
	}
	100% {
		transform: scale( 1 );
	}
}

@keyframes borderRadiateGreen {
	0% {
		box-shadow: 0 0 0 0 color-mix(in srgb, var(--background-button-green) 60%, transparent);
	}
	100% {
		box-shadow: 0 0 0 10px color-mix(in srgb, var(--background-button-green) 0%, transparent);
	}
}

@keyframes borderRadiateRed {
	0% {
		box-shadow: 0 0 0 0 color-mix(in srgb, var( --background-button-red ) 60%, transparent);
	}
	100% {
		box-shadow: 0 0 0 10px color-mix(in srgb, var( --background-button-red ) 0%, transparent);
	}
}

/**
 * MOBILE
 */
@media only screen and ( max-width: 1200px ) { /* mobile */
	.action-row-two-column {
		gap: 10px;
		flex-direction: column;
	}

	.body-container {
		padding-top: 60px;
		padding-left: 10px;
		padding-right: 10px;
		padding-bottom: 70px;
	}

	.body {
		margin-bottom: 54px;
	}

	.footer-container {
		margin-top: calc( 100vh - 100px );
	}

	.footer-columns {
		display: block;
		border-bottom: 1px solid var( --border-grey );
		padding-bottom: 10px;
	}

	.footer-col-header.mid {
		margin-top: 10px;
	}

	.footer-col-item {
		margin-top: 5px;
		font-size: 14px;
	}

	.header-pro-pic-img {
		width: 50px;
	}

	.header-section-nav-pro-pic-container {
		flex: 0 50px;
	}

	.header-section-nav-title {
		font-size: 16px;
		padding-bottom: 3px;
	}

	.header-section-nav-sub-title {
		line-height: 1;
	}

	.header-flex-mid {
		display: none;
	}

	.header-logo {
		color: var( --text-color-white );
		text-decoration: none;
		font-size: 16px;
	}

	.header-logo img {
		height: 28px;
	}

	.hero-card {
		width: 100%;
		margin-bottom: 10px;
	}

	.margin-top {
		margin-top: 10px;
	}

	.mob-fixed-nav {
		display: block;
	}

	.notifictaions-container {
		gap: 10px;
	}

	.pro-pic-actions div {
		flex: 1;
	}

	.page-nav-container {
		margin-top: 20px;
		gap: 10px;
	}

	.page-nav-item {
		font-size: 12px;
	}

	.pop-up-container {
		width: calc( 100% - 20px ) ;
		margin-top: 10px;
	}

	.section-container.small {
		width: 100%;
	}

	.sections-container-flex {
		gap: 10px;
	}

	.start-container {
		gap: 10px;
	}

	.section-container-header {
		
	}

	.two-columns-container {
		flex-direction: column;
		gap: 10px;
	}

	.two-columns-container > div {
		width: 100%;
	}

	.user-menu-bars {
		font-size: 26px;
	}

	.vehicle-odo-edit {
		right: 33px;
	}

	.vehicles-container {
		gap: 10px;
	}
}