/* B2B Contract Portal — front end. Neutral by default; company accent through --b2bcp-accent. */
.b2bcp-order,
.b2bcp-quote,
.b2bcp-account {
	--b2bcp-line: rgba(0, 0, 0, 0.14);
	--b2bcp-muted: rgba(0, 0, 0, 0.6);
	margin: 0 0 1.5em;
	/* Keep our forms clickable when a theme's footer (position: relative) overlaps the product. */
	position: relative;
	z-index: 1;
}

/* Products without tabs or related products below (quote products, for example) leave the
   floated gallery and summary uncleared; some themes (Hello Elementor) then draw the footer over
   the form. Clear the floats inside the product. */
.woocommerce div.product::after {
	content: "";
	display: table;
	clear: both;
}

.b2bcp-order fieldset,
.b2bcp-quote {
	border: 1px solid var(--b2bcp-line);
	border-radius: 6px;
	padding: 1em 1.1em;
	margin: 0 0 1em;
	min-width: 0;
}

.b2bcp-order legend {
	font-weight: 600;
	padding: 0 0.4em;
}

.b2bcp-hint,
.b2bcp-muted {
	color: var(--b2bcp-muted);
	font-size: 0.9em;
}

.b2bcp-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.b2bcp-order table {
	width: 100%;
	border-collapse: collapse;
	margin: 0.5em 0;
}

.b2bcp-order th,
.b2bcp-order td {
	padding: 0.35em 0.4em;
	border-bottom: 1px solid var(--b2bcp-line);
	text-align: left;
	vertical-align: middle;
	font-size: 0.95em;
}

.b2bcp-order th {
	font-weight: 600;
	white-space: nowrap;
}

.b2bcp-order td input[type="text"],
.b2bcp-order td input[type="number"],
.b2bcp-order td select,
.b2bcp-order td textarea {
	width: 100%;
	min-width: 7em;
	box-sizing: border-box;
	margin: 0;
}

.b2bcp-order .b2bcp-branch-qty {
	width: 5.5em;
	min-width: 0;
}

.b2bcp-people-list {
	display: flex;
	flex-direction: column;
	gap: 0.6em;
	margin: 0.5em 0;
}

.b2bcp-person {
	border: 1px solid var(--b2bcp-line);
	border-radius: 6px;
	padding: 0.5em 0.75em 0.75em;
	background: rgba(255, 255, 255, 0.55);
}

.b2bcp-person-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0.25em;
}

.b2bcp-num {
	font-size: 0.85em;
	font-weight: 600;
	color: var(--b2bcp-muted);
}

.b2bcp-person-fields {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10.5em, 1fr));
	gap: 0.5em 0.75em;
}

.b2bcp-field {
	display: flex;
	flex-direction: column;
	gap: 0.2em;
	margin: 0;
	font-weight: 400;
	min-width: 0;
}

.b2bcp-field-label {
	font-size: 0.85em;
	font-weight: 600;
}

.b2bcp-field input[type="text"],
.b2bcp-field input[type="number"],
.b2bcp-field select,
.b2bcp-field textarea {
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	min-width: 0;
}

.b2bcp-remove-person {
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	font-size: 1.4em;
	line-height: 1;
	cursor: pointer;
	color: var(--b2bcp-muted) !important;
	padding: 0 0.25em !important;
	min-height: 0 !important;
}

.b2bcp-remove-person:hover,
.b2bcp-remove-person:focus {
	color: #b32d2e !important;
}

.b2bcp-people-actions {
	display: flex;
	align-items: center;
	gap: 1em;
	margin: 0.5em 0 0;
}

.b2bcp-count {
	color: var(--b2bcp-muted);
	font-size: 0.9em;
	margin: 0;
}

.b2bcp-ship-mode {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em 0.75em;
	margin: 0 0 1em;
}

.b2bcp-ship-mode-option {
	display: inline-flex;
	align-items: center;
	gap: 0.4em;
	font-weight: 600;
}

.b2bcp-ship-mode .b2bcp-ship-mode-option:last-child {
	flex-basis: 100%;
	font-weight: normal;
}

.b2bcp-ship-mode select:disabled {
	opacity: 0.5;
}

.b2bcp-people.b2bcp-ship-one .b2bcp-field-address {
	display: none;
}

.b2bcp-apply-all {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5em;
}

.b2bcp-apply-all input[type="number"] {
	width: 5.5em;
}

.b2bcp-parts-modes {
	display: flex;
	gap: 1.5em;
	flex-wrap: wrap;
}

.b2bcp-part-list {
	list-style: none;
	margin: 0.5em 0;
	padding: 0;
}

.b2bcp-part-list li {
	padding: 0.25em 0;
}

.b2bcp-part-price {
	color: var(--b2bcp-muted);
	margin-left: 0.4em;
}

/* Complete product: list everything, no checkboxes or part prices. */
.b2bcp-parts-box:not(.is-parts) .b2bcp-part-price,
.b2bcp-parts-box:not(.is-parts) .b2bcp-parts-hint,
.b2bcp-parts-box:not(.is-parts) .b2bcp-part-list input[type="checkbox"] {
	display: none;
}

/* Only some parts: list just the parts that can be ordered alone. */
.b2bcp-parts-box.is-parts .b2bcp-part-list li.is-fixed {
	display: none;
}

.b2bcp-fixed-qty {
	display: inline-block;
	min-width: 2em;
	text-align: center;
}

/* Quote form */
.b2bcp-quote h3 {
	margin-top: 0;
}

.b2bcp-quote .form-row label {
	display: block;
	font-weight: 600;
	margin-bottom: 0.25em;
}

.b2bcp-quote .b2bcp-q-checkbox label {
	font-weight: 400;
}

.b2bcp-quote input[type="text"],
.b2bcp-quote input[type="email"],
.b2bcp-quote input[type="tel"],
.b2bcp-quote input[type="number"],
.b2bcp-quote select,
.b2bcp-quote textarea {
	width: 100%;
	box-sizing: border-box;
}

.b2bcp-hp {
	position: absolute !important;
	left: -9999px !important;
	height: 1px;
	overflow: hidden;
}

.b2bcp-quote-price {
	font-size: 0.9em;
	color: var(--b2bcp-muted, rgba(0, 0, 0, 0.6));
}

.b2bcp-form-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(14em, 1fr));
	gap: 0 1em;
}

/* Company bar */
.b2bcp-bar {
	border-bottom: 3px solid var(--b2bcp-accent-line, rgba(0, 0, 0, 0.14));
	background: #fff;
	color: #222;
	font-size: 14px;
	position: relative;
	z-index: 10;
}

.b2bcp-bar-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 6px 16px;
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.b2bcp-bar img.b2bcp-bar-logo {
	height: 32px !important;
	width: auto !important;
	max-width: 160px !important;
	object-fit: contain;
	display: block;
	margin: 0;
}

