﻿/* Font Inclusion */
@font-face {
	font-family: 'Source Sans Pro';
	src: url('../../fonts/sourcesanspro-semibold-webfont.eot');
	src: url('../../fonts/sourcesanspro-semibold-webfont.woff2') format('woff2'),
		 url('../../fonts/sourcesanspro-semibold-webfont.woff') format('woff'),
		 url('../../fonts/sourcesanspro-semibold-webfont.ttf') format('truetype'),
		 url('../../fonts/sourcesanspro-semibold-webfont.svg#source_sans_prosemibold') format('svg');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../../fonts/sourcesanspro-semiboldit-webfont.eot');
	src: url('../../fonts/sourcesanspro-semiboldit-webfont.woff2') format('woff2'),
		 url('../../fonts/sourcesanspro-semiboldit-webfont.woff') format('woff'),
		 url('../../fonts/sourcesanspro-semiboldit-webfont.ttf') format('truetype'),
		 url('../../fonts/sourcesanspro-semiboldit-webfont.svg#source_sans_proSBdIt') format('svg');
	font-weight: bold;
	font-style: italic;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../../fonts/sourcesanspro-it-webfont.eot');
	src: url('../../fonts/sourcesanspro-it-webfont.woff2') format('woff2'),
		 url('../../fonts/sourcesanspro-it-webfont.woff') format('woff'),
		 url('../../fonts/sourcesanspro-it-webfont.ttf') format('truetype'),
		 url('../../fonts/sourcesanspro-it-webfont.svg#source_sans_proitalic') format('svg');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../../fonts/sourcesanspro-regular-webfont.eot');
	src: url('../../fonts/sourcesanspro-regular-webfont.woff2') format('woff2'),
		 url('../../fonts/sourcesanspro-regular-webfont.woff') format('woff'),
		 url('../../fonts/sourcesanspro-regular-webfont.ttf') format('truetype'),
		 url('../../fonts/sourcesanspro-regular-webfont.svg#source_sans_proregular') format('svg');
	font-weight: normal;
	font-style: normal;
}
/* End Fonts */

* {
	box-sizing: border-box;
	margin: 0;
	max-width: 100%;
	padding: 0;
}

html {
	font-family: Source Sans Pro, Calibri, Arial, sans-serif;
	-webkit-text-size-adjust: 100%;
	font-size: 13pt;
	height: 100%;
}

body {
	height: 100%;
	line-height: 1.25rem;
	min-width: 1280px;
	overflow-y: scroll;
	width: 100%;
}

	body.scrollDisabled {
		position: fixed;
	}

	body.PUpage {
		min-width: 0; /* Just size it automatically in popups */
	}

#content {
	position: relative;
	overflow: hidden; /* so that pseudo-element blur doesn't bleed over */
}

	#content:after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		transition: opacity .4s ease-in-out;
	}

body.contentOnly,
body.contentOnly:after {
	background: none;
}

body.passthru {
	background: #FFF;
}

	body.passthru #content:after {
		background: none;
	}

	body.passthru #main {
		background: #fdfdfd;
	}

	body.passthru #sidebar {
		background: #F5F6F6;
		border-left: 1px solid #ccc;
	}

		body.passthru #sidebar:before {
			box-shadow: 0 0 0;
		}

	body.passthru #main .back {
		display: none;
	}
	/* For dead-end workflows, we still need the back button */
	body.passthru.md_benefitdetail #main .back {
		display: block;
	}

	body.passthru.md_displayscans #main .back {
		display: block;
	}

.fitme {
	display: block;
	position: relative;
}

	.fitme.width {
		margin: 0 auto;
		min-width: 1280px;
		width: 75%;
	}

	.fitme.height {
		height: 100%;
	}

.passthru .fitme.width,
.datatile .fitme.width,
.contentOnly .fitme.width {
	width: 100%;
}

.PUpage .fitme.width {
	min-width: 1022px;
}

.extraWide {
	max-width: none !important;
}

ul {
	list-style: outside none none;
}

	ul.bulleted {
		list-style-type: disc;
		padding-left: 1rem;
	}

		ul.bulleted ul {
			list-style-type: circle;
		}

			ul.bulleted ul ul {
				list-style-type: square;
			}

	ul.twocolumn li {
		display: inline-block;
		vertical-align: top;
		width: 50%;
	}

div {
	width: 100%;
}

strong {
	font-weight: bold;
}

a img {
	border: 0;
}

/* Header */
.printheader {
	display: none;
}

/* Footer */
.printfooter {
	display: none;
}

/* Main Content */
#content {
	min-height: 400px;
}

#main,
#sidebar {
	display: inline-block;
	position: relative;
	vertical-align: top;
}

#main {
	padding: 0.5rem 1.25rem;
	width: 100%;
	z-index: 5;
}

	#main.withSidebar {
		border: none;
	}

#sidebar {
	font-size: 0.9rem;
	width: 20%;
	z-index: 1;
}

	#sidebar:before {
		box-shadow: 0.6rem 0 0.6rem -0.6rem rgba(0, 0, 0, 0.125) inset;
		content: " ";
		display: inline-block;
		height: 100%;
		left: 0;
		position: absolute;
		top: 0;
		width: 100%;
		z-index: -1;
	}

#footer,
#footer a {
	transition: color .3s ease-in-out;
}

	#footer .mainStyle {
		display: inline-block;
		padding: 0 1.25rem 0.5rem;
		vertical-align: bottom;
	}

	#footer .sidebarStyle {
		display: inline-block;
		padding: 0 1rem 0.5rem;
		vertical-align: bottom;
	}

#localeswitch {
	height: 1.25rem;
	position: relative;
	text-align: right;
}

	#localeswitch .dropdown {
		display: inline-block;
		position: relative;
		width: auto;
		z-index: 1;
	}

		#localeswitch .dropdown #morelocales {
			background: rgba(255, 255, 255, 0.98) none repeat scroll 0 0;
			border: none;
			box-shadow: 0 0.25rem 0.5rem 0 rgba(0, 0, 0, 0.25);
			padding: 0.25rem;
			position: relative;
			text-align: left;
			width: 225%;
			-webkit-transition: opacity .2s ease-in-out;
			transition: opacity .2s ease-in-out;
		}

	#localeswitch .drowdownSelector {
		margin: 0 0 0 0.2rem;
	}

	#localeswitch .dropdown #morelocales.localeHide {
		display: none;
	}

	#localeswitch .dropdown #morelocales.localeShow {
		display: block;
	}

	#localeswitch .dropdown #morelocales li {
		padding: 0.25rem 0.5rem;
	}

	#localeswitch .localeImg {
		margin: 0 0.2rem;
	}

	#localeswitch .localeImg,
	#localeswitch .localename,
	#localeswitch .abbreaviatedname,
	#localeswitch .drowdownSelector {
		display: inline-block;
		vertical-align: middle;
	}

	#localeswitch .abbreaviatedname {
		display: none;
	}

/* Layout */
.section {
	margin: 0;
	padding: 0;
}

	.section .content {
		margin: 0.5rem 0;
		padding: 0;
	}

	.section.indented {
		margin: 1rem 0;
	}

		.section.indented > .header {
			width: 15%;
			display: inline-block;
			vertical-align: top;
			margin-right: 5%;
		}

		.section.indented > .content {
			width: 80%;
			display: inline-block;
			vertical-align: top;
		}

.flexParent {
	display: flex;
}

