﻿@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

:root
{
	--color-primary-brand-primary: #500000;
	--color-primary-brand-secondary: #FFF;
	--color-secondary-brand-dark: #3C001C;
	--color-secondary-brand-light: #732F2F;
	--color-secondary-brand-gray100: #F6F6F6;
	--color-secondary-brand-gray200: #EAEAEA;
	--color-secondary-brand-gray300: #D1D1D1;
	--color-secondary-brand-gray400: #A7A7A7;
	--color-secondary-brand-gray500: #707070;
	--color-secondary-brand-gray600: #626262;
	--color-secondary-brand-gray700: #535353;
	--color-secondary-brand-gray800: #3E3E3E;
	--color-secondary-brand-gray900: #202020;
	--color-secondary-brand-black: #000;
	--color-sf-primary: 80,0,0 !important;
	--color-error-red: #D04343;
	--color-success-green: #389F5A;
	--color-info-blue: #415779;
	--color-warning-yellow: #E5B229;
	--font-color: #333;
	--font-open-sans: 'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
	--font-oswald: 'Oswald', sans-serif;
	--font-work-sans: 'Work Sans', Arial, Helvetica, sans-serif;
	--gutter-width-header: 75px;
	--gutter-width-main: 150px;
	--gutter-width-main-mobile: 20px;
}

html
{
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	background-color: #707373;
	display: flex;
	justify-content: center;
	min-height: 100%;
	position: relative;
}

html, body
{
	color: var(--font-color);
	font-family: var(--font-open-sans) !important;
	font-size: 14px;
	line-height: 1.42857143;
}

body
{
	background-color: var(--color-primary-brand-secondary);
	min-width: 430px;
	padding-bottom: 10px;
	/*width: 100vw;*/
}

body:has(.floating-submit)
{
	padding-bottom: 70px;
}

:is(html, body):has(:is(.pito-modal-container, .spinner-container)[style*="display: flex;"])
{
	overflow: hidden !important
}

.container
{
	min-width: 430px;
	padding: 0 30px;
	/*max-width: unset !important;*/
	width: 1600px;
}

@media(min-width: 1360px)
{
	.container
	{
		max-width: 1320px;
	}
}

@media(min-width: 1600px)
{
	.container
	{
		max-width: 1560px;
	}
}

@media (max-width: 999px)
{
	nav
	{
		z-index: 100;
	}

	nav.navbar
	{
		max-width: 100%;
	}

	nav.navbar > div.container
	{
		align-items: flex-start;
		background-color: var(--color-primary-brand-primary);
		display: flex;
		flex-direction: column;
		max-width: 100vw !important;
		padding: 0 !important;
		width: 100vw !important;
	}

	.pito-navbar-header-container
	{
		min-width: 320px;
		width: 100%;
	}

	.pito-navbar-header
	{
		background-color: var(--color-primary-brand-primary);
	}

	.pito-navbar-header > a
	{
		margin: 7px 0 7px 7px !important;
	}

	.pito-navbar-header > a:hover,
	.pito-navbar-header > a:focus
	{
		outline: 1px dotted var(--color-primary-brand-secondary) !important;
	}

	.pito-navbar-header > a > img
	{
		padding: 4px 6px 4px 4px;
	}

	.pito-navbar-header > button
	{
		margin-right: calc(100% - 100vw + 15px) !important;
	}

	.pito-navbar-icon
	{
		display: inline-block !important;
	}

	div.container > div.navbar-collapse.show
	{
		display: block !important;
		flex: 1 1 auto;
		height: calc(100vh - 70px);
		overflow-y: auto;
		width: 100%;
	}

	div.navbar-collapse:not(.show)
	{
		display: none !important;
	}

	div.container > div.navbar-collapse > ul
	{
		flex-direction: column;
	}

	li.nav-item > a,
	li.nav-item > span,
	nav a.title-button,
	nav button.title-button
	{
		color: var(--color-primary-brand-secondary);
		font-weight: normal;
		outline: none !important;
		padding: 1em 10px !important;
		width: 100%;
	}

	li.nav-item > a:hover,
	li.nav-item > span:hover,
	nav a.title-button:hover,
	nav button.title-button:hover,
	li.nav-item > a:focus,
	li.nav-item > span:focus,
	nav a.title-button:focus,
	nav button.title-button:focus
	{
		background-color: var(--color-primary-brand-secondary);
		color: var(--color-primary-brand-primary);
		text-decoration: none !important;
	}

	li.nav-item > div
	{
		background-color: var(--color-primary-brand-secondary);
		padding-left: 0;
		position: unset;
	}

	li.nav-item > div > a
	{
		color: var(--color-primary-brand-primary);
		display: block !important;
		outline: none !important;
		padding-left: 20px;
	}

	li.nav-item > div > a:hover,
	li.nav-item > div > a:focus
	{
		color: var(--color-primary-brand-secondary);
		text-decoration: none !important;
	}

	li.nav-item-expanded > span
	{
		background-color: var(--color-primary-brand-secondary);
		color: var(--color-primary-brand-primary);
	}

	body > .container,
	footer, footer > .container,
	.floating-submit.container
	{
		max-width: 100% !important;
	}

	hr
	{
		display: none;
	}

	.pito-modal
	{
		max-height: 100vh !important;
		max-width: 100vw !important;
		width: 100vw !important;
	}

	.pito-modal .e-grid.grid-fill .e-content
	{
		max-height: calc(100vh - 255px) !important;
		min-height: calc(100vh - 255px) !important;
	}
}

