/** TIJoe E-Commerce Plugin Front End Styles **/

.notice,
.error,
.success {
	padding: 5px;
	font-size: 0.9em;
}

.fixed {
	position: fixed;
}

.hidden {
	display: none;
}


/** Cart Widget **/

#cartWidget a {
	display: block;
	text-decoration: none;
	overflow: hidden;
}

#cartWidget a:hover .cart-quantity,
#cartWidget a:hover .cart-subtotal {
	text-decoration: underline;
}

#cartWidget .cart,
#cartWidget .cart-quantity,
#cartWidget .cart-subtotal {
	display: block;
	float: left;
}

#cartWidget .cart-quantity,
#cartWidget .cart-subtotal {
	margin-left: 10px;
	color: #254b5f;
	font-size: 16px;
}

#headerContainer #cartWidget {
	position: absolute;
	top: 90px;
	right: 46px;
}


/** Shopping Cart Page **/

#tiShoppingCart {
	margin-bottom: 13px;
	overflow: hidden;
}

#tiShoppingCart .error,
#tiShoppingCart .success {
	margin-bottom: 5px;
}

#tiShoppingCart #productList thead .details {
	width: 70%;
}

#tiShoppingCart #productList thead .quantity,
#tiShoppingCart #productList thead .price {
	width: 15%;
}

#tiShoppingCart #productList tbody .details {
	padding-left: 5px;
	text-align: left;
}

#tiShoppingCart #productList .discounted {
	font-size: 1.5em !important;
	color: #8a1f11;
	cursor: pointer;
}

#tiShoppingCart #productList tbody .quantity {
	text-align: left;
}

#tiShoppingCart #productList tbody .quantity input {
	width: 40px;
	margin-left: 3px;
	float: left;
	text-align: right;
}

#tiShoppingCart #productList tbody .quantity .increment {
	width:16px;
	height: 16px;
	margin-top: 1px;
	margin-right: 3px;
	display: block;
	float: right;
	background: #275b77;
	border: 2px #2f627e outset;
	color: #fff;
	font-size: 16px !important;
	line-height: 17px;
	text-align: center;
}

#tiShoppingCart #productList tbody .quantity .increment:hover {
	padding: 1px -1px -1px 1px;
	border-style: inset;
	cursor: pointer;
}

#tiShoppingCart #productList tbody .price {
	padding-right: 5px;
	text-align: right;
}

#tiShoppingCart #checkoutButton {
	width: 199px;
	height: 30px;
	margin-top: 2px;
	padding-left: 5px;
	float: right;
	clear: both;
	background: #275b77 url( '../images/icoNav.png' ) 190px 50% no-repeat;
	border: 3px #2f627e outset;
	color: #fff;
	font-size: 14px;
	line-height: 30px;
	text-decoration: none;
}

#tiShoppingCart #checkoutButton:hover {
	padding: 1px -1px -1px 1px;
	border-style: inset;
}


/** Cart Summary & Ship Location Tables **/

#cartSummary,
#shipLocation {
	width: auto;
	margin: 2px 0 20px 0;
	float: right;
	border: none;
}

#shipLocation {
	margin-right: 2px;
}

#cartSummary tr,
#shipLocation tr {
	border-bottom: 2px solid #fff;
}

#cartSummary td,
#cartSummary th,
#shipLocation td,
#shipLocation th {
	padding: 0;
	font-size: 14px;
	text-align: right;
	line-height: 30px;
	border: none;
}

#cartSummary th,
#shipLocation th {
	background: #254b5f;
	color: #fff;
	text-align: center;
}

#cartSummary td:nth-child( odd ),
#shipLocation td:nth-child( odd ) {
	padding-right: 10px;
	background-color: #dadada;
	font-weight: bold;
	border-right: 2px #fff solid;
}

#cartSummary td:nth-child( odd ) {
	width: 100px;
}

#shipLocation td:nth-child( odd ) {
	width: 120px;
}

#cartSummary td:nth-child( even ),
#shipLocation td:nth-child( even ) {
	padding-right: 5px;
	background-color: #f5f5f5;
}

#cartSummary td:nth-child( even ) {
	width: 205px;
}