.b2bcp-bar-text {
	font-weight: 600;
}

.b2bcp-bar-link {
	margin-left: auto;
	color: var(--b2bcp-accent-line, inherit);
}

/* My Account → Company */
.b2bcp-company-head {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0 0 0.5em;
}

.b2bcp-company-head h2 {
	margin: 0;
}

.b2bcp-company-head img.b2bcp-company-logo {
	max-height: 64px !important;
	width: auto !important;
	max-width: 220px !important;
}

.b2bcp-link-button {
	background: none !important;
	border: 0 !important;
	padding: 0 !important;
	color: inherit !important;
	text-decoration: underline;
	font: inherit;
	font-size: 0.9em;
	cursor: pointer;
	min-height: 0 !important;
}

.b2bcp-facts {
	list-style: none;
	padding: 0;
	margin: 0 0 1.5em;
}

.b2bcp-switch {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em;
	align-items: center;
	padding: 0.75em 1em;
	border: 1px solid rgba(0, 0, 0, 0.14);
	border-left: 4px solid var(--b2bcp-accent-line, rgba(0, 0, 0, 0.3));
	border-radius: 6px;
}

.b2bcp-inline {
	display: inline;
	margin-left: 0.75em;
}

.b2bcp-actions {
	white-space: nowrap;
}

body.b2bcp-branded .b2bcp-order legend,
body.b2bcp-branded .b2bcp-company-head h2 {
	border-bottom: 2px solid var(--b2bcp-accent-line);
}

@media (max-width: 600px) {
	.b2bcp-order fieldset {
		padding: 0.75em;
	}

	.b2bcp-bar-link {
		margin-left: 0;
	}
}

/* New address panel */
.b2bcp-new-address {
	border: 1px dashed var(--b2bcp-line, rgba(0, 0, 0, 0.2));
	border-radius: 6px;
	padding: 0.6em 0.9em;
	margin: 0 0 1em;
}

.b2bcp-new-address summary {
	cursor: pointer;
	font-weight: 600;
}

.b2bcp-new-address[open] summary {
	margin-bottom: 0.6em;
}

.b2bcp-new-address .b2bcp-form-grid {
	gap: 0.5em 0.75em;
}

.b2bcp-new-address input[type="text"] {
	width: 100%;
	box-sizing: border-box;
}

.b2bcp-new-address-actions {
	display: flex;
	align-items: center;
	gap: 0.75em;
	flex-wrap: wrap;
	margin: 0.75em 0 0.25em;
}

.b2bcp-new-address-status {
	font-size: 0.9em;
}

.b2bcp-welcome {
	margin: 0 0 1.5em;
}

.b2bcp-welcome-logo {
	display: block;
	max-height: 64px;
	width: auto;
	margin: 0 0 1em;
}

/* Company home in My Account (B2BCP_Dashboard). */
.b2bcp-dashboard {
	--b2bcp-line: rgba(0, 0, 0, 0.12);
	--b2bcp-muted: rgba(0, 0, 0, 0.6);
	--b2bcp-soft: rgba(0, 0, 0, 0.035);
}

.b2bcp-hero {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px 28px;
	padding: 32px;
	margin: 0 0 20px;
	border: 2px solid var(--b2bcp-accent, #1f2937);
	border-radius: 20px;
	background: #ffffff;
	color: #17141f;
}

.b2bcp-hero-logo {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 96px;
	height: 96px;
	padding: 12px;
	border: 1px solid var(--b2bcp-line);
	border-radius: 16px;
	background: #ffffff;
	box-sizing: border-box;
}

.b2bcp-hero-logo img {
	display: block;
	max-width: 100%;
	max-height: 100%;
	width: auto;
	height: auto;
}

.b2bcp-hero-text {
	flex: 1 1 260px;
	min-width: 0;
}

.b2bcp-hero-eyebrow {
	margin: 0 0 4px;
	font-size: 0.8em;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--b2bcp-accent-line, inherit);
}

.b2bcp-hero .b2bcp-hero-title {
	margin: 0 0 8px;
	font-size: 1.75em;
	line-height: 1.15;
	color: inherit;
}

.b2bcp-hero-text p:last-child {
	margin: 0;
	color: var(--b2bcp-muted);
}

.b2bcp-hero a.b2bcp-hero-cta {
	flex: 0 0 auto;
	display: inline-block;
	padding: 11px 22px;
	border: 2px solid var(--b2bcp-accent, #1f2937);
	border-radius: 999px;
	background: transparent;
	color: #111111;
	font-weight: 600;
	text-decoration: none;
}

.b2bcp-hero a.b2bcp-hero-cta:hover,
.b2bcp-hero a.b2bcp-hero-cta:focus {
	background: var(--b2bcp-soft, rgba(0, 0, 0, 0.035));
	color: #111111;
}

.b2bcp-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 12px;
	margin: 0 0 32px;
}

/* Themes often underline links inside page content; the dashboard's tiles and cards never are. */
.b2bcp-dashboard a.b2bcp-stat,
.b2bcp-dashboard a.b2bcp-stat *,
.b2bcp-dashboard a.b2bcp-card,
.b2bcp-dashboard a.b2bcp-card *,
.b2bcp-dashboard a.b2bcp-hero-cta,
.b2bcp-dashboard .b2bcp-order-list a,
.b2bcp-dashboard .b2bcp-order-list a *,
.b2bcp-dashboard .b2bcp-section-head a {
	text-decoration: none !important;
}

.b2bcp-dashboard a.b2bcp-stat {
	display: block;
	padding: 18px 20px;
	border: 1px solid var(--b2bcp-line);
	border-radius: 14px;
	background: var(--b2bcp-soft);
	color: inherit;
	transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
}