@media(max-width: 800px)
{
	.pito-modal
	{
		max-height: 100vh !important;
		max-width: 100vw !important;
		width: 100vw !important;
	}
}

/* Override the default bootstrap behavior where horizontal description lists will truncate terms that are too long to fit in the left column*/
.dl-horizontal dt
{
	white-space: normal;
}

.inline-filter
{
	display: flex;
	gap: 10px;
	height: 26px;
	width: fit-content;
}

.inline-filter > *
{
	margin: auto 0;
}

.inline-filter > select,
.inline-filter > input[type=text]
{
	margin: 0;
}

/*#region icon*/
.icon-info
{
	aspect-ratio: 1;
	background: url("../images/Icon_Info.svg") center/contain;
	display: inline-block;
	vertical-align: super;
	width: 10px;
}
/*#endregion icon*/

/*#region pito-navbar*/
header > .navbar
{
	padding: 0;
}

header > .navbar > div.container
{
	padding: 0.5em 1em;
}

.pito-navbar-header-container
{
	display: flex;
	justify-content: space-between;
}

.pito-navbar-header
{
	background-color: var(--color-primary-brand-primary);
	line-height: 10px;
}

.pito-navbar-header > a
{
	/*background-color: var(--color-primary-brand-secondary);*/
	display: inline-flex;
	padding: 4px;
	min-width: max-content;
	text-decoration: none !important;
}

.pito-navbar-header img
{
	/*background-color: var(--color-primary-brand-primary);*/
	height: 56px;
	margin: auto;
	max-width: 100%;
	padding: 8px;
	vertical-align: top;
}

.pito-navbar-icon
{
	background: none;
	border: 2px solid var(--color-primary-brand-secondary);
	border-radius: 5px;
	display: none;
	margin: auto 15px auto 0;
	outline: none !important;
	padding: 5px;
}


.nav-item:not(:has(a))
{
	display: none;
}

.nav-item > span,
.nav-item > a
{
	color: var(--color-primary-brand-primary);
	cursor: pointer;
	display: inline-block;
	padding: 25px;
	white-space: nowrap;
}

.nav-item > div
{
	background-color: var(--color-primary-brand-primary);
	border-bottom: 2px solid #707070;
	border-top: 2px solid #707070;
	display: none;
	padding-left: 311px;
	position: absolute;
	left: 0;
	right: 0;
}

.nav-item.nav-item-expanded > span,
.nav-item.nav-item-expanded > a
{
	padding-right: 11px;
}

.nav-item-expanded > span::after,
.nav-item-expanded > a::after
{
	border-color: transparent transparent var(--color-primary-brand-primary) transparent;
	border-style: solid;
	border-width: 0 7px 10px 7px;
	content: "";
	display: inline;
	height: 0;
	position: relative;
	bottom: -18px;
	left: -50%;
	width: 0;
	z-index: 2;
}

