/* ============== Variables ============= */
body {
	--font-family: Helvetica, "Helvetica Neue", Verdana, Roboto, Arial, meiryo, メイリオ, "hiragino kaku gothic pro", "ms pgothic", sans-serif;
	
    --color-primary: #0064bc;
    --color-primary-text: #fff;
    --color-secondary: #0064bc;
    --color-secondary-text: #ffffff;
    --color-links: #344b66;
    --color-links-hover: #0051a6;
    --color-background: #fff; /* Not implemented fully to work with other colors*/
	
    --color-table-primary: #fff;
    --color-table-secondary: #fff;
    --color-table-highlight: #eee;
    --color-table-border: #ddd;

	/* PLP Elements */
	--color-plp-thumbs-border: #eee;
	--plp-thumb-image-radius: 8px;
		
	/* Button Variables */
    --button-font-size: 16px;
    --button-padding: 6px 12px;
    --button-border-radius: 3px;
	--button-transition: all 0.1s ease-in-out;
	--button-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
	--color-button: #2a6496;
    --color-button-text: #fff;
    --color-button-border: #2a6496;
    --color-button-hover: #005bac;
    --color-button-hover-text: #fff;
    --color-button-hover-border: #005bac;
	
    --color-form-border: #ddd;
    --color-image-carousel-border: #ddd;
}

/* ============== Button Style ============= */
.ui-button {
    transition: var(--button-transition);
    background: var(--color-button) !important;
    border-color: var(--color-button-border) !important;
    color: var(--color-button-text) !important;
    border-radius: var(--button-border-radius);
	padding: var(--button-padding);
	font-size: var(--button-font-size) !important;
	box-shadow: var(--button-box-shadow);
    border-width: 1px;
    font-weight: bold !important;
}
.ui-button:hover,
.ui-button:focus {
    background: var(--color-button-hover) !important;
    border-color: var(--color-button-hover-border) !important;
    color: var(--color-button-hover-text) !important;
    font-weight: 500;
}
.ui-dialog-titlebar .ui-button {
	padding: 0 !important;
}
.ui-dialog-titlebar .ui-button:hover {
	background: none !important;
}

/* ============== Breadcrumb Style ============= */
#plp-bread-crumb {
    background: 0 0 !important;
    border: none !important;
    color: var(--color-links) !important;
    padding-left: 0 !important;
    font-weight: normal;
    margin-bottom: 1rem;
}
#plp-bread-crumb a {
    color: var(--color-links) !important;
	text-decoration: none;
	&:hover {
		text-decoration: underline;
	}
}
#plp-bread-crumb a:first-child {
    margin-left: 0;
}

/* ========= Header Links (Ecomerce, Quotes, Shopping Cart, Account) ========== */
#plp-header-links a {
	text-decoration: none !important;
    color: var(--color-links) !important;
	&:hover {
		text-decoration: underline !important;
	    color: var(--color-links-hover) !important;
	}
}
/* Header Links pop-up window */
#ecomm-cart-info, #rfq-cart-info {
	& a#ecomm-view-cart, a#rfq-view-cart {
		color: var(--color-button-text) !important;
		&:hover {
			color: var(--color-button-hover-text) !important;
		}
	}
	& img {
		max-width: 50px;
		padding: 0 5px;
	}
}
nav#plp-header-links {
	height: auto !important;
    display: flow-root;
    margin: 0 auto;
	color: var(--color-links);
	& ul li.cart-widget section.cart-widget-info, #my-account-widget .ui-widget-content {
		border-radius: 10px;
		box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
		border-color: lightgray;
	}
}
/* CAD Cart pop-up */
#plp-cad-cartbench {
	font-family: var(--font-family);
	& .plp-cadqueue > ul {
		width: max-content;
		margin: 5px 0px;
		& >
		li {
			border-color: lightgray !important;
		border-radius: 3px;
		}
	;
		min-width: 200px;
	}
	& menu.filter-list {
		background-color: #fff !important;
		border-color: lightgray !important;
		border-radius: 10px;
		border-top-left-radius: 0px;
		box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
		top: 2em;
	}
	& .plp-cadqueue {
		color: #000;
	}
	& .plp-cadqueue + ol.all-container {
		height: auto;
		& > li > .close {
			float: none;
			display: flex;
			& >	a {
				font-weight: 600;
				padding: 12px 8px !important;
				display: inline-block;
				margin: 3px 3px;
				transition: var(--button-transition);
				border-radius: var(--button-border-radius);
				background-color: var(--color-button) !important;
				border-color: var(--color-button-border) !important;
				min-width: 180px;
				text-align: center;
				width: 100%;
				&:hover {
					text-decoration: underline;
					background-color: var(--color-button-hover) !important;
					border-color: var(--color-button-hover-border) !important;
				}
			}
		}
	}
}

