/* error */
.eGov_formFieldError {
	outline: 2px dashed rgba(186,20,25,1);
	outline-offset: -2px;
}

/* labels */
.paymentScreen label {
	display: inline-block;
	margin: 0 0 .5em 0;
	padding: 0;
}

abbr.eGov_requiredMarker,
abbr.eGov_requiredMarkerSample /*used outside of form context for messages, so it won't be manipulated by js*/ {
	border: none;
	color: #ea0000;
	display: inline-block;
	font-size: 1em;
	outline: none;
	text-decoration: none;
}

/* focus/active state */
a:active,
a:focus,
button:active,
button:focus,
input:active,
input:focus,
select:active,
select:focus,
textarea:active,
textarea:focus,
label:active > input,
label:focus > input,
.eGov_buttonLink:active,
.eGov_buttonLink:focus {
	animation: focusAnimation .2s;
	outline-offset: -2px;
	outline: 2px solid rgba(58,125,180,1);
	text-decoration: none;
}

.eGov_buttonLink:hover,
.eGov_buttonLink:active:hover {
	text-decoration: none;
}

/* separate focus for radio buttons because outline doesn't have provisions for rounded corners and the square outline on the radio looks silly. */
.paymentScreen .eGov_checkboxes > div input:focus + label:before,
.paymentScreen .eGov_radiobuttons > div input:focus + label:before {
	animation: radioFocusAnimation .2s;
	border: 2px solid rgba(58,125,180,1);
}

/* link formatted as button */
.eGov_buttonLink {
	color: initial;
	padding: 0;
	text-decoration: none;

	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;

}

@keyframes focusAnimation {
	0% {outline: .2px solid rgba(58,125,180,0)}
	100% {outline: .2px solid rgba(58,125,180,1)}
}

@keyframes radioFocusAnimation {
	0% {border: 1px solid rgba(170,170,170,1);}
	100% {border: 2px solid rgba(58,125,180,1);
	}
}

/* disabled state */
input[disabled],
button[disabled],
.eGov_buttonLink[disabled] {
	background-color: #ddd;
	cursor: not-allowed;

	filter: alpha(opacity=50);
	-moz-opacity: .50;
	opacity: .50;
}

.paymentButtonActive {
	background: #264888;
	color: #fff;
	pointer-events: none;
}


#eGov_achActive button {
	margin-top: 1rem;
	}

/* inputs */
.paymentScreen textarea,
.paymentScreen select,
.paymentScreen input[type]:not([type=button]):not([type=submit]):not([type=hidden]):not([type=checkbox]):not([type=radio]) {
	background: #fff;
	border: 1px solid #aaa;
	font-family: inherit;
	line-height: 1.55;
	margin-bottom: 1em;
	min-width: 0;
	padding: .5em .75em;
	width: 100%;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;

	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}

.paymentScreen select {
	font-family: inherit;
}

.paymentScreen input[type]:not([type=button]):not([type=submit]):not([type=hidden]):not([type=checkbox]):not([type=radio]).eGov_inputInline,
.paymentScreen .eGov_inputInline {
	display: inline-block;
}

.paymentScreen button,
.paymentScreen .eGov_buttonLink,
.paymentScreen input[type="button"] {
	background-color: #f3f3f3;
	border: 1px solid #b7b7b7;
	color: #333;
	cursor: pointer;
	display: inline-block;
	line-height: initial;
	margin-bottom: .25em;
	padding: .68em .75em;
}

.paymentScreen button > i,
.paymentScreen .eGov_buttonLink > i {
	pointer-events: none;
}

.paymentScreen textarea:-moz-ui-invalid,
.paymentScreen select:-moz-ui-invalid,
.paymentScreen input[type]:not([type=button]):not([type=submit]):not([type=hidden]):not([type=checkbox]):not([type=radio]):-moz-ui-invalid {
	box-shadow: none;
}