.nav-item.nav-item-expanded > div
{
	display: block !important;
}

.nav-item > div > a
{
	color: var(--color-primary-brand-secondary);
	display: inline-block;
	padding: 10px;
	text-decoration: none;
}

.nav-item > div > a:hover,
.nav-item > div > a:focus
{
	background-color: #300000;
}

nav > div.container .nav-item > span:hover,
nav > div.container .nav-item > span:focus,
nav > div.container a[href]:hover,
nav > div.container a[href]:focus
{
	outline: 1px dotted var(--color-primary-brand-primary);
	text-decoration: underline;
}
/*#endregion pito-navbar*/

.flex-title
{
	align-items: center;
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}

.flex-title > h2,
.flex-title > a.title-button,
.flex-title > button.title-button
{
	margin: 0;
}

/*#region a, button */
a, button
{
	background: none;
	border: none;
	cursor: pointer !important;
	padding: 0;
}

main a, footer a,
button[title]
{
	color: var(--color-primary-brand-primary);
	text-align: inherit;
	text-decoration: underline;
}

a:hover, a:focus,
button:hover, button:focus
{
	outline: 1px dotted var(--color-primary-brand-primary);
	text-decoration: underline !important;
}

main a[title]:hover, main a[title]:focus,
main button[title]:hover, main button[title]:focus
{
	color: var(--color-primary-brand-primary);
	font-weight: bold;
}

a.title-button,
button.title-button
{
	background-color: var(--color-primary-brand-primary);
	color: var(--color-primary-brand-secondary);
	display: inline-block;
	font-weight: bold;
	padding: 10px;
	text-decoration: none;
	vertical-align: middle;
}

main a.title-button,
main button.title-button
{
	margin: 0 0 10px 10px;
}

a:not(.link-hover-static)[title]::after,
button:not(.button-hover-static)[title]::after,
.tamu-table-container :not(.flex-row-header) > a[title]::after,
.tamu-table-container :not(.flex-row-header) > button[title]::after
{
	display: block;
	content: attr(title);
	font-weight: bold;
	height: 0;
	color: transparent;
	overflow: hidden;
	visibility: hidden;
	white-space: nowrap;
}

.tamu-table-container:not(.mixed-wrap) :not(.flex-row-header) > a[title],
.tamu-table-container:not(.mixed-wrap) :not(.flex-row-header) > button[title]
{
	display: block;
	white-space: nowrap;
	width: min-content;
}
/*#endregion a, button*/

input.NewFile
{
	cursor: pointer !important;
}

.CurrentFile
{
	align-items: center;
	display: flex;
	gap: 5px;
}

.CurrentFile > *
{
	cursor: pointer;
}

.CurrentFile > span
{
	display: flex;
}

.CurrentFile > span > img
{
	height: 16px !important;
	width: 16px !important;
}

input[type=text].Disabled
{
	background-color: transparent;
	border: none;
	padding: 0;
}

select.Disabled
{
	-moz-appearance: none;
	-webkit-appearance: none;
	border: none;
	padding: 1px 0;
}

select.Disabled::-ms-expand
{
	display: none;
}

.page-message
{
	color: var(--color-primary-brand-secondary);
	margin: 0 0 10px 0;
	padding: 4px;
}

.page-message.alert-message
{
	background-color: #e4002b;
}

.page-message.confirmation-message
{
	background-color: var(--color-primary-brand-primary);
}

.page-message.warning-message
{
	background-color: #fce300;
}

.page-message:empty
{
	display: none;
}

.list-abc > li:nth-child(3) > span
{
	margin-left: 2px;
}

.list-abc > li > span.list-selected
{
	font-weight: bold;
}

.checkbox-list
{
	align-items: center;
	display: flex;
	gap: 5px;
	height: 26px;
}

/*#region table filters*/
.tamu-table-title > div:not(:last-of-type),
.multiselect-filter:not(:last-of-type)
{
	margin-right: 15px;
}