/* ======== Adjusting for medium sized images ===== */
#plp-list-description .plp-list-info.plp-list-info-right, #plp-tree-description .plp-tree-info.plp-tree-info-right {
    /* padding: 0 0 0 224px !important; */
}
#plp-list-description .plp-list-thumb.plp-list-thumb-left {
	/* width: auto; */
}

/* ============== Black/White Icons ============= */
body[data-pagetype=CADPublisher] .ui-icon,
body[data-pagetype=Category] .ui-icon,
body[data-pagetype=CategoryResult] .ui-icon,
body[data-pagetype=ItemDetail] .ui-icon {
    background-image: url("white.png") !important;
}
body[data-pagetype=Category] .ui-state-active .ui-icon, body[data-pagetype=Category] .ui-button:active .ui-icon,
body[data-pagetype=CategoryResult] .ui-state-active .ui-icon, body[data-pagetype=CategoryResult] .ui-button:active .ui-icon,
body[data-pagetype=ItemDetail] .ui-state-active .ui-icon, body[data-pagetype=ItemDetail] .ui-button:active .ui-icon {
    background-image: url("white.png") !important;
}

/* ============== Main Body Page Style ============= */
body, body[data-pagetype=CADPublisher] {
    background: var(--color-background);
    margin: 0;
}
#plp-container {
    width: 80% !important;
    background: var(--color-background) !important;
    padding-bottom: 1rem !important;
    padding-top: 1rem !important;
}
body[data-pagetype=CADPublisher] #plp-container {
	padding: 0 !important;	
}
body .ui-widget {
    font-family: var(--font-family);
    font-size: 1em;
}
@media (min-width: 1200px) {
    #plp-container, div[data-id="plp-searchbox"], #plp-header-links, #plp-cad-cartbench, #plp-terms {
        width: 80% !important;
    }
}
@media (max-width: 1199px) {
    #plp-container, div[data-id="plp-searchbox"], #plp-header-links, #plp-cad-cartbench, #plp-terms {
        width: 85% !important;
    }
}
@media (max-width: 991px) {
    #plp-container, div[data-id="plp-searchbox"], #plp-header-links, #plp-cad-cartbench, #plp-terms {
        width: 90% !important;
    }
}
@media (max-width: 767px) {
    #plp-container, div[data-id="plp-searchbox"], #plp-header-links, #plp-cad-cartbench, #plp-terms {
        width: 95% !important;
    }
}

