.logo {
	font-family: Arial, sans-serif;
	font-size: 36px;
	line-height: 36px;
	font-weight: bold;
	color: #FFFFFF;
	margin: 0;
	padding-top: 36px !important;
	text-transform: uppercase;
}
.logo a {
	color: #FFFFFF;
	text-decoration: none;
}

.tagline {
	font-family: Arial, sans-serif;
	font-size: 14px;
	line-height: 48px;
	font-weight: bold;
	font-style: italic;
	color: #FFFFFF;
	padding-top: 36px !important;
}

.title {
	font-family: Arial, sans-serif;
	font-size: 18px;
	line-height: 18px;
	font-weight: bold;
	color: #000000;
	margin: 0px 0px 12px 0px;
	text-transform: uppercase;
}

.heading {
	font-family: Arial, sans-serif;
	font-size: 15px; /* was 12 */
	line-height: 15px; /* was 12 */
	font-weight: bold;
	color: #1B75BB;
	margin: 0px 0px 12px 0px;
	text-transform: uppercase;
}
#sidebar .heading {
	font-family: Impact, Arial, sans-serif;
	font-size: 22px;
	line-height: 22px;
	font-weight: normal;
	margin: 0px 0px 20px 0px;
	text-transform: uppercase;
}
#page.public #sidebar .heading {
	color: #FFFFFF;
}
#popup_top_toolbar .subheading {
	color: #1B75BB;
	text-transform: none;
}

.subheading {
	font-family: Arial, sans-serif;
	font-size: 13px; /* was 12 */
	line-height: 13px; /* was 12 */
	font-weight: bold;
	color: #000000;
	margin: 0px 0px 12px 0px;
	text-transform: uppercase;
}
#sidebar .subheading {
	text-transform: none;
}
#sidebar .callout .subheading {
	color: #1B75BB !important;
}
#page.public #sidebar .subheading {
	font-family: Impact, Arial, sans-serif;
	font-size: 18px;
	line-height: 18px;
	font-weight: normal;
	color: #99C6E4;
}

.body {
	font-family: Arial, sans-serif;
	font-size: 12px; /* was 11 */
	line-height: 18px; /* was 17 */
	font-style: normal;
	font-weight: normal;
	color: #000000;
	margin: 0px 0px 14px 0px;
}
#page.public #sidebar .body {
	color: #FFFFFF;
}
#sidebar .callout .body {
	line-height: 14px;
	color: #1B75BB;
}
.body.clickable {
	cursor: pointer;
}
.body.clickable:hover {
	background-color: #E0E0E0; 
}
.body.clickable a, .body.clickable a:hover {
	color: #000000;
	text-decoration: none;
}

.body_large {
	font-family: Arial, sans-serif;
	font-size: 12px;
	line-height: 18px;
	font-style: normal;
	font-weight: normal;
	color: #000000;
	margin-top: 0px;
}

a, .body a, .body_large a {
	color: #1B75BB;
	text-decoration: underline;
}
a:hover, .body a:hover, .body_large a:hover {
	color: #99C6E4;
}
#page.public #sidebar .body a {
	color: #FFFFFF;
}
a.fade {
	color: #CCCCCC;
	text-decoration-color: #CCCCCC;
}
a.disabled, .disabled a {
	/* this also gets some attributes from the .disabled class */
	pointer-events: none;
	/* this looks better on the view and edit pages, but without looks better on the list pages:
	opacity: 1.0;
	filter: alpha(opacity=100);
	color: #AAAAAA;
	*/
	text-decoration: none;
}

#chords.border {
	padding: 2px;
	border: 1px solid #CCCCCC;
	/* border-radius: 10px; this works but doesn't look good with the Key field right above it */
}

.note_strong {
	font-family: Arial, sans-serif;
	font-size: 12px;
	font-weight: bold;
	margin-top: 0px;
	color: #1B75BB;
}
.note a {
	color: #1B75BB;
}