.paymentScreen select {
	border: 1px solid #aaa;
	box-sizing: border-box;
	display: block;
	line-height: 1.55;
	margin: 0 0 1em 0;
	padding: .5em 1.5em .5em .75em !important;

	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;

	background-color: #fff;
	/*below, the color for the arrow is 595959 */
	background-image: url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23595959%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E'),
	linear-gradient(to bottom, #ffffff 0%,#ffffff 100%);
	background-repeat: no-repeat, repeat;
	background-position: right .7em top 50%, 0 0;
	background-size: .65em auto, 100%;
}

.paymentScreen select::-ms-expand {
	display: none;
}

.paymentScreen select:hover {
}

.paymentScreen select option {
	font-family: inherit;
	font-weight: normal;
}

.paymentScreen .eGov_formFieldValue input:focus,
.paymentScreen .eGov_formFieldValue select:focus {
    border: 1px solid #595959;
}

/* Hide HTML5 Up and Down arrows. */
.paymentScreen input[type="number"]::-webkit-outer-spin-button,
.paymentScreen input[type="number"]::-webkit-inner-spin-button,
.paymentScreen input[type="number"] {
	margin: 0;
	-webkit-appearance: none;
	-moz-appearance: textfield !important;
}

/*select width override*/
.paymentScreen select#eGov_expirationDateMonth,
.paymentScreen select#eGov_expirationDateYear {
	display: inline-block;
	width: auto;
}

.paymentScreen fieldset {
	border: 0;
	margin: 0 0 1em 0 !important;
	padding: 0;
}

.paymentScreen fieldset legend {
	display: inline-block;
	font-size: 1em;
	margin: 0 0 .5em 0 !important;
	padding: 0;
}

/* checkbox/radio buttons */

/* setup checkbox/radio button container */
.paymentScreen .eGov_checkboxes > div,
.paymentScreen .eGov_radiobuttons > div {
	position: relative;
}

.paymentScreen .eGov_checkboxes > div,
.paymentScreen .eGov_radiobuttons > div {
	display: block;
	padding: 0 0 0 2.3em;
}

/* hide original input */
.paymentScreen .eGov_checkboxes > div input,
.paymentScreen .eGov_radiobuttons > div input {
	height: 1.3em;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 1.3em;
}