.multiselect-filter > span:first-of-type:not(.field-validation-valid):not(.field-validation-error),
.multiselect-filter > div > span:first-of-type
{
	border: 2px inset rgb(238, 238, 238);
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 1px 2px;
	width: 150px;
	-webkit-appearance: textfield;
}

.multiselect-filter select
{
	border: 1px solid lightgray;
	display: block;
	list-style: none;
	margin: 0;
	min-width: 150px;
	overflow-y: auto;
	padding: 2px;
	z-index: 10;
}

.multiselect-filter select option:not(.option-locked)
{
	cursor: pointer;
}

.multiselect-filter select option:hover
{
	background-color: #e7e7e7;
}

.multiselect-filter select[size="1"]
{
	scrollbar-width: none;
}

select > optgroup.child-filter-hidden,
tr.multiselect-filtered,
tr.text-filtered
{
	display: none;
}
/*#endregion table filters*/

/*#region tamu-table*/
.tamu-table-title
{
	display: flex;
	flex-wrap: wrap;
}

.tamu-table-title > *
{
	margin-bottom: 0;
}

.tamu-table-title > :not(span):last-of-type
{
	flex: 1 0 auto;
}

.tamu-table-title .filter-status
{
	margin-top: 5px;
}

table.tamu-table
{
	margin: 10px 0;
}

table.tamu-table thead
{
	background-color: var(--color-primary-brand-primary);
}

table.tamu-table th
{
	color: white;
	padding: 4px;
}

table.tamu-table th[onclick],
table.tamu-table th[sort]
{
	cursor: pointer;
}

table.tamu-table td
{
	border-bottom: 1px solid var(--color-primary-brand-primary);
	padding: 4px;
	word-break: break-word;
}

.tamu-table .check-cell,
.tamu-scroll-grid .check-cell
{
	cursor: pointer;
}

.tamu-note-table tr:not(:last-of-type)
{
	border-bottom: 1px solid black;
}

.tamu-note-table tr td:not(:last-of-type)
{
	padding: 2px 20px 2px 2px;
	vertical-align: top;
	width: 1px;
	white-space: nowrap;
}

.tamu-note-table tr td:last-of-type
{
	padding: 2px;
	word-break: break-word;
}
/*#endregion tamu-table*/

/*#region tamu-grid-paging*/
.tamu-grid-paging
{
	align-items: center;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	margin-top: 10px;
	padding: 0 10px;
}

.tamu-grid-paging > button:first-of-type
{
	text-align: right;
}

.tamu-grid-paging > .tamu-grid-paging-status
{
	flex-grow: 1;
	text-align: right;
}
/*#endregion tamu-grid-paging*/

/*#region tamu-scroll-grid*/
.tamu-scroll-grid
{
	margin: 10px 0;
}

.tamu-scroll-grid table
{
	table-layout: fixed;
	width: 100%;
}

.tamu-scroll-grid th, .tamu-scroll-grid td
{
	padding: 4px;
}

.tamu-scroll-grid-header
{
	background-color: var(--color-primary-brand-primary);
}

.tamu-scroll-grid-header > div
{
	overflow: hidden;
}

.tamu-scroll-grid thead
{
	background-color: var(--color-primary-brand-primary);
}

.tamu-scroll-grid th
{
	color: white;
}

.tamu-scroll-grid th[onclick],
.tamu-scroll-grid th[sort]
{
	cursor: pointer;
}

.tamu-scroll-grid-content
{
	border-bottom: 1px solid var(--color-primary-brand-primary);
	max-height: 500px;
	overflow: auto;
}

.tamu-scroll-grid-content tbody tr[data-index="-1"]
{
	display: none;
}

.tamu-scroll-grid:not([page-size]) .tamu-scroll-grid-content tr:not(:first-of-type) td,
.tamu-scroll-grid[page-size] .tamu-scroll-grid-content tr:not(:nth-of-type(2)) td
{
	border-top: 1px solid var(--color-primary-brand-primary);
	word-break: break-word;
}
/*#endregion tamu-scroll-grid*/

:not(.tamu-scroll-grid-content) > :not(.tamu-scroll-grid-header) > table:not(.tamu-table):not(.tamu-note-table):not(.e-table) tr > *:not(:first-of-type)
{
	padding: 0 4px;
}

