@charset "UTF-8";

/* Web Solutions 4.0 Compatible */
html {-webkit-box-sizing:border-box;box-sizing:border-box;}
*, *:before, *:after {-webkit-box-sizing:inherit;box-sizing:inherit;}
body {margin:0;padding:0;-webkit-text-size-adjust:none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;}
img{border: 0}
ul{padding-left: 0}
ul li{list-style:none}
html, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, hr{font-family:inherit; font-size:inherit; font-style:inherit;font-weight:inherit}
table {border-collapse:collapse}
td, th {empty-cells:show;vertical-align:top;text-align:left}
body {background: #231F20;overflow-x: hidden;}
#skipNavigation{background:#fff;color:#000;padding:.5em;position:absolute;left:0;top:-1000px;z-index:10}
#skipNavigation:focus,#skipNavigation:active{top:0;}
iframe[src="/management/login/persistSession.aspx"] {display: none}
/*page widths*/
body>header, #mainnav, main, body>footer, #alertApp{width:100%;float:left;clear:left;display:block;}
body>*>.wrap, body>footer>.fatFooter,#alertApp>*,body>header>.wrap, body>header .wrap{width:100%;max-width: 59.25rem;margin-left:auto;margin-right:auto;position:relative;overflow:auto;}
body>*>.wrap { overflow: visible}
body>header>.wrap {max-width: 61.75rem;padding: 0 1.25rem; width: 100%;margin-left:auto;margin-right:auto;position:relative;overflow:auto;}
/* text */
body, .text, input, button, select, textarea {font-family:Arial, sans-serif;line-height:1.5;color: #555;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;font-size: .875rem;}
.text{font-size: 1rem}
a, a *{color: var(--secondary);text-decoration:none;}
main a { font-weight: 700; }
a:hover, a:active, a:hover *, a:active *{color: var(--primary);}
p,h1,h2,h3,h4,hr,.content ul,.contentEditor ul,blockquote,dd,ol{margin-top:0;margin-bottom:1rem}
h1, h2, h3, h4, h5, h6, th{font-weight:400; line-height: 120%;}
p + h2, p + h3, p + h4, p + h5, p + h6 {margin-top:2em;}
.textColor, h1, h2, h3, h4, h5, h6, th, dt{color: var(--primary);}
em, i, q, cite, .italic{font-style:italic}
b, strong{font-weight:700}
u{text-decoration: underline;}
hr{border:0;border-top:1px solid rgba(0,0,0,.15);margin:1em 0;padding-top:1px}
h1+hr { margin: 0 0 1.25rem;}
p {font-size: .875rem;font-weight: 400;}
sup, sub {font-size:.6em; line-height:.6em;vertical-align:baseline;position:relative}
sup {bottom:1ex}
sub {top:.5ex}
.PrintOnly,
.printOnly {display: none}

.mt-1 { margin-top: 1rem;}
.mt-2 { margin-top: 2rem;}
.mt-3 { margin-top: 3rem; }
.mb-1 { margin-bottom: 1rem; }
.mb-2 { margin-bottom: 2rem; }
.mb-3 { margin-bottom: 3rem; }

ol { padding-left: 2.5rem; }

/* WRAPS ------------------------------ */
.flex-row {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 100%;
	width: 59.25rem;
}

.flex-row.flex-wrap {
	flex-wrap: wrap;
}

.flex-row.variable-height {
	align-content: flex-start;
	align-items: flex-start;
}


/* HEADER ------------------------------ */
body>header { background: var(--primary); float: left; width: 100%; }

header .logo {
	float: left;
	padding: 1rem 0 .75rem;
}

header .logo img {
	height: auto;
	max-width: 24.5625rem;
	max-height: 9.375rem;
	width:100%;
}

header .logo img[style] {
	border-radius: 4px;
	padding: 1em;
}

header .logo:hover img {
	opacity: .7;
}

header .buttons a {
	float: right;
	background-color: var(--secondary);
	color: #fff;
	font-size: .75rem;
	border: 1px solid rgba(255,255,255,.2);
	border-radius: 2px;
	line-height: 1.75;
	margin: .625rem 0 0 .5rem;
	padding: .0625rem .5rem 0;
}

header .tool-title {
	position: absolute;
	font-size: 1.25rem;
	right: 1.25rem;
	color: rgba(255,255,255,0.75);
	bottom: .25rem;
}

header .buttons a.logout {
	background: url('/images/icons/sign-out.svg') no-repeat .5rem center var(--secondary);
	background-size: .875rem .875rem;
	padding-left: 1.75rem;
}

header .buttons a:hover {
	background-color: #131131;
	border-color: #131131;
}

/* MAIN ------------------------------ */
#navContainer .menu{cursor: pointer; }
main, .mceContentBody{background:#fff}
main {min-height: calc(20rem + 8vw);padding: 4rem 1.25rem 6rem;}
.contentEditor{background:#fff;min-width:100%;}

/* sidenav */
.with-sidenav > .sidenav ul {margin:0; padding:0}
.with-sidenav > .sidenav li {padding:2px 0; margin:0; border-bottom: 1px solid rgba(0,0,0,.15)}
.with-sidenav > .sidenav li:before {display: none}
.with-sidenav > .sidenav li a {display: block; border-radius:2px; padding: 0.5em 1em; line-height:1.125em}
.with-sidenav > .sidenav li.on a {background: var(--secondary); color:#fff}


#sidenav{width:100%;overflow:hidden;margin:0 0 3rem}
#sidenav ul{padding: 0}
#sidenav li{height:1%;overflow:hidden}
#sidenav li a{padding:.5em .25rem;line-height:1.1em;display:block}
#sidenav li a:hover, #sidenav li a:active{background:#e5e5e5}
#sidenav li.on>a{color:#000}
/* t2 */
#sidenav li.on ul{border-top:1px solid rgba(0,0,0,.15)}
#sidenav li.on ul li{border-bottom:1px solid rgba(0,0,0,.15)}
#sidenav li.on ul li a{padding:.3em .5rem .3em .5rem;font-size:.9em;color:#666}
#sidenav li ul li a:hover,
#sidenav li ul li a:active,
#sidenav li ul li.on>a{color:#000; background:#ccc;}
/* t3 */
#sidenav li ul li.on ul{padding-bottom:.5em;border:0}
#sidenav li ul li.on ul li{border:0}
#sidenav li ul li.on ul li a{padding-left:1rem;font-size:.8em;color:#666}
#sidenav li ul li ul li a:hover,
#sidenav li ul li ul li a:active,
#sidenav li ul li ul li.on>a{color:#000; background:#e5e5e5;}
/* t4 */
#sidenav li ul li ul li.on ul li a{padding-left:1.5rem;font-size:.7em;color:#666}
#sidenav li ul li ul li ul li a:hover,
#sidenav li ul li ul li a:active,
#sidenav li ul li ul li ul li.on>a{color:#000; background:#f5f5f5;}

/*section callouts*/
main>div>aside section{margin:0 0 20px;padding:10px}
main>div>aside section:hover{background:#FFC}
main>div>aside section h1{margin:0;font-size:1.2em}
main>div>aside section p{margin:0}

/* breadcrumb */
.breadcrumb{margin-bottom: 1em}
.breadcrumb a:after{content: "\00A0\00A0\203A\00A0"}

/* content */
.content{word-wrap:break-word}
.content .photoright, .content .photoleft{max-width:50%;height:auto}
.content .photoright img,.content .photoleft img {max-width:100%;height:auto;margin: 0;float: none}
.content img.phototreatment{max-width:50%;height:auto}
.content figure.phototreatment{width: 100%;text-align: center}
.content figure.phototreatment img{max-width: 100%;width: auto;height: auto}
img.phototreatment,img.photoright,img.photoleft,.photoright img,.photoleft img {max-width: 100%;height: auto}
.photoright{float:right;clear:right}
.photoleft{float:left;clear:left}
.muted {opacity:0.5;filter:alpha(opacity=50)}
.highlight, .content .highlight{background: rgba(38, 34, 98, .05);padding: 1.5rem;margin: 1.5rem 0;}
.highlight.mt-3 { margin-top: 3rem; }
small, .textSm{font-size:.8em}
.content table{width:100%}

.shareIcons{display:inline-block;position:relative;overflow:auto}
.shareIcons a{display:block;float:left;margin:0 .5em 1em 0;height:20px;width:20px;background-position:center center; background-repeat:no-repeat;background-size:contain;border-radius:.2em;-webkit-box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, .2);box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, .2)}
.shareIcons a:hover{background-color:#F03C5E}
.shareFacebook{background-color:#3b5998; background-image:url(../../images/icons/64x64/facebook.png)}
.shareTwitter{background-color:#00aced; background-image:url(../../images/icons/64x64/twitter.png)}
.shareLinkedin{background-color:#007bb6; background-image:url(../../images/icons/64x64/linkedin.png)}
.shareGoogle{background-color:#dd4b39; background-image:url(../../images/icons/64x64/google-plus.png)}

/* list */
ol.alpha { list-style: lower-alpha; }
.content ol{margin-left:2rem}
.content ol ol li {list-style: lower-alpha}
.content ul li{padding-left:2rem;text-indent: -1rem}
.content ul li:before{content: "\25B8";display: inline-block;width: 1rem;text-align: center;text-indent:0}
.content ul li ul li:before{opacity: .5}

main ul { padding-left: 2rem; }
main ul>li>ul {margin: .375rem 0 0;padding-left: 1.5rem;}

main ul li, main ol li { position: relative; margin: 0 0 .5rem}
main ul:not(.form-a2s) li::before {
	background: url('/images/icons/angle-right-regular.svg') no-repeat center center;
	content: '';
	height: .875rem;
	left: -1rem;
	opacity: .75;
	position: absolute;
	top: .25rem;
	width: .4375rem;
}

main ul.alpha>li { list-style: lower-alpha; }
main ul.alpha>li::before { display: none; }

main ul.roman>li {list-style: lower-roman;}
main ul.roman>li::before { display: none; }

/* addon classes */
.clearFloats{clear:both}
.nobr{white-space: nowrap}
.twoCol, .threeCol, .resCol{
	-webkit-column-rule:1px outset rgba(0,0,0,.15);
	column-rule:1px outset rgba(0,0,0,.15);
	-webkit-column-gap:2em;
	column-gap:2em;
}
.req{color:#c00}
.textIcon{background:#999; background-color:rgba(0,0,0,.2);font-size:.8em;line-height:1em;display:inline-block;padding:.2em .4em;border-radius: .5em;color:#fff}
.textIcon:hover{background:#666; background-color:rgba(0,0,0,.4);color:#fff}
.clearfix:after{content: "";display: table;clear: both;}

.videoContainer {width: 100%;height:0;line-height:0;position: relative;padding-top:56.25%; /* 16:9 */}
.videoContainer.ratio-4-3 {padding-top:75%; /* 4:3 full-frame */}
.videoContainer iframe {position:absolute;left:0;top:0;right:0;bottom:0;width:100%;height:100%;border:0}

/* forms */
input, button, select, textarea {font-size:1rem;line-height: 1.2em}
input[type="text"], input[type="password"], input[type="tel"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], textarea, select, input[type="button"], input[type="submit"], input[type="reset"]{border-radius:0; outline: none; -webkit-appearance:none;font-size: 1rem}
input[type="text"], input[type="password"], input[type="tel"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="date"], textarea, select{
	padding: 4px 4px 4px 1em;
	background: #FAFAFA;
	border: 1px solid #CBCACA;
	border-radius: 3px;
	height: 2.25rem;
	vertical-align: middle;
}
input[type="text"]:focus, input[type="password"]:focus, input[type="tel"]:focus, input[type="number"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="search"]:focus, input[type="date"]:focus, textarea:focus, select:focus{background-color: #FFF;border-color: #555;}
textarea{display:block;}

select {
	background-image: url('/images/icons/select-arrows.svg');
	background-repeat: no-repeat;
	background-position: -webkit-calc(100% - .875rem) center;
	background-position: calc(100% - .875rem) center;
	-webkit-appearance: none;
	min-width: 14.5rem;
	-moz-appearance: none;
}

select option{padding:0 .2em}
button,.button,.icon-button,input[type="button"], input[type="submit"], input[type="reset"]{background: var(--secondary);border-radius: 4px;display: inline-block;color:var(--buttonTextColor);border:0;padding: .625rem 1rem;line-height:1em;cursor:pointer;font-size: .875rem;font-weight: 700;outline: 0;}
.icon-button.large + .button:not(.icon-buton) { padding: .875rem 1rem}
.icon-button.cancel, .cancel { background-color: #888;}
input::-moz-focus-inner {border:0;padding:0;}
button:hover,.button.hover,input[type="button"]:hover,input[type="submit"]:hover,input[type="reset"]:hover,.icon-button:hover,.icon-button:focus,.button:hover,.button:focus,input[type="button"]:focus,input[type="submit"]:focus,input[type="reset"]:focus{background-color: var(--primary);color:#fff;}
.button{display: inline-block}
button img{height:1em;width:auto;vertical-align:top}
input.bulky, .bulky {padding:.4em .6em;font-size:1.2em}
.formTable, .formTable table{width:100%}
.formTable input[type="text"], .formTable input[type="password"], .formTable input[type="tel"], .formTable input[type="number"], .formTable input[type="email"], .formTable input[type="url"], .formTable input[type="search"], .formTable textarea{width:100%}
.formTable table td,.formTable table td:first-child{padding-bottom:0}
.formTable.right td:first-child{text-align:right;width:1%}
.formTable.right td{width:auto}
.subjClass{display:none !important;}
#Captcha label{padding-left:0}
td.right, th.right{text-align:right}
.wsNew{ display:inline-block; font-size:.7em; line-height:1.5em; height:1.5em; padding:0 .3em; margin:.3em 0; background-color: #FFC700; overflow:visible; vertical-align:top;color:#fff;font-style:italic}
.formEdit select, .formBuilder select { width:40%; }

form#login { margin: 2rem auto 0; max-width: 100%; width: 25rem; }
form#login table.formTable tr>td:first-of-type {width: 100px;}
form#login table.formTable tr>td:last-of-type { width: auto; }
form#login table.formTable input[type='submit'] { margin-bottom: .5rem; }

.fancybox-lock input[type="button"] { background: #000; }
.fancybox-lock input[type="button"]:hover, .fancybox-lock input[type="button"]:focus { background: #444; }

.no-style-fieldset legend {
	display: table;
}
.no-style-fieldset {
	border: 0;
	margin: 0;
	padding: 0;
	min-width: 0;
}

.wsLightbox input[type=button].wsFormButton {
	background: #ccc;
  	color: #000;
	transition: ease all 200ms;
}

.wsLightbox input[type=button].wsFormButton:is(:hover, :focus-visible) {
	box-shadow: inset 0 0 0 1px #666;
}


/* ICON BUTTONS ------------------------------ */

.icon-buttons { float: right; display: flex; align-items: center; gap:0.25em}
.icon-button {display: inline-block;line-height: 1.45;padding: .4375rem 1rem .4375rem 3.3125rem;position: relative;}
.icon-button + .icon-button { margin-left: .75rem; }


.icon-buttons.back {
	display: block;
	float: none;
	margin: 0 0 1rem auto;
	width: 12.5rem;
}

.icon-buttons.back.mb-2 {
	margin-bottom: 2rem;
}

.icon-button::before {
	background-color: rgba(0,0,0,.2);
	background-position: center center;
	background-repeat: no-repeat;
	border-radius: 4px 0 0 4px;
	content: '';
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 2.3125rem;
}

.icon-button.large {padding: .6875rem 1rem .6875rem 3.625rem;}
.icon-button.large::before { width: 2.625rem; }

.icon-button.archive::before {
	background-image: url('/images/icons/archive-solid.svg');
	background-size: 1rem 1rem;
}

.icon-button.cancel::before {
	background-image: url('/images/icons/times-solid.svg');
	background-size: 1.125rem 15rem;
}

.icon-button.clear::before {
	background-image: url('/images/icons/eraser-solid.svg');
	background-size: 1.125rem 1.125rem;
}

.icon-button.edit::before {
	background-image: url('/images/icons/edit-solid.svg');
	background-size: 1rem 1rem;
}

.icon-button.home::before {
	background-image: url('/images/icons/home-solid.svg');
	background-size: 1rem 1rem;
}

.icon-button.list::before {
	background-image: url('/images/icons/list-solid.svg');
	background-size: 1.25rem 1.25rem;
}

.icon-button.plus::before {
	background-image: url('/images/icons/plus-solid.svg');
	background-size: .9375rem .9375rem;
}

.icon-button.print::before {
	background-image: url('/images/icons/print-solid.svg');
	background-size: 1rem 1rem;
}

.icon-button.save::before {
	background-image: url('/images/icons/save-solid.svg');
	background-size: 1rem 1.125rem;
}

.icon-button.user-circle::before {
	background-image: url('/images/icons/user-circle-solid.svg');
	background-size: 1.2rem 1.25rem;
}

.icon-button.user-plus::before {
	background-image: url('/images/icons/user-plus-solid.svg');
	background-size: 1.25rem 1rem;
}

.icon-button.envelope::before {
	background-image: url('/images/icons/envelope.svg');
	background-size: 1rem 0.75rem;
}

.icon-button:hover::before {background-color: rgba(0,0,0,.5);}


.small-icon-button {
	background: #F4F4F4;
	border-radius: 4px;
    color: var(--primary);
    display: inline-block;
    line-height: 1.5;
    padding: 0.5em 1em;
}

.small-icon-button:is(:hover, :focus-visible) {
	background: #F4F4F4;
	box-shadow: inset 0 0 0 1px rgba(0,0,0,0.125);
	color: var(--primary);
}

.small-icon-button:before {
	content: "";
	padding-left: 1em;
	margin-right: 0.5em;
}

.small-icon-button.import:before {
	background: url(/images/icons/up-from-line.svg) no-repeat center;
}

.small-icon-button.export:before {
	background: url(/images/icons/down-to-line.svg) no-repeat center;
}

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



/* DIALOG POPOVER ------------------------------ */
dialog {
    align-content: center;
    align-items: center;
    background: rgba(0,0,0,0.85);
    border: 0;
    display: flex;
    height: 100%;
    justify-content: center;
    left: 0;
    margin: 0;
    min-height: 100%;
    min-width: 100%;
    opacity: 0;
    padding: 1em;
    pointer-events: none;
    position: fixed;
    top: 0;
    transition: ease all 200ms;
    width: 100%;
    z-index: 20;
}

dialog[open] {
    opacity: 1;
    pointer-events: all;
}

dialog .center {
    background: #fff;
    border-radius: 8px;
    max-width: 25rem;
    padding: 2em;
    position: relative;
    width: 100%;
    z-index: 2;
}

dialog .center .close {
    background: none;
    color: #fff;
    font-size: 2rem;
    line-height: 1rem;
    padding: 1rem;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateY(-100%);
}

dialog .center .popover-content {
    max-height: calc(100vh - 200px);
  	overflow: auto;
}


dialog .center p {
    font-size: 1rem;
}

dialog .file-upload,
#dashboard-filter dialog .file-upload {
    display: flex;
	flex-direction: column;
	gap:0.5em;
	margin-bottom: 1.5em;
}

dialog .actions {
    align-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 1em;
    justify-content: center;
}

dialog .actions #importErrors {
    margin:0;
	padding-left: 0;
}

dialog .actions #importErrors li {
    background: #ffe4e4;
    border-radius: 3px;
    color: #cd0000;
    margin-bottom: 2px;
    padding: 0.25em 1em;
}

dialog .actions #importErrors li:before {
    display: none;
}

dialog .actions hr {
	border-style: dashed;
	margin: 0.5em 0;
    width: 100%;
}

dialog .actions p {
	margin-bottom: 0;
}

dialog .popover-mask {
    cursor: default;
    height: 100%;
    left: 0;
    opacity: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1;
}




/* ALERT ------------------------------ */

/* alert */
#alertApp {background: #990000;cursor: pointer;position: relative;width: 100%;padding: .5rem 2.5rem;z-index: 1;}
#alertApp:hover { background:#660000;}
#alertApp.alertStatic { cursor: default;}
#alertApp h1 {color: #FFF;font-size: .9375rem;line-height: 1.25rem;margin: 0 auto;padding: .1875rem .3125rem;text-align: center;}
#alertApp:hover h1,#alertApp.expand h1 {color: #FFF;}
#alertApp #alertDesc {height: 0;overflow: hidden;}
#alertApp p {color: #FFF;font-size: .9375rem;line-height: 1.5;margin: 0;padding: .5rem 0 .75rem;position: relative;text-align: center; z-index: 1;}

/* pagination */
.pagination{font-size:.95em;text-align:right}

/* page header */
.pageHeader{width:100%;height:auto;margin-bottom:2em}

/* management overrides */
#wysiwygBody{background:#fff}

/* management table */
hr+.manage{margin-top:-1em}
.manage{border-bottom:1px solid rgba(0,0,0,.2);width:100%;line-height:1.3em}
.manage th{border-bottom:1px solid rgba(0,0,0,.2);text-align:left}
.manage th.right{text-align:right}
.manage th.sort{cursor:pointer}
.manage th.sort img{margin-left:5px}
.manage th img {position:relative;bottom:-2px}
.manage td,.manage th{padding:5px 5px 5px 0}
.manage td:first-child{padding-left:.8em}
.manage img.preload{display:none;position:absolute;z-index:9900;top:0;border:solid 1px #fff}
.manage td.icons img{margin-left:5px;position:relative;bottom:-2px}
.manage td:first-child.icons img{margin-left:0}
.manage td:first-child.icons{padding-left:3px;padding-right:3px}
.manage td:nth-child(2) {overflow-wrap: break-word;word-wrap: break-word;-ms-word-break: break-all;word-break: break-all;word-break: break-word;-ms-hyphens: auto;-webkit-hyphens: auto;hyphens: auto;}
.manage td.icons a:first-child img{margin-left:0}
.manage td.icons input{position:relative;bottom:2px;margin-left:5px}
.manage .hidden{font-style:italic;color:#900}
.manageButton{text-align:right;padding:10px 0}
.alternate tbody tr:nth-child(even), .even{background:#fff}
.alternate tbody tr:nth-child(odd), .odd {background:rgba(0,0,0,.06)}
.manage+hr, .manage+.manageLinks+hr{margin-top:50px}
.manageLinks{margin-top:10px}
.manageLinks a{white-space:nowrap}
.manageLinks a img{position:relative;bottom:-2px}
.manageLinks button{margin-left:5px}
.manageButtons{text-align: right;padding:10px 0}
.wsReturnToButton {float:right;margin-top:-3.5em}
.manage.rightFirstChild td:first-child{text-align:right}
.sortRow th{cursor:pointer}
.manageEllipsis{width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}


/* FOOTER ------------------------------ */
body>footer{padding: 1rem 1rem;color: #9B9B9B;font-size: .8125rem;}
body>footer a{color: #9B9B9B;}
body>footer a:hover, footer a:active{color:#fff}
body>footer a.on, footer .on>a{text-decoration:none;color:#fff}
body>footer .fatFooter{margin-bottom:2em;}
body>footer>.wrap{overflow:visible; clear:both}
body>footer>.wrap nav{display:inline}


/* TRANSITIONS ------------------------------ */
a, a *,button,.button,input[type="button"],input[type="submit"],.rsFullscreenBtn,#alertApp,#alertApp span,#alertDesc,#navContainer li,.hamburger, #navContainer .menu, #mobilenav span, span.custom-radio, span.custom-checkbox, input:focus, select:focus, textarea:focus {-webkit-transition: all .3s ease;transition: all .3s ease}
#dashboard tbody tr, .icon-button, .icon-button::before{-webkit-transition: background-color .3s ease;transition: background-color .3s ease}


/* FORM ERROR ------------------------------ */
.formError { background-color: Black; border:0; padding: 5px 10px; color:#fff; display:none; margin:0 0 2px; z-index:9999; border-radius: 10px; -moz-box-shadow:0 2px 2px #333; -webkit-box-shadow:0 2px 2px #333;}
.formError p { margin:0; font-size:.9em; }
.formError em { border:10px solid;  border-color:Black transparent transparent; bottom:-17px; display:block; height:0; left:40px; position:absolute; width:0; }

/* TABLES ------------------------------ */
.table-full-width { width: 100%; }

.striped tbody tr:nth-child(odd) { background: #F4F4F4; }
.striped tbody tr:hover { background: #FFFCD2; }

.table-responsive td { padding: .25rem .75rem; }

/* DASHBOARD ------------------------------ */
#dashboard-filter label {display: inline-block;overflow: hidden;}
#dashboard-filter label + label { margin-left: .25rem; }
#dashboard-filter label + input[type="submit"] {margin-left: .25rem;padding: .6875rem 1rem;vertical-align: top;}
#dashboard-filter label span { position: absolute; top: -100vw; }
#dashboard-filter select { width: 15rem; }

#dashboard tr th:not(:nth-child(1)), #dashboard tr td:not(:nth-child(1)) { text-align: center; width: 9.875rem; }
#dashboard thead th { color: var(--primary); font-size: 1rem; font-weight: 700; padding: .75rem 0; }
#dashboard tbody td { color: var(--primary); font-size: .875rem; }
#dashboard tbody tr { cursor: pointer; }

a.check, a.check-red, a.lock, a.times, a.not-applicable,
span.check, span.check-red, span.lock, span.times, span.not-applicable {
	background-size: cover;
	display: inline-block;
	height: 1rem;
	vertical-align: middle;
	width: 1rem;
}

a.check, span.check { background-image: url('/images/icons/check-circle-solid.svg'); }
a.check-red, span.check-red { background-image: url('/images/icons/check-red.svg'); }
a.lock, span.lock { background-image: url('/images/icons/lock-solid.svg'); width: .875rem; }
a.times, span.times { background-image: url('/images/icons/times-circle-solid.svg'); }
a.not-applicable, span.not-applicable { background-image: url('/images/icons/not-applicable.svg');}


/* CANDIDATE PROFILE ------------------------------ */
.candidate-options h2 {
	margin: 0;
}

.alert-box {
	border: 1px solid #fdd;
	border-radius: 5px;
	text-align: center;
	line-height: 1em;
	padding: 0.5em;
	margin: 1em 0;
	background: #ffefef;
	color: #000;
	font-size: 0.875em;
}

#candidate-profile .column-user { width: 60%; }
#candidate-profile .column-form { width: 40%; }
#candidate-profile .column-user {border-radius: 5px;position: relative;}
#candidate-profile .top {background: #F5F5F5;padding: 2.5rem 4rem 2rem;position: relative;}
#candidate-profile .top h2 {font-size: 1.375rem;}
#candidate-profile .top a:not(.icon-button) {color: #231F20;font-weight: 700;padding-left: 1.25rem;}
#candidate-profile .top a:not(.icon-button):hover { color: var(--secondary); }
#candidate-profile .bottom {background: #EBEBEB;margin: 0 0 1rem;padding: 1.5rem 4rem;}

#candidate-profile .profile-photo {
	border-radius: 50%;
	border: 2px solid #FFF;
	height: 87px;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: .5rem;
	transform: translateX(-50%);
	width: 87px;
}

#candidate-profile .column-user img {position: absolute;width: 100%;left: 50%;top: 50%;transform: translate(-50%,-50%);}


#candidate-profile .form-list {
	width: 100%;
}


#candidate-profile table {color: #555;font-size: .8125rem;line-height: 2;position: relative;width: 100%;}
#candidate-profile table td {padding-right: 1rem;width: 55%;}
#candidate-profile table td + td { width: 45%}

#candidate-profile .column-form { padding: 0 0 0 3.625rem; }
#candidate-profile ul.form-a2s { padding: 0;}
#candidate-profile ul.form-a2s li {border-top: 1px dashed #B3B3B3;line-height: 2.45;margin: 0;padding: .25rem 0 0.25rem 1.75rem;}
#candidate-profile .column-form ul.form-a2s li::before {
	top: 8px;
}
#candidate-profile ul.form-a2s li>span {
	float: right;
	font-size: .6875rem;
	font-style: italic;
	position:  relative;
	top: .25rem;
}

#candidate-profile ul.form-a2s li>span.email-count {
	font-style:normal;
	font-weight: 700;
}

#candidate-profile .top a.email {
	background: url('/images/icons/envelope-solid.svg') no-repeat left center;
	background-size: .8125rem .8125rem;
}

#candidate-profile .top a.phone {
	background: url('/images/icons/phone-solid.svg') no-repeat left center;
	background-size: .8125rem .8125rem;
}

#candidate-profile .top a.mobile-phone {
	background: url('/images/icons/phone-mobile.svg') no-repeat left center;
	background-size: .8125rem .8125rem;
}

#candidate-profile span.print {
	float: right;
	font-size: .6875rem;
	font-style: italic;
}

#candidate-profile .form-table tr {
	border-bottom: 1px dashed #B3B3B3;
	position: relative;
}

#candidate-profile .form-table th {
	color: var(--primary);
	font-size: .875rem;
	padding: .25rem;
}

#candidate-profile .form-table td {
	padding: 0.6875rem .25rem;
	position: relative;
	width: auto;
	vertical-align: top;
	line-height: 1.25em;
}

#candidate-profile .form-table th:first-child, 
#candidate-profile .form-table td:first-child { padding-left: 1.75rem;}
#candidate-profile .form-table td:nth-child(2) { font-style: italic; }

#candidate-profile ul.form-a2s li::before,
#candidate-profile .form-table tr td:first-of-type::before {
	background-color: #FFF;
	border-radius: 50%;
	content: '';
	height: 1.25rem;
	left: 0.25em;
	position: absolute;
	top: 0.5rem;
	width: 1.25rem;
}

#candidate-profile .form-table tr:hover {
    background: #F5F5F5;
}

#candidate-profile .manage-links {
    display: flex;
    flex-direction: column;
    gap:2px;
}

#candidate-profile .manage-links a {
    align-items: center;
    color: var(--primary);
    cursor: pointer;
    display: flex;
    gap: 0.35em;
    line-height: 1em;
}

#candidate-profile .manage-links a:is(:hover, :focus-visible) {
    text-decoration: underline;
}

#candidate-profile .manage-links a:before {
    aspect-ratio: 1/1;
    border-radius: 50%;
    content: "";
    display: block;
    width: 1.75em;
}

#candidate-profile .manage-links a.review-approve:before {
    background: var(--secondary) url(/images/icons/check-white.svg) no-repeat center / 55% auto;
}

#candidate-profile .manage-links a.mark-incomplete:before {
    background: var(--secondary) url(/images/icons/times-solid.svg) no-repeat center / 40% auto;
}

#candidate-profile .manage-links a.print:before {
    background: var(--secondary) url(/images/icons/print-solid.svg) no-repeat center / 55% auto;
}

#candidate-profile .manage-links a:is(:hover, :focus-visible):before {
    background-color: var(--primary);
}




#candidate-profile ul.form-a2s li.complete::before,
#candidate-profile .form-table tr.complete td:first-of-type::before {
  background-image: url(/images/icons/check-circle-solid.svg);
}

#candidate-profile ul.form-a2s li.complete-red::before,
#candidate-profile .form-table tr.complete-red td:first-of-type::before {
  background-image: url(/images/icons/check-red.svg);
}