/* Text Elements */
h1,
h2,
h3,
h4,
.header,
.sectionheader,
.formsection > legend {
	display: block;
	font-weight: normal;
	padding: 0.75rem 0 0.5rem;
	width: 100%;
}

	h1.header,
	.header.large {
		font-size: 1.5rem;
		line-height: 1.5rem; /* Default line-height is only 1.25rem, so we need to go bigger */
	}

	h2.header,
	.header.medium {
		font-size: 1.25rem;
	}

	h3.header,
	.header.small {
		font-size: 1.1rem;
	}

	h4.header,
	.header.tiny {
		font-size: 1rem;
	}

	h1.compact,
	h2.compact,
	h3.compact,
	h4.compact,
	.header.compact,
	.sectionheader.compact,
	.formsection > legend.compact {
		padding: 0;
	}

p {
	margin: 0.5rem 0;
}

	p:first-of-type {
		margin-top: 0;
	}

	p:last-of-type {
		margin-bottom: 0;
	}

	p:empty {
		margin: 0;
	}

a {
	text-decoration: none;
}

	a:focus,
	a:hover {
		text-decoration: underline;
	}

.membertab a:focus,
.membertab a:hover,
.card.hover a:focus,
.card.hover a:hover,
.list.hoverable a:focus,
.list.hoverable a:hover {
	text-decoration: none;
}

dl {
	margin: 0 0 1rem;
}

	dl dt {
		font-weight: bold;
	}

.subtle {
	font-size: 0.8rem;
	line-height: 1rem;
}

.header + .helptext.subtle {
	margin: -0.5rem 0 0.75rem;
}

.newline:before {
	content: "";
	display: block;
	width: 100%;
}

.required:before {
	border-style: solid solid none none;
	border-width: 0.5rem 0.5rem 0 0;
	content: "";
	display: inline-block;
	height: 0;
	margin: 0 0.125rem 0 0;
	vertical-align: top;
	width: 0;
}

.required.alignRequiredLabel {
	position: relative;
	left: 0.7rem;
}

p.required:before,
span.required:before,
label.required:before,
legend.required:before {
	margin-left: -0.625rem; /* 0.25rem width + 0.25rem border-left + 0.125rem margin-right */
}

.clearlabel.required:before {
	margin-left: 0;
}

/* Titles */
#main .title {
	height: 3.5rem;
	position: relative;
	vertical-align: bottom;
	width: 100%;
}

#main .maintitle > .title > *,
#main > .title > * {
	display: inline-block;
	vertical-align: bottom;
}

#main .title h1 {
	overflow: hidden;
	padding: 0.7rem 0 0.5rem;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: calc(100% - 5rem);
}

#main .title #assistiveicons {
	text-align: right;
	padding: 0.7rem 0.5rem 0;
	width: 5rem;
}

	#main .title #assistiveicons:only-child {
		width: 100%;
	}

#main .title .assistiveicon,
#sidebar img.assistiveicon {
	display: inline-block;
	width: 2rem;
}

#main .title img.assistiveicon,
#sidebar .assistiveicon {
	padding: 0 0 0 0.125rem;
}

#main .title .headerlink {
	position: absolute;
	right: 0.5rem; /* This and top should match the .title padding */
	top: 0.7rem;
	width: auto;
}

	#main .title .headerlink .button {
		margin: 0;
	}

#main .title .right {
	height: 100%;
	margin: 0 0 0 -10rem;
	padding: 2.75rem 0 0;
	width: 10rem;
}

/* Vertically align some text and the thing after it */
.annotatedText {
	margin-right: 0.125rem;
}

	.annotatedText.cozy {
		margin-right: 0;
	}

	.annotatedText,
	.annotatedText + a,
	.annotatedText + div,
	.annotatedText + img,
	.annotatedText + span {
		display: inline;
		vertical-align: top;
	}

		.annotatedText.middle,
		.annotatedText.middle + a,
		.annotatedText.middle + div,
		.annotatedText.middle + img,
		.annotatedText.middle + span {
			vertical-align: middle;
		}

/* Input Forms */
.formsection {
	margin: 0.75rem 0;
}

#captchaForm .formsection {
	margin: 2.5rem 0 0 0;
}

#captchaForm .formcontents {
	margin-top: -2.5rem;
}

.formsection:first-child {
	margin: 0 0 0.75rem;
}

.formsection:last-child {
	margin: 0.75rem 0 0;
}

.formsection.halfwidth:first-child + .formsection.halfwidth { /* If we shortened the first, shorten the second */
	margin: 0 0 0.75rem;
}

.formsection.halfwidth + .formsection:not(.halfwidth) { /* Moving from inline-block back to block won't collapse margins like normal */
	margin: 0 0 0.75rem;
}

.formsection.halfwidth {
	display: inline-block;
	vertical-align: top;
	width: 50%;
}

	.formsection.halfwidth input,
	.formsection.halfwidth select,
	.formsection.halfwidth textarea {
		width: 60%;
	}

.formsection.withSeparator {
	border-style: none none solid;
	border-width: 0 0 1px;
	padding: 0 0 0.5rem;
}

	.formsection.withSeparator:last-child {
		border-style: none;
		border-width: 0;
	}

.formsection.formbuttons {
	padding: 0.5rem 0;
}

.formsection .formrow {
	margin: 0 0 1.125rem;
}

	.formsection .formrow:last-child {
		margin: 0;
	}

.formsection .formcolumn {
	display: inline-block;
	margin: 0 0.5%;
	vertical-align: top;
}

	.formsection .formcolumn:first-of-type {
		margin-left: 0;
	}

	.formsection .formcolumn:last-of-type {
		margin-right: 0;
	}

.formsection.column_2 .formcolumn {
	width: 49.5%;
}

	.formsection.column_2 .formcolumn.double {
		width: 100%;
	}

.formsection.column_3 .formcolumn {
	width: 32.66%;
}

	.formsection.column_3 .formcolumn.double {
		width: 66.33%;
	}

	.formsection.column_3 .formcolumn.triple {
		width: 100%;
	}

.formsection.column_4 .formcolumn {
	width: 24.25%;
}

	.formsection.column_4 .formcolumn.double {
		width: 49.5%;
	}

	.formsection.column_4 .formcolumn.tripe {
		width: 74.75%;
	}

.formsection fieldset {
	margin: 0;
	padding: 0;
}

	.formsection fieldset.multifield input,
	.formsection fieldset.multifield select,
	.formsection fieldset.multifield textarea {
		display: inline-block;
		margin: 0 0.25rem 0.5rem 0;
		vertical-align: top;
	}

	.formsection fieldset.multifield label {
		margin: 0.25rem 0 0.75rem 0.5rem;
	}

	.formsection fieldset.multifield .inlinelabel + select {
		width: auto;
	}

.formsection .alert:not(:empty):before {
	border-color: transparent transparent transparent #DF004F;
	border-style: solid;
	border-width: 0.5em 0 0.5em 0.5em;
	content: "";
	display: inline-block;
	height: 0;
	margin: 0 0.125em 0 0;
	vertical-align: top;
	width: 0;
}

/* Input Elements */
input,
select,
textarea {
	border: 1px solid #DBDBDB;
	display: block;
	font-family: Source Sans Pro, Calibri, Arial, sans-serif;
	font-size: 1.125rem;
	line-height: 1.5rem;
	margin: 0 0 0.5rem;
	padding: 0.25rem;
	/* Needed to make these look good on mobile webkit browsers */
	border-radius: 0;
}

	input[type="button"],
	input[type="submit"],
	input[type="text"],
	textarea {
		/* Needed to make these look good on mobile webkit browsers */
		-webkit-appearance: none;
	}

