.wc-vendor-admin {
	max-width: 1440px;
}

.wc-vendor-lead,
.wc-vendor-rules {
	max-width: 920px;
	font-size: 15px;
	line-height: 1.6;
}

.wc-vendor-rules {
	margin: 20px 0;
	padding: 18px 22px;
	border-left: 5px solid #00a9d6;
	background: #fff;
}

.wc-vendor-table-wrap {
	overflow-x: auto;
	border: 1px solid #c3c4c7;
	background: #fff;
}

.wc-vendor-table {
	min-width: 1120px;
}

.wc-vendor-table th,
.wc-vendor-table td {
	padding: 12px;
	vertical-align: top;
}

.wc-vendor-status {
	display: inline-block;
	padding: 4px 9px;
	border-radius: 14px;
	font-weight: 700;
	background: #f0f0f1;
}

.wc-vendor-status-verified {
	background: #d8f3dc;
	color: #14532d;
}

.wc-vendor-status-partial,
.wc-vendor-status-manual_review {
	background: #fff4c2;
	color: #6b4f00;
}

.wc-vendor-import-form {
	margin-top: 22px;
}

/* Administrator direct-order audit. These classes belong in this plugin stylesheet. */
.wc-vendor-audit__counts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	max-width: 1080px;
	margin: 22px 0;
}

.wc-vendor-audit__counts div {
	padding: 18px;
	background: #fffdf4;
	border: 2px solid #0f0f0d;
	border-radius: 16px;
}

.wc-vendor-audit__counts strong,
.wc-vendor-audit__counts span {
	display: block;
}

.wc-vendor-audit__counts strong {
	font-size: 30px;
	line-height: 1;
}

.wc-vendor-audit__counts span {
	margin-top: 8px;
	font-weight: 800;
}

.wc-vendor-audit__table {
	min-width: 1800px;
}

.wc-vendor-audit-fields label,
.wc-vendor-audit-fields input,
.wc-vendor-audit-fields select,
.wc-vendor-audit-fields textarea {
	display: block;
	box-sizing: border-box;
	width: 100%;
}

.wc-vendor-audit-fields input,
.wc-vendor-audit-fields select {
	height: 44px;
}

.wc-vendor-audit-fields input,
.wc-vendor-audit-fields select,
.wc-vendor-audit-fields textarea {
	margin-top: 6px;
	padding: 8px 12px;
	border: 2px solid #0f0f0d;
	border-radius: 12px;
}

.wc-vendor-audit-status-direct_ordering {
	background: #dff7e8;
	color: #075c2d;
}

.wc-vendor-audit-status-website_no_checkout,
.wc-vendor-audit-status-platform_only {
	background: #fff1bd;
	color: #755400;
}

.wc-vendor-audit-status-no_website,
.wc-vendor-audit-status-unclear {
	background: #ffe0dc;
	color: #8d2118;
}

.wc-vendor-audit__summary-grid,
.wc-vendor-platform-source-counts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
	max-width: 1080px;
	margin: 18px 0 24px;
}

.wc-vendor-audit__summary-grid > div,
.wc-vendor-platform-source-counts > div {
	padding: 16px;
	background: #fffdf4;
	border: 2px solid #0f0f0d;
	border-radius: 16px;
}

.wc-vendor-audit__summary-grid h3,
.wc-vendor-audit__summary-grid p {
	margin-top: 0;
}

.wc-vendor-platform-source-counts {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wc-vendor-platform-source-counts strong,
.wc-vendor-platform-source-counts span {
	display: block;
}

.wc-vendor-platform-source-counts strong {
	font-size: 28px;
}

.wc-vendor-platform-source-counts span {
	margin-top: 6px;
	font-weight: 800;
}

.wc-vendor-platform-export-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 18px;
}

.wc-vendor-platform-export-buttons form {
	margin: 0;
}

.wc-vendor-platform-source-table {
	margin-bottom: 30px;
}

@media (max-width: 782px) {
	.wc-vendor-audit__counts,
	.wc-vendor-audit__summary-grid,
	.wc-vendor-platform-source-counts {
		grid-template-columns: 1fr;
	}
}