#candidate-profile ul.form-a2s li.incomplete::before,
#candidate-profile .form-table tr.incomplete td:first-of-type::before {
  background-image: url(/images/icons/times-circle-solid.svg);
}

#candidate-profile ul.form-a2s li.not-applicable::before {
    background-image: url(/images/icons/not-applicable.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 1.125rem auto;
    opacity: 0.75;
}

#candidate-profile ul.form-a2s li {
	align-content: center;
    align-items: flex-start;
	display: flex;
}

#candidate-profile ul.form-a2s li .name {
	flex: 1 1 auto;
}

#candidate-profile ul.form-a2s li.not-applicable,
#candidate-profile ul.form-a2s li.not-applicable .name a {
	color:#767676;
}
  

#candidate-profile ul.form-a2s li .name a,
#candidate-profile ul.form-a2s li .name a * {
	color: var(--primary);
}

#candidate-profile ul.form-a2s li .name a:is(:hover, :focus-visible) {
	color: var(--secondary);
}

#candidate-profile ul.form-a2s li .name a .small {
    color: #666;
    display: block;
    font-size: 0.875em;
    font-style: italic;
    font-weight: 400;
    line-height: 1.25em;
}

#candidate-profile ul.form-a2s li .other {
	line-height: 1em;
    padding: 6px 0;
}