optgroup { /* For some reason, this doesn't inherit its font from the select */
	font-family: Source Sans Pro, Calibri, Arial, sans-serif;
}

select,
input[type='text'],
input[type='password'],
textarea.halfwidth {
	min-width: 50%;
}

textarea {
	min-width: 100%; /* Most cases will overwrite with the above "halfwidth" */
	overflow-x: hidden; /* Force Firefox to respect the rows attribute and not add 95% of an extra */
	resize: none;
}

	textarea.readonly {
		cursor: default;
		font-size: 0.9em;
	}

/* If we're using inline labels, we probably want inline fields */
.inlinelabel + input,
.inlinelabel + select {
	display: inline-block;
	margin: 0 0.25rem 0 0;
	min-width: 0;
}

ul.inlineradiolist li {
	margin: 0.5rem 0;
}

input.inlineradiobutton,
input.inlineradiobutton + label {
	display: inline-block;
	margin: 0 0.25rem 0 0;
	min-width: 0;
}

input.date,
.formcontents input.date {
	min-width: 7rem;
	width: 7rem;
}

select.date,
.formcontents select.date {
	min-width: 8rem;
	width: 8rem;
}

input.time,
.formcontents input.time {
	min-width: 6rem;
	width: 6rem;
}

	input.time.withUnitButtons {
		display: inline-block;
		margin: 0 0.25rem 0 0;
	}

	input.time.min,
	input.time.hour,
	.formcontents input.time.min,
	.formcontents input.time.hour {
		display: inline-block;
		min-width: 2rem;
		vertical-align: middle;
		width: 2rem;
	}

	input.time.min {
		margin-left: 0.25em;
	}

input.tiny,
.formcontents input.tiny {
	min-width: 3rem;
	width: 3rem;
}

/* For fields with a (popup) info icon next to it */
input.withPopup,
select.withPopup {
	display: inline-block;
	margin-right: 0.25rem;
}

/* Fieldsets and Groupers */
fieldset {
	border: none;
	margin: 0.25rem 0;
	padding: 0.25rem 0;
	min-width: 0;
}

	fieldset.clearfieldset {
		margin: 0;
		padding: 0;
	}

	fieldset.halfwidth {
		width: 50%;
	}

	fieldset.inlinefieldset {
		display: inline-block;
		vertical-align: top;
	}

	fieldset [class^='segment'] {
		display: inline-block;
	}

.segment2 {
	width: 2.5rem;
}

.segment3 {
	width: 3.25rem;
}

.segment4 {
	width: 4rem;
}

.segment5 {
	width: 4.75rem;
}

[class^='segment'] input {
	text-align: center;
	width: 100%;
}

[class^='segment'] .accessibleLabel {
	text-align: center;
}

/* Multi-Step Sliders */
.slider {
	max-width: none;
	position: relative;
	width: 1000%;
}

	.slider.cardlist {
		width: 1000%;
	}

	.slider .stepContainer {
		display: inline-block;
		vertical-align: top;
		width: 10%;
	}

/* Buttons */
a.button,
div.button,
input.button {
	border: none;
	box-shadow: none;
	cursor: pointer;
	display: block;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5rem;
	margin: 0.5rem 0;
	padding: 0.25rem 0.75rem;
	position: relative;
	text-align: center;
	text-transform: uppercase;
	top: 0;
	white-space: normal; /* This allows button captions to have multiple lines */
}

	input.button::-moz-focus-inner {
		margin-top: -1px;
		margin-bottom: -1px;
	}

.button.disabled,
.button[disabled] {
	cursor: default;
}

a.button:hover,
a.button:focus {
	text-decoration: none;
}

.button.autowidth {
	display: inline-block;
	width: auto;
}

.button.tall {
	padding: 0.5rem 0.75rem;
}

.button.undo:before,
.button.clear:before {
	background: rgba(0, 0, 0, 0) none no-repeat scroll 0 0 / 1.5rem 1.5rem;
	content: "";
	display: inline-block;
	height: 1.5rem;
	padding: 0 0.25rem 0 0;
	vertical-align: bottom;
	width: 1.5rem;
}

.button.undo:before {
	background-image: url("../images/item_restore.png");
}

.button.clear:before {
	background-image: url("../images/eraser.png");
}

.button.withInstructions,
.button.withInstructions + p,
.button.withInstructions + span {
	display: inline-block;
	vertical-align: middle;
}

input.multi,
.button.multi,
.formbuttons .button,
input[type='submit'],
input[type='cancel'],
.section .button:only-child {
	display: inline-block;
	margin: 0 0.5rem 0 0;
	vertical-align: top;
	width: auto;
}

	input.multi:first-child,
	.button.multi:first-child {
		margin: 0 0.5rem 0 0;
	}

	input.multi.hidden:first-child ~ input.multi,
	.button.multi.hidden:first-child ~ .button.multi {
		margin-left: 0;
	}

input[type='submit'] {
	margin: 0 0.5rem 0 0;
}

input[type='cancel'] {
	margin: 0 0 0 0.5rem;
}

.section .button:only-child {
	margin: 0;
}

.formbuttons {
	margin: 0.5rem 0 0;
}

	.formbuttons.topside {
		margin: 0.5rem 0;
	}

	.formbuttons .button:last-child,
	.section.formbuttons .button:last-child,
	.section .formbuttons .button:last-child {
		margin: 0;
	}

#captchaForm .formbuttons input:first-of-type {
	margin-left: 0;
}

#captchaForm .formbuttons {
	margin-top: 0;
}

/* Ghost Inputs */
.ghostInput {
	margin: 0 0 0.25rem;
}

	.ghostInput.compact {
		margin: 0;
	}

	.ghostInput.withPopup {
		display: inline-block;
		vertical-align: middle;
	}

	.ghostInput label,
	.section .content .ghostInput label {
		display: block;
		font-size: 0.9rem;
		height: 2.5rem;
		line-height: 2.5rem;
		margin: 0 0.5rem -2.5rem;
		width: calc(100% - 1rem);
		transition: all .3s ease-in-out;
	}

		.ghostInput label.required:before {
			margin: 0 0 0 -0.5rem;
			transition: margin .3s ease-in-out;
		}

		.ghostInput label + input,
		.ghostInput label + select {
			display: block;
			height: 2.5rem;
			margin: 0;
		}

	.ghostInput.withPopup label + input,
	.ghostInput.withPopup label + select {
		padding-right: 2.2rem;
	}

	.ghostInput label + textarea {
		padding: 0.25rem 0.25rem 0.75rem; /* We'll need more padding up top later, so put some spare into the bottom while we're empty */
	}

	.ghostInput.ghosted label,
	.section .content .ghostInput.ghosted label {
		font-size: 0.6rem;
		height: 1.25rem;
		line-height: 1.25rem;
		margin: 0 0.325rem -1.25rem;
		padding: 0;
		width: calc(100% - 0.65rem);
	}

		.ghostInput.ghosted label.required:before {
			margin: 0 -0.135rem 0 -0.315rem;
		}

	.ghostInput.ghosted input {
		padding: 0.875rem 0.25rem 0;
	}

	.ghostInput.ghosted select {
		padding: 0.75rem 0.25rem 0.125rem;
	}

	.ghostInput.ghosted textarea {
		padding: 0.875rem 0.25rem 0.125rem;
	}

	.ghostInput.compact + .ghostInput input {
		border-style: none solid solid;
		border-width: 0 1px 1px;
	}