/* ============== General Components Style ============= */
a[href="/plp/htm/ibot.htm"],
#plp-table-filter .header > tr:last-child, .floatThead-table .header > tr:last-child, 
#plp-container > .plp-page-spacer12:first-child, #plp-container > .plp-page-spacer12:nth-of-type(2) {
    display: none;
}
#plp-cad-cartbench, #plp-terms {
	margin: 0px auto;
	float: none;
	display: flex;
}
.header .ui-widget-header a {
    color: var(--color-secondary-text) !important;
}
.ui-widget-header, .ui-state-default.ui-state-active > a, .ui-widget-header .ui-state-default.ui-state-active, .ui-state-active, .ui-state-active > a, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, .filter-button.ui-state-default, .filter-option a {
    background: var(--color-primary) !important;
    border: 1px solid var(--color-primary) !important;
    color: var(--color-primary-text) !important;
}
.ui-widget-header.plp-action-bar, .ui-widget-header .ui-state-default, .ui-accordion .ui-accordion-header.ui-state-default, .ui-tabs-nav .ui-tabs-anchor {
    background: var(--color-secondary) !important;
    border: 1px solid var(--color-secondary) !important;
    color: var(--color-secondary-text) !important;
}
.ui-widget-content .ui-state-hover:not(.ui-button), .ui-widget-content .ui-state-focus {
    background: var(--color-table-highlight) !important;
    border: none;
}
#plp-anchors a, #plp-container .plp-page-rfi-switchbutton a, #plp-item-table-anchors a, #plp-list-description li div a, #plp-page-actions a, #plp-thumbs a, #plp-tree-description a, #recaptcha_privacy a, .plp-promo a, .plp-table-value a, .read-less-right a, .read-more-right a, .treeview a {
    text-decoration: none !important;
    color: var(--color-links) !important;
}
#plp-anchors a:hover, #plp-container .plp-page-rfi-switchbutton a:hover, #plp-item-table-anchors a:hover, #plp-list-description li div a:hover, #plp-page-actions a:hover, #plp-thumbs a:hover, #plp-tree-description a:hover, #recaptcha_privacy a:hover, .plp-promo a:hover, .plp-table-value a:hover, .read-less-right a:hover, .read-more-right a:hover, .treeview a:hover {
    text-decoration: underline !important;
    color: var(--color-links-hover) !important;
}
.ui-tabs .ui-tabs-panel {
    padding: 0 !important;
}
#plp-product-title > h1 {
    font-weight: 700;
    font-size: 1.25em !important;
}
.ui-widget-shadow {
    background-color: #eeeeee !important;
    background: none;
}
#plp-description-with-image, #plp-item-description-with-image {
	display: flex;
	/* Image Carousel Style */
	& .plp-image-carousel {
		background: none;
		border-radius: 5px;
		border: 1px solid var(--color-image-carousel-border);
		& li {
			background-color: var(--color-background) !important;
		}
	}
	& .plp-image-ctn {
		/* display: inline-block; */
		margin-right: 20px;
		border: 0;
	}
	& .caroufredsel_wrapper {
		border-radius: 5px 5px 0px 0px;
		border-bottom: 1px solid var(--color-image-carousel-border);
	}
	& #pager2 {
		background-color: var(--color-image-carousel-border);
		border-radius: 0px 0px 5px 5px;
	}
	& #imageGallery {
		z-index: 99999;
	}
}
#plp-sidebar-compare {
	& .plp-sidebar-compare-item {
		padding-bottom: 2px !important;
	}
	& .plp-sidebar-delete-item {
		padding-top: 0px !important;
	}
}


/* ============ Category Page =========== */
body[data-pagetype="Category"] #plp-thumbs {
    border-spacing: 20px 15px;
}
body[data-pagetype="Category"] .plp-thumb {
	border-color: var(--color-plp-thumbs-border);
	border-radius: 0.4rem;
	box-shadow: -0.2rem 0.2rem 0.4rem 0px rgb(0, 0, 0, 3%);
	padding: 10px;
	& img {
		border-radius: var(--plp-thumb-image-radius);
		transition: all 0.25s ease-in-out;
	}
	&:hover img {
		scale: 1.05;
	}
}
body[data-pagetype="Category"] {
	& #plp-list-description, #plp-tree-description {
		border-color: var(--color-plp-thumbs-border);
		border: none;
		& > li {
			border: 1px solid var(--color-plp-thumbs-border) !important;
			border-radius: 8px;
			margin-bottom: 10px;
			box-shadow: -0.2rem 0.2rem 0.4rem 0px rgb(0, 0, 0, 3%);
		}
	}
}