.note {
	font-family: Arial, sans-serif;
	font-size: 12px;
	font-style: italic;
	margin-top: 0px;
	color: #999999;
}
.note a {
	color: #476E83;
}

.tooltip {
	text-decoration: underline;
	text-decoration-style: dotted;
	text-decoration-thickness: 2px;
	text-decoration-color: #1B75BB;
	cursor: help;
}

.highlight {
	background: #FFFF00;
}

.warning {
	color: #FF0000;
}

.monospace {
	/*font-family: "Courier New", Courier, monospace;*/
	font-family: "Menlo", Monaco, monospace;
}

.message {
	padding: 4px 4px 0 4px;
}
.internal_message {
	background: #E6E6E6;
	margin-top: -8px;
	margin-bottom: -10px;
	padding: 8px 4px 1px 4px;
}
.internal_message textarea {
	background: #FAFAFA;
}

body#tinymce {
	font-size: 12px;
}

.details {
	color: #999999;
}

.centered {
	text-align: center;
}

.right {
	text-align: right;
}

#add_stats {
	display: inline-block;
	margin-top: 4px;
}

/* this are also in the database, but probably don't need to be */
/* the songs and events have separate styles, so we could define a separate set of colors; but more likely we could rename the labels to not be song or event specific and then use the same set of labels for both */
.song_label_0, .event_label_0, .event_label_0 a {
	color: #000000 !important; /* black */
}
.song_label_1, .event_label_1, .event_label_1 a {
	color: #BB2833 !important; /* red */
}
.song_label_2, .event_label_2, .event_label_2 a {
	color: #F29137 !important; /* orange */
}
.song_label_3, .event_label_3, .event_label_3 a {
	color: #91C34E !important; /* green */
}
.song_label_4, .event_label_4, .event_label_4 a {
	color: #3EAFF5 !important; /* blue */ /* this is #9CC7E2 in the app and the editor, but that's too light in the website's light-background lists; we'll probably have to adjust it globally when we introduce a light background option for the app */
}
.song_label_5, .event_label_5, .event_label_5 a {
	color: #8F308D !important; /* purple */
}
.song_label_6, .event_label_6, .event_label_6 a {
	color: #999999 !important; /* gray */
}
.song_label_7, .event_label_7, .event_label_7 a {
	color: #FAD33B !important; /* yellow */
}
.song_label_8, .event_label_8, .event_label_8 a {
	color: #2778B8 !important; /* dark blue */
}
.song_label_9, .event_label_9, .event_label_9 a {
	color: #595959 !important; /* dark gray */
}

.footer {
	font-family: Arial, sans-serif;
	font-size: 11px; /* was 8, then 10 */
	line-height: 16px; /* was 13, then 15 */
	color: #D0D2D3;
	margin: 0px;
}
.footer a {
	text-decoration: none;
	color: #D0D2D3;
}
.footer a:hover {
	color: #FFFFFF;
}

.menu, .submenu {
	font-family: Arial, sans-serif;
	font-size: 13px; /* was 12 */
	line-height: 13px;  /* was 12 */
	margin: 0;
	color: #404041;
	text-transform: uppercase;
}
.submenu {
	font-size: 12px; /* was 11 */
	text-transform: none;
}
#login_menu.menu, #login_menu.menu a {
	color: #D0D2D3;
}
.menu a, .submenu a {
	text-decoration: none;
	color: #404041;
}
.menu a:hover, .submenu a:hover, #login_menu.menu a:hover {
	color: #1B75BB;
}
.menu_item.active, .submenu_item.active {
	font-weight: bold;
	color: #404041;
}
#account_menu .menu_item.active {
	background: url(/images/templates/menu_pointer.png) bottom center no-repeat;
}