.formsection .formrow .ghostInput {
	margin: 0;
}

/* Counter-type inputs */
.counterInput {
	display: inline-block;
	pointer-events: none;
	width: auto;
}

	.counterInput > * {
		vertical-align: top;
	}

	.counterInput:after,
	.counterInput:before {
		background-color: #EAEAEA;
		border: 1px solid #CECECE;
		cursor: pointer;
		display: inline-block;
		font-weight: bold;
		height: 1.5rem;
		line-height: 1.5rem;
		padding: 0.25rem;
		pointer-events: all;
		text-align: center;
		width: 1rem;
	}

	.counterInput:after {
		border-left: none;
		content: "+";
	}

	.counterInput:before {
		border-right: none;
		content: "\2212"; /* Minus is not the same as hyphen, especially in vertical alignment */
	}

	.counterInput input {
		margin: 0;
		pointer-events: all;
		text-align: center;
	}
/* IE 11 hacks we have to do */
_:-ms-fullscreen, :root .counterInput {
	cursor: pointer;
}

	_:-ms-fullscreen, :root .counterInput:after, :root .counterInput:before {
		height: calc(1rem - 1px);
		line-height: 0;
		padding: 1rem 0.25rem 0;
	}

	_:-ms-fullscreen, :root .counterInput input {
		cursor: text;
	}

/* Helptext */
.helptext {
	font-size: 0.8em; /* Need em rather than rem because ghost text might include helptext, and that's already smaller */
	line-height: 1em;
}

.formsection input + .helptext:not(:empty),
.formsection select + .helptext:not(:empty),
.formsection textarea + .helptext:not(:empty),
.formsection fieldset + .helptext:not(:empty),
.formsection .helptext + .helptext:not(:empty),
.formsection .popupiconcontainer + script + .helptext:not(:empty) {
	margin: -0.5rem 0 0.75rem;
	padding: 0 0.25rem;
}

.formsection .helptext.accessibleLabel:not(:empty) {
	margin-bottom: 0.25rem;
}

.helptext li {
	line-height: 1rem;
}

/* File Upload Control */
.uploaderbutton {
	display: inline-block;
	line-height: 1rem;
	position: relative;
	width: auto;
}

	.uploaderbutton .button {
		display: inline-block;
		margin: 0 0.25rem 0 0;
		width: auto;
		z-index: 1;
	}

	.uploaderbutton .fileselector {
		border: none;
		height: 100%;
		left: 0;
		opacity: 0;
		position: absolute;
		top: 0;
		width: 100%;
		z-index: 2;
	}

	.uploaderbutton .alert {
		display: inline-block;
		margin: 0 0 0 0.25rem;
		width: auto;
	}

	.uploaderbutton .photoedit,
	.uploaderbutton .photodelete {
		display: block;
		position: relative;
	}

	.uploaderbutton .photodelete {
		z-index: 10;
	}

		.uploaderbutton .photodelete img {
			background: none;
		}

/* Errors, Alerts, Warnings */
.alert .yield {
	display: inline-block;
	height: 1.2rem;
	margin: 0 0.25rem 0 0;
	vertical-align: middle;
	width: 1.2rem;
}

	.alert .yield + .errHolder {
		vertical-align: middle;
	}

.alert.card {
	margin: 0 0 0.5rem;
	padding: 0.5rem;
	min-height: 4rem;
	text-align: center;
	width: 100%;
}

	.alert.card img {
		display: block;
		height: 2.5rem;
		margin: 0 auto;
		width: 2.5rem;
	}

/* Message Overlay */
.messageOverlay {
	padding: .5rem 1.7rem .5rem .5rem;
	width: auto;
	transition: all .3s ease-in-out;
}

	.messageOverlay.invisible {
		opacity: 0;
	}

	.messageOverlay .closeIcon {
		width: 1rem;
		height: 1rem;
		position: absolute;
		top: .4rem;
		right: .4rem;
	}

@media only screen and (max-width: 768px) {
	.messageOverlay {
		width: 100%;
	}

		.messageOverlay,
		.messageOverlay .alert {
			font-size: .8rem;
			line-height: 1rem;
		}
}

/* Read-Only Forms */
.section .content label,
.section .content .label {
	display: block;
	line-height: 1rem;
	padding: 0;
	margin: 0.25rem 0 0; /* Small margin before a label+data pair */
	text-align: left;
	width: auto;
}

.section .content .inlinelabel {
	display: inline-block;
	line-height: 2rem;
	margin: 0 0.25rem 0 0;
}

.section .content .label + p,
.section .content .label + ul {
	display: block;
	margin: 0 0 0.5rem; /* Twice as much margin after a label+data pair. Match to margin on input,select,textarea above. */
	width: auto;
}

/* Misc */

#main .back {
	padding: 1.5rem 0 1rem;
	text-align: center;
}

	#main .back .button {
		border-style: solid;
		border-width: 1px;
		display: inline-block;
		margin: 0;
		width: auto;
	}

/*#region Form Validation*/
.messagedisplay .alert.validationmessage,
.messagedisplay {
	line-height: 1em;
	vertical-align: middle;
	min-height: 1.5rem;
	margin-top: 0;
}

.md_evisit #sendto {
	margin-bottom: 0;
}

.md_apptmake p.buttoncheck,
.md_evisit p.buttoncheck,
.md_echeckin p.buttoncheck,
.md_medadvice textarea,
.md_medadvice select,
.md_refrequest #referto,
.md_refrequest #reason,
.md_refrequest #message,
.md_custsvc input,
.md_custsvc textarea {
	margin-bottom: 0;
}

.md_demog #zip {
	margin-bottom: 0.25rem;
}

.messagedisplay .alert.validationmessage .yield {
	margin-bottom: 0.25rem;
}
/*#endregion*/

.clearlabel {
	color: rgba(255, 255, 255, 0) !important;
	display: block !important;
	font-size: 0 !important;
	height: 0 !important;
	line-height: 0 !important;
	margin: 0 !important;
	opacity: 0 !important;
	overflow: hidden !important;
	padding: 0 !important;
	position: relative !important;
	width: 0 !important;
}

.focusanchor {
	position: absolute;
	opacity: 0;
	left: 0;
	height: 1px;
	width: 1px;
	font-size: 1px;
	overflow: hidden;
}

.wrapLongWords {
	-ms-word-break: break-all;
	word-break: break-all;
}

#wrap .cssSwitcher[data-csstitle="Default"] {
	display: none;
}

/* Alerts and errors need to be inline-block instead because they have "* <clearlabel> <text>" layout */
.alert .clearlabel,
.clearlabel.srPause,
.clearlabel.inlinelabel,
[id*='error'] .clearlabel,
[class*='error'] .clearlabel,
.messageheader .clearlabel {
	display: inline-block !important;
}

.clearlabel.required {
	opacity: 1 !important;
	overflow: inherit !important;
}

.clearradio {
	left: auto;
	opacity: 0;
	position: absolute;
	top: auto;
	width: auto;
	z-index: -1;
}

/* Hidden means hidden. The only way you're going to get this element to show up is removing this class. $.show() will not help you. */
.hidden {
	display: none !important;
}
/* This class is *ONLY* for things you intend to call $.show() on. DO NOT USE IT ELSEWHERE */
.jqHidden {
	display: none;
}