/*#region submit & validation*/
.pito-modal .floating-submit
{
	/*pito-modal must have padding-bottom: 0;*/
	margin: 0 -15px !important;
	position: sticky;
	width: auto;
}

.floating-submit
{
	background: #E3E3E3;
	border-top: 1px solid var(--color-primary-brand-primary);
	bottom: 0;
	display: flex;
	gap: 10px;
	justify-content: flex-end;
	margin-left: -30px !important;
	padding: 15px 30px !important;
	position: fixed;
	z-index: 10;
}

.inline-submit
{
	display: flex;
	gap: 15px;
	height: fit-content;
	justify-content: flex-end;
	margin: 15px 0 0 0;
}

.floating-submit > *
{
	margin: auto 0;
}

.inline-submit > summary
{
	flex: 1 1 auto;
}

.inline-submit > span
{
	display: flex;
	gap: 15px;
	height: fit-content;
	justify-content: flex-end;
}

.inline-submit > span > *
{
	margin: auto 0;
}

summary
{
	cursor: default !important;
	list-style: none !important;
	margin: 15px 0;
}

.field-validation-valid
{
	display: none;
}

.field-validation-error,
.validation-summary-errors
{
	color: red;
}

.summary-single-error ul
{
	list-style: none;
	padding: 0;
}
/*#endregion submit & validation*/

label
{
	display: inline-block;
	max-width: 100%;
	font-weight: bold;
}

/*#region _userFields*/
#_userFields > div
{
	display: inline-block;
	margin: 0 5px 10px 0;
}

#_userFields > div > label
{
	display: block;
}

#_userFields > div > input,
#_userFields > div > select:not([multiple])
{
	box-sizing: border-box;
	height: 26px;
}
/*#endregion _userFields*/

/*#region flex-container*/
.flex-container
{
	page-break-inside: avoid;
}
/*#endregion flex-container*/

/*#region flex-row*/
.flex-row, .flex-row-center
{
	display: flex;
	flex-wrap: wrap;
}

.flex-row-center
{
	align-items: center;
	gap: 15px;
	min-height: unset;
}

.flex-row[id]
{
	overflow: hidden;
	transition: height 500ms ease-in-out;
}

.flex-row[id].flex-row-hidden
{
	height: 0 !important;
}

.flex-row.flex-subheader > div:last-of-type
{
	border-bottom: 1px solid #707373;
	flex-direction: row;
	gap: 5px;
}

.flex-row:not([id]):not(.flex-subheader)
{
	min-height: 56px;
}

.flex-row > div
{
	display: flex;
	flex: 1 0 170px;
	flex-direction: column;
}

.flex-row > div,
.flex-row-header
{
	padding: 5px;
}

.flex-row-header
{
	align-items: center;
	background: var(--color-secondary-brand-gray500);
	color: var(--color-primary-brand-secondary);
	display: flex;
	font-weight: bold;
	gap: 10px;
}

.collapsible-container
{
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin: 10px 0;
}

.collapsible-container .flex-row-header
{
	cursor: pointer;
}

.flex-row-header > a,
.flex-row-header > button
{
	color: var(--color-primary-brand-secondary) !important;
	display: inline;
	font-weight: inherit;
	margin-right: auto;
}

.flex-row-header > .refresh-icon
{
	font-size: 20px;
}

.flex-row:not(.flex-subheader) > div > :not([multiple]):not(textarea):not(.field-validation-error)
{
	align-self: start;
	margin-right: auto;
}

.flex-row textarea
{
	min-height: 26px;
	resize: vertical;
	width: 100%;
}
/*#endregion flex-row*/

/*#region collapsible blocks*/
.reference-container
{
	padding-top: 10px;
}

.modal-fields, .collapsible-form, .collapsible-grid, .collapsible-text
{
	overflow: hidden;
	transition: height 500ms ease-in-out;
}

.collapsible-text
{
	padding: 0 5px;
}

.collapsible-grid > div, .collapsible-text > :last-child
{
	margin-bottom: 0;
}