#shipLocation td:nth-child( even ) {
	width: 205px;
}

#shipLocation input,
#shipLocation select {
	width: 98%;
	color: #254b5f;
	font-size: 12px !important;
	font-family: Arial, Helvetica, sans-serif;
}

#cartSummary tr.order-discount {
	display: none;
}
#cartSummary tr.order-discount.active {
	display: table-row;
}

#cartSummary .cart-discountDollarValue {
	color: red;
}

#cartSummary .total {
	color: #fff;
}

#cartSummary .total td:nth-child( odd ) {
	background-color: #254b5f;
}

#cartSummary .total td:nth-child( even ) {
	background-color: #367494;
}

#upsLogo {
	width: 20px;
	margin: 5px 0 0 5px;
	float: left;
}

#ship-options {
	padding: 5px;
	text-align: center;
}

.intlShipping {
	width: 100%;
	margin-bottom: 0;
	padding: 5px;
	float: left;
	position: relative;
	list-style: none;
	text-align: left;
}

.intlShipping input[type="radio"] {
	position: absolute;
	left: 5px;
}


/** Share Cart Element **/

.shareButton {
	padding: 0 5px;
	background: #275b77;
	border: 3px #2f627e outset;
	color: #fff;
	font-size: 14px;
	line-height: 30px;
}

.shareButton:hover {
	border-style: inset;
	cursor: pointer;
}

.shareButton i {
	padding-left: 5px;
	font-size: 18px;
	vertical-align: middle;
}

#shareOpen {
	margin-top: 2px;
}


/** Share Dialog **/

#shareDialog, #shareDialog * {
	box-sizing: border-box;
}


#dialogContent {
	margin-bottom: 10px;
}

#dialogMessage {
	min-height: 10px;
	margin-bottom: 10px;
}

#dialogFields {
	border: 1px #bebebe solid;
}


#shareGenerate {
	margin: auto;
	display: block;
}

#dialogMessage .error,
#dialogMessage .success {
	margin-bottom: 0;
}

#dialogFields dl {
	margin: 0;
	padding: 10px;
	overflow: hidden;
	border-bottom: 1px #bebebe solid;
}

#dialogFields dl:last-child {
	border-bottom: none;
}

#dialogFields dt,
#dialogFields dd {
	font-size: 16px;
	line-height: 24px;
	float: left;
}

#dialogFields dt {
	width: 20%;
	padding-right: 15px;
	text-align: right;
}

#dialogFields dd {
	width: 80%;
}

#dialogFields input {
	width: 70%;
	padding: 5px;
	border: 1px #bebebe solid;
	color: #254b5f;
}

#dialogFields input[disabled="disabled"] {
	background: #e4e4e4;
}


#cartLink,
#cartEmail,
#cartSend {
	font-size: 14px !important;
}

#cartSend {
	float: right;
	line-height: 22px !important;
}


/** Product Details Page **/

form#tiProductDetails {
	padding: 0;
}

#tiProductDetails #details,
#tiProductDetails #pricing {
	margin: 0;
	font-size: 11px;
	float: left;
	overflow: hidden;
}

#tiProductDetails dt,
#tiProductDetails dd {
	min-height: 28px;
	padding: 2px;
	float: left;
	border-bottom: 2px #fff solid;
	line-height: 28px;
}

#tiProductDetails dt {
	background: #cecece;
	border-right: 2px #fff solid;
	text-align: right;
	font-weight: bold;
}

#tiProductDetails dt:after {
	content: ':';
}

#tiProductDetails dd {
	background: #e4e4e4;
}

#tiProductDetails #details {
	width: 500px;
}

#tiProductDetails #details dt {
	width: 190px;
}

#tiProductDetails #details dd {
	width: 295px;
	border-right: 5px #fff solid;
}

#tiProductDetails #details dd select {
	width: 100%;
}

#tiProductDetails #pricing {
	width: 205px;
}

#tiProductDetails #pricing dt {
	width: 70px;
}

#tiProductDetails #pricing dd {
	width: 125px;
}

#tiProductDetails #pricing dd.full {
	width: 129px;
	height: 32px;
	padding: 0;
}