.invisible {
	visibility: hidden;
}

.messagedisplay.invisible {
	color: rgba(0, 0, 0, 0);
	display: none;
	height: 0;
	line-height: 0;
	visibility: hidden;
	width: 0;
}

.left {
	text-align: left;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.top {
	display: inline-block;
	vertical-align: top;
}

.middle {
	display: inline-block;
	vertical-align: middle;
}

.bottom {
	display: inline-block;
	vertical-align: bottom;
}

.bold {
	font-weight: bold;
}

.italic {
	font-style: italic;
}

.underline {
	text-decoration: underline;
}

.clickable {
	cursor: pointer;
}

.alert {
	font-size: 0.9rem;
	line-height: 1rem;
}

:not(tr):not(td).nodata:not(:empty) {
	display: block;
	font-size: 1.25rem;
	padding: 1.5rem 0.5rem;
	text-align: center;
	width: 100%;
}

#sidebar .nodata:not(:empty) {
	font-size: 1rem;
}

#sidebar .externalicon {
	width: 1rem;
	height: 1rem;
	display: inline-block;
	vertical-align: middle;
	margin: 0 0.25rem 0 0;
}

/* Pretty checkboxes & Pretty radio buttons*/
.prettycheck.container,
.prettyradio.container {
	position: relative;
}

input.prettycheck,
input.prettyradio {
	display: inline-block;
	font-size: 0;
	margin: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 1px;
}

	input.prettycheck + label,
	input.prettyradio + label {
		cursor: pointer;
		display: inline-block;
		font-size: 1rem;
		margin: 0 0 0 calc(1.2rem + 2px);
		padding: 0.25rem 0;
		position: static;
		text-align: left;
		text-indent: calc(-1.2rem - 2px);
		vertical-align: top;
		width: auto;
	}

.section .content input.prettycheck + label {
	display: inline-block;
	margin: 0 0 0 calc(1.2rem + 2px);
}

input.prettycheck + label:before,
input.prettyradio + label:before {
	border: 1px solid #B3B3B3;
	border-radius: 2px;
	box-shadow: inset 0px 1px 1px #AAA;
	content: "";
	display: inline-block;
	height: 0.9rem;
	line-height: 0.85rem;
	margin: 0 0.3rem -0.1rem 0;
	position: relative;
	text-indent: 0;
	vertical-align: top;
	width: 0.9rem;
}

input.prettyradio + label:before {
	border-radius: 50%;
}

.prettyradio:checked + label:before {
	box-shadow: inset 0 0 0 2px #fff;
}

.prettycheck:checked + label:before {
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIYEjQPAcoESgAAAKVJREFUSMft1rENgzAQQFGKbAAsEUoaZxyycYCKDWhQFoCfIk4Tgm2k8yEF//70Gp91WZZKCQRcjkBL4AHctdGOd7MK/oWigm+gnyag0EafwC2hx6J7l10KbYAWKLXR2Q71PjwGig+XQnO71L9a4aKvFzB2yIlbtBddmQD8Ko4G4osDNRKfgQuPg+7EZdFAPA7qweOiG/gI1Jq3kwEGoDrHifpXvQANql+AlGeZnQAAAABJRU5ErkJggg==") no-repeat scroll center center / contain;
}

.prettycheck:disabled + label,
.prettyradio:disabled + label {
	cursor: default;
}

.prettycheck:disabled:checked + label:before {
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIYEwk7S1TSdgAAAEhQTFRFAAAAWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY////Fo82tgAAABZ0Uk5TAAQTFBUqKzM4OWFi0dLT1Nrp7vD9/tCeZTMAAAABYktHRBcL1piPAAAAcUlEQVQoz83S0Q5AMAwF0I1iDGOb/v+nSmoTia4PJKKPPS+9zVXqj6NFhdFKOmO0kmLZSRF9LWnoP1At6jCBpBEdSIrZ71p52pBzN5uQHRyXKHvj+LzJt0PN7RPJC3pxVk8vaPKikq+d0C6ztC+a+2R2erQPOW3XocEAAAAASUVORK5CYII=") no-repeat scroll center center / contain;
}

input.prettycheck:not(:disabled):focus + label,
input.prettycheck:not(:disabled):hover + label,
input.prettycheck:not(:disabled) + label:hover,
input.prettyradio:not(:disabled):focus + label,
input.prettyradio:not(:disabled):hover + label,
input.prettyradio:not(:disabled) + label:hover {
	text-decoration: underline;
}

.prettycheck.container + .helptext,
.prettyradio.container + .helptext {
	padding-left: calc(1.2rem + 2px);
	margin-top: -0.25rem;
}

input.prettycheck:focus + label:empty,
input.prettyradio:focus + label:empty {
	outline: 1px dotted;
}

/* Toggle Buttons */
.togglelist li {
	display: inline-block;
	vertical-align: top;
	width: auto;
}

.tbContainer { /* Used to help position the clearradios for the toggle buttons */
	display: inline-block;
	position: relative;
	vertical-align: top;
	width: auto;
}

label.togglebutton[for],
input.buttoncheck + label.buttoncheck {
	background-color: #fff;
	border: 1px solid #d8d8d8;
	border-radius: 0.125rem;
	box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	display: inline-block;
	line-height: 1.5rem;
	position: relative;
	padding: 0.25rem 0.75rem;
	vertical-align: top;
	transition-duration: 0.1s;
	transition-property: top, box-shadow;
}

label.togglebutton[for] {
	margin: 0 0.25rem 0.5rem 0;
	min-width: 2.75rem;
	text-align: center;
	width: auto;
}

input:checked + label.togglebutton[for],
input.buttoncheck:checked + label.buttoncheck {
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 2px 1px rgba(0, 0, 0, 0.13);
	top: 1px;
}

label.togglebutton[for]:hover,
input:focus + label.togglebutton[for] {
	box-shadow: 0 2px 3px 1px rgba(0,0,0,0.13);
}

input:focus + label.togglebutton[for],
input + label.togglebutton[for]:hover {
	text-decoration: underline;
}

input:checked + label.togglebutton[for]:hover,
input:checked:focus + label.togglebutton[for] {
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 2px 3px rgba(0, 0, 0, 0.15);
}

input.togglebutton.clearradio {
	display: inline-block;
	margin: 0;
}

/* Buttoncheck */
.bcList .bcItem {
	display: inline-block;
	margin: 0 0.25rem 0 0;
	vertical-align: top;
	width: auto;
}

p.buttoncheck {
	box-shadow: none;
	color: inherit;
	display: inline-block;
	margin: 0 0.25rem 0.5rem 0;
	padding: 0;
	position: relative;
	text-transform: none;
	white-space: normal;
	width: auto;
}

.section .content p.buttoncheck { /* No, really, I meant what I just said */
	display: inline-block;
	width: auto;
}

.section .content .forlist p.buttoncheck {
	margin: 0 0 0.2rem;
}

p.buttoncheck.alertborder {
	border: none;
}