.b2bcp-dashboard a.b2bcp-stat:hover,
.b2bcp-dashboard a.b2bcp-stat:focus {
	background: #ffffff;
	border-color: var(--b2bcp-accent-line, #111111);
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
}

.b2bcp-stat-number {
	display: block;
	font-size: 2.1em;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
	line-height: 1.1;
	color: var(--b2bcp-accent-line, inherit);
}

.b2bcp-stat-label {
	display: block;
	margin-top: 4px;
	font-size: 0.9em;
	color: var(--b2bcp-muted);
}

.b2bcp-dashboard-section {
	margin: 0 0 32px;
}

.b2bcp-section-head {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 14px;
}

.b2bcp-section-head h2 {
	margin: 0;
	font-size: 1.3em;
}

.b2bcp-dashboard .b2bcp-section-head a {
	font-size: 0.95em;
	font-weight: 600;
	white-space: nowrap;
	color: var(--b2bcp-accent-line, inherit);
}

.b2bcp-dashboard .b2bcp-section-head a::after {
	content: " \2192";
}

.b2bcp-cards {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 16px;
}

.b2bcp-dashboard a.b2bcp-card {
	display: flex;
	flex-direction: column;
	border: 1px solid var(--b2bcp-line);
	border-radius: 16px;
	overflow: hidden;
	background: #ffffff;
	color: inherit;
	transition: border-color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.b2bcp-dashboard a.b2bcp-card:hover,
.b2bcp-dashboard a.b2bcp-card:focus {
	border-color: var(--b2bcp-accent-line, #111111);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.1);
	transform: translateY(-2px);
}

.b2bcp-card img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	margin: 0;
	border-radius: 0;
	background: var(--b2bcp-soft);
}

.b2bcp-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	padding: 14px 16px 16px;
}

.b2bcp-card-name {
	font-weight: 700;
	font-size: 1.05em;
	line-height: 1.3;
}

.b2bcp-card-price {
	color: var(--b2bcp-muted);
}

.b2bcp-card-action {
	margin-top: auto;
	padding-top: 10px;
	font-weight: 600;
	color: var(--b2bcp-accent-line, inherit);
}

.b2bcp-card-action::after {
	content: " \2192";
}

.b2bcp-empty {
	padding: 22px;
	border: 1px dashed var(--b2bcp-line);
	border-radius: 12px;
	color: var(--b2bcp-muted);
}

.b2bcp-order-list {
	margin: 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--b2bcp-line);
	border-radius: 12px;
	overflow: hidden;
}

.b2bcp-order-list li {
	margin: 0;
	border-top: 1px solid var(--b2bcp-line);
}

.b2bcp-order-list li:first-child {
	border-top: 0;
}

.b2bcp-dashboard .b2bcp-order-list a {
	display: grid;
	grid-template-columns: minmax(70px, 1fr) minmax(110px, 1.4fr) minmax(100px, 1fr) minmax(80px, auto);
	align-items: center;
	gap: 12px;
	padding: 14px 18px;
	color: inherit;
	text-decoration: none;
}

.b2bcp-dashboard .b2bcp-order-list a:hover,
.b2bcp-dashboard .b2bcp-order-list a:focus {
	background: var(--b2bcp-soft);
}

.b2bcp-order-number {
	font-weight: 600;
}

.b2bcp-order-date {
	color: var(--b2bcp-muted);
}

.b2bcp-order-total {
	text-align: right;
	font-weight: 600;
}

.b2bcp-status {
	justify-self: start;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 0.85em;
	font-weight: 600;
	background: #eceff3;
	color: #3b4252;
}

.b2bcp-status-processing,
.b2bcp-status-on-hold,
.b2bcp-status-pending {
	background: #fdf0d5;
	color: #7a4b00;
}

.b2bcp-status-completed {
	background: #dff3e4;
	color: #17603a;
}

.b2bcp-status-cancelled,
.b2bcp-status-failed,
.b2bcp-status-refunded {
	background: #fbe1e1;
	color: #8f1d1d;
}

@media (max-width: 560px) {
	.b2bcp-hero {
		padding: 20px;
	}

	.b2bcp-dashboard .b2bcp-order-list a {
		grid-template-columns: 1fr auto;
	}

	.b2bcp-hero-logo {
		width: 72px;
		height: 72px;
	}

	.b2bcp-order-total {
		text-align: left;
	}
}

/* Account menu for company users. */
body.b2bcp-company .woocommerce-MyAccount-navigation ul {
	margin: 0 0 24px;
	padding: 8px;
	list-style: none;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 12px;
}

body.b2bcp-company .woocommerce-MyAccount-navigation li,
body.b2bcp-company .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link,
body.b2bcp-company .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link:last-child {
	margin: 0;
	border: 0;
}

/* Newer WooCommerce borders each link; our menu is one rounded box with a gap between items. */
body.b2bcp-company .woocommerce-MyAccount-navigation li + li {
	margin-top: 2px;
}

body.b2bcp-company .woocommerce-MyAccount-navigation li a {
	display: block;
	padding: 10px 14px;
	border-radius: 8px;
	color: inherit;
	font-weight: 500;
	text-decoration: none;
}

body.b2bcp-company .woocommerce-MyAccount-navigation li a:hover,
body.b2bcp-company .woocommerce-MyAccount-navigation li a:focus {
	background: rgba(0, 0, 0, 0.05);
}