#tiProductDetails #discount {
	float: right;
}

#tiProductDetails #discountedPrice {
	width: 70px;
	margin: 2px 2px 0 0;
}

#tiProductDetails #pricing dd .addToCart {
	height: 100%;
	width: 100%;
	display: block;
	background: #275b77;
	border-color: #2f627e;
	color: #fff;
	text-align: center;
}

#tiProductDetails #pricing dd .cartDisabled {
	height: 28px;
	width: 97%;
	background: #cecece;
	border: 2px #7e7e7e outset;
	color: #7e7e7e;
	text-align: center;
}

#tiProductDetails #pricing dd .addToCart:hover {
	padding: 1px -1px -1px 1px;
	border-style: inset;
	cursor: pointer;
}

#tiProductDetails #pricing #prodQuantity {
	width: 75px;
	height: 15px;
	margin: 3px 0 0 0;
	float: right;
	text-align: right;
}

#tiProductDetails #pricing .increment {
	width:16px;
	height: 16px;
	margin: 3px 2px 0 0;
	float: left;
	background: #275b77;
	border: 2px #2f627e outset;
	color: #fff;
	font-size: 17px !important;
	line-height: 18px;
	text-align: center;
}

#tiProductDetails #pricing .increment:hover {
	padding: 1px -1px -1px 1px;
	border-style: inset;
	cursor: pointer;
}

#tiProductDetails #price {
	float: right;
}

#tiProductDetails .image {
	width: 205px;
	float: left;
}

.unsalable {
	margin: 0 0 5px 0;
	float: left;
}


/** Checkout Page / Order History **/

.sysCheckout #primary form {
	padding: 0;
}

#orderHistory {
	margin-bottom: 10px;
}


/*** JQuery Accordian ***/

#checkout h3,
#orderHistory h3 {
	margin: 0 0 10px 0;
	padding: 5px;
	border: 2px outset #2f627e;
	background: #275b77;
	color: #fff;
}

#checkout h4,
#orderHistory h4 {
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom: 3px #254b5f double;
	font-weight: normal;
}

#orderHistory > h3 {
	margin: 0;
	padding: 5px 5px 5px 30px;
	background-image: url( '../images/icoPaginationRight.png' );
	background-position: 10px 50%;
	background-repeat: no-repeat;
}

#tiCheckout > h3 {
	margin: 0;
	padding: 5px;
	font-size: 21px;
}

#tiCheckout > h3.error {
	background-color: #e24747;
	border-color: #fbc2c4;
}

#tiCheckout > h3 a,
#orderHistory > h3 a {
	color: #fff;
}

#tiCheckout > h3 a:hover,
#orderHistory > h3 a:hover {
	text-decoration: none;
}

#tiCheckout > h3.ui-state-active,
#orderHistory > h3.ui-state-active {
	background-image: url( '../images/icoArrowWhiteDown.png' );
	background-position: 10px 60%;
}

#tiCheckout div.section,
#orderHistory div {
	padding: 10px;
	overflow: hidden;
}

#tiCheckout div.section > div {
	overflow: hidden;
}


/*** Form Input Elements / Definition Lists ***/

.required:before {
	color: red;
	content: '* ';
}

#primary #profile {
	padding: 10px;
}

#profile ul {
	list-style: none;
}

#profile .buttons {
	width: 100%;
	float: left;
	overflow: hidden;
}

#tiCheckout .invalid {
	width: 230px;
	clear: none;
	text-align: left;
	color: #8a1f11;
}

#tiCheckout .invalid:after {
	content: none;
}

#tiCheckout input.error {
	padding: 1px;
	border-color: #fbc2c4;
}

#tiCheckout div.section > div {
	width: 100%;
	margin-bottom: 10px;
	padding-bottom: 10px;
	float: left;
	overflow: hidden;
}

#tiCheckout div.section div:last-child {
	margin-bottom: 0;
}

#tiCheckout label,
#tiCheckout input[ type = 'text' ],
#tiCheckout select,
#profile label,
#profile input[ type = 'text' ],
#profile input[ type = 'password' ],
#orderHistory dt,
#orderHistory dd {
	margin: 5px;
	display: block;
	float: left
}