/* ============ Category Result Page Style =============== */
body[data-pagetype="CategoryResult"] table.floatThead-table[style*="table-layout: fixed"] {
    margin-top: 91px !important;
}
body[data-pagetype="CategoryResult"] .cad-fixed-popup {
    /*top: 120px !important;*/
    z-index: 999999 !important;
}
table#plp-table-filter > tbody > tr:nth-child(odd) {
    background: var(--color-table-primary);
}
table#plp-table-filter > tbody > tr:nth-child(even) {
    background: var(--color-table-secondary);
}
table#plp-table-filter > tbody > tr.ui-state-default,
#plp-thumbs .plp-thumb.ui-state-hover {
    background: var(--color-table-highlight);
}
.plp-table-wrapper {
	border-color: var(--color-table-border);
	border-radius: 10px;
	box-shadow: 0.1rem 0.1rem 0.25rem 0px rgb(0, 0, 0, 5%);
}
img[name=ImageCADViewer] {
	max-width: 38px;
}
body[data-pagetype=CategoryResult] .ui-accordion .ui-accordion-content {
    padding: 0;
	border-color: var(--color-table-border);
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	box-shadow: -0.2rem 0.2rem 0.4rem 0px rgb(0, 0, 0, 3%);
}
/* ============ Filter Style or Result Page ============ */
.plp-2-column-right #plp-sidebar {
    width: 23% !important
}
.plp-2-column-right #plp-main {
    width: 75.5% !important
}
#plp-sidebar {
	border-color: #fff;
	box-shadow: 0rem 0.1rem 0.4rem 0px rgb(0, 0, 0, 10%);;
	& select.ui-widget-content.plp-advlistbox {
	    width: 100%;
	    border-color: #ddd;
	}
	& .adv-attributecontrol {
	    width: 100%
	}
	& .ui-accordion .ui-accordion-content {
		padding: 0;
		border: none;
	}
}

/* ============= Item Detail =========== */
body[data-pagetype=ItemDetail] #plp-item-table-tabs {
    border: none !important;
}
body[data-pagetype=ItemDetail] #plp-item-table-tabs .plp-tab-content table:not(td>table) tr:nth-child(odd) {
    background-color: #fff !important;
}
#plp-item-table-tabs .plp-tab-content table {
    border: 1px solid var(--color-table-border) !important;
    border-top: none !important;
}
.ui-tabs .ui-tabs-nav {
    background: none !important;
    border: none !important;
    border-bottom: 1px solid var(--color-table-border) !important;
    padding-left: 0 !important;
}
.ui-tabs .ui-tabs-nav li {
    border-bottom-width: 1px !important;
}
body[data-pagetype=ItemDetail] .ui-accordion .ui-accordion-content {
    padding: 0;
	border-color: var(--color-table-border);
	border-bottom-left-radius: 8px;
	border-bottom-right-radius: 8px;
	box-shadow: -0.2rem 0.2rem 0.4rem 0px rgb(0, 0, 0, 3%);
}
.plp-oddrow {
    background-color: var(--color-table-secondary);
}
/* No Wrap for PN */
body[data-pagetype="CategoryResult"] #plp-table-filter tr td:first-child {
	& > span[itemprop="sku"] {
		display: flex;
		align-items: center;
		& input {
			margin-right: 5px;
		}
		& a {
			/* white-space: nowrap; */
			margin: auto;
		}
	}
}
body[data-pagetype="CategoryResult"] #plp-table-filter tr td:first-child a {
    text-decoration: underline !important;
}
body[data-pagetype="CategoryResult"] #plp-table-filter tr td:first-child a:hover {
    text-decoration: none !important;
}

/* ============ Advanced Search 12 Page Style =============== */
body[data-pagetype=AdvancedSearch12] .ui-state-default > .adv-attributecontrol + a {
    border: none !important;
    background: none !important;
}
body[data-pagetype=AdvancedSearch12] .ui-state-default.plp-adv-left-panel,
body[data-pagetype=AdvancedSearch12] .ui-state-default.plp-adv-right-panel {
	background: #fff;
	color: #000;
}
body[data-pagetype=AdvancedSearch12] select.plp-advlistbox,
body[data-pagetype=AdvancedSearch12] .adv-attributecontrol {
	width: 100%
}
body[data-pagetype=AdvancedSearch12] .plp-adv-group-header a {
	color: var(--color-secondary-text);
}