/* Public vendor profile. These classes belong in this plugin stylesheet. */
.wc-vendor-public {
	box-sizing: border-box;
	width: 100%;
	max-width: 980px;
	margin: 32px auto;
	padding: 0 20px 32px;
	color: #0f0f0d;
	font-family: Nunito, sans-serif;
}

.wc-vendor-public *,
.wc-vendor-public *::before,
.wc-vendor-public *::after {
	box-sizing: border-box;
}

.wc-vendor-public__hero {
	padding: 32px;
	background: #ffe046;
	border: 3px solid #0f0f0d;
	border-radius: 28px;
}

.wc-vendor-public__eyebrow {
	margin: 0 0 8px;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 1.5px;
}

.wc-vendor-public__hero h1 {
	margin: 0;
	font-size: 44px;
	line-height: 1.1;
}

.wc-vendor-public__cuisines,
.wc-vendor-public__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}

.wc-vendor-public__cuisines a {
	display: inline-block;
	padding: 8px 14px;
	background: #fffdf4;
	border: 2px solid #0f0f0d;
	border-radius: 999px;
	font-weight: 800;
	color: #0f0f0d;
	text-decoration: none;
}

.wc-vendor-public__search label {
	display: block;
	margin-bottom: 8px;
	font-weight: 800;
}

.wc-vendor-public__search {
	margin-top: 0;
	margin-bottom: 24px;
}

.wc-vendor-public__search form div {
	display: flex;
	gap: 10px;
}

.wc-vendor-public__search input {
	box-sizing: border-box;
	width: 100%;
	height: 50px;
	padding: 10px 14px;
	border: 2px solid #0f0f0d;
	border-radius: 14px;
	background: #ffe225;
}

.wc-vendor-public__logo {
	margin-top: 24px;
	padding: 24px;
	background: #ffffff;
	border: 3px solid #0f0f0d;
	border-radius: 24px;
}

.wc-vendor-public__logo img {
	display: block;
	width: 260px;
	height: 180px;
	margin: 0 auto;
	object-fit: contain;
}

.wc-vendor-public__panel {
	margin-top: 24px;
	padding: 28px;
	background: #fffdf4;
	border: 3px solid #0f0f0d;
	border-radius: 24px;
}

.wc-vendor-public__panel h2 {
	margin: 0 0 18px;
	font-size: 30px;
}

.wc-vendor-public__details {
	margin: 0;
}

.wc-vendor-public__details div {
	display: grid;
	grid-template-columns: 140px minmax(0, 1fr);
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid #d9d5c8;
}

.wc-vendor-public__details dt,
.wc-vendor-public__item-heading strong {
	font-weight: 900;
}

.wc-vendor-public__details dd {
	margin: 0;
}

.wc-vendor-public__button {
	display: inline-block;
	padding: 12px 18px;
	background: #18b35a;
	color: #ffffff !important;
	border: 2px solid #0f0f0d;
	border-radius: 12px;
	font-weight: 900;
	text-decoration: none !important;
}

.wc-vendor-public__button--secondary {
	background: #00bae9;
	color: #0f0f0d !important;
}

/* Keep the public menu-source button blue in every interaction state. */
.wc-vendor-public a.wc-vendor-public__button--secondary:link,
.wc-vendor-public a.wc-vendor-public__button--secondary:visited,
.wc-vendor-public a.wc-vendor-public__button--secondary:hover,
.wc-vendor-public a.wc-vendor-public__button--secondary:focus,
.wc-vendor-public a.wc-vendor-public__button--secondary:active {
	background: #00bae9 !important;
	color: #0f0f0d !important;
}

.wc-vendor-public__button--search {
	min-width: 120px;
	background: #ffe225;
	color: #0f0f0d !important;
	border-radius: 14px;
	cursor: pointer;
}

.wc-vendor-public__button--search:hover,
.wc-vendor-public__button--search:focus {
	background: #0f0f0d;
	color: #ffe225 !important;
}

.wc-vendor-public__button--top {
	background: #ffe225;
	color: #0f0f0d !important;
	cursor: pointer;
}

.wc-vendor-public__button--top:hover,
.wc-vendor-public__button--top:focus {
	background: #0f0f0d;
	color: #ffe225 !important;
}