#candidate-profile ul.form-a2s li .name a.not-applicable {
    width: auto;
	height: auto;
	background: none;
	padding:0;
	font-size: 0.875em;
	font-weight: 400;
}

#candidate-profile ul.form-a2s li .print {
    align-content: center;
    align-items: center;
    display: flex;
    gap:4px;
    justify-content: center;
}

#candidate-profile ul.form-a2s li a {
	display: block;
	line-height: 1.25em;
	padding:6px 0;
}


.upload-form {
	background: #F5F5F5;
	padding:1.5rem;
	margin-bottom: 2em;
	width: 35%;
}

.upload-form .uploader {
	display: flex;
	gap:0.5rem;
	flex-wrap: wrap;
}

.upload-form .uploader {
	display: flex;
	gap:1rem;
	flex-wrap: wrap;
}

.upload-form [type=file] {
	font-size: .875rem;
	width:100%
}



span.print a {
	background: url('/images/icons/print-solid.svg') no-repeat center center var(--secondary);
	background-size: .9375rem .9375rem;
	border-radius: 3px;
	display: inline-block;
	height: 1.625rem;
	line-height: 1;
	margin: 0 0 0 .1875rem;
	padding: .375rem .8125rem;
	width: 1.625rem;
}

span.print a:hover {
	background-color: var(--primary);
}