/* ============ General Form Fields ============== */
#formholder .plp-form-textfield, #formholder .plp-form-textfield input, #formholder .plp-form-textfield textarea, #formholder .plp-form-email-textfield, #formholder .plp-form-email-textfield input, #formholder .plp-form-email-textfield textarea {
    border: 1px solid var(--color-form-border);
}
body[data-pagetype="Request"],
body[data-pagetype="Email"],
body[data-pagetype="EmailCart"],
body[data-pagetype="UserData"] {
	& .buttonBar.plp-form-button:first-child {
	    display: none;
	}
	& .buttonBar.plp-form-button {
	    border: none;
	    padding: 0;
	    width: 100%;
	}
}
.plp-request-info-form td.plp-form-heading,
.plp-request-email-info-form td.plp-form-email-heading,
.plp-cadrfx-group-body td.plp-cadrfx-left-panel,
.plp-cadrfx-group-body td.plp-cadrfx-right-panel,
.plp-cadrfx-group-body td.plp-form-heading {
	background: none;
	border: 1px solid var(--color-form-border) !important;
	color:#333;
	padding: 8px;
}
.plp-cadrfx-group-body input {
	border: 1px solid #bbb;
	border-radius: 3px
}
.plp-cadrfx-group-body select {
	border-radius: 3px;
	font-size: 0.9rem;
}

/*================== Request Page Style ================*/
body[data-pagetype="Request"] #formholder > table > tbody > tr:last-child {
    display: none;
}
body[data-pagetype="Request"] #formholder .plp-form-heading,
body[data-pagetype="Request"] .plp-product-request-info table td.plp-product-info-blankspace,
body[data-pagetype="Request"] .plp-product-request-info table td.plp-product-number {
	background:none;
	border: 1px solid var(--color-form-border);
	color:#333 ;
}
body[data-pagetype="Request"] .plp-product-attach-item .plp-product-attach-button-holder {
	border: 1px solid var(--color-form-border);
}

/* ============= Email Page ================== */
body[data-pagetype="Email"] table td.plp-form-email-heading {
	background:none !important;
	border: 1px solid var(--color-form-border);
	color: #333;
}

/* ============= Compare Page Style ================ */
body[data-pagetype="Compare"] {
	& #plp-description-with-image + .plp-page-spacer12,
	  #plp-buttonbar + .plp-page-spacer12 {
		display: none;
	}
	& #plp-compare-items {
		& a {
			color:var(--color-links) !important;
			text-decoration:underline !important;
		}
		& td {
			border-color: var(--color-form-border);
		}
		& td.plp-compare-product.ui-state-default {
			background: var(--color-table-highlight);
		}
	}
}


/* ======== CAD Pop-up Window style ======= */
#plpprogress.cadpublisher.ui-dialog-content.ui-widget-content.ui-dialog-normal {
	height: 790px !important;
	padding-top: 0px !important;
	padding-bottom: 0 !important;
	& iframe#cadiframe {
		min-height: 790px !important;
	}
}
#cadviewer > iframe {
    height: 475px !important;
    width: 642px !important;
    border: 1px solid var(--color-form-border) !important;
	border-bottom: none !important;
}
.ui-dialog .ui-dialog-titlebar {
    font-size: 15px !important;
    padding: 0 1em !important;
}
.ui-dialog-titlebar-close {
    border: none !important;
}
.ui-dialog-titlebar .ui-button {
	background: none !important;
}
body[data-pagetype="CADPublisher"] {
	& #plp-container {
	    width: 644px !important;
	}
	& #plp-cad-emaildownload {
		margin-top: 10px !important;
		margin-bottom: 0 !important;
		width: -webkit-fill-available !important;
		border-bottom: none !important;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		& #cad-basic {
			width: -webkit-fill-available;
			padding: 5px 8px 5px 8px;
			& #divPlpDownloadList {
				height: 32px;
				margin-bottom: 0;
				width: 40%;
				& select {
					border-radius: var(--button-border-radius);
					font-size: 14px;
					height: 32px;
					padding-left: 5px;
				}
			}
			& div:nth-child(2) {
				width: 60%;
				& #scope-plp-cadupdateuser {
					padding: 7px 0px;
				}
			}
		}
	}
	
	& #cad-model {
		margin-top: 0px;
		margin-bottom: 0px;
		height: 478px;
		& >	article {
			padding-top: 0 !important;
			padding-bottom: 0 !important;
		}
		& #cad-new-viewer {
			height: 478px;
			padding: 0px 0px!important;
			border-left: 1px solid var(--color-form-border) !important;
			border-right: 1px solid var(--color-form-border) !important;
			& #new-cadviewer {
				height: 478px;
			}
		}
	}
	
	& #cad-info {
		line-height: 22px;
		width: -webkit-fill-available !important;
		border-bottom-left-radius: 10px;
		border-bottom-right-radius: 10px;
		border: 1px solid var(--color-form-border);
		border-left: 0px;
		margin-bottom: 6px;
		& dt, dd {
			font-size: 14px;
		border: 0px solid !important;
		}
		& dd {
			color: #707070;
		}
		& dl:not(:last-child) {
		    border-bottom: 1px solid var(--color-form-border);
		}
		& dl:last-child {
			& dt {
				border-bottom-left-radius: 9px;
			}
			& dd {
				border-bottom-right-radius: 10px;
			}
		}
		& >	article {
			width: -webkit-fill-available;
		}
	}
	& input.plp-rfx {
		width: 95%;
	}
	& #plp-additional-downloads {
		& .lblAdditionalDownloads {
			padding-top: 0;
		}
	}
	& .plp-page-spacer12 {
		display: none;
	}
}