#orderHistory h4 {
	width: 100%;
	margin-top: 5px;
	float: left;
}

#orderHistory dt,
#orderHistory dd {
	font-size: 13px;
}

#orderHistory .separate {
	width: 100%;
	margin: 5px 0;
	padding: 0;
	float: left;
	border-top: 1px #254b5f solid;
}

#tiCheckout label,
#profile label {
	width: 150px;
	padding-top: 6px;
	clear: both;
	text-align: right;
}

#tiCheckout #shippingSelector div label {
	width: 400px;
}

#orderHistory dt {
	width: 120px;
	clear: both;
	text-align: right;
	font-weight: bold;
}

#tiCheckout label:after,
#profile label:after,
#orderHistory dt:after {
	content: ':';
}

#tiCheckout input[ type = 'text' ],
#profile input[ type = 'text' ],
#profile input[ type = 'password' ] {
	width: 250px;
	height: 17px;
	border-width: 1px;
}

#orderHistory dd {
	width: 520px;
	min-height: 17px;
}

#tiCheckout select {
	width: 255px;
}

#tiCheckout input[ type = 'radio' ] {
	margin-top: 12px;
	float: left;
	clear: both;
}

.sysCheckout #primary form input[ type = 'submit' ],
#primary #profile input[ type = 'submit' ] {
	margin-top: 15px;
	float: right;
}

#tiCheckout #shippingSelector {
	background: #e4e4e4;
	border: 1px #254b5f dashed;
}

#tiCheckout #shippingSelector div {
	float: left;
}

#tiCheckout #shippingSelector div label {
	text-align: left;
	clear: none;
}

#tiCheckout #shippingSelector div label:after {
	content: none;
}

#tiCheckout .ui-accordion-content #shippingAddress,
#tiCheckout .ui-accordion-content #shippingContact {
	display: none;
}

#tiCheckout #paymentDetails #payCardType {
	width: 140px;
	margin-right: 10px;
}

#tiCheckout #paymentDetails img {
	height: 20px;
	margin-top: 2px;
}

#tiCheckout #paymentDetails #payExpiryMonth {
	width: 50px;
}

#tiCheckout #paymentDetails #payExpiryYear {
	width: 75px;
}

#tiCheckout #autofill {
	margin: 0;
}


/*** Checkout Confirmation Page ***/

#checkout .details {
	width: 100%;
	overflow: hidden;
}

#checkout dl {
	width: 50%;
	float: left;
	overflow: hidden;
}

#checkout .full {
	width: 100%;
}

#checkout dt,
#checkout dd {
	min-height: 2em;
	display: block;
	float: left;
	font-size: 12px;
}

#checkout dt {
	width: 32%;
	margin-right: 3%;
	text-align: right;
	font-weight: bold;
}

#checkout dt:after {
	content: ':';
}

#checkout dd {
	width: 65%;
}

#checkout table {
	margin: 10px 0 0 0;
}

#checkout td {
	font-size: 12px;
}

#checkout tbody td.item {
	padding-left: 5px;
	text-align: left;
}

#checkout tbody td.price {
	padding-right: 5px;
	text-align: right;
}

#checkout #cartSummary {
	width: auto;
	margin: 10px 0;
	float: right;
	border: none;
}

#checkout #cartSummary tr {
	border-bottom: 2px solid #fff;
}

#checkout #cartSummary td {
	padding: 0;
	font-size: 14px;
	text-align: right;
	line-height: 30px;
	border: none;
}

#checkout #cartSummary td:nth-child( odd ) {
	width: 100px;
	padding-right: 10px;
	background-color: #dadada;
	font-weight: bold;
	border-right: 2px #fff solid;
}

#checkout #cartSummary td:nth-child( even ) {
	width: 205px;
	padding-right: 5px;
	background-color: #f5f5f5;
}

#checkout #cartSummary .total {
	color: #fff;
}

#checkout #cartSummary .total td:nth-child( odd ) {
	background-color: #254b5f;
}

#checkout #cartSummary .total td:nth-child( even ) {
	background-color: #367494;
}