.sidebar_menu {
	font-family: Arial, sans-serif;
	font-size: 12px; /* was 11 */
	line-height: 15px; /* was 14 */
	font-style: normal;
	font-weight: normal;
	color: #A4C8E4;
	margin-top: 0px;
}
.sidebar_menu a {
	color: #A4C8E4;
	text-decoration: none;
}
.sidebar_menu a.active, .sidebar_menu a:hover {
	color: #FFFFFF;
}

a.button, input.button {
	display: block; /* this lets us control the width of the buttons */
	/* float: left; this lets us place more than one on a line, which we can also do with the inline style, below */
	text-decoration: none;
	border-radius: 10px;
}
input.button {
	border: 0;
	cursor: pointer;
}
a.button.inline, input.button.inline {
	display: inline !important;
	width: auto !important;
}

a.button.large, input.button.large {
	background: #D0D2D3;
	color: #404041;
	box-shadow: 0 0 12px #333333;
	width: 112px; /* 112 - 34 padding (padding is ignored for inline elements); this is a default; we may have to override it for particular buttons */
	padding: 7px 17px; /* added to the line height, this gives a total height of 28px */
	font-family: Arial, sans-serif;
	font-weight: bold;
	font-size: 12px;
	line-height: 12px;
	text-align: center;
	text-transform: uppercase;
}
a.button.medium, input.button.medium {
	background-color: #F0F0F0; 
	/* thanks http://css-tricks.com/css3-gradients/ */
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#F0F0F0));
	background-image: -webkit-linear-gradient(top, #FFFFFF, #F0F0F0); 
	background-image:    -moz-linear-gradient(top, #FFFFFF, #F0F0F0);
	background-image:     -ms-linear-gradient(top, #FFFFFF, #F0F0F0);
	background-image:      -o-linear-gradient(top, #FFFFFF, #F0F0F0);
	border: 1px solid #E6E6E6;
	color: #1B75BB;
	width: 90px; /* 90 - 20 padding (padding is ignored for inline elements); this is a default; we may have to override it for particular buttons */
	padding: 5px 10px 6px 10px; /* added to the line height, this gives a total height of 22px */
	font-family: Arial, sans-serif;
	font-weight: bold;
	font-size: 11px; /* was 10 */
	line-height: 11px;
}
a.button.medium.double, input.button.medium.double {
	/* this makes one button that spans the width of two buttons with a stack_left sized margin */
	width: 200px;
}
a.button.small, input.button.small {
	background: #FFFFFF;
	border: 1px solid #E6E6E6;
	color: #1B75BB;
	width: 85px; /* 85 - 20 padding (padding is ignored for inline elements); this is a default; we may have to override it for particular buttons */
	padding: 6px 10px; /* added to the line height, this gives a total height of 22px */
	font-family: Arial, sans-serif;
	font-weight: normal;
	font-size: 10px;
	line-height: 10px;
}
a.button.tiny, input.button.tiny {
	background: #FFFFFF;
	border: 1px solid #E6E6E6;
	color: #1B75BB;
	width: 80px; /* 80 - 20 padding (padding is ignored for inline elements); this is a default; we may have to override it for particular buttons */
	padding: 3px 6px 4px 6px; /* added to the line height, this gives a total height of 18px */
	font-family: Arial, sans-serif;
	font-weight: normal;
	font-size: 10px;
	line-height: 10px;
}
input.button.clear {
	background: none;
	border: none;
}

a:hover.button.large, input:hover.button.small {
	background: #AAAAAA;
}
a:hover.button.medium, input:hover.button.medium {
	background-color: #E0E0E0; 
	/* thanks http://css-tricks.com/css3-gradients/ */
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#E0E0E0));
	background-image: -webkit-linear-gradient(top, #FFFFFF, #E0E0E0); 
	background-image:    -moz-linear-gradient(top, #FFFFFF, #E0E0E0);
	background-image:     -ms-linear-gradient(top, #FFFFFF, #E0E0E0);
	background-image:      -o-linear-gradient(top, #FFFFFF, #E0E0E0);
}
a:hover.button.small, input:hover.button.small {
	background: #E6E6E6;
}

a.button.medium.destructive, input.button.medium.destructive {
	color: #EB5932;
}
a.button.medium.fade, input.button.medium.fade {
	color: #CCCCCC;
}
a.button.medium.full, input.button.medium.full {
	width: 200px;
	padding-left: 0;
	padding-right: 0;
}

.button_text_align.medium {
	padding-top: 7px;
}

a.button.add {
	display: inline-block;
	padding: 4px 0 4px 30px;
	background: url(/images/templates/icon_add.png) left no-repeat;
	font-style: italic;
	color: #D0D2D3;
	margin-right: 20px; /* this lets us stack the pause button next to the songs button */
}
a.button.add:hover {
	color: #1B75BB;
}

a.button.remove {
	padding: 4px 0;
	background: url(/images/templates/icon_remove_0.png) left no-repeat;
}
a.button.remove:hover {
	background: url(/images/templates/icon_remove_1.png) left no-repeat;
}

a.button.text, a.text_button {
	font-weight: bold;
	text-decoration: none;
}
#popup_top_toolbar a.text_button {
	font-weight: normal;
}

a.button.text.previous {
	font-size: 11px; /* same as button.medium */
	width: 90px; /* same as button.medium */
	text-align: right;
}
a.button.text.next {
	font-size: 11px; /* same as button.medium */
	margin-left: -5px; /* same as button_medium_accessory */
}
a.button.text.previous img, a.button.text.next img {
	margin-bottom: -2px; /* align the arrow icons */
	border: 0; /* needed for IE */
}

a.button_medium_accessory {
	display: inline-block;
	font-size: 11px;
	margin-top: 5px;
	margin-left: -5px;
	text-decoration: none;
}
/*
a.button_medium_accessory.destructive {
	color: #EB5932;
}
*/

.no_bottom {
	margin-bottom: 0px !important;
}

.no_top {
	margin-top: 0px !important;
}

.small_bottom {
	margin-bottom: 4px !important;
}

.body_bottom {
	margin-bottom: 12px !important;
}

.big_bottom {
	margin-bottom: 20px !important;
}

.big_top {
	margin-top: 20px !important;
}

.indent {
	float: left; /* this lets us set a width without forcing a newline */
	/*padding-top: 4px; /* this is required to keep the vertical alignment when floating */
	width: 60px;
}

.list_item_large {
	clear: left;
	min-height: 165px; /* photo height */
	margin-bottom: 16px;
}
.list_item_medium {
	clear: left;
	min-height: 165px; /* photo height */
	margin-bottom: 16px;
}
.list_item_small {
	clear: left;
	min-height: 70px; /* photo height */
	margin-bottom: 20px;
}

.photo_margin_large {
	margin-left: 266px; /* 250 photo + 16 margin */
}
.photo_margin_medium {
	margin-left: 181px; /* 165 photo + 16 margin */
}
.photo_margin_small {
	margin-left: 90px; /* 70 photo + 20 margin */
}

.option_multiline {
	float: left; /* this lets us set up a multi-line label with a hanging indent */
}
.option_multiline_margin {
	margin-left: 22px;
}

.scrolling_options {
	width: 120px; /* we'll override this with a form_element style */
	height: 120px; /* we can override this on each page if needed */
	overflow: scroll;
	overflow-x: hidden;
	overflow-y: scroll; /* we can override this on each page if needed */
	border: 1px solid #CCCCCC; /* we can override this on each page if needed */
	border-radius: 5px 0 0 5px; /* rounding the right side would interfere with the scroll bar graphic */
	margin-bottom: 10px !important; /* since the form_element styles have a margin of 0 */
}

hr {
	border: 0;
	height: 1px;
	background-image: none;
	margin: 20px 0px 16px 0px;
	background-color: #999999;
	clear: both;
}

#sidebar hr {
	border: 0;
	height: 1px;
	background-image: none;
	margin: 20px 0;
	background-color: #99C6E4;
	clear: both;
}

ul, ol {
	padding-left: 20px;
}

li {
	margin-bottom: 5px;
}

table {
	border-collapse: collapse;
	margin-bottom: 10px;
}

th {
	background-color: #F0F0F0;
	text-align: left;
	padding: 10px 12px 9px 12px;
}
th.plain {
	background: none;
	padding: 6px 12px 6px 12px;
}
th.right {
	text-align: right;
}
th:first-child {
	border-top-left-radius: 10px;
}
th:last-child {
	border-top-right-radius: 10px;
}

td {
	padding: 10px 12px 9px 12px;
	/*
	font-size: 11px !important;
	line-height: 11px !important;
	*/
}

/* we're using the "first visible" style in tables with a transparent heading to round the corners of the first visible row */
tr:first-child td:first-child, tr.first_visible td:first-child {
	border-top-left-radius: 10px;
}
tr:first-child td:first-child, tr.first_visible td:last-child {
	border-top-right-radius: 10px;
}
tr:last-child td:first-child {
	border-bottom-left-radius: 10px;
}
tr:last-child td:last-child {
	border-bottom-right-radius: 10px;
}
/* don't round the corners in plain tables */
table.plain tr td {
	border-radius: 0 !important;
}

table.comparison {
	border-collapse: collapse;
	margin: 12px 41px;
	width: 632px; /* too bad a simple 100% doesn't respect the container padding */
}
table.comparison td {
	background: #F6F6F6;
	border-right: 1px solid white;
	border-bottom: 1px solid white;
	padding: 30px 15px;
	font-family: Arial, sans-serif;
	font-size: 17px;
	line-height: 17px;
	font-weight: bold;
	color: #B3B3B3;
	text-align: center;
}
table.comparison td.header, table.comparison td.action {
	background: transparent;
	font-size: 12px;
	line-height: 12px;
	color: #000000;
}
table.comparison td.header {
	padding: 20px 10px;
	text-transform: uppercase;
}
table.comparison td.action {
	text-align: none;
}
table.comparison td.yes {
	color: #00CC00;
}
table.comparison td.label {
	font-size: 12px;
	line-height: 12px;
	color: #1B75BB;
	text-transform: uppercase;
}

table.list th {
	/*border: 1px solid #E6E6E6;*/
}
table.list th {
	background-color: #F0F0F0; 
	/* thanks http://css-tricks.com/css3-gradients/
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#F0F0F0));
	background-image: -webkit-linear-gradient(top, #FFFFFF, #F0F0F0); 
	background-image:    -moz-linear-gradient(top, #FFFFFF, #F0F0F0);
	background-image:     -ms-linear-gradient(top, #FFFFFF, #F0F0F0);
	background-image:      -o-linear-gradient(top, #FFFFFF, #F0F0F0);
	*/
	/*border-right: 1px solid #D6D6D6;*/
	padding: 6px;
	text-transform: none;
}
table.list th:last-child {
	/*border-right: none;*/
}
table.list th.clickable {
	/*
	border-left: 1px solid #D6D6D6;
	border-right: 1px solid #D6D6D6;
	*/
	cursor: pointer;
}
table.list th.clickable.active_asc {
	box-shadow: inset 0px -2px 0px #D6D6D6;
}
table.list th.clickable.active_desc {
	box-shadow: inset 0px 3px 0px #D6D6D6;
}
table.list th.clickable:hover {
	background-color: #E0E0E0; 
	/* thanks http://css-tricks.com/css3-gradients/
	background-image: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#FFFFFF), to(#E0E0E0));
	background-image: -webkit-linear-gradient(top, #FFFFFF, #E0E0E0); 
	background-image:    -moz-linear-gradient(top, #FFFFFF, #E0E0E0);
	background-image:     -ms-linear-gradient(top, #FFFFFF, #E0E0E0);
	background-image:      -o-linear-gradient(top, #FFFFFF, #E0E0E0);
	*/
}
table.list th a {
	color: #000000;
	text-decoration: none;
}
table.list tr {
	/*border-bottom: 1px solid #D6D6D6;*/
}
table.list tr.clickable {
	cursor: pointer;
}
table.list tr.clickable:hover {
	background-color: #E0E0E0; 
}
table.list tr.divider {
	border-bottom: 4px solid #E9E9E9;
}
table tr.draggable:hover {
	color: #E0E0E0;
}
table.list tr:last-child {
	border-bottom: none;
}
table.list tr:last-child td:first-child {
	border-bottom-left-radius: 10px;
}
table.list tr:last-child td:last-child {
	border-bottom-right-radius: 10px;
}
table.list td {
	padding: 6px;
}
table.list td img {
	/* align an icon with text in a table cell */
	/* apparently this is only needed when the icon and text are in the same cell */
	/* margin: -4px 8px -4px 0; */
}
table.list td.body.icon {
	width: 16px;
}

table.plain {
	border-bottom: 0;
}
table.plain td {
	padding: 2px 4px 2px 0;
}

.dragging {
	opacity: .5;
	filter: alpha(opacity=50); /* IE */
	background: #F6F6F6;
	/*
	border-top: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	*/
	/*
	position: relative;
	top: 5px;
	left: 5px;
	*/
}

.row_clear {
	background-color: #FFFFFF;
}
.row_colored, .attachment_selected {
	background-color: #F2F2F2;
}
.row_inactive {
	opacity: .4;
	filter: alpha(opacity=40); /* IE */
}
.row_editing {
	/* override the inactive style */
	opacity: 1.0;
	filter: alpha(opacity=100); /* IE */
}
.row_total {
	border-top: 1px solid #000000;
}

.pagination_numbers, .pagination_all {
	font-family: Arial, sans-serif;
	font-size: 14px;
	line-height: 14px;
	font-weight: bold;
	color: #000000;
	float: left;
	margin-right: 10px;
}
.pagination_numbers a, .pagination_all a {
	text-decoration: none;
}

.pagination_previous, .pagination_next {
	padding-left: 6px;
	width: 0px;
	float: left;
	margin-right: 10px;
	margin-top: 1px;
	overflow: hidden; /* this lets us leave the text there but hide it from view */
}

.pagination_previous {
	background: url(/images/templates/icon_previous.png) no-repeat;
	background-size: 6px 12px;
}

.pagination_next {
	background: url(/images/templates/icon_next.png) no-repeat;
	background-size: 6px 12px;
}

input[type=text], input[type=password] {
	height: 13px; /* 19 - padding - border */
	padding: 2px;
	border: 1px solid #CCCCCC;
	border-radius: 5px;
}
textarea {
	padding: 2px;
	border: 1px solid #CCCCCC;
	resize: vertical;
	border-radius: 5px 5px 0 5px; /* rounding the bottom right corner would interfere with the resize graphic */
}
input.import_files {
	width: 78px; /* just show the button but hide the field */
}
@-moz-document url-prefix() {
	/* don't set this width for Firefox, where it doesn't work */
	input.import_files {
		width: auto;
	}
}

body.safari select {
	/* this compensates for the inflated select menus in Safari that mess up spacing; reducing the padding of the menus would look better, but doesn't seem possible */
	margin-top: -3px !important;
	margin-bottom: -4px !important;
}
#filters input[type=checkbox] {
	/* this compensates for the inflated checkboxes in Chrome that mess up spacing; it would be nice to align them better with inline text, too */
	height: 12px;
}

#page.translations input[type=checkbox] {
	/* this compensates for the inflated checkboxes in Chrome that mess up spacing; it would be nice to align them better with inline text, too */
	height: 12px;
}
.form_element_full {
	width: 420px;
	margin: 0;
}
input[type=text].form_element_full, input[type=password].form_element_full, textarea.form_element_full {
	width: 414px; /* 420 - padding - border */
	margin: 0;
}

.form_element_twothirds {
	width: 266px;
	margin: 0;
}
input[type=text].form_element_twothirds, input[type=password].form_element_twothirds, textarea.form_element_twothirds {
	width: 260px; /* 266 - padding - border */
	margin: 0;
}

.form_element_half {
	width: 200px;
	margin: 0;
}
input[type=text].form_element_half, input[type=password].form_element_half, textarea.form_element_half {
	width: 194px; /* 200 - padding - border */
	margin: 0;
}

.form_element_third {
	width: 120px;
	margin: 0;
}
input[type=text].form_element_third, input[type=password].form_element_third, textarea.form_element_third {
	width: 114px; /* 120 - padding - border */
	margin: 0;
}

.form_element_quarter {
	width: 90px;
	margin: 0;
}
input[type=text].form_element_quarter, input[type=password].form_element_quarter, textarea.form_element_quarter {
	width: 84px; /* 90 - padding - border */
	margin: 0;
}

.form_element_sixth {
	width: 53px;
	margin: 0;
}
input[type=text].form_element_quarter, input[type=password].form_element_quarter, textarea.form_element_quarter {
	width: 47px; /* 90 - padding - border */
	margin: 0;
}

.form_element_date_menus {
	width: 64px;
	margin: 0;
}
.form_element_time_menus {
	width: 62px; /* this is a little smaller because of the colon between the hours and minutes */
	margin: 0;
}

/* position accessory buttons across from the field label and right-aligned with the field */
.field_label_with_buttons {
	position: relative;
}
.field_label_buttons {
	/* if we also add a form_element_* class to this element, we'll get the correct width */
	position: absolute;
	left: 0;
	text-align: right;
	font-size: 10px;
}

/* format the accessory buttons and the Today and Clear links in the date and time menus */
.field_label_buttons a, .date_menus a, .time_menus a {
	font-size: 10px;
	text-decoration: none;
}
.date_menus span, .time_menus span {
	top: -20px !important;
}

.attachment_list {
	width: 270px;
}
#filters .attachment_list {
	width: auto;
}
#page.display .attachment_list {
	width: 200px;
}

#popup_list {
	/* this is sized for a 400h popup with a search field on top and buttons underneath */
	border: 1px solid #E6E6E6;
	border-radius: 5px 0 0 5px; /* rounding the right side would interfere with the scroll bar graphic */
	margin-bottom: 14px;
	max-height: 272px;
	overflow: auto;
}

/*
.thumbnail_group {
	margin-bottom: 20px;
}

.thumbnail_image {
	float: left;
	border: 1px solid #000000;
}

.thumbnail_text {
	margin-left: 120px;
}
.thumbnail_text .body, .thumbnail_text .body a {
	font-size: 14px;
	margin-bottom: 0;
}

/* for some reason this is needed to top-align the text and the thumbnail * /
.thumbnail_image {
	margin-top: 4px;
}
.thumbnail_text .subheading {
	margin-top: -4px;
}
*/

.product_thumbnail {
	width: 175px;
	text-align: center;
	margin-bottom: 20px;
}

.product_description {
	width: 440px;
}

.product_description .heading {
	margin-top: 0;
	margin-bottom: 4px;
}

.progress_icon {
	padding: 80px 0;
	background: url(/images/templates/progress.gif) center center no-repeat;
}

.stack_left {
	float: left;
	margin-right: 20px;
	margin-bottom: 14px; /* this matches the bottom margin of a body paragraph */
}
.stack_left.divider {
	margin-right: 10px;
	padding-right: 10px;
	border-right: 1px solid #CCCCCC;
}
.stack_left.divider_left {
	margin-left: -10px;
	padding-left: 10px;
	border-left: 1px solid #CCCCCC;
}

.stack_left.stack_tight {
	margin-right: 5px;
	margin-bottom: 5px;
}

.stack_left.stack_tighter {
	margin-right: 2px;
	margin-bottom: 2px;
}

.stack_left.stack_flush {
	margin-right: 0;
	margin-bottom: 0;
}

.stack_right {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}

.stack_right.stack_tight {
	margin-left: 5px;
	margin-bottom: 5px;
}

.stack_right.stack_tighter {
	margin-left: 2px;
	margin-bottom: 2px;
}

.stack_right.stack_flush {
	margin-left: 0;
	margin-bottom: 0;
}

.stack_flush_container {
	/* make a container that exceeds its normal size by the amount of the stack margin, to give the appearance of removing the final margin */
	margin-right: -16px;
}

.column_half {
	float: left;
	margin-right: 2%;
	width: 47%; /* this is also set in the IE tweaks file */
}

.column_third {
	float: left;
	margin-right: 2% !important;
	width: 28%;
}

.column_fourth {
	float: left;
	margin-right: 2%;
	width: 22%;
}

.column_fifth {
	float: left;
	margin-right: 2%;
	width: 17%;
}

.column_last {
	margin-right: 0 !important;
}

.columns_flush_container {
	/* make a container that exceeds its normal size by the amount of the column gutter, to give the appearance of removing the final gutter */
	margin-right: -2%;
}

.field_label_with_buttons {
	position: relative;
}

.field_label_buttons {
	/* if we also add a form_element_* class to this element, we'll get the correct width */
	position: absolute;
	left: 0;
	text-align: right;
}

.icon_field_align {
	position: relative; /* if we just use a top margin, the field pushes down with the image */
	margin-left: 3px;
	top: 3px;
}

.icon_overlap {
	/* move the image to the left to overlap the field */
	position: absolute;
	right: 21px;
	top: 2px;
}
.icon_overlap_parent {
	/* put this on the parent element of the icon we're overlapping */
	position: relative;
}

.shrink_to_fit {
	float: left;
}

.centered_fixed {
	margin-left: auto !important;
	margin-right: auto !important;
}

.centered_float {
	position: relative;
	float: right;
	left: -50%;
}

.centered_float_inner {
	position: relative;
	float: left;
	left: 50%;
}

.centered_vertical {
	position: relative;
}

.centered_vertical_inner {
	position: absolute;
	top: 50%;
}

.reset {
	clear: both;
}

.reset_left {
	clear: left;
}

.reset_right {
	clear: right;
}

.hide {
	display: none;
}

.transparent {
	opacity: 0.0;
	filter: alpha(opacity=0); /* IE */
}

.elevated {
	z-index: 10;
}

.submit_hack {
	/* this allows us to add a standard submit button to all our forms so that IE and Firefox will submit when pressing Enter, and hide the button from users but not from the browsers */
	width:0px;
	height:0px;
	position: absolute;
	top: -1000px;
	left: -1000px;
}

.feedback_positive, .feedback_negative {
	font-family: Arial, sans-serif;
	font-size: 14px;
	font-style: normal;
	font-weight: normal;
	text-align: center;
	color: #FFFFFF;
	margin: 0;
	padding: 6px 10px 4px 10px;
	border-radius: 10px;
}

.feedback_positive img, .feedback_negative img {
	margin: -1px 6px 0 0;
}

.feedback_positive {
	background: #0A75BA;
}
.feedback_positive a {
	color: #FFFFFF;
}

.feedback_negative {
	background: #F15A24;
}
.feedback_negative a {
	color: #FFFFFF;
}

.debug {
	font-family: Helvetica, Arial, sans-serif;
	font-size: 10px;
	color: #999999;
}
.debug a {
	color: #999999;
}