.collapsible-text > :first-child
{
	margin-top: 5px;
}
/*#endregion collapsible blocks*/

/*#region _affiliateContainer*/
#_affiliateContainer .tamu-table-title > div:not(:last-of-type)
{
	display: flex;
	flex-wrap: wrap;
}

#_affiliateContainer .tamu-table-title > div:not(:last-of-type) > div
{
	margin-bottom: 10px;
}
/*#endregion _affiliateContainer*/

/*#region affiliate-form*/
.affiliate-form
{
	min-width: 368px;
}

.affiliate-form > div > .flex-row-header
{
	border: 1px solid black;
	border-width: 1px 1px 0 1px;
}

.affiliate-form > div > .flex-row
{
	border-left: 1px solid black;
}

.affiliate-form > div > .flex-row > div
{
	border: 1px solid black;
	border-width: 1px 1px 0 0;
}

.affiliate-form
{
	border-bottom: 1px solid black;
}

.affiliate-form .flex-row > div > input[type=text]:not(.hasDatepicker)
{
	border: none;
	margin: 0;
	width: 100%;
}

:is(.affiliate-form, .disabled-pretty, .training-form) :is(input[type=text], textarea):disabled
{
	background-color: transparent;
	border: none;
	color: inherit;
	padding: 0;
}

form.affiliate-form input[type=text].hasDatepicker
{
	padding: 0 3px;
}

form.affiliate-form[action*="Submit"] select:disabled,
form.affiliate-form select:disabled:not(.box-always-show),
form.affiliate-profile select:disabled:not(.box-always-show),
.disabled-pretty select:disabled:not(.box-always-show)
{
	-moz-appearance: none;
	-webkit-appearance: none;
	border: none;
	color: inherit;
	opacity: 1;
	padding: 1.5px 0;
}