#checkout #shippingNotice,
#checkout #locationNotice {
	width: 320px;
	margin: 0;
	margin-top: 10px;
	float: left;
}

#checkout .intlShipping {
	width: 100%;
	margin-bottom: 0;
	padding: 5px;
	float: left;
	position: relative;
	list-style: none;
	text-align: left;
}

#checkout .intlShipping input[type="radio"] {
	position: absolute;
	left: 5px;
}

#checkout #backToCheckout {
	margin-top: 15px;
	display: inline-block;
}

#checkout #submitPayment {
	width: 145px;
	height: 30px;
	margin-bottom: 10px;
	padding-left: 5px;
	float: right;
	clear: both;
	background: #275b77 url( '../images/icoNav.png' ) 135px 50% no-repeat;
	border: 3px #2f627e outset;
	color: #fff;
	font-size: 14px;
	line-height: 30px;
	text-decoration: none;
}

#checkout #submitPayment:hover {
	padding: 1px -1px -1px 1px;
	border-style: inset;
}

#checkout #payWithPaypal {
	float: right;
	margin-bottom: 10px;
}


/** Product Listing Page **/

#products .success, 
#products .error,
#products .notice {
	margin-bottom: 5px;
}


/*** Product List Controls ***/

#listControls,
#listControlsBottom {
	height: 30px;
	background: #e4e4e4;
}

#listControls {
	border-bottom: 5px #fff solid;
}

#listControlsBottom {
	border-top: 5px #fff solid;
	text-align: center;
}

#listControls form {
	padding: 0;
}

#listControls select {
	margin: 6px 0 0 0;
}

#listControls form label {
	margin-left: 5px;
}

#listControls #ordering {
	float: left;
}

#listControls #numRecords {
	margin-right: 5px;
	margin-left: 5px;
	float: right;
}

#listControls .pagination,
#listControlsBottom .pagination {
	margin: 2px 0 0 0;
	float: right;
	background: url( '../images/bgPagination.png' ) repeat-x;
	list-style: none;
	border: 2px outset #2F627E;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

#listControlsBottom .pagination {
	margin: 2px 0;
	float: none;
	overflow: hidden;
	display: inline-block;
}

#listControls .pagination li,
#listControlsBottom .pagination li {
	min-width: 16px;
	margin: 0;
	padding: 2px 4px 2px 5px;
	float: left;
	border-right: 2px #254b5f solid;
	color: #fff;
	font-size: 14px;
	text-align: center;
}

#listControls .pagination a li:hover,
#listControlsBottom .pagination a li:hover {
	background: #254b5f;
}

#listControls .pagination li.current,
#listControlsBottom .pagination li.current {
	color: #bebebe;
}

#listControls .pagination li a,
#listControlsBottom .pagination li a {
	display: block;
	color: #fff;
}

#listControls .pagination a .next:hover,
#listControlsBottom .pagination a.next:hover {
	background: #254b5f url( '../images/icoPaginationRight.png' ) 50% 50% no-repeat;
}

#listControls .pagination a .prev:hover,
#listControlsBottom .pagination a .prev:hover {
	background: #254b5f url( '../images/icoPaginationLeft.png' ) 50% 50% no-repeat;
}

#listControls .pagination .next,
#listControlsBottom .pagination .next {
	background: url( '../images/icoPaginationRight.png' ) 50% 50% no-repeat;
	border: none;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-topright: 10px;
	-moz-border-radius-bottomright: 10px;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
}

#listControls .pagination .prev,
#listControlsBottom .pagination .prev {
	background: url( '../images/icoPaginationLeft.png' ) 50% 50% no-repeat;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-bottom-left-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-bottomleft: 10px;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
}

/*** Product Filter Controls ***/
#filterControls {
	position: relative;
	border-bottom: 5px #fff solid;
	color: #fff;
}

#listResults {
	position: absolute;
	top: 5px;
	right: 5px;
	text-align: right;
}

#showHideFilters {
	height: 20px;
	margin: 0;
	padding: 3px 5px 3px 30px;
	background: #254b5f url( '../images/icoPaginationRight.png' ) 10px 50% no-repeat;
	border: 2px outset #2f627e;
	font-size: 14px;
}