.paymentScreen .eGov_checkboxes > div input + label:before,
.paymentScreen .eGov_radiobuttons > div input + label:before {
	background: #fff;
	border: 1px solid #aaa;
	content: "";
	height: 1.3em;
	left: 0;
	position: absolute;
	top: 0;
	width: 1.3em;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.paymentScreen .eGov_checkboxes > div input[disabled] + label:before,
.paymentScreen .eGov_radiobuttons > div input[disabled] + label:before
 {
	opacity: 70%;
	cursor: not-allowed;
	pointer-events: none;
}

.paymentScreen .eGov_checkboxes > div input[disabled] + label:after,
.paymentScreen .eGov_radiobuttons > div input[disabled] + label:after {
	opacity: 70%;
	cursor: not-allowed;
	pointer-events: none;
}

/* radio button - round the corners */
.paymentScreen .eGov_radiobuttons > div input + label:before {
		border-radius: 50%;
}

/* checkbox - check */
.paymentScreen .eGov_checkboxes > div input + label:after {
	border-right: 0;
	border: .2em solid #476595;
	border-top: 0;
	border-right: 0;
	content: "";
	height: .35em;
	left: .35em;
	opacity: 0;
	position: absolute;
	top: .37em;
	transform: rotate(-45deg);
	transition: opacity 0.2s ease-in-out;
	width: .6em;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* radio button - selected */
.paymentScreen .eGov_radiobuttons > div input + label:after {
	background: #595959;
	border-radius: 50%;
	border: 1px solid #476595;
	content: "";
	height: .5em;
	left: 0.4em;
	opacity: 0;
	position: absolute;
	top: 0.4em;
	transition: opacity 0.2s ease-in-out;
	width: .5em;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* checked state */
.paymentScreen .eGov_checkboxes > div input:checked + label:after,
.paymentScreen .eGov_radiobuttons > div input:checked + label:after {
    opacity: 1;
}

/* Hide HTML5 Up and Down arrows. */
.paymentScreen input[type="number"]:-webkit-outer-spin-button,
.paymentScreen input[type="number"]:-webkit-inner-spin-button,
.paymentScreen input[type="number"] {
	margin: 0;
	-webkit-appearance: none;
	-moz-appearance: textfield !important;
}

.paymentScreen .eGov_hiddenLabel {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.eGov_inactive {
	opacity: 50%;
	pointer-events: none;
}

/* continue / submit buttons */
#eGov_buttons input {
	display: inline-block;
	margin-right: 10px;
}

.eGov_fieldTooltip i {
	pointer-events: none;
}

/* input append/prepending */
.eGov_inputAddOn {
	display: flex;
	margin-bottom: 0;
	gap: 1em 0;
}

.eGov_inputAddOn input {
	margin-bottom: 0 !important;
}


.eGov_inputAddOnField:not(:first-child):not(:last-child) {
	border-radius: 0 0 0 0 !important;
}

.eGov_inputAddOnField:not(:first-child),
.eGov_inputAddOnField:not(:first-child) input,
.eGov_inputAddOnField:not(:first-child) select {
	/* border-left: 0 !important; */
	margin-bottom: 0 !important;
}

.eGov_inputAddOnField:not(:last-child)
.eGov_inputAddOnField:not(:last-child) input,
.eGov_inputAddOnField:not(:last-child) select {
	border-right: 0 !important;
	margin-bottom: 0 !important;
}

.eGov_inputAddOnItem {
	background-color: #f4f4f4;
	border: 1px solid #C2C2C2;
	color: #595959;
	font-weight: normal;
	font: inherit;
	padding: .44em 0.5em;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.eGov_inputAddOnItemSimple {
	background: none;
	border: 0;
	padding: 0;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.inputAddOnItemSimple

.eGov_inputAddOnItem.eGov_checkSpecialChar {
	font-size: 2em;
	line-height: 1;
	padding: 0 0.5rem !important;
}

.eGov_inputAddOnField {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.eGov_inputAddOnField:first-child,
.eGov_inputAddOnItem:first-child {
	border-radius: 2px 0 0 2px !important;
	border-right: 0;
}
.eGov_inputAddOnField:last-child,
.eGov_inputAddOnItem:last-child {
	border-radius: 0 2px 2px 0 !important;
	border-left: 0;
}

.eGov_inputAddOnItemIcon {
	padding: .3em .75em;
}

.eGov_inputAddOnItemIcon i {
	font-size: 1.7em;
}

.eGov_inputAddOnItem_button {
	padding: .5em;
	display: inline-block !important;

	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#eGov_paymentKeyboardEmulatorSwipeField {
	left: -5000px;
	position: absolute;
}


/* Transition collapsing elements */
.eGov_collapseItem {
	box-sizing: border-box;
	height: auto;
	overflow: hidden;
	padding: 0 !important;
	transition: all .5s ease-out;
}

.eGov_collapseItem[data-collapsed="true"] {
	margin: 0 !important;
	padding: 0 !important;
}

.eGov_collapseItem.row[data-collapsed="true"] {
	margin: 0 -1rem !important;
}

.eGov_collapseItem[data-collapsed="true"] * {
	padding-bottom: 0;
}

.eGov_collapseItem > .eGov_collapseItemInner {
	margin-bottom: 2em;
}

.eGov_simpleFieldset .eGov_collapseItemInner {
	margin-bottom: 1em;
}

/* Scheduled Payment List */
.eGov_scheduleFunctionButtons.row .box {
	text-align: center;
	margin-top: 1rem;
}

.eGov_scheduleFunctionButtons.row .box button i {
	display: inline-block;
	margin-right: .5rem;
}

#eGov_scheduledPaymentList .eGov_infoContainerInner {
	margin-bottom: 0;
}

#eGov_scheduledPaymentList .eGov_infoContainerInner > .row .box > div {
	padding: .2rem 0;
}


/* Text Payments Signup */
#eGov_textRegistrationForm > .row > div > .box {
	padding-bottom: .6em;
}