input.buttoncheck {
	display: inline-block;
	font-size: 0;
	margin: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 1px;
}

	input.buttoncheck + label.buttoncheck {
		font-size: 1rem;
		margin: 0;
		text-align: left;
		width: 100%;
	}

		input.buttoncheck + label.buttoncheck:before {
			background-attachment: scroll;
			background-image: none;
			background-position: center center;
			background-repeat: no-repeat;
			background-size: contain;
			border: 1px solid #B3B3B3;
			border-radius: 2px;
			box-shadow: inset 0px 1px 1px #AAA;
			content: "";
			display: inline-block;
			height: 0.9rem;
			line-height: 0.85rem;
			margin: 0.25rem 0.3rem -0.1rem 0;
			position: relative;
			text-indent: 0;
			vertical-align: top;
			width: 0.9rem;
		}

	input.buttoncheck:checked + label.buttoncheck:before {
		background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIYEjQPAcoESgAAAKVJREFUSMft1rENgzAQQFGKbAAsEUoaZxyycYCKDWhQFoCfIk4Tgm2k8yEF//70Gp91WZZKCQRcjkBL4AHctdGOd7MK/oWigm+gnyag0EafwC2hx6J7l10KbYAWKLXR2Q71PjwGig+XQnO71L9a4aKvFzB2yIlbtBddmQD8Ko4G4osDNRKfgQuPg+7EZdFAPA7qweOiG/gI1Jq3kwEGoDrHifpXvQANql+AlGeZnQAAAABJRU5ErkJggg==");
	}

	input.buttoncheck:disabled + label.buttoncheck {
		cursor: default;
		font-weight: normal;
	}

	input.buttoncheck:disabled:checked + label.buttoncheck:before {
		background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AIYEwk7S1TSdgAAAEhQTFRFAAAAWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY////Fo82tgAAABZ0Uk5TAAQTFBUqKzM4OWFi0dLT1Nrp7vD9/tCeZTMAAAABYktHRBcL1piPAAAAcUlEQVQoz83S0Q5AMAwF0I1iDGOb/v+nSmoTia4PJKKPPS+9zVXqj6NFhdFKOmO0kmLZSRF9LWnoP1At6jCBpBEdSIrZ71p52pBzN5uQHRyXKHvj+LzJt0PN7RPJC3pxVk8vaPKikq+d0C6ztC+a+2R2erQPOW3XocEAAAAASUVORK5CYII=");
	}
		
		input.buttoncheck:focus + label.buttoncheck:before {
			outline: 1px dotted #212121;
			outline: 5px auto -webkit-focus-ring-color;
		}

.buttoncheck:hover input.buttoncheck:not(:disabled) + label.buttoncheck,
.buttoncheck input.buttoncheck:not(:disabled):focus + label.buttoncheck,
.buttoncheck:hover input.buttoncheck:not(:disabled) + label.buttoncheck > *,
.buttoncheck input.buttoncheck:not(:disabled):focus + label.buttoncheck > *,
.buttoncheck:hover input.buttoncheck:not(:disabled) + label.buttoncheck > * > *,
.buttoncheck input.buttoncheck:not(:disabled):focus + label.buttoncheck > * > * {
	text-decoration: underline;
}

/* 
	Old-style Popup Instructions 
	TODO: Remove once fully replaced with the new style InfoBubbles below
*/
.popupiconcontainer {
	cursor: auto;
	display: inline-block;
	position: relative;
	vertical-align: middle;
	width: auto;
}

table .popupiconcontainer, div .popupiconcontainer {
	margin: 0 0 0 0.25rem;
}

.ghostInput.withPopup + .popupiconcontainer {
	margin-left: -1.7rem;
}

.popupinstructionsicon {
	cursor: default;
	display: block;
}

	.popupinstructionsicon:hover {
		text-decoration: none;
	}

	.popupinstructionsicon:after {
		border-color: transparent transparent transparent #FFF;
		border-style: solid;
		border-width: 1rem 0 0 1rem;
		box-shadow: -1px 1px 1px 0 #999;
		content: "";
		display: none;
		height: 0;
		position: absolute;
		width: 0;
		z-index: 1000;
	}

	.popupinstructionsicon.onRight.showPopup:after {
		display: block;
		left: calc(100% + 2px);
		top: calc((100% - 1rem) / 2);
		transform: rotate(45deg);
	}

	.popupinstructionsicon.onBottom.showPopup:after {
		display: block;
		left: calc(50% - 0.5rem);
		top: calc(100% + 2px);
		transform: rotate(135deg);
	}

	.popupinstructionsicon.onLeft.showPopup:after {
		display: block;
		left: calc(-0.5rem - 3px);
		top: calc((100% - 1rem) / 2);
		transform: rotate(225deg);
	}

	.popupinstructionsicon.onTop.showPopup:after {
		display: block;
		left: calc(50% - 0.5rem);
		top: calc(-0.25rem - 10px);
		transform: rotate(315deg);
	}

.popupiconcontainer .popupinstructionsicon {
	line-height: 0;
}

	.popupiconcontainer .popupinstructionsicon > * {
		line-height: normal;
	}

	.popupiconcontainer .popupinstructionsicon > img {
		height: 1.2rem;
		margin: 0;
		width: 1.2rem;
	}

.popupiconcontainer .popupInstructions {
	box-shadow: 0 0 4px 0 rgba(0,0,0,0.6);
	font-size: 1rem;
	font-weight: normal;
	margin: 0;
	min-height: 2.25rem;
	padding: 0.4rem;
	position: absolute;
	text-align: left;
	word-wrap: break-word;
	width: 400px;
	z-index: 999;
	border-radius: 2px;
}

#sidebar .popupiconcontainer .popupInstructions {
	width: 250px;
}

.popupinstructionsicon.onRight + .popupInstructions {
	margin-left: 9px;
}

.popupinstructionsicon.onLeft + .popupInstructions {
	margin-left: -1px;
}

.popupinstructionsicon.onBottom + .popupInstructions {
	margin-top: 9px;
}

.popupinstructionsicon.onTop + .popupInstructions {
	margin-top: -4px;
}

.popupiconcontainer .popupInstructions .header {
	padding-top: 0;
}

	.popupiconcontainer .popupInstructions .header:empty {
		padding: 0;
	}