.wc-vendor-public__menu-heading {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.wc-vendor-public__menu-heading h2 {
	margin: 0;
}

.wc-vendor-public__price-added {
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
	color: #4f4f4a;
}

.wc-vendor-public__items {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.wc-vendor-public__menu-index {
	position: relative;
	top: 0;
	z-index: 30;
	display: flex;
	flex-wrap: nowrap;
	gap: 8px;
	overflow-x: auto;
	overflow-y: hidden;
	margin: 0 -18px 26px;
	padding: 10px 18px;
	background: #fffdf4;
	border-top: 2px solid #0f0f0d;
	border-bottom: 2px solid #0f0f0d;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.wc-vendor-public__menu-index::-webkit-scrollbar {
	display: none;
}

.wc-vendor-public__menu-index a {
	flex: 0 0 auto;
	white-space: nowrap;
	padding: 8px 13px;
	background: #ffe046;
	border: 2px solid #0f0f0d;
	border-radius: 999px;
	color: #0f0f0d;
	font-weight: 800;
	text-decoration: none;
}

.wc-vendor-public__menu-index a:hover,
.wc-vendor-public__menu-index a:focus,
.wc-vendor-public__menu-index a.is-active {
	background: #0f0f0d;
	color: #ffe046;
}

.wc-vendor-public__menu-group {
	scroll-margin-top: 92px;
	margin-top: 30px;
}

.wc-vendor-public__menu-group > h3 {
	margin: 0 0 14px;
	padding-bottom: 8px;
	border-bottom: 3px solid #0f0f0d;
	font-size: 25px;
}

.wc-vendor-public__item {
	min-width: 0;
	max-width: 100%;
	padding: 20px;
	background: #ffffff;
	border: 2px solid #0f0f0d;
	border-radius: 16px;
}

/* Subtle WE-COLLECT colour rotation across every existing and future menu. */
.wc-vendor-public__item:nth-child(4n + 1) {
	background: #fff9d6;
}

.wc-vendor-public__item:nth-child(4n + 2) {
	background: #eaf8ef;
}

.wc-vendor-public__item:nth-child(4n + 3) {
	background: #e9f8fc;
}

.wc-vendor-public__item:nth-child(4n + 4) {
	background: #fff0e6;
}

.wc-vendor-public__item-image {
	display: block;
	width: 100%;
	height: 190px;
	margin-bottom: 16px;
	object-fit: contain;
	border: 0;
	border-radius: 0;
	background: transparent;
}

/* Vendor back office. These classes belong in this plugin stylesheet. */
.wc-vendor-editor {
	max-width: 1160px;
	margin: 24px 0;
}

.wc-vendor-editor__notice,
.wc-vendor-editor__panel {
	margin-bottom: 22px;
	padding: 22px;
	background: #ffffff;
	border: 2px solid #0f0f0d;
	border-radius: 16px;
}

.wc-vendor-editor__notice {
	background: #dff6e8;
	font-weight: 800;
}

.wc-vendor-editor__panel > label,
.wc-vendor-editor__item label {
	display: block;
	margin-bottom: 14px;
}

.wc-vendor-editor input,
.wc-vendor-editor textarea,
.wc-vendor-editor select {
	box-sizing: border-box;
	width: 100%;
	margin-top: 6px;
	padding: 12px 14px;
	border: 2px solid #858585;
	border-radius: 12px;
	background: #ffffff;
}

.wc-vendor-editor input:not([type="file"]),
.wc-vendor-editor select {
	min-height: 48px;
}

.wc-vendor-editor input[type="file"] {
	padding: 12px;
	border: 2px dashed #858585;
	border-radius: 12px;
	background: #fffdf4;
}

.wc-vendor-editor .button,
.wc-vendor-editor button {
	border-radius: 12px;
}

.wc-vendor-editor__upload {
	display: grid;
	gap: 10px;
	margin-bottom: 18px;
	padding: 16px;
	border: 2px solid #d4d0c5;
	border-radius: 14px;
	background: #fffdf4;
}

.wc-vendor-editor__upload img {
	display: block;
	width: 180px;
	height: 130px;
	object-fit: contain;
	border: 2px solid #0f0f0d;
	border-radius: 12px;
	background: #ffffff;
}

.wc-vendor-editor__comparison-row {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr) minmax(0, 1fr);
	gap: 12px;
	margin-bottom: 12px;
	padding: 14px;
	border: 2px solid #d4d0c5;
	border-radius: 14px;
}

.wc-vendor-editor__comparison-row > div {
	padding: 12px;
	border-radius: 12px;
	background: #fffdf4;
}

.wc-vendor-editor__comparison-row span {
	font-weight: 800;
}

.wc-vendor-editor__approval textarea {
	margin-bottom: 12px;
}

.wc-vendor-editor__items {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 16px;
}

.wc-vendor-editor__item {
	padding: 16px;
	border: 1px solid #a7aaad;
	border-radius: 12px;
}

.wc-vendor-editor__item legend {
	padding: 0 8px;
	font-weight: 800;
}

.wc-vendor-editor__picker {
	columns: 3;
}

.wc-vendor-public__item-heading {
	display: grid;
	grid-template-columns: minmax(100px, 1fr) minmax(0, 1.5fr);
	align-items: start;
	gap: 14px;
}

.wc-vendor-public__item-heading h4 {
	min-width: 0;
	margin: 0;
	font-size: 22px;
	overflow-wrap: break-word;
	word-break: normal;
}

.wc-vendor-public__item-heading strong {
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: break-word;
	word-break: normal;
	text-align: right;
	line-height: 1.35;
}

.wc-vendor-public__item h4,
.wc-vendor-public__item p {
	margin-top: 0;
}

.wc-vendor-public__category {
	color: #55534d;
	font-size: 14px;
	font-weight: 800;
	text-transform: uppercase;
}

@media (max-width: 700px) {
	.wc-vendor-public {
		width: 100%;
		max-width: 100%;
		margin-top: 18px;
		margin-right: auto;
		margin-left: auto;
		padding-right: 12px;
		padding-left: 12px;
		overflow-x: clip;
	}

	.wc-vendor-public__hero,
	.wc-vendor-public__panel {
		width: 100%;
		max-width: 100%;
		padding: 16px;
		border-radius: 18px;
	}

	.wc-vendor-public__panel h2 {
		font-size: 30px;
		line-height: 1.15;
	}

	.wc-vendor-public__hero h1 {
		font-size: 34px;
	}

	.wc-vendor-public__items {
		grid-template-columns: 1fr;
		width: 100%;
		min-width: 0;
	}

	.wc-vendor-public__item {
		width: 100%;
		min-width: 0;
		padding: 16px;
	}

	.wc-vendor-public__item-heading {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.wc-vendor-public__item h3 {
		margin-bottom: 12px;
		font-size: 25px;
		line-height: 1.15;
	}

	.wc-vendor-public__item-heading strong {
		font-size: 20px;
		line-height: 1.25;
		text-align: left;
	}

	.wc-vendor-public__item p {
		font-size: 17px;
		line-height: 1.5;
		overflow-wrap: anywhere;
	}

	.wc-vendor-public__category {
		font-size: 13px;
		line-height: 1.35;
	}

	.wc-vendor-public__details div {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.wc-vendor-public__logo img {
		width: 210px;
		height: 150px;
	}

	.wc-vendor-editor__items {
		grid-template-columns: 1fr;
	}

	.wc-vendor-public__search form div,
	.wc-vendor-editor__comparison-row {
		display: grid;
		grid-template-columns: 1fr;
	}

	.wc-vendor-public__button--search {
		width: 100%;
	}
}

/* Public menu fixed navigation fallback. Classes belong in assets/css/vendor-portal.css. */
.wc-vendor-public__menu-index-anchor {
	display: block;
	height: 0;
	margin: 0;
	padding: 0;
}

.wc-vendor-public__menu-index.is-fixed {
	position: fixed !important;
	z-index: 9999 !important;
	margin: 0 !important;
	box-shadow: 0 5px 14px rgba(15, 15, 13, 0.16);
}


/* Large vendor catalogue search. Separate from the global WE-COLLECT vendor search. */
.wc-vendor-public__catalogue-search {
	margin: 4px 0 18px;
	padding: 16px;
	background: #ffffff;
	border: 2px solid #0f0f0d;
	border-radius: 16px;
}

.wc-vendor-public__catalogue-search label {
	display: block;
	margin-bottom: 8px;
	font-weight: 900;
}

.wc-vendor-public__catalogue-search-row {
	display: flex;
	gap: 8px;
}

.wc-vendor-public__catalogue-search input {
	box-sizing: border-box;
	width: 100%;
	height: 48px;
	padding: 10px 14px;
	border: 2px solid #0f0f0d;
	border-radius: 12px;
	background: #fffdf4;
}

.wc-vendor-public__catalogue-search button {
	min-width: 84px;
	padding: 10px 14px;
	border: 2px solid #0f0f0d;
	border-radius: 12px;
	background: #ffe046;
	color: #0f0f0d;
	font-weight: 900;
	cursor: pointer;
}

.wc-vendor-public__catalogue-status {
	margin: 9px 0 0;
	font-size: 14px;
	font-weight: 800;
}

.wc-vendor-public__catalogue-empty {
	margin: 18px 0;
	padding: 16px;
	background: #ffffff;
	border: 2px dashed #0f0f0d;
	border-radius: 14px;
	font-weight: 800;
}

.wc-vendor-public__menu-group[hidden],
.wc-vendor-public__item[hidden],
.wc-vendor-public__menu-index a[hidden] {
	display: none !important;
}

@media (max-width: 700px) {
	.wc-vendor-public__catalogue-search-row {
		align-items: stretch;
	}

	.wc-vendor-public__catalogue-search button {
		min-width: 72px;
	}
}

/* Collapsed generic allergen/product note inside Direct order details. */
.wc-vendor-public__allergen-note {
	margin-top: 16px;
	padding-top: 14px;
	border-top: 1px solid #d9d5c8;
}

.wc-vendor-public__allergen-note summary {
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 42px;
	font-weight: 900;
	cursor: pointer;
	list-style: none;
}

.wc-vendor-public__allergen-note summary::-webkit-details-marker {
	display: none;
}

.wc-vendor-public__allergen-note summary::before {
	content: '+';
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	border: 2px solid #0f0f0d;
	border-radius: 50%;
	background: #ffe046;
	color: #0f0f0d;
	font-size: 20px;
	line-height: 1;
}

.wc-vendor-public__allergen-note[open] summary::before {
	content: '−';
}

.wc-vendor-public__allergen-note p {
	margin: 10px 0 0 38px;
	max-width: 720px;
	line-height: 1.55;
}

@media (max-width: 700px) {
	.wc-vendor-public__allergen-note p {
		margin-left: 0;
	}
}

/* Vendor approval UX refresh: v1.51.77 */
.wc-vendor-approval-alert p {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.wc-vendor-editor__admin-save-note {
	max-width: 900px;
	padding: 14px 16px;
	border-left: 5px solid #18b35a;
	border-radius: 8px;
	background: #f1fff6;
}

.wc-vendor-approvals__intro {
	margin: 18px 0;
	font-size: 15px;
}

.wc-vendor-approvals__table {
	max-width: 1200px;
}

.wc-vendor-approvals__table th,
.wc-vendor-approvals__table td {
	vertical-align: top;
}

.wc-vendor-editor__picker-pending {
	break-inside: avoid;
	margin: 0 0 6px;
	padding: 7px 9px;
	border-left: 5px solid #ff6a00;
	background: #fff4e8;
	font-weight: 800;
}

.wc-vendor-editor__picker-pending a {
	color: #8a3100;
}

@media (max-width: 782px) {
	.wc-vendor-approvals__table,
	.wc-vendor-approvals__table thead,
	.wc-vendor-approvals__table tbody,
	.wc-vendor-approvals__table tr,
	.wc-vendor-approvals__table th,
	.wc-vendor-approvals__table td {
		display: block;
	}

	.wc-vendor-approvals__table thead {
		display: none;
	}

	.wc-vendor-approvals__table tr {
		margin-bottom: 16px;
		padding: 12px;
		border: 1px solid #dcdcde;
		background: #fff;
	}

	.wc-vendor-approvals__table td {
		padding: 7px 0;
	}
}