#showHideFilters:hover {
	cursor: pointer;
}

#filterContainer {
	width: 100%;
	padding: 0 !important;
	display: none;
	background: #3a89b3;
	border-bottom: 5px #fff solid;
	overflow: hidden;
	float: left;
}

#filterButtons {
	padding: 5px 5px 0 5px;
	float: left;
}

#addFilter {
	line-height: 20px;
}

#addFilter,
#submitFilters {
	width: 100px;
	height: 20px;
	margin: 0 0 5px 0;
	padding: 0;
	float: left;
	clear: left;
	background: #e4e4e4;
	/*border: 1px solid #2f627e;*/
	border: none;
	-webkit-border--radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	color: #254b5f;
	font-size: 11px;
	text-align: center;
}

#addFilter:hover,
#submitFilters:hover {
	cursor: pointer;
}

#filterContainer .filter {
	height: 20px;
	width: 560px;
	padding: 6px 10px;
	background: #387494;
	border: 2px outset #2f627e;
	float: right;
}

#filterContainer .filterType,
#filterContainer .filterElements,
#filterContainer .filterElements label,
#filterContainer .filterElements input {
	margin: 0;
	float: left;
}

#filterContainer .filterElements label,
#filterContainer .filterElements input {
	height: 18px;
	margin-left: 10px;
	padding: 0;
}

#filterContainer .filterElements label {
	width: 60px;
	line-height: 18px;
}

#filterContainer .filterElements input {
	border: 1px black solid;
}

#filterContainer .filterElements input.like {
	width: 220px;
}

#filterContainer .filterElements input.min,
#filterContainer .filterElements input.max {
	width: 69px;
}

#filterContainer .removeFilter {
	height: 20px;
	float: right;
	text-decoration: underline;
}

#filterContainer .removeFilter:hover {
	cursor: pointer;
}


/** Tables **/

#productList,
#productListHead {
	margin: 0;
	border: none;
	font-size: 11px;
	width: 100%;
}

#productList thead,
#productListHead thead {
	background: #bebebe;
	border-bottom: 2px #fff solid;
	font-weight: bold;
}

#productListHead {
	width: 705px;
	top: 0;
	table-layout: fixed;
}

#productList thead tr,
#productListHead thead tr {
	height: 40px;
	font-size: 13px;
}

#productList tbody tr {
	height: 30px;
}

#productList tr,
#productListHead tr {
	border: none;
}

#productList tbody tr:nth-child(odd) {
	background: #dadada;
}

#productList tbody tr:nth-child(even) {
	background: #f5f5f5;
}

#products #productList tbody tr:hover {
	cursor: pointer;
	background: #254b5f;
}

#products #productList tbody tr:hover a {
	color: #fff;
}

#productList td,
#productListHead td {
	padding: 2px;
	vertical-align: middle;
	text-align: center;
	border: none;
	border-right: 2px #fff solid;
}

#productList td:last-child,
#productListHead td:last-child {
	border-right: none;
}

#productList td a {
	color: #254b5f;
}

#products #productList td a:hover {
	text-decoration: none;
}


/** Modal Dialog Styles **/

.ui-widget-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.3;
}

.ui-dialog {
	background: #2f627e;
	border: 2px #fff solid;
}

.ui-dialog-titlebar {
	padding: 10px;
	background: #bebebe;
	color: #2f627e;
}

.ui-icon {
	float: right;
	color: #2f627e;
	text-decoration: underline;
}

.ui-dialog-content {
	padding: 10px;
	background: #e4e4e4;
	border-top: 2px #fff solid;
	border-bottom: 2px #fff solid;
	color: #2f627e;
}

.ui-dialog-buttonpane {
	padding: 10px;
	background: #bebebe;
	text-align: right;
}

.ui-dialog-content p, 
.ui-dialog-content li {
	font-size: 0.9em;
}

.ui-dialog-content a {
	color: #367494;
}

.ui-button {
	margin-left: 5px;
}

.ui-dialog-titlebar-close {
	float: right;
}