/* New-style InfoBubble */
.infoBubbleWrapper {
	cursor: auto;
	display: inline-block;
	font-size: 1rem;
	font-weight: normal;
	line-height: normal;
	margin: 0.125rem 0 -0.25rem 0.25rem;
	position: relative;
	width: auto;
}

	.infoBubbleWrapper .infoBubbleTarget {
		cursor: pointer;
		display: block;
		position: relative;
		text-decoration: none;
	}

		.infoBubbleWrapper .infoBubbleTarget.asIcon {
			background: rgba(0, 0, 0, 0) none no-repeat center center / 1.2rem 1.2rem;
			height: 1.2rem;
			width: 1.2rem;
		}

		/* The triangle */
		.infoBubbleWrapper .infoBubbleTarget:after {
			border-color: transparent transparent transparent #FFF;
			border-style: solid;
			border-width: 1rem 0 0 1rem;
			box-shadow: -1px 1px 1px 0 #999;
			content: "";
			display: none;
			height: 0;
			position: absolute;
			width: 0;
			z-index: 1000;
		}

		/* Triangle is from a 1.2rem square, so root(2.88) for calculating offset. Left and Top should match between these two on perpendicular sides. */
		.infoBubbleWrapper .infoBubbleTarget.onLeft:after,
		.infoBubbleWrapper .infoBubbleTarget.onRight:after {
			top: calc((100% - 0.8485rem) / 2);
		}

		.infoBubbleWrapper .infoBubbleTarget.onTop:after,
		.infoBubbleWrapper .infoBubbleTarget.onBottom:after {
			left: calc((100% - 0.8485rem) / 2);
		}

		/* Rotate from immediately next to the target to overlap it back slightly. Left and Top should match between these two on opposite sides. */
		.infoBubbleWrapper .infoBubbleTarget.onRight:after {
			left: 100%;
			transform: rotate(45deg);
		}

		.infoBubbleWrapper .infoBubbleTarget.onBottom:after {
			top: 100%;
			transform: rotate(135deg);
		}

		/* Left and Top are the borders we've actually set to 1rem, so rotate from that distance to overlap it back slightly. Left and Top should match between these two on the opposite sides. */
		.infoBubbleWrapper .infoBubbleTarget.onLeft:after {
			left: -1rem;
			transform: rotate(225deg);
		}

		.infoBubbleWrapper .infoBubbleTarget.onTop:after {
			top: -1rem;
			transform: rotate(315deg);
		}

		/* Difference 1.2rem icon vs 1rem triangle border, halved. Top and left should match between these two on perpendicular sides. */
		.infoBubbleWrapper .infoBubbleTarget.asIcon.onLeft:after,
		.infoBubbleWrapper .infoBubbleTarget.asIcon.onRight:after {
			top: 0.1rem;
		}

		.infoBubbleWrapper .infoBubbleTarget.asIcon.onTop:after,
		.infoBubbleWrapper .infoBubbleTarget.asIcon.onBottom:after {
			left: 0.1rem;
		}

		/* Position corrections for the actual popup */
		.infoBubbleWrapper .infoBubbleTarget.onLeft + .infoBubblePopup,
		.infoBubbleWrapper .infoBubbleTarget.onRight + .infoBubblePopup {
			margin-top: calc(0.8485rem / 2); /* Ensure the triangle isn't right at the base of the popup */
		}

		/* Leave space for the triangle. Lefts and Tops should be opposites on their oppsing sides for these four. */
		.infoBubbleWrapper .infoBubbleTarget.onRight + .infoBubblePopup {
			margin-left: calc(0.8485rem / 2);
		}

		.infoBubbleWrapper .infoBubbleTarget.onBottom + .infoBubblePopup {
			margin-top: calc(0.8485rem / 2);
		}

		.infoBubbleWrapper .infoBubbleTarget.onLeft + .infoBubblePopup {
			margin-left: calc(-0.8485rem / 2);
		}

		.infoBubbleWrapper .infoBubbleTarget.onTop + .infoBubblePopup {
			margin-top: calc(-0.8485rem / 2);
		}

	.infoBubbleWrapper .infoBubblePopup {
		border-radius: 2px;
		box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.6);
		display: none;
		margin: 0;
		min-height: 2.25rem;
		padding: 0.33rem;
		position: absolute;
		text-align: left;
		white-space: normal;
		width: 400px;
		z-index: 999;
	}

	.infoBubbleWrapper.hover .infoBubblePopup,
	.infoBubbleWrapper.hover .infoBubbleTarget:after {
		display: block;
	}

	.infoBubbleWrapper .infoBubblePopup .header {
		padding-top: 0;
	}

/* Lightbox */
.lb_content {
	background: #fff linear-gradient(to bottom, rgba(250, 250, 250, 0.98) 0%, rgba(245, 245, 245, 0.98) 100%) repeat scroll 0 0;
	box-shadow: 0 0.5rem 5rem 0 rgba(0, 0, 0, 0.8);
	display: none;
	left: 50%;
	margin: 0 0 0 -30%;
	padding: 0.75rem 1.25rem;
	outline: none;
	position: absolute;
	top: 0;
	width: 60%;
	z-index: 3001;
}

	.lb_content .back {
		padding: 0.5rem 0;
		text-align: center;
	}

/* My1Chart */
.externalorgnotice,
.externalorgnotice:before {
	display: inline-block;
	vertical-align: middle;
}

.externalorgnotice {
	padding: 0 0 0 1.25rem;
	margin: 0 auto;
	display: block;
}

	.externalorgnotice:before {
		background: rgba(0, 0, 0, 0) url("../images/my1chartlogo.png") no-repeat 0 0 / 1rem 1rem;
		content: "";
		height: 1.2rem;
		margin: 0 0 0 -1.25rem;
		padding: 0 0.25rem 0 0;
		width: 1rem;
	}

.incompleteh2gnotice {
	margin-top: 0.5rem;
}

.incompleteh2gnotice.externalorgnotice:before{
	background: rgba(0, 0, 0, 0) url("../images/CareEverywhere-With-Arrow.png") no-repeat 0 0 / 1rem 1rem;
}

/* Terms & Conditions (prelogin, E-Visit, etc.) */
.terms {
	background: #FFF none no-repeat scroll 0 0;
	margin: 1rem 10%;
	min-height: 10rem;
	padding: 0.5rem;
	width: 80%;
	height: 360px;
	overflow: auto;
}

.hilite {
	background-color: yellow;
}

.ajaxspinnergif, .jsdisabled {
	background-color: rgba(127, 127, 127, 1);
	border-radius: 15px;
	box-sizing: border-box;
	color: #ddd;
	left: 50%;
	margin: -37px 0 0 -75px;
	padding: 30px 10px;
	position: fixed;
	text-align: center;
	top: 50%;
	width: 150px;
	z-index: 1010;
}

	.ajaxspinnergif a {
		color: #dddddd;
	}

.ghostInput input::-webkit-input-placeholder {
	color: transparent;
}

.ghostInput input::-moz-placeholder {
	color: transparent;
}

.ghostInput input:-ms-input-placeholder {
	color: transparent;
}

.ghostInput input:focus::-webkit-input-placeholder {
	color: rgba(0,0,0,0.5);
}

.ghostInput input:focus::-moz-placeholder {
	color: rgba(0,0,0,0.5);
}

.ghostInput input:focus:-ms-input-placeholder {
	color: rgba(0,0,0,0.5);
}

/*style for when javscript not enabled*/
.nojs #wrap {
	opacity: 1;
}

.nojs #content {
	opacity: 1;
	top: 200px;
	z-index: 0;
}

.nojs #main {
	min-height: 400px;
}

body.nojshelp {
	display: block !important;
}

.nojshelp #wrap {
	opacity: 1;
}

/* Photos */
.userPhoto {
	background: rgba(0, 0, 0, 0) url('../images/ProxySilhouette.png') no-repeat scroll center center / cover;
	border-radius: 100%;
	border-style: solid;
	border-width: 1px;
	display: block;
	height: 2.5em;
	overflow: hidden;
	width: 2.5em;
}

/* Account Badges */
.accountBadges {
	margin: 0.5rem 0 0;
}

	.accountBadges.selectable {
	}

	.accountBadges .accountBadge {
		background: #FFF none;
		border-radius: 1.75em 0 0 1.75em;
		box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.2);
		display: inline-block;
		height: 3rem;
		margin: 0 1rem 1rem 0;
		max-width: 14rem;
		min-width: 12rem;
		padding: 0.25rem 0.5rem 0.25rem 3.25em;
		vertical-align: top;
		width: auto;
	}

		.accountBadges .accountBadge.flat {
			border: 1px solid #EAEAEA;
			box-shadow: none;
		}

	.accountBadges.selectable .accountBadge {
		box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
		cursor: pointer;
		transition-duration: 0.1s;
		transition-property: top, box-shadow;
	}

		.accountBadges.selectable .accountBadge.selected {
			box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 2px 1px rgba(0, 0, 0, 0.13);
			top: 1px;
		}

		.accountBadges.selectable .accountBadge:focus,
		.accountBadges.selectable .accountBadge:hover {
			box-shadow: 0 2px 3px 1px rgba(0, 0, 0, 0.13);
		}

			.accountBadges.selectable .accountBadge:focus .accountName,
			.accountBadges.selectable .accountBadge:hover .accountName {
				text-decoration: underline;
			}

		.accountBadges.selectable .accountBadge.selected:hover,
		.accountBadges.selectable .accountBadge.selected:focus {
			box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 2px 3px rgba(0, 0, 0, 0.15);
		}

		.accountBadges.selectable .accountBadge.selected {
			background-color: #BFE1FF;
		}

	.accountBadges .accountBadge .userPhoto {
		display: inline-block;
		margin: 0 0.5em -2.5em -3em;
		vertical-align: top;
	}

	.accountBadges .accountBadge .accountName {
		display: inline-block;
		margin: 0 0 0.125rem;
		overflow: hidden;
		text-overflow: ellipsis;
		vertical-align: top;
		white-space: nowrap;
	}