form.affiliate-form select[disabled]:not(#_campusContact)::-ms-expand
{
	display: none;
}

form.affiliate-form #_appointmentJustification
{
	display: block;
}

.consent-eform
{
	border: 1px solid black;
	padding: 15px;
}

form.affiliate-form .consent-eform span
{
	border-bottom: 1px solid black;
	display: inline-block;
	min-width: 100px;
	padding: 0 10px;
	text-align: center;
}
/*#endregion affiliate-form*/

/*#region affiliate-profile*/
.affiliate-profile .flex-row-header:not(:first-of-type)
{
	margin-top: 10px;
}

.affiliate-profile .flex-subheader ~ .flex-row > div > table
{
	margin-top: 0;
}

.affiliate-profile input[type=text]
{
	line-height: 17px;
}

.affiliate-profile .tamu-table a,
.affiliate-profile .tamu-table button
{
	display: block;
	width: fit-content;
}

 .affiliate-profile :is(input[type=text], textarea):disabled
{
	background: none;
	border-color: transparent;
	color: inherit;
	resize: none;
}
/*#endregion affiliate-profile*/

/*#region evaluationForm*/
#_evaluationForm p
{
	margin: 0;
}

#_evaluationForm p.eval-comment
{
	white-space: pre-line;
}

#_evaluationForm p.eval-comment-bold
{
	font-weight: bold;
	white-space: pre-line;
}

#_evaluationForm *:disabled
{
	color: initial;
	opacity: 1;
}

#_evaluationForm .flex-row label
{
	display: block;
	margin-bottom: 0;
}
/*#endregion evaluationForm*/

/*#region spinner*/
.spinner-container
{
	background-color: RGBA(0, 0, 0, .4);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

.spinner,
.spinner-container > img
{
	background-color: var(--color-primary-brand-secondary);
	border-radius: 10px;
	margin: auto;
	z-index: 1001;
}

.spinner-container-local
{
	align-items: center;
	display: flex !important;
	height: 100%;
	justify-content: center;
	min-height: 400px;
	padding: 20px;
	z-index: 1000;
}

.spinner-container-local > img
{
	transform: scale(2);
}
/*#endregion spinner*/

/*#region modal*/
.pito-modal-container
{
	background-color: RGBA(0, 0, 0, .4);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 100;
}

.pito-modal
{
	background-color: white;
	border: 3px solid lightgray;
	border-radius: 10px;
	margin: auto;
	max-height: calc(100vh - 200px);
	max-width: calc(100vw - 200px);
	overflow: auto;
	padding: 15px;
	width: 100%;
	z-index: 101;
}

.pito-modal > .modal-close > img
{
	cursor: pointer;
	display: block;
	float: right;
	height: 16px;
	width: 16px;
}
/*#endregion modal*/

/*#region e-grid*/
.e-grid
{
	margin: 10px 0;
}

.e-grid:focus
{
	outline: 2px solid #003C71 !important;
	outline-offset: 2px !important;
}

.e-grid *
{
	font-size: 14px !important;
}

.e-grid div.e-toolbar
{
	background: #FFF;
	border-left: 1px solid #E0E0E0;
	border-right: 1px solid #E0E0E0;
}

.e-grid div.e-toolbar .e-toolbar-items
{
	background: #FFF;
}

.e-grid,
.e-grid .e-headercontent
{
	border-width: 0 !important;
	font-family: inherit !important;
}

.e-grid .e-gridheader
{
	border: 1px solid var(--color-primary-brand-primary) !important;
}

.e-grid .e-gridcontent
{
	border: 1px solid #E0E0E0 !important;
	border-top-width: 0 !important;
}

.e-grid .e-gridcontent .e-content
{
	background-color: #FAFAFA;
}

.e-grid .e-gridcontent .e-virtualtrack
{
	height: 1000px;
}

.e-grid .e-gridcontent .e-content > table
{
	border-bottom: 1px solid #E0E0E0;
}

.e-grid .e-gridcontent .e-content > table .e-lastrowcell
{
	border-bottom-width: 0 !important;
}

.e-grid .e-gridheader,
.e-grid tr.e-columnheader th,
.e-grid tr.e-columnheader th > *,
.e-grid tr.e-columnheader th > * > *,
.e-grid .e-checkbox-wrapper:not(.e-checkbox-disabled) span.e-frame.e-check,
.e-dialog .e-checkbox-wrapper:not(.e-checkbox-disabled) span.e-frame.e-check
{
	background-color: var(--color-primary-brand-primary) !important;
	color: var(--color-primary-brand-secondary) !important;
}

.e-grid .e-gridheader .e-checkbox-wrapper:not(.e-checkbox-disabled) .e-frame
{
	background-color: var(--color-primary-brand-primary) !important;
	border-color: var(--color-primary-brand-secondary) !important;
	color: var(--color-primary-brand-secondary) !important;
}

.e-dialog .e-input-focus::before,
.e-dialog .e-input-focus::after
{
	background-color: var(--color-primary-brand-primary) !important;
}

.e-dialog .e-excl-filter-icon.e-filtered::before,
.e-dialog .e-btn.e-primary
{
	color: var(--color-primary-brand-primary) !important;
}

.e-grid .e-icon-filter.e-filtered::before
{
	color: #FCE300 !important;
}

.e-radio:checked + label::before
{
	border-color: var(--color-primary-brand-primary) !important;
}

.e-radio:checked + label::after
{
	background-color: var(--color-primary-brand-primary) !important;
	color: var(--color-primary-brand-primary) !important;
}

.e-grid th:focus,
.e-grid th:focus-within,
.e-grid td.e-focused:not(.e-menu-item):focus,
.e-grid td.e-focused:not(.e-menu-item):focus-within,
.e-grid td:focus-within
{
	box-shadow: 0 0 0 2px #003C71 inset !important;
}

.e-grid.e-wrap.mixed-wrap td.e-ellipsistooltip
{
	overflow-wrap: normal !important;
	text-overflow: ellipsis !important;
}

.e-grid.e-wrap.mixed-wrap td.e-ellipsistooltip a
{
	white-space: normal;
}

.e-grid tr.row-locked td
{
	background-color: #A7A7A7 !important;
}

tr.row-locked td.e-gridchkbox div.e-checkbox-wrapper
{
	cursor: default;
}

tr.row-locked td.e-gridchkbox span.e-frame.e-icons
{
	background-color: #757575;
	color: var(--color-primary-brand-secondary);
	cursor: default;
}

tr.row-locked td.e-gridchkbox span.e-frame.e-icons::before
{
	content: '\e932';
}

.e-grid tr.row-add td,
span.row-add
{
	background-color: #3ED48865;
}

.e-grid tr.row-remove td,
span.row-remove
{
	background-color: #E4002B65 !important;
}

.e-grid tr.row-split td,
span.row-split
{
	background-color: #FCE30065;
}

.e-grid .row-action > img
{
	cursor: pointer;
	display: block;
	height: 16px;
	width: 16px;
}

.e-grid tr.row-remove .row-action > img
{
	transform: rotate(45deg);
}
/*#endregion e-grid*/

/*#region e-datepicker*/
span.e-date-wrapper
{
	width: 115px !important;
}

span.e-date-wrapper,
span.e-date-wrapper > *
{
	color: var(--font-color) !important;
	font-family: var(--font-open-sans) !important;
}

#_applicationForm span.e-date-wrapper:not(.e-disabled),
#_applicationForm span.e-date-wrapper:not(.e-disabled) > *
{
	height: 29px !important;
	min-height: 29px !important;
	min-width: 29px !important;
	padding: 0 0 0 2px !important;
}

span.e-date-wrapper:not(.e-disabled)
{
	border-width: 1px !important;
}

#_applicationForm span.e-date-wrapper:not(.e-disabled)
{
	border-width: 0 0 1px 0 !important;
}

#_applicationForm span.e-date-wrapper.e-disabled
{
	margin-top: 7px;
}

span.e-date-wrapper:not(.e-disabled) > input
{
	padding-left: 4px !important;
}

span.e-date-wrapper.e-disabled,
span.e-date-wrapper.e-disabled > input
{
	background: none !important;
	border: none !important;
	cursor: default !important;
	padding: 0 !important;
	-webkit-text-fill-color: unset !important;
}

span.e-date-wrapper.e-disabled > :not(input)
{
	display: none !important;
}
/*#endregion e-datepicker*/

/*#region e-upload*/
.e-file-select-wrap
{
	padding: 16px !important;
}
/*#endregion e-upload*/

/*#region switch*/
.switch
{
	display: inline-block;
}

.switch :is(input[type=checkbox], select)
{
	display: none;
}

.switch .slider
{
	align-items: center;
	appearance: none;
	background-color: var(--color-secondary-brand-gray400);
	border: none;
	border-radius: 34px;
	color: var(--color-primary-brand-secondary);
	cursor: pointer;
	display: inline-flex;
	height: 26px;
	justify-content: center;
	padding: 0 2px;
	transition: .4s;
	vertical-align: top;
	-webkit-transition: .4s;
	width: 56px;
}

.switch input[type=checkbox]:focus ~ .slider
{
	box-shadow: 0 0 1px #2196F3;
}

.switch.switch-locked .slider
{
	cursor: not-allowed;
}

.switch .slider :is(.slider-on, .slider-off)
{
	color: var(--color-primary-brand-secondary);
	font-weight: 500;
	overflow: hidden;
	transition: .4s;
	-webkit-transition: .4s;
	width: 0;
}

.switch .slider .slider-dot
{
	aspect-ratio: 1;
	background-color: var(--color-primary-brand-secondary);
	border-radius: 50%;
	width: 22px;
}

.switch :is(input[type=checkbox]:not(:checked), select:has(option[value=false]:checked)) ~ .slider
{
	background-color: var(--color-error-red);
	justify-content: space-between;
}

.switch :is(input[type=checkbox]:not(:checked), select:has(option[value=false]:checked)) ~ .slider .slider-off
{
	flex: 1 0 auto;
	padding: 0 2px;
}

.switch :is(input[type=checkbox]:checked, select:has(option[value=true]:checked)) ~ .slider
{
	background-color: var(--color-success-green);
	justify-content: space-between;
}

.switch :is(input[type=checkbox]:checked, select:has(option[value=true]:checked)) ~ .slider .slider-on
{
	flex: 1 0 auto;
	padding: 0 2px;
}

.switch .lock
{
	height: 20px;
	margin-top: 3px;
}
/*#endregion switch*/