body.b2bcp-company .woocommerce-MyAccount-navigation li.is-active a {
	background: var(--b2bcp-accent, #1f2937);
	color: var(--b2bcp-accent-ink, #ffffff);
}

/* Classic checkout: company billing shown as a summary instead of a form. */
.b2bcp-checkout-summary {
	padding: 20px 22px;
	margin: 0 0 24px;
	border: 1px solid rgba(0, 0, 0, 0.12);
	border-radius: 12px;
}

.b2bcp-checkout-summary h3 {
	margin: 0 0 14px;
}

.b2bcp-checkout-summary dl {
	display: grid;
	grid-template-columns: minmax(100px, auto) 1fr;
	gap: 10px 18px;
	margin: 0 0 14px;
}

.b2bcp-checkout-summary dt {
	font-weight: 600;
}

.b2bcp-checkout-summary dd {
	margin: 0;
}

.b2bcp-checkout-summary .b2bcp-muted {
	margin: 0;
	color: rgba(0, 0, 0, 0.6);
	font-size: 0.9em;
}

/* Order page (product pages with the order form): header, two columns of cards, one big button. */
body.b2bcp-order-page div.product div.summary {
	float: none;
	width: 100%;
	max-width: none;
	margin: 0;
}

/* Themes that lay out the product page as a grid (gallery | summary): the order page has no gallery, so use one column. */
body.b2bcp-order-page div.product {
	grid-template-columns: minmax(0, 1fr) !important;
}

body.b2bcp-order-page div.product div.summary {
	grid-column: 1 / -1;
}

.b2bcp-order-head {
	display: flex;
	align-items: center;
	gap: 20px;
	margin: 0 0 24px;
}

.b2bcp-order-head img.b2bcp-order-head-image {
	flex: 0 0 auto;
	width: 96px;
	height: 96px;
	object-fit: cover;
	margin: 0;
	border-radius: 12px;
	border: 1px solid rgba(0, 0, 0, 0.1);
}

.b2bcp-order-head-text {
	min-width: 0;
}

.b2bcp-order-head .product_title {
	margin: 0 0 4px;
}

.b2bcp-order-head .price {
	margin: 0;
	font-weight: 600;
}

.b2bcp-order-head-desc {
	margin-top: 6px;
	color: rgba(0, 0, 0, 0.65);
}

.b2bcp-order-head-desc p:last-child {
	margin-bottom: 0;
}

body.b2bcp-order-page form.cart {
	display: block;
}

body.b2bcp-order-page .b2bcp-order {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 24px;
	align-items: start;
	margin: 0 0 20px;
}

body.b2bcp-order-page .b2bcp-order.b2bcp-order-single {
	grid-template-columns: minmax(0, 1fr);
	max-width: 640px;
}

.b2bcp-order-side,
.b2bcp-order-main {
	min-width: 0;
}

body.b2bcp-order-page .b2bcp-order fieldset {
	margin: 0 0 24px;
	padding: 0 22px 20px;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	background: #ffffff;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

/* Legends as card headers: a floated legend sits inside the card like a heading. */
body.b2bcp-order-page .b2bcp-order legend {
	float: left;
	width: calc(100% + 44px);
	margin: 0 -22px 16px;
	padding: 16px 22px 14px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	font-size: 1em;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	box-sizing: border-box;
}

body.b2bcp-order-page .b2bcp-order legend::before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 7px;
	margin: 0 10px 2px 0;
	border-radius: 50%;
	background: var(--b2bcp-accent, #333333);
	vertical-align: middle;
}

body.b2bcp-order-page .b2bcp-order legend + * {
	clear: both;
}

body.b2bcp-branded.b2bcp-order-page .b2bcp-order legend {
	border-bottom-width: 1px;
	border-bottom-color: rgba(0, 0, 0, 0.08);
}

.b2bcp-orderer dl {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 8px 16px;
	margin: 0 0 10px;
}

.b2bcp-orderer dt {
	font-weight: 600;
}

.b2bcp-orderer dd {
	min-width: 0;
	margin: 0;
	overflow-wrap: break-word;
	word-break: normal;
}

.b2bcp-ship .b2bcp-ship-mode {
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: stretch;
}

.b2bcp-ship .b2bcp-ship-mode .b2bcp-ship-mode-option:last-child {
	flex-basis: auto;
}

.b2bcp-ship .b2bcp-ship-mode select {
	width: 100%;
}

/* The product's picture above the names. */
.b2bcp-product-picture {
	margin: 4px 0 20px;
	padding: 16px;
	border-radius: 12px;
	background: rgba(0, 0, 0, 0.035);
	text-align: center;
}

.b2bcp-product-picture img {
	display: inline-block;
	max-width: 100%;
	max-height: 320px;
	width: auto;
	height: auto;
	margin: 0;
	border-radius: 8px;
}

/* One large button across the page. */
body.b2bcp-order-page form.cart .single_add_to_cart_button {
	display: block;
	float: none;
	width: 100%;
	padding: 16px 24px;
	border-radius: 999px;
	font-size: 1.05em;
	font-weight: 700;
	background-color: var(--b2bcp-accent, #222222);
	border-color: var(--b2bcp-accent, #222222);
	color: var(--b2bcp-accent-ink, #ffffff);
}

@media (max-width: 860px) {
	body.b2bcp-order-page .b2bcp-order {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Order page for several products. */
.b2bcp-types {
	display: grid;
	gap: 10px;
}

.b2bcp-type {
	display: block;
	padding: 12px 14px;
	border: 1px solid rgba(0, 0, 0, 0.14);
	border-radius: 10px;
	color: inherit;
	text-decoration: none;
}

a.b2bcp-type:hover,
a.b2bcp-type:focus {
	border-color: var(--b2bcp-accent-line, #333333);
}

.b2bcp-type.is-selected {
	border: 2px solid var(--b2bcp-accent-line, #333333);
	background: rgba(0, 0, 0, 0.02);
}

.b2bcp-type strong,
.b2bcp-type small {
	display: block;
}

.b2bcp-type small {
	margin-top: 3px;
	color: rgba(0, 0, 0, 0.6);
	font-size: 0.85em;
	line-height: 1.4;
}

.b2bcp-summary-lines {
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
}

.b2bcp-summary-lines li {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	margin: 0;
	padding: 6px 0;
	border-bottom: 1px dashed rgba(0, 0, 0, 0.12);
	font-size: 0.95em;
}

.b2bcp-summary-lines li.b2bcp-summary-empty {
	color: rgba(0, 0, 0, 0.55);
	border-bottom: 0;
}

.b2bcp-summary-total {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin: 0 0 6px;
}

.b2bcp-summary-amount {
	font-size: 1.35em;
	color: var(--b2bcp-accent-line, inherit);
}

@media (min-width: 861px) {
	body.b2bcp-order-page .b2bcp-group .b2bcp-summary {
		position: sticky;
		top: 24px;
	}
}

.b2bcp-option-strip {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
	gap: 12px;
	margin: 0 0 18px;
	padding: 0;
	list-style: none;
}

.b2bcp-option-strip li {
	margin: 0;
	text-align: center;
	font-size: 0.85em;
}

.b2bcp-option-strip img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	margin: 0 0 6px;
	border-radius: 8px;
	background: rgba(0, 0, 0, 0.035);
}

.b2bcp-option-name,
.b2bcp-option-price {
	display: block;
}

.b2bcp-option-name {
	font-weight: 600;
}

.b2bcp-qty-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 14px;
}

.b2bcp-qty-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 12px;
}

.b2bcp-qty-card img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: contain;
	margin: 0;
	background: rgba(0, 0, 0, 0.035);
}

.b2bcp-qty-card-body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 4px;
	padding: 12px 14px 14px;
}

.b2bcp-qty-card-sku {
	font-family: ui-monospace, Menlo, Consolas, monospace;
	font-size: 0.8em;
	color: rgba(0, 0, 0, 0.55);
}

.b2bcp-qty-card-price {
	font-weight: 600;
}

.b2bcp-stepper {
	display: inline-flex;
	align-items: stretch;
	align-self: flex-start;
	margin-top: auto;
	padding-top: 8px;
}

.b2bcp-stepper .b2bcp-step {
	width: 36px;
	padding: 0;
	border: 1px solid rgba(0, 0, 0, 0.2);
	background: #ffffff;
	color: inherit;
	font-size: 1.1em;
	line-height: 1;
	cursor: pointer;
}

.b2bcp-stepper .b2bcp-step:first-child {
	border-radius: 8px 0 0 8px;
}

.b2bcp-stepper .b2bcp-step:last-child {
	border-radius: 0 8px 8px 0;
}

.b2bcp-stepper input[type="number"] {
	width: 52px;
	margin: 0;
	border-right: 0;
	border-left: 0;
	border-radius: 0;
	text-align: center;
	-moz-appearance: textfield;
}

.b2bcp-stepper input[type="number"]::-webkit-inner-spin-button,
.b2bcp-stepper input[type="number"]::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

/* Upload a list (CSV). */
.b2bcp-csv {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 14px;
	margin: 10px 0 4px;
}
.b2bcp-csv .b2bcp-csv-upload {
	position: relative;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 18px;
	border: 1.5px solid currentColor;
	border-radius: 999px;
	background: transparent;
	font-weight: 600;
	line-height: 1.2;
}
.b2bcp-csv .b2bcp-csv-upload::before {
	content: "";
	width: 16px;
	height: 16px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 11V2M4.5 5.5 8 2l3.5 3.5M2 11v3h12v-3' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 11V2M4.5 5.5 8 2l3.5 3.5M2 11v3h12v-3' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}
.b2bcp-csv .b2bcp-csv-file {
	position: absolute;
	inset: 0;
	width: 100%;
	opacity: 0;
	cursor: pointer;
}
.b2bcp-csv .b2bcp-csv-template {
	background: none;
	border: 0;
	padding: 0;
	color: inherit;
	text-decoration: underline;
	cursor: pointer;
	font: inherit;
}
.b2bcp-csv .b2bcp-hint,
.b2bcp-csv .b2bcp-csv-status {
	flex-basis: 100%;
	margin: 0;
}
.b2bcp-csv .b2bcp-csv-status:empty {
	display: none;
}
.b2bcp-csv .b2bcp-csv-status.is-error {
	color: #b32d2e;
}
.b2bcp-order .b2bcp-csv-miss {
	border-color: #d63638 !important;
	box-shadow: 0 0 0 1px #d63638 !important;
	background-color: #fcf0f1 !important;
}

/* PrintDesk product details (0.13.0) */
.b2bcp-sold-per { font-size: 0.75em; font-weight: 400; opacity: 0.75; }
.b2bcp-production-time { margin: 0 0 1em; font-size: 0.9em; opacity: 0.8; }

/* Password pages (0.15.1): invitation, new password, forgot password, check your email. */
.b2bcp-pw-page .entry-title,.b2bcp-pw-page .page-title,.b2bcp-pw-page .woocommerce-products-header{display:none}
.b2bcp-pw-page .woocommerce{max-width:460px;margin:24px auto 48px}
.b2bcp-pw-card{background:#fff;color:#1C1A24;border:1px solid #E7E5EC;border-radius:18px;overflow:hidden;box-shadow:0 1px 2px rgba(0,0,0,.04),0 20px 40px -30px rgba(23,20,31,.45);font-size:15px;line-height:1.55}
.b2bcp-pw-bar{height:6px;background:var(--b2bcp-pw-co,#1C1A24)}
.b2bcp-pw-inner{padding:30px 32px 28px}
.b2bcp-pw-brands{display:flex;align-items:center;gap:12px;margin:0 0 22px}
.b2bcp-pw-logo{width:46px;height:46px;flex:0 0 46px;border-radius:12px;object-fit:contain}
span.b2bcp-pw-logo{background:var(--b2bcp-pw-co,#1C1A24);color:var(--b2bcp-pw-on,#fff);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px}
.b2bcp-pw-brands b{display:block;font-size:15px}
.b2bcp-pw-brands span span{display:block;font-size:12.5px;color:#6B6878}
.b2bcp-pw-card h1.b2bcp-pw-title{margin:0 0 8px;font-size:26px;line-height:1.2;letter-spacing:-.4px;color:#1C1A24;font-weight:700}
.b2bcp-pw-lead,.b2bcp-pw-lead p{margin:0 0 20px;color:#4A4658}
.b2bcp-pw-user{display:flex;align-items:center;gap:10px;margin:0 0 20px;padding:11px 14px;background:#F6F5F8;border-radius:10px;font-size:13.5px;word-break:break-all}
.b2bcp-pw-av{width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#E7E5EC;color:#1C1A24;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}
.b2bcp-pw-user small{display:block;color:#6B6878;font-size:12px}
.b2bcp-pw-warn{margin:0 0 18px;padding:12px 14px;border-radius:10px;background:#FEF3C7;color:#7A4A06;font-size:13.5px}
.b2bcp-pw-warn a{color:#7A4A06;font-weight:700;text-decoration:underline}
.b2bcp-pw-hide{display:none}
.b2bcp-pw-card form{margin:0;padding:0;border:0}
.b2bcp-pw-card form>p:first-child:not(.form-row){display:none}
.b2bcp-pw-card .form-row{float:none;width:100%;margin:0 0 14px;padding:0}
.b2bcp-pw-card .b2bcp-pw-second{display:none}
.b2bcp-pw-card label{display:block;font-size:13px;font-weight:600;color:#1C1A24;margin:0 0 6px}
.b2bcp-pw-card input.input-text{width:100%;padding:12px 64px 12px 13px;border:1px solid #CFCBD8;border-radius:10px;background:#fff;color:#1C1A24;font-size:15px;box-shadow:none}
.b2bcp-pw-card input.input-text:focus{outline:0;border-color:#1C1A24;box-shadow:0 0 0 3px rgba(28,26,36,.12)}
.b2bcp-pw-card .password-input{display:block;position:relative}
.b2bcp-pw-card .show-password-input{display:none}
.b2bcp-pw-eye{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:none;color:#6B6878;font-size:13px;font-weight:600;cursor:pointer;padding:6px;margin:0;box-shadow:none;min-height:0;line-height:1}
.b2bcp-pw-eye:hover{color:#1C1A24;background:none}
.b2bcp-pw-card .woocommerce-password-strength{margin-top:8px;padding:6px 10px;border-radius:8px;font-size:12.5px}
.b2bcp-pw-card .woocommerce-password-hint{display:block;font-size:12.5px;color:#6B6878;margin-top:6px}
.b2bcp-pw-card .clear{display:none}
.b2bcp-pw-card button[type=submit],.b2bcp-pw-card .woocommerce-Button{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin:6px 0 0;border:0;border-radius:11px;background:#1C1A24;color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s;text-transform:none;letter-spacing:0}
.b2bcp-pw-card button[type=submit]:hover,.b2bcp-pw-card .woocommerce-Button:hover,.b2bcp-pw-card button[type=submit]:focus{background:#000;color:#fff}
.b2bcp-pw-card button[type=submit]:active{background:#000}
.b2bcp-pw-card button[type=submit]:disabled{opacity:.55;cursor:not-allowed}
.b2bcp-pw-next{margin:22px 0 0;padding:16px 0 0;border-top:1px solid #E7E5EC;font-size:13px;color:#6B6878}
.b2bcp-pw-next b{color:#1C1A24}
.b2bcp-pw-next ol{margin:6px 0 0;padding-left:18px}
.b2bcp-pw-next li{padding:2px 0}
.b2bcp-pw-foot{text-align:center;margin:16px 0 0;font-size:12.5px;color:#6B6878}
.b2bcp-pw-page .woocommerce-message,.b2bcp-pw-page .woocommerce-error,.b2bcp-pw-page .woocommerce-info{border-radius:10px}
@media (max-width:560px){.b2bcp-pw-inner{padding:24px 20px}.b2bcp-pw-card h1.b2bcp-pw-title{font-size:23px}}
.b2bcp-pw-inner>p{margin:0;color:#4A4658}
/* Stronger than theme and WooCommerce layout rules. */
.b2bcp-pw-card,.b2bcp-pw-foot{max-width:460px;margin-left:auto;margin-right:auto}
.woocommerce .b2bcp-pw-card form .form-row,.woocommerce .b2bcp-pw-card form .form-row-first,.woocommerce .b2bcp-pw-card form .form-row-last{float:none;width:100%;margin:0 0 14px;padding:0}
.woocommerce .b2bcp-pw-card form .form-row label{line-height:1.4;margin:0 0 6px}
body .b2bcp-pw-card .b2bcp-pw-eye,body .b2bcp-pw-card .b2bcp-pw-eye:hover,body .b2bcp-pw-card .b2bcp-pw-eye:focus{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:auto;min-width:0;height:auto;border:0;border-radius:6px;background:transparent;color:#6B6878;font-size:13px;font-weight:600;padding:6px 8px;margin:0;box-shadow:none;outline-offset:0;text-decoration:none}
body .b2bcp-pw-card .b2bcp-pw-eye:hover{color:#1C1A24}
body .b2bcp-pw-card form button[type=submit]{width:100%;background:#1C1A24;color:#fff;border:0;border-radius:11px;min-height:48px;padding:12px 18px;font-size:15px;font-weight:700;text-decoration:none}
body .b2bcp-pw-card form button[type=submit]:hover,body .b2bcp-pw-card form button[type=submit]:focus,body .b2bcp-pw-card form button[type=submit]:active{background:#000;color:#fff;border:0;text-decoration:none}
body .b2bcp-pw-card form button[type=submit]:focus-visible{outline:2px solid #1C1A24;outline-offset:2px}
body .b2bcp-pw-card input.input-text{width:100%;max-width:none;border:1px solid #CFCBD8;border-radius:10px}
body .b2bcp-pw-card input.input-text:focus{border-color:#1C1A24;outline:0;box-shadow:0 0 0 3px rgba(28,26,36,.12)}
body .b2bcp-pw-card form button[type=submit]{background:#1C1A24 !important;color:#fff !important}
body .b2bcp-pw-card form button[type=submit]:hover,body .b2bcp-pw-card form button[type=submit]:active,body .b2bcp-pw-card form button[type=submit]:focus{background:#000 !important;color:#fff !important}
body .b2bcp-pw-card .b2bcp-pw-eye,body .b2bcp-pw-card .b2bcp-pw-eye:hover{background:transparent !important;color:#6B6878 !important}
body .b2bcp-pw-card .b2bcp-pw-eye:hover{color:#1C1A24 !important}
.woocommerce:has(.b2bcp-pw-other) .woocommerce-error{display:none}
body .b2bcp-pw-card .b2bcp-pw-eye,body .b2bcp-pw-card .b2bcp-pw-eye:hover{top:0;bottom:0;transform:none;display:flex;align-items:center}
body .b2bcp-pw-card input.input-text{border-width:1px !important;border-style:solid;border-color:#CFCBD8}
body .b2bcp-pw-card input.input-text:focus{border-color:#1C1A24}
.b2bcp-pw-field{display:block;position:relative}
/* WooCommerce puts its strength meter right after the input (inside our wrapper): keep "Show" on the input. */
body .b2bcp-pw-card .b2bcp-pw-field input.input-text{height:46px}
body .b2bcp-pw-card .b2bcp-pw-eye,body .b2bcp-pw-card .b2bcp-pw-eye:hover{top:0;bottom:auto;height:46px}
.b2bcp-pw-card .woocommerce-password-strength{background:#F6F5F8;color:#4A4658;font-weight:600}
.b2bcp-pw-card .woocommerce-password-strength.strong{background:#DCFCE7;color:#166534}
.b2bcp-pw-card .woocommerce-password-strength.good{background:#FEF3C7;color:#7A4A06}
.b2bcp-pw-card .woocommerce-password-strength.short,.b2bcp-pw-card .woocommerce-password-strength.bad{background:#FEE2E2;color:#991B1B}
/* Login in the same card (0.15.1). */
.b2bcp-pw-inner>h2{display:none}
.woocommerce .b2bcp-pw-card form.login{border:0;padding:0;margin:0;border-radius:0}
.b2bcp-pw-ok{margin:0 0 18px;padding:12px 14px;border-radius:10px;background:#DCFCE7;color:#166534;font-size:13.5px;font-weight:600}
.woocommerce:has(.b2bcp-pw-ok) .woocommerce-message{display:none}
.woocommerce .b2bcp-pw-card form.login .form-row:has(.woocommerce-form-login__rememberme){display:flex;flex-direction:column;gap:14px}
.b2bcp-pw-card .woocommerce-form-login__rememberme{display:flex;align-items:center;gap:8px;margin:0;font-size:13.5px;font-weight:400}
.b2bcp-pw-card .woocommerce-form-login__rememberme input{margin:0;width:16px;height:16px;accent-color:#1C1A24}
.b2bcp-pw-card .lost_password{margin:16px 0 0;text-align:center;font-size:13.5px}
.b2bcp-pw-card .lost_password a{color:#1C1A24;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.b2bcp-pw-inner>p.b2bcp-pw-lead{margin:0 0 20px}

/* ------------------------------------------------------------------
 * My account pages for company buyers (0.15.1): the same white cards,
 * fields and black buttons as the account home and the password pages.
 * ------------------------------------------------------------------ */
body.b2bcp-company .woocommerce-MyAccount-content {
	--pd-ink: #1C1A24;
	--pd-muted: #6B6878;
	--pd-line: #E7E5EC;
	--pd-soft: #F6F5F8;
	--pd-field: #CFCBD8;
	color: var(--pd-ink);
	font-size: 15px;
	line-height: 1.55;
}
body.b2bcp-company .woocommerce-MyAccount-navigation li a,
body.b2bcp-company .woocommerce-MyAccount-navigation li.is-active a { text-decoration: none !important; }

body.b2bcp-company .woocommerce-MyAccount-content h2,
body.b2bcp-company .woocommerce-MyAccount-content h3,
body.b2bcp-company .woocommerce-MyAccount-content legend {
	margin: 0 0 14px;
	padding: 0;
	border: 0;
	color: var(--pd-ink);
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
	text-transform: none;
}
body.b2bcp-company .woocommerce-MyAccount-content > p { color: #4A4658; }

/* Cards */
body.b2bcp-company .b2bcp-acct-card,
body.b2bcp-company .woocommerce-MyAccount-content > form:not(.b2bcp-switch),
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-customer-details address {
	margin: 0 0 16px;
	padding: 22px 24px;
	border: 1px solid var(--pd-line);
	border-radius: 16px;
	background: #fff;
	color: var(--pd-ink);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
body.b2bcp-company .b2bcp-acct-card > :last-child { margin-bottom: 0; }
body.b2bcp-company .b2bcp-account .b2bcp-company-head h2 { border: 0; margin: 0; font-size: 20px; }
body.b2bcp-company .b2bcp-account .b2bcp-company-head { margin: 0 0 12px; }
body.b2bcp-company .b2bcp-account .b2bcp-facts { margin: 0; font-size: 14px; }
body.b2bcp-company .b2bcp-account .b2bcp-facts li { display: flex; gap: 8px; padding: 9px 0; border-top: 1px solid var(--pd-line); }
body.b2bcp-company .b2bcp-account .b2bcp-facts strong { min-width: 110px; color: var(--pd-muted); font-weight: 600; }
body.b2bcp-company .b2bcp-acct-switch .b2bcp-switch { padding: 0; border: 0; margin: 0 0 8px; gap: 10px; }
body.b2bcp-company .b2bcp-acct-switch .b2bcp-switch label { font-weight: 600; font-size: 14px; }
body.b2bcp-company .b2bcp-account .b2bcp-hint { margin: 10px 0 0; color: var(--pd-muted); font-size: 13.5px; }
body.b2bcp-company .b2bcp-account .b2bcp-people-list { margin: 0; padding: 0; list-style: none; gap: 0; font-size: 14px; }
body.b2bcp-company .b2bcp-account .b2bcp-people-list li { padding: 9px 0; border-top: 1px solid var(--pd-line); }
body.b2bcp-company .b2bcp-account .b2bcp-people-list em { color: var(--pd-muted); font-style: normal; font-size: 12.5px; }

/* Tables */
body.b2bcp-company .woocommerce-MyAccount-content table.shop_table,
body.b2bcp-company .woocommerce-MyAccount-content table.woocommerce-table {
	width: 100%;
	margin: 0 0 16px;
	border: 1px solid var(--pd-line);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
	font-size: 14px;
}
body.b2bcp-company .b2bcp-acct-card table.shop_table { border: 1px solid var(--pd-line); margin: 0; }
body.b2bcp-company .woocommerce-MyAccount-content table th {
	padding: 11px 16px;
	border: 0;
	background: var(--pd-soft);
	color: var(--pd-muted);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-align: left;
	text-transform: uppercase;
}
body.b2bcp-company .woocommerce-MyAccount-content table td,
body.b2bcp-company .woocommerce-MyAccount-content table tbody th,
body.b2bcp-company .woocommerce-MyAccount-content table tfoot th,
body.b2bcp-company .woocommerce-MyAccount-content table tfoot td {
	padding: 13px 16px;
	border: 0;
	border-top: 1px solid var(--pd-line);
	background: #fff !important;
	color: var(--pd-ink);
	vertical-align: middle;
	text-align: left;
}
body.b2bcp-company .woocommerce-MyAccount-content table tfoot th { text-transform: none; font-size: 14px; letter-spacing: 0; }
body.b2bcp-company .woocommerce-MyAccount-content table thead + tbody tr:first-child > * { border-top: 1px solid var(--pd-line); }
body.b2bcp-company .woocommerce-MyAccount-content table a { color: var(--pd-ink); font-weight: 600; text-decoration: none; }
body.b2bcp-company .woocommerce-MyAccount-content table a:hover { text-decoration: underline; }
body.b2bcp-company .woocommerce-MyAccount-content table .b2bcp-actions { text-align: right; }
body.b2bcp-company .woocommerce-MyAccount-content table .b2bcp-link-button { color: #991B1B !important; text-decoration: none; font-weight: 600; font-size: 14px; }
body.b2bcp-company .woocommerce-orders-table__cell-order-actions,
body.b2bcp-company .woocommerce-orders-table__header-order-actions { text-align: right !important; }

/* Order status: a dot in the status color */
body.b2bcp-company .woocommerce-orders-table__cell-order-status { white-space: nowrap; }
body.b2bcp-company .woocommerce-orders-table__cell-order-status::before {
	content: '';
	display: inline-block;
	width: 8px;
	height: 8px;
	margin: 0 8px 1px 0;
	border-radius: 50%;
	background: #9CA3AF;
}
body.b2bcp-company .woocommerce-orders-table__row--status-on-hold .woocommerce-orders-table__cell-order-status::before,
body.b2bcp-company .woocommerce-orders-table__row--status-pending .woocommerce-orders-table__cell-order-status::before { background: #D97706; }
body.b2bcp-company .woocommerce-orders-table__row--status-processing .woocommerce-orders-table__cell-order-status::before { background: #2563EB; }
body.b2bcp-company .woocommerce-orders-table__row--status-completed .woocommerce-orders-table__cell-order-status::before { background: #16A34A; }
body.b2bcp-company .woocommerce-orders-table__row--status-cancelled .woocommerce-orders-table__cell-order-status::before,
body.b2bcp-company .woocommerce-orders-table__row--status-failed .woocommerce-orders-table__cell-order-status::before { background: #DC2626; }

/* Buttons */
body.b2bcp-company .woocommerce-MyAccount-content .button,
body.b2bcp-company .woocommerce-MyAccount-content button[type=submit],
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 42px;
	padding: 9px 18px;
	border: 1px solid #1C1A24 !important;
	border-radius: 10px;
	background: #1C1A24 !important;
	color: #fff !important;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none !important;
	box-shadow: none;
	cursor: pointer;
}
body.b2bcp-company .woocommerce-MyAccount-content .button:hover,
body.b2bcp-company .woocommerce-MyAccount-content button[type=submit]:hover,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Button:hover,
body.b2bcp-company .woocommerce-MyAccount-content .button:active,
body.b2bcp-company .woocommerce-MyAccount-content button[type=submit]:active {
	background: #000 !important;
	border-color: #000 !important;
	color: #fff !important;
}
/* Small outlined buttons inside tables and next to titles (View, Pay, Edit, Delete) */
body.b2bcp-company .woocommerce-MyAccount-content table .button,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
	min-height: 34px;
	padding: 6px 14px;
	border: 1px solid var(--pd-field) !important;
	background: #fff !important;
	color: var(--pd-ink) !important;
	font-size: 13.5px;
}
body.b2bcp-company .woocommerce-MyAccount-content table .button:hover,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title .edit:hover {
	border-color: var(--pd-ink) !important;
	background: var(--pd-soft) !important;
	color: var(--pd-ink) !important;
}
body.b2bcp-company .woocommerce-MyAccount-content table .button + .button { margin-left: 6px; }
body.b2bcp-company .woocommerce-MyAccount-content table .button.delete { color: #991B1B !important; }
body.b2bcp-company .woocommerce-MyAccount-content .b2bcp-link-button,
body.b2bcp-company .woocommerce-MyAccount-content .b2bcp-link-button:hover { min-height: 0; padding: 0 !important; border: 0 !important; background: none !important; }

/* Fields */
body.b2bcp-company .woocommerce-MyAccount-content .form-row { margin: 0 0 14px; padding: 0; }
body.b2bcp-company .woocommerce-MyAccount-content label { display: block; margin: 0 0 6px; color: var(--pd-ink); font-size: 13.5px; font-weight: 600; line-height: 1.4; }
body.b2bcp-company .woocommerce-MyAccount-content label.woocommerce-form__label-for-checkbox,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-form__label-for-checkbox { display: flex; gap: 8px; align-items: center; font-weight: 400; }
body.b2bcp-company .woocommerce-MyAccount-content input.input-text,
body.b2bcp-company .woocommerce-MyAccount-content input[type=text],
body.b2bcp-company .woocommerce-MyAccount-content input[type=email],
body.b2bcp-company .woocommerce-MyAccount-content input[type=tel],
body.b2bcp-company .woocommerce-MyAccount-content input[type=password],
body.b2bcp-company .woocommerce-MyAccount-content select,
body.b2bcp-company .woocommerce-MyAccount-content textarea,
body.b2bcp-company .woocommerce-MyAccount-content .select2-container .select2-selection--single {
	width: 100%;
	min-height: 44px;
	padding: 10px 13px;
	border: 1px solid var(--pd-field) !important;
	border-radius: 10px;
	background-color: #fff;
	color: var(--pd-ink);
	font-size: 15px;
	line-height: 1.4;
	box-shadow: none;
}
body.b2bcp-company .woocommerce-MyAccount-content .b2bcp-switch select { width: auto; min-width: 220px; }
body.b2bcp-company .woocommerce-MyAccount-content .select2-container .select2-selection--single { height: 44px; padding: 0 6px; display: flex; align-items: center; }
body.b2bcp-company .woocommerce-MyAccount-content .select2-container .select2-selection__arrow { top: 9px; right: 8px; }
body.b2bcp-company .woocommerce-MyAccount-content input:focus,
body.b2bcp-company .woocommerce-MyAccount-content select:focus,
body.b2bcp-company .woocommerce-MyAccount-content textarea:focus {
	outline: 0;
	border-color: var(--pd-ink) !important;
	box-shadow: 0 0 0 3px rgba(28, 26, 36, 0.12);
}
body.b2bcp-company .woocommerce-MyAccount-content em,
body.b2bcp-company .woocommerce-MyAccount-content #account_display_name_description { color: var(--pd-muted); font-size: 13px; }
body.b2bcp-company .woocommerce-MyAccount-content fieldset { margin: 22px 0 0; padding: 18px 0 0; border: 0; border-top: 1px solid var(--pd-line); }
body.b2bcp-company .woocommerce-MyAccount-content fieldset legend { float: left; width: 100%; margin: 0 0 14px; font-size: 16px; }
body.b2bcp-company .woocommerce-MyAccount-content fieldset legend + * { clear: both; }
body.b2bcp-company .woocommerce-MyAccount-content .password-input { display: block; position: relative; }
body.b2bcp-company .woocommerce-MyAccount-content .show-password-input { position: absolute; top: 50%; right: 10px; transform: translateY(-50%); background-color: transparent !important; border: 0 !important; }

/* Addresses */
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; margin: 0; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Addresses::before,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Addresses::after { display: none; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Addresses .woocommerce-Address { float: none; width: auto; margin: 0; max-width: none; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 12px; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title::before,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title::after { display: none; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title h2,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title h3 { margin: 0; font-size: 16px; float: none; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Address-title .edit { float: none; display: inline-flex; align-items: center; border-radius: 10px; font-weight: 600; text-decoration: none; }
body.b2bcp-company .woocommerce-MyAccount-content address { font-style: normal; line-height: 1.65; color: #4A4658; border: 0; padding: 0; }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-customer-details address { padding: 18px 20px; }

/* Notices inside the account */
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-info,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-message,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-Message {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 16px;
	padding: 16px 20px;
	border: 1px solid var(--pd-line) !important;
	border-radius: 16px;
	background: #fff;
	color: var(--pd-ink);
	font-size: 14.5px;
	box-shadow: none;
}
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-info::before,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-message::before { position: static; margin: 0; color: var(--pd-muted); }
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-info .button,
body.b2bcp-company .woocommerce-MyAccount-content .woocommerce-message .button { order: 2; margin-left: auto; float: none; }

@media (max-width: 768px) {
	body.b2bcp-company .woocommerce-MyAccount-content table.shop_table_responsive thead { display: none; }
	body.b2bcp-company .woocommerce-MyAccount-content table.shop_table_responsive tr { display: block; border-top: 1px solid var(--pd-line); }
	body.b2bcp-company .woocommerce-MyAccount-content table.shop_table_responsive tbody tr:first-child { border-top: 0; }
	body.b2bcp-company .woocommerce-MyAccount-content table.shop_table_responsive td { display: flex; justify-content: space-between; gap: 12px; padding: 8px 16px; border-top: 0; text-align: right !important; }
	body.b2bcp-company .woocommerce-MyAccount-content table.shop_table_responsive td::before { color: var(--pd-muted); font-weight: 600; }
	body.b2bcp-company .b2bcp-acct-card,
	body.b2bcp-company .woocommerce-MyAccount-content > form:not(.b2bcp-switch) { padding: 18px; }
}
body.b2bcp-company .woocommerce-MyAccount-content table td,
body.b2bcp-company .woocommerce-MyAccount-content table th { filter: none !important; }
body.b2bcp-company .woocommerce-MyAccount-content button.b2bcp-link-button,
body.b2bcp-company .woocommerce-MyAccount-content button.b2bcp-link-button:hover {
	display: inline;
	min-height: 0;
	padding: 0 !important;
	border: 0 !important;
	background: none !important;
	color: #991B1B !important;
	font-size: 14px;
	font-weight: 600;
}
body.b2bcp-company .woocommerce-MyAccount-content button.b2bcp-link-button:hover { text-decoration: underline !important; }
body.b2bcp-company .woocommerce-MyAccount-content .b2bcp-actions a,body.b2bcp-company .woocommerce-MyAccount-content .b2bcp-actions button.b2bcp-link-button{font-size:13.5px !important;font-weight:600}
body.b2bcp-company .woocommerce-MyAccount-content p,
body.b2bcp-company .woocommerce-MyAccount-content li,
body.b2bcp-company .woocommerce-MyAccount-content address { font-size: inherit; }
body.b2bcp-company .woocommerce-MyAccount-content > p:first-child { margin: 0 0 18px; }
body.b2bcp-company .woocommerce-MyAccount-content mark { background: none; color: var(--pd-ink); font-weight: 700; }
.woocommerce body.b2bcp-company .woocommerce-MyAccount-content form .form-row label,
body.b2bcp-company.woocommerce-account .woocommerce-MyAccount-content form .form-row label,
body.b2bcp-company .woocommerce .woocommerce-MyAccount-content form .form-row label { font-size: 13.5px; font-weight: 600; line-height: 1.4; margin: 0 0 6px; }
.b2bcp-pw-card form.login,.b2bcp-pw-card form.woocommerce-form-login{border:0 !important;padding:0 !important;margin:0 !important;box-shadow:none !important;background:none !important}
.b2bcp-login-page .b2bcp-pw-inner>h2{display:none !important}