/* ======== Default Search Style ======= */
div[data-id="plp-searchbox"] {
    margin: auto;
    float: none !important;
    padding-bottom: 1.5rem;
	& nav.plp-page-searchBox, nav.plp-page-categorySelect {
		margin: 0.5rem 0px;
	    background-color: var(--color-primary);
	    border-color: var(--color-primary);
	    line-height: normal;
	}
	& nav.plp-page-searchBox {
		& select {
		    border-radius: 2px;
		    border-right: none;
		    border-bottom-right-radius: 0;
		    border-top-right-radius: 0;
		}
		& input {
		    border-left: none;
		    border-bottom-left-radius: 0;
		    border-top-left-radius: 0;
		}
	}
	& .plp-page-categorySelect {
	    border-color: var(--color-primary);
	}
}
/* ========= Search Page (Keyword) Style ======== */
body[data-pagetype="Keyword"] {
	& .plp-search-result-with-imgRight .plp-search-row {
		width: 100%;
	}
	& .plp-search-selection {
		background: none !important;
		border: none !important;
		box-shadow: none;
	}
}

/* ========= Not Found page ============ */
body[data-pagetype="NotFound"] {
	& header, 
	footer,
	div[data-id="plp-searchbox"] {
		display: none;
	}
}
/* ============= Cart Page Style ============= */
#view-cart-shipping-widget, #ecomm-tax-exempt {
	background: none !important;
	border: none !important;
}

/* ============= CAD Cart Page Style ========= */
#plp-cadcart-page-pagination .plp-cadcart-pageinfo {
	background: var(--color-primary);
	color: var(--color-primary-text);
}

/* ========== Express Ordering Page Style ========= */
#plp-expressorder {
	& .ecomm-express-item input[type="checkbox"] {
		margin-right: 5px;
		margin-top: 0px;
	}
	& .plp-expresscart-link-wrapper > a {
		margin-right: 5px;
	}
}

/* ========= Configurator Page Style =========== */
body[data-pagetype=Configurator] {
	& #plp-buttonbar-configure {
		margin: 5px 0px;
		& > span {
			margin-left: 6px;
		}
	}
	& #plp-configurator #plp-configure-accordion table td {
	    background: 0 0;
		color: black;
	}
}

/* ========== Better Responsivness Styles ============*/
@media (max-width: 992px) {
	.plp-page-divider:has(+ #plp-page-pagination-table),
 	#plp-page-pagination-table {
		width: 100% !important;
	}
}
@media (max-width: 768px) {
	body[data-pagetype=CategoryResult], body[data-pagetype=ItemDetail] {
		.firstcolumn, .secondcolumn {
	        width: 100% !important;
	    }
	}
}