/* CANDIDATE LOGIN ------------------------------ */
#steps {margin: 1.75rem 0 0;padding: 0;}

#steps .step {
	background: #EEE;
	border-radius: 4px;
	color: #231F20;
	display: inline-block;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.45;
	padding: .5rem 1.3125rem;
	position: relative;
}

#steps li { margin: 0 0 2rem }
#steps li.complete .step::before {
	background-color: #FFF;
	background-image: url('/images/icons/check-circle-solid.svg');
	border-radius: 50%;
	content: '';
	height: 1.25rem;
	left: 0;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	width: 1.25rem;
}
#steps li::before { display: none; }
#steps li.complete .icon-button { background: #B3B3B3; pointer-events: none; }

#steps li>*+* { margin-left: .875rem; }
#steps span { color: #FFF; }

/* EMPLOYER LOGIN ------------------------------ */
.candidate-info {
	background: #F5F5F5;
	border-radius: 5px;
	margin: 0 0 2.5rem;
	max-width: 100%;
	padding: 2rem 1.5rem 2rem 8rem;
	position: relative;
}

.candidate-info img {
	position: absolute;
	width: 100%;
	height:100%;
	left: 0;
	top: 0;
	object-fit: cover;
	object-position: center;
}
.candidate-info h3 { margin: 0 0 .5rem}
.candidate-info p { color: #5D5D5D; margin: 0 0 .125rem .25rem; }

.candidate-info .profile-pic {
	border-radius: 50%;
	border: 2px solid #FFF;
	height: 87px;
	overflow: hidden;
	left: 4rem;
	position: absolute;
	top: 1rem;
	transform: translateX(-50%);
	width: 87px;
}

.candidate-block .ED126 h3 {margin:0 0 0.5rem;}
.candidate-block .ED126 p {margin:0}
.candidate-block .ED126 a {text-decoration: underline;}
.candidate-block .positions .position {padding:1.5em 0; border-top: 1px dashed #B3B3B3}
.candidate-block .positions .position h3 {margin-bottom:0.25rem}


/* FORMS / TABLES ------------------------------ */
#add-row { margin-top: 1rem; }
.employer-group + #add-row { margin-top: 0}
#save {display: block;margin: 0 0 -1rem auto;}
.save-progress #save {margin: 0 auto;}

.app-form input[type='text']:disabled, 
.app-form input[type='email']:disabled {border: 0;}
.radio-list label.radio-label input[type="radio"] { margin: .3125rem 0 0;}

.app-form h2 { margin: 1.5rem 0 .5rem; }
.app-form h2.mb-1 { margin: 1.5rem 0 1rem; }
.app-form .employer-group {position: relative}
.app-form .employer-group button.remove-employer {position:absolute; top:0; right:0; font-size: 0.75rem;padding: 0.3125rem 0.5rem;background: none;color: var(--primary);display: inline-block;}
.app-form .employer-group button:hover {color: #fff;background:var(--secondary); border-color:var(--secondary);}
.app-form p, .app-form li { font-size: .9375rem;}
.app-form table { width: 100%; }
.app-form table.formTable td:first-child { padding-left: 0; }
.app-form table.formTable td:last-child { padding-right: 0; }
.app-form :is(label, legend) { display: inline-block; font-size: .875rem; margin: 0 0 .125rem; position: relative; width: 100%; }
.app-form label.mt-1 { margin-top: .5rem; }
.app-form label.mb-1 { margin-bottom: 1.5rem; }
.app-form input:not([type="submit"]):not([type="file"]):not([type="radio"]):not([type="checkbox"]), .app-form  select{padding: .125rem .5rem;width: 100%;}
.app-form input[type="file"] { margin: .25rem 0 0; width: 100%; }
.app-form button + hr { margin: 1.5rem 0;}
.app-form table.formTable td { padding: .25rem .375rem; width: auto; }

.app-form .e-sign label { margin: 0 0 1rem; }
.app-form .e-sign input:not([type="submit"]):not([type="file"]) {display: block;min-width: 17.5rem;width: 33.333%;}
.app-form .e-sign .wrap-halfs.full-width input:not([type="submit"]):not([type="file"]) {width: 100%;}

.app-form .e-sign input[type="checkbox"] {display: inline-block;margin: 0;width: 1rem;}
.app-form .e-sign button[type="submit"] { margin: .5rem 0 0; }
.app-form hr { margin: 2rem 0; }
.e-sign button:disabled { background: #B3B3B3; pointer-events: none; }

.app-form .checkbox {
	display: flex;
	margin: .25em 0 0;
}

.app-form .checkbox input:not([type="submit"]):not([type="file"]), .app-form select {
	margin: .25em .625em 0 0;
	width: auto;
}

/* CUSTOM RADIO BUTTONS */
.radio-list label.radio-label {
	cursor: pointer;
	display: inline-flex;
	height: 100%;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: 3.5rem;
	z-index: 1;
}

.radio-list>li { margin-bottom: 1rem; }
.radio-list>li>div { display: flex; flex-direction: row; justify-content: space-between; }
.radio-list>li>div>p { width: calc(100% - 10rem); }
.radio-list>li>div>.radio-buttons { display: flex; flex-direction: row; justify-content: space-between; width: 8rem;}

#previous-positions-form label {color:#000}
#previous-positions-form .previous-positions {counter-reset: positions; margin-bottom: 1em;}
#previous-positions-form .previous-positions .position {counter-increment: positions; margin-bottom:0.5em; padding:1em; background:rgba(0,0,0,0.05);border-radius: 5px;}
#previous-positions-form .previous-positions .position:before {content: "Position " counter(positions) ":"; font-size: 1rem; font-weight: 700; display: block; margin-bottom: 0.5rem;color: var(--primary)}
#previous-positions-form .previous-positions .position:last-child {margin-bottom:0}
#previous-positions-form .previous-positions .position > *:last-child label {margin-bottom:0}
#previous-positions-form .date {display: flex; align-items: center;}
#previous-positions-form .date input {margin-left: 5px}
#previous-positions-form .radios label {padding:8px 5px; display: block}
#previous-positions-form .add {font-size:0.875em; background:none; color:var(--primary); border:1px solid var(--primary)}
#previous-positions-form .add:hover {background:var(--primary); color:#fff}

.app-form :is(label, fieldset) {color:#000}
/*.app-form .previous-position {margin-bottom:2em; padding:1em 1em 2em; background:rgba(0,0,0,0.05); border-radius: 5px;}*/
.app-form .employer-group {margin-bottom: 3em; padding-bottom: 3em; border-bottom: 1px dashed #ccc}
.app-form .employer-group h2 {margin:0 0 0.625rem}
.app-form .previous-position .position:empty {display: none}
.app-form .previous-position > *:last-child label {margin-bottom:0}
.app-form .previous-position td {position: relative;}
.app-form .previous-position h3 {margin: 0;}
.app-form .previous-position .employer:not(.edit-container),
.app-form .previous-position .position:not(.edit-container) {padding:1em 1em 1.5em; position:relative; margin-bottom: 5px; background:rgba(0,0,0,0.05); border-radius: 5px;}
.app-form .previous-position .remove {position:absolute; z-index: 1; top:0; right:0;  background: #fff; color: var(--primary); border: 1px solid var(--primary); font-size: 0.875em;}
.app-form .previous-position .edit-container:not(.editing) .remove {display: none;}
.app-form .previous-position .add {margin-top:1rem}
.app-form .date {display: flex; align-items: center;}
.app-form .date input {margin-left: 5px}
.app-form .radios label {padding:8px 5px; display: block}
.app-form .add {font-size:0.875em; background:none; color:var(--primary); border:1px solid var(--primary)}
.app-form .add:hover {background:var(--primary); color:#fff}

.app-form .previous-position {background: none; padding:0}
.app-form .previous-position .edit-container {position:relative; border-radius: 5px; padding:0.5rem 1rem; margin-bottom: 5px}
.app-form .previous-position .edit-container:not(.editing):hover {background:rgba(0,0,0,0.05)}
.app-form .previous-position .edit-container h3 {border:0; margin-top:0; padding:0;}
.app-form .previous-position .edit-container:not(.editing) input {background: none; border:0; padding-left:0 !important; pointer-events: none;}
.app-form .previous-position .edit-container .edit {position:absolute; top:1rem; right:1rem; font-size: 0.875em; background: #fff; color: var(--primary); border: 1px solid var(--primary);}
.app-form .previous-position .edit-container .edit:hover,
.app-form .previous-position .edit-container.editing .edit {background: var(--secondary); border-color:var(--secondary); color:#fff}
.app-form .previous-position .edit-container .remove {top: 0.5rem; right: 3.9375rem}
.app-form .previous-position .edit-container.editing {background:rgba(0,0,0,0.05); border-radius: 5px;}
.app-form .previous-position .edit-container.employer table tr td:last-child,
.app-form .previous-position .edit-container.position table tr:nth-child(2) td:last-child {padding-right: 4.375rem}
.app-form .previous-position .edit-container.position:not(.editing) table tr:nth-child(n+3) {display: none}

.multiple-file-upload {width:100%}


/* INPUT GROUPING WRAPS */
.wrap-halfs, .wrap-thirds, .wrap-custom { display: flex; flex-direction: row; justify-content: space-between; }
.wrap-full label, 
.wrap-halfs label, 
.wrap-thirds label, 
.wrap-custom label { margin: 0 0 1rem; }
.wrap-full label { width: 100%; }
.wrap-halfs > :is(label, fieldset) { width: 49.25%; }
.wrap-thirds > :is(label, fieldset) {width: 32.375%;}
.wrap-custom > :is(label, fieldset) {width: auto; flex: 1 1 auto}


/* CUSTOM CHECKBOX */
.checkbox-label {
	cursor: pointer;
	display: block;
	padding-left: 1.75rem;
	position: relative;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.checkbox-label input {
	cursor: pointer;
	height: 0;
	opacity: 0;
	position: absolute;
	width: 0;
}

.custom-checkbox {
	background-color: #FAFAFA;
	border: 1px solid #CBCACA;
	border-radius: 3px;
	height: 1.125rem;
	left: 0;
	position: absolute;
	top: 0;
	width: 1.125rem;
}

.custom-checkbox:hover { background-color: #FFF; }
.checkbox-label input:checked ~ .custom-checkbox { background-color: var(--secondary); border-color: #719E32; }
.custom-checkbox:after { content: ""; position: absolute; display: none; }
.checkbox-label input:checked ~ .custom-checkbox:after { display: block; }
.checkbox-label .custom-checkbox:after {
	border: solid #FFF;
	border-width: 0 .1875rem .1875rem 0;
	height: .625rem;
	left: .3125rem;
	top: .125rem;
	transform: rotate(45deg);
	width: 6px;
}

/* Show password */
.show-password {
	background: url('/images/icons/eye-light.svg') no-repeat center center transparent;
	background-size: 1.375rem 1.222rem;
	opacity: .4;
	position: absolute;
	right: .75rem;
	bottom: .5rem;
}

.show-password.show::after {
	background: #444;
	content: '';
	height: 1.75rem;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%) rotate(-45deg);
	width: .0625rem;
}

.show-password:hover,
.show-password:focus {
	background-color: transparent;
	opacity: .75;
}

.signature-pad-body { margin: 0 0 1.5rem; position: relative; }

/* E-SIGNATURE */
#canvasSig {
	background: #F5F5F5;
	width: 100%;
	border:1px solid #CBCACA;
	border-radius:3px;
}

#btnClearSig {
	background-color: #8F8F8F;
	bottom: -2.25rem;
	position: absolute;
	right: 0;
	z-index: 1;
}

#btnClearSig:hover {
	background-color: var(--primary);
}

/* PASSWORD STRENGTH POPOVER */
.pswd_info {
	position: absolute;
	top: 100%;
	z-index: 1;
	width: 250px;
	padding: 15px;
	background: #fefefe;
	font-size: .875em;
	border-radius: 3px;
	box-shadow: 0px 0px .25rem .125rem rgba(0,0,0,0.15);
	display: none;
}

.pswd_info h4 {font-size: 0.875rem; margin: 0 0 0.625rem 0;padding: 0;font-weight: normal;}
.pswd_info ul { margin:0; padding: 0; }
.pswd_info ul li {font-size: inherit; background:none; margin:0;padding-left: 2em; position: relative; line-height: 2rem;}
.pswd_info ul li:before {position: absolute; top:0; left:0.25rem; background:none}

.pswd_info .invalid::before,
.pswd_info .valid::before {
	background-position: center center;
	background-size: cover;
	content: '';
	display: block;
	left: 0;
	height: .875rem;
	position: absolute;
	top: .3125rem;
	width: .875rem;
}

.pswd_info .invalid::before { background-image: url('/images/icons/times.svg'); }
.pswd_info .valid::before { background-image: url('/images/icons/check-solid.svg'); }
.pswd_info .invalid { padding-left: 22px; line-height: 24px; color: #D0021B; }
.pswd_info .valid { padding-left: 22px; line-height: 24px; color: #719E32; }

/* -- - - - - MPS - [STYLE.CSS] - - - - -- */