/* Selection Toggles */
.showIfSelected {
	visibility: hidden;
}
.selected .showIfSelected {
	visibility: visible;
}

/* Pre-Checkmark */
.preCheckmark:before {
	background: rgba(0, 0, 0, 0) url("../images/checkmark_large.png") no-repeat scroll center center /cover;
	content: "";
	display: inline-block;
	height: 1em;
	margin: 0 0.25rem 0 0;
	vertical-align: top;
	width: 1.25em;
}

/* Lists */
.list.collapsible {
	background-color: #FFF;
	box-shadow: 0 4px 4px -1px rgba(0, 0, 0, 0.2);
}

	.list.collapsible > * {
		box-shadow: 0 4px 4px -5px rgba(0, 0, 0, 0.3);
		padding: 0.5rem 0.75rem;
	}

		.list.collapsible > *:first-child {
			padding-top: 0.75rem;
		}

		.list.collapsible > *:last-child {
			box-shadow: none;
			padding-bottom: 0.75rem;
		}

	.list.collapsible .collapsed {
		cursor: pointer;
	}

	.list.collapsible .addRow {
		background-color: #F2F2F2;
	}

/* Arabic language CSS Styles */
html[lang="ar"],
html[lang="ar"] body {
	line-height: 1.75rem;
}

	html[lang="ar"] .helptext,
	html[lang="ar"] .subtle,
	html[lang="ar"] .alert {
		line-height: 1.25rem;
	}

html[lang="ar"] {
	font-size: 15pt;
}

	html[lang="ar"],
	html[lang="ar"] input,
	html[lang="ar"] select,
	html[lang="ar"] textarea,
	html[lang="ar"] optgroup {
		font-family: "Geeza Pro", Arial, sans-serif;
	}

/*
	CSS for hiding disabled button text
*/
.button.omitDisableStyling,
.button.omitdisablestyling:focus,
.button.omitdisablestyling:hover {
	color:transparent;
}

/*Patient instruction styles*/
.visitdetails .visitinstructionscontent .readmore {
	background-color: rgba(237, 247, 254, 0.8);
}


.visitinstructionscontent {
	overflow: hidden;
	position: relative;
	transition: height, 0.5s;
	-webkit-transition: height, 0.5s;
	-o-transition: height, 0.5s;
	-moz-transition: height, 0.5s;
}

	.visitinstructionscontent .readmore {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		padding: 0.8rem 0 0.8rem 0;
		border-top: 1px solid #EBEBEB;
		border-bottom: 1px solid #EBEBEB;
		background-color: rgba(255, 255, 255, 0.8);
	}

	.visitinstructionscontent .readless {
		padding-top: 0.5rem;
	}

		.visitinstructionscontent .readless .collapse {
			padding-left: 1.2rem;
			background: none no-repeat scroll left center transparent;
			background-image: url("../images/up_chevron.png");
		}

/*
	Focus outline for Upload Button on Ask a Question Page
*/
.uploadButtonFocus {
	outline: gray dashed 1px;
	outline: -webkit-focus-ring-color solid 1px;
	outline-offset: 1px;
}

/*
	CSS for skeleton animation.
*/
@keyframes skeletonShiftGradient {
	0% {
		background-position: -400px 0;
	}

	100% {
		background-position: 400px 0;
	}
}

[class*='skeleton-bone'] {
	animation-duration: 1s;
	animation-fill-mode: forwards;
	animation-iteration-count: infinite;
	animation-name: skeletonShiftGradient;
	animation-timing-function: linear;
	background: #f6f7f8;
	background: linear-gradient(to right, #eeeeee 8%, #dddddd 18%, #eeeeee 33%);
	background-size: 800px 100px;
	position: relative;
}

.skeleton-boneRound {
	border-radius: 50%;
}
	
/*
	CSS for hiding disabled button text
*/
.button.omitDisableStyling {
	color: transparent;
}

/*
	CSS for a spinning load wheel.
*/
.spinningLoadWheel {
	display: inline-block;
	border: 6px solid rgba(255, 255, 255, 0.2);
	border-left-color: #fff;
	animation: spinLoadWheel 1.1s infinite linear;
	border-radius: 50%;
	width: 2rem;
	height: 2rem;
}

@keyframes spinLoadWheel {
	0% {
		transform: rotate(0deg);
	}

	100% {
		transform: rotate(360deg);
	}
}


/*
	CSS for Expandable/Collapsible section
*/

.clicktoexpand, .clicktocollapse {
	display: none;
	font-size: 11pt;
	margin-left: 0.3rem;
	color: #008DC9; /* @color link hover */
	vertical-align: bottom;
	cursor: pointer;
}

/*Base level settings for "Click to expand/collapse hover text" */
.collapsibleSectionHeader.expanded .clicktocollapse {
	display: inline;
}

.collapsibleSectionHeader.collapsed .clicktoexpand {
	display: inline;
}

.collapsibleSectionHeader.expanded .clicktoexpand {
	display: none;
}

.collapsibleSectionHeader.collapsed .clicktocollapse {
	display: none;
}


@media (pointer: fine) { /*If we're in a device with a fine point (i.e. hovering is possible, then override with actual hovering*/

	.collapsibleSectionHeader.expanded .clicktocollapse {
		display: none;
	}

	.collapsibleSectionHeader.collapsed .clicktoexpand {
		display: none;
	}

	.collapsibleSectionHeader.expanded:hover .clicktoexpand {
		display: none;
	}

	.collapsibleSectionHeader.expanded:hover .clicktocollapse {
		display: inline;
	}

	.collapsibleSectionHeader.collapsed:hover .clicktoexpand {
		display: inline;
	}

	.collapsibleSectionHeader.collapsed:hover .clicktocollapse {
		display: none;
	}
}

.collapsibleSectionHeader.expanded .header,
.collapsibleSectionHeader.collapsed .header {
	display: inline;
	padding: 0 1em 0.1em 0.1em;
	margin-left: -0.1em;
	background-repeat: no-repeat;
	background-position: 99% 60%;
	vertical-align: text-bottom;
	background-size: 0.8rem;
	cursor: pointer;
}

.collapsibleSectionHeader.expanded .header {
	background-image: url('../images/up_chevron_blue.png');
}

.collapsibleSectionHeader.collapsed .header {
	background-image: url('../images/down_chevron_blue.png');
}

.collapsibleSectionContent {
	margin-top: 0.75rem;
}
.no-outline-on-focus:focus {
	outline: none;
}
