
:root {
	--ifs-navy: #12213a;
	--ifs-blue: #1769aa;
	--ifs-light: #f4f7fb;
	--ifs-border: #dce4ee;
	--ifs-text: #243247;
	--ifs-success: #137a48;
}

.ifs-shell {
	max-width: 1180px;
	margin: 40px auto;
	padding: 0 20px;
	color: var(--ifs-text);
}

.ifs-header,
.ifs-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.ifs-page-head {
	margin-bottom: 24px;
}

.ifs-eyebrow {
	margin: 0 0 6px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--ifs-blue);
}

.ifs-shell h1 {
	margin: 0 0 8px;
	color: var(--ifs-navy);
}

.ifs-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 22px;
	margin-top: 30px;
}

.ifs-card,
.ifs-form-card,
.ifs-table-wrap {
	background: #fff;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	box-shadow: 0 8px 30px rgba(18,33,58,.07);
}

.ifs-card {
	display: block;
	padding: 28px;
	text-decoration: none;
	color: inherit;
	transition: transform .15s ease, box-shadow .15s ease;
}

.ifs-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 12px 34px rgba(18,33,58,.12);
}

.ifs-icon {
	display: inline-grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: var(--ifs-light);
	color: var(--ifs-blue);
	font-size: 24px;
	font-weight: 700;
}

.ifs-card h2 {
	margin: 18px 0 8px;
	font-size: 20px;
	color: var(--ifs-navy);
}

.ifs-form-card {
	padding: 28px;
}

.ifs-toolbar {
	margin-bottom: 22px;
}

.ifs-btn,
.ifs-btn:visited {
	display: inline-block;
	padding: 10px 16px;
	border-radius: 8px;
	background: var(--ifs-blue);
	color: #fff;
	text-decoration: none;
	font-weight: 600;
}

.ifs-btn-dark,
.ifs-btn-dark:visited {
	background: var(--ifs-navy);
}

.ifs-notice {
	margin: 20px auto;
	max-width: 1120px;
	padding: 14px 16px;
	border-radius: 8px;
	background: #eef4fb;
	border: 1px solid #cddff1;
}

.ifs-notice-error {
	background: #fff1f1;
	border-color: #f1caca;
}

.ifs-notice-success {
	background: #edf9f3;
	border-color: #c5e9d6;
	color: var(--ifs-success);
}

.ifs-table-wrap {
	overflow-x: auto;
}

.ifs-table {
	width: 100%;
	border-collapse: collapse;
}

.ifs-table th,
.ifs-table td {
	padding: 15px 18px;
	border-bottom: 1px solid var(--ifs-border);
	text-align: left;
	vertical-align: middle;
}

.ifs-table th {
	background: var(--ifs-light);
	color: var(--ifs-navy);
}

.ifs-status {
	display: inline-block;
	padding: 5px 9px;
	border-radius: 999px;
	background: #eef2f6;
	font-size: 12px;
	font-weight: 700;
}

.ifs-status-publish { background: #e7f7ef; color: #17633e; }
.ifs-status-draft { background: #fff4da; color: #7a5a00; }
.ifs-status-pending { background: #e9efff; color: #304e9b; }

.ifs-form-card .acf-tab-wrap {
	margin: -28px -28px 24px;
}

.ifs-form-card .acf-fields > .acf-field {
	padding-left: 0;
	padding-right: 0;
}

@media (max-width: 700px) {
	.ifs-header,
	.ifs-toolbar {
		align-items: flex-start;
		flex-direction: column;
	}
	.ifs-form-card {
		padding: 18px;
	}
}

.ifs-media-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:28px;padding-bottom:28px;border-bottom:1px solid var(--ifs-border)}
.ifs-media-block{padding:20px;border:1px solid var(--ifs-border);border-radius:12px;background:var(--ifs-light)}
.ifs-media-block h2{margin-top:0;color:var(--ifs-navy)}
.ifs-image-preview img{display:block;max-width:260px;height:auto;margin:14px 0;border-radius:10px}
.ifs-gallery-preview{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}
.ifs-gallery-preview img{width:90px;height:90px;object-fit:cover;border-radius:8px;border:1px solid var(--ifs-border)}
.ifs-link-button{margin-left:10px;padding:8px 0;border:0;background:transparent;color:#a12b2b;cursor:pointer;text-decoration:underline}
@media(max-width:760px){.ifs-media-section{grid-template-columns:1fr}}


.ifs-foundation-alert {
	max-width: 1180px;
	margin: 0 auto 18px;
	padding: 18px 20px;
	border: 2px solid #d79b22;
	border-radius: 12px;
	background: #fff8e8;
	color: #5f4100;
}

.ifs-foundation-alert strong,
.ifs-foundation-alert span {
	display: block;
}

.ifs-foundation-alert span {
	margin-top: 5px;
}

.ifs-progress-card {
	margin-bottom: 22px;
	padding: 20px;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 30px rgba(18,33,58,.06);
}

.ifs-progress-copy {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 10px;
}

.ifs-progress-track {
	height: 12px;
	overflow: hidden;
	border-radius: 999px;
	background: #e8edf4;
}

.ifs-progress-track span {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: var(--ifs-blue);
	transition: width .25s ease;
}

.ifs-missing-list {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(180px,1fr));
	gap: 6px 18px;
	margin: 14px 0 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
}

.ifs-missing-list li:not(:first-child)::before {
	content: "✕";
	margin-right: 7px;
	color: #a12b2b;
	font-weight: 700;
}

.ifs-missing-list .ifs-complete-message {
	grid-column: 1/-1;
	color: var(--ifs-success);
	font-weight: 700;
}

.ifs-missing-list .ifs-complete-message::before {
	content: "✓";
	color: var(--ifs-success);
}

.ifs-foundation-form .acf-form-submit {
	position: sticky;
	bottom: 0;
	z-index: 20;
	margin: 24px -28px -28px;
	padding: 18px 28px;
	border-top: 1px solid var(--ifs-border);
	background: rgba(255,255,255,.96);
	backdrop-filter: blur(8px);
}

.ifs-foundation-form input[type="submit"].ifs-submit-locked {
	cursor: pointer;
	opacity: .45;
}

.ifs-foundation-form .acf-field[data-key="field_6a70d554b064a"],
.ifs-foundation-form .acf-field[data-key="field_6a71d2bec2df1"],
.ifs-foundation-form .acf-field[data-key="field_6a71d2f0c2df2"],
.ifs-foundation-form .acf-field[data-key="field_6a71db6ac2df8"],
.ifs-foundation-form .acf-field[data-key="field_6a70d4eeb0648"],
.ifs-foundation-form .acf-field[data-key="field_6a71c4a8e54d8"],
.ifs-foundation-form .acf-field[data-key="field_6a70d84fb064e"],
.ifs-foundation-form .acf-field[data-key="field_ifs_primary_product_benefit"] {
	border-left: 4px solid var(--ifs-blue);
	padding-left: 18px;
}

.ifs-foundation-form .acf-field[data-key="field_6a70d554b064a"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a71d2bec2df1"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a71d2f0c2df2"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a71db6ac2df8"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a70d4eeb0648"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a71c4a8e54d8"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_6a70d84fb064e"] .acf-label label::after,
.ifs-foundation-form .acf-field[data-key="field_ifs_primary_product_benefit"] .acf-label label::after {
	content: " *";
	color: #b42318;
}


.ifs-missing-list li {
	position: relative;
	padding-left: 24px;
}

.ifs-missing-list li::before {
	position: absolute;
	left: 0;
	top: 0;
	font-weight: 800;
}

.ifs-missing-list li.ifs-status-missing {
	color: #7d2222;
}

.ifs-missing-list li.ifs-status-missing::before {
	content: "✕";
	color: #b42318;
}

.ifs-missing-list li.ifs-status-complete {
	color: #137a48;
	font-weight: 700;
}

.ifs-missing-list li.ifs-status-complete::before {
	content: "✓";
	color: #137a48;
}

.ifs-missing-list li.ifs-status-complete::after {
	content: " Complete";
	font-weight: 400;
	color: #4c6f5c;
}


.ifs-foundation-form .acf-fields {
	display: block !important;
}

.ifs-foundation-form .acf-field {
	float: none !important;
	width: 100% !important;
	clear: both !important;
	box-sizing: border-box;
	margin: 0 !important;
}

.ifs-foundation-form .acf-field + .acf-field {
	border-top: 1px solid var(--ifs-border);
}

.ifs-foundation-form .acf-field[data-key="field_ifs_primary_product_benefit"] {
	order: -1;
}

.ifs-foundation-form .acf-field[data-key="field_ifs_primary_product_benefit"] .acf-label label::after {
	content: " *";
	color: #b42318;
}


.ifs-persistent-actions {
	position: fixed;
	right: 20px;
	top: 20px;
	z-index: 99999;
	display: flex;
	gap: 10px;
	padding: 8px;
	border: 1px solid rgba(18,33,58,.12);
	border-radius: 12px;
	background: rgba(255,255,255,.94);
	box-shadow: 0 8px 28px rgba(18,33,58,.16);
	backdrop-filter: blur(10px);
}

.ifs-persistent-actions a,
.ifs-persistent-actions a:visited {
	display: inline-block;
	padding: 9px 13px;
	border-radius: 8px;
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
}

.ifs-persistent-dashboard,
.ifs-persistent-dashboard:visited {
	background: #eef4fb;
	color: var(--ifs-navy);
}

.ifs-persistent-logout,
.ifs-persistent-logout:visited {
	background: var(--ifs-navy);
	color: #fff;
}

@media (max-width: 700px) {
	.ifs-persistent-actions {
		right: 10px;
		top: 10px;
	}
}


/* Compact single-screen employee experience */
.ifs-foundation-workspace {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 320px;
	grid-template-areas:
		"head progress"
		"form progress";
	gap: 18px 24px;
	align-items: start;
}

.ifs-foundation-workspace > .ifs-page-head {
	grid-area: head;
	margin: 0;
	padding: 0 4px;
}

.ifs-foundation-workspace > .ifs-page-head h1 {
	font-size: clamp(32px, 4vw, 52px);
	line-height: 1.02;
	margin-bottom: 8px;
}

.ifs-foundation-workspace > .ifs-page-head p {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
}

.ifs-foundation-workspace > .ifs-foundation-alert {
	grid-area: head;
	margin-top: 112px;
	padding: 12px 14px;
	font-size: 13px;
}

.ifs-foundation-workspace > .ifs-progress-card {
	grid-area: progress;
	position: sticky;
	top: 78px;
	margin: 0;
	padding: 16px;
	max-height: calc(100vh - 100px);
	overflow: auto;
}

.ifs-foundation-workspace > .ifs-form-card {
	grid-area: form;
	margin: 0;
	padding: 16px 18px;
}

.ifs-foundation-form .acf-fields {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px 14px;
}

.ifs-foundation-form .acf-field {
	float: none !important;
	width: 100% !important;
	clear: none !important;
	box-sizing: border-box;
	margin: 0 !important;
	border: 1px solid var(--ifs-border) !important;
	border-left: 3px solid var(--ifs-blue) !important;
	border-radius: 8px;
	padding: 10px 12px !important;
	background: #fff;
}

.ifs-foundation-form .acf-label {
	margin-bottom: 5px;
}

.ifs-foundation-form .acf-label label {
	font-size: 13px;
	line-height: 1.2;
}

.ifs-foundation-form input[type="text"],
.ifs-foundation-form input[type="number"],
.ifs-foundation-form select,
.ifs-foundation-form textarea {
	min-height: 34px;
	padding: 5px 8px;
	font-size: 13px;
}

.ifs-foundation-form .acf-field-checkbox .acf-input ul {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 2px 8px;
	max-height: 120px;
	overflow: auto;
	padding-right: 4px;
}

.ifs-foundation-form .acf-field-checkbox .acf-input li {
	font-size: 12px;
}

.ifs-foundation-form .ifs-media-section {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px;
	margin: 0;
	padding: 0;
	border: 0;
}

.ifs-foundation-form .ifs-media-block {
	padding: 14px;
}

.ifs-foundation-form .ifs-media-block h2 {
	font-size: 24px;
	margin-bottom: 4px;
}

.ifs-foundation-form .ifs-media-block p {
	font-size: 12px;
	line-height: 1.35;
	margin: 0 0 8px;
}

.ifs-foundation-form .ifs-image-preview img {
	max-width: 180px;
	max-height: 120px;
	object-fit: contain;
	margin: 8px 0;
}

.ifs-foundation-form .ifs-gallery-preview {
	gap: 6px;
	margin: 8px 0;
}

.ifs-foundation-form .ifs-gallery-preview img {
	width: 58px;
	height: 58px;
}

.ifs-foundation-form .acf-form-submit {
	grid-column: 1 / -1;
	position: sticky;
	bottom: 0;
	margin: 8px -18px -16px;
	padding: 12px 18px;
}

.ifs-progress-copy {
	font-size: 13px;
}

.ifs-progress-track {
	height: 9px;
}

.ifs-missing-list {
	grid-template-columns: 1fr;
	gap: 5px;
	font-size: 12px;
}

.ifs-missing-list li {
	min-height: 18px;
}

@media (max-width: 1050px) {
	.ifs-foundation-workspace {
		grid-template-columns: 1fr;
		grid-template-areas:
			"head"
			"progress"
			"form";
	}

	.ifs-foundation-workspace > .ifs-foundation-alert {
		margin-top: 112px;
	}

	.ifs-foundation-workspace > .ifs-progress-card {
		position: sticky;
		top: 10px;
		z-index: 30;
		max-height: none;
	}

	.ifs-missing-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.ifs-foundation-form .acf-fields,
	.ifs-foundation-form .ifs-media-section {
		grid-template-columns: 1fr;
	}

	.ifs-missing-list {
		grid-template-columns: 1fr;
	}

	.ifs-foundation-workspace > .ifs-page-head h1 {
		font-size: 34px;
	}
}


/* Standalone application shell */
body.ifs-standalone-portal {
	margin: 0;
	min-height: 100vh;
	background: #f5f7fb;
	color: var(--ifs-text);
	font-family: Arial, Helvetica, sans-serif;
}

body.ifs-standalone-portal .ifs-persistent-actions {
	display: none;
}

.ifs-app-header {
	position: sticky;
	top: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 64px;
	padding: 10px 24px;
	border-bottom: 1px solid var(--ifs-border);
	background: rgba(255,255,255,.97);
	box-shadow: 0 4px 18px rgba(18,33,58,.06);
	backdrop-filter: blur(12px);
}

.ifs-app-brand {
	display: flex;
	align-items: center;
	gap: 12px;
}

.ifs-app-mark {
	display: inline-grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 11px;
	background: var(--ifs-navy);
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .08em;
}

.ifs-app-brand strong,
.ifs-app-brand small {
	display: block;
}

.ifs-app-brand strong {
	color: var(--ifs-navy);
	font-size: 16px;
}

.ifs-app-brand small {
	margin-top: 2px;
	color: #69768a;
	font-size: 11px;
}

.ifs-app-nav {
	display: flex;
	align-items: center;
	gap: 8px;
}

.ifs-app-nav a,
.ifs-app-nav a:visited {
	padding: 9px 12px;
	border-radius: 8px;
	color: var(--ifs-navy);
	text-decoration: none;
	font-size: 13px;
	font-weight: 700;
}

.ifs-app-nav a:hover {
	background: var(--ifs-light);
}

.ifs-app-nav .ifs-app-logout,
.ifs-app-nav .ifs-app-logout:visited {
	background: var(--ifs-navy);
	color: #fff;
}

.ifs-app-main {
	padding: 20px 0 42px;
}

body.ifs-standalone-portal .ifs-shell {
	max-width: 1380px;
	margin: 0 auto;
	padding: 0 24px;
}

body.ifs-standalone-portal .ifs-toolbar {
	margin-bottom: 12px;
}

body.ifs-standalone-portal .ifs-foundation-workspace {
	grid-template-columns: minmax(0, 1fr) 340px;
	grid-template-areas:
		"head progress"
		"alert progress"
		"form progress";
	gap: 14px 22px;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-page-head {
	grid-area: head;
	padding: 0;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-foundation-alert {
	grid-area: alert;
	margin: 0;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
	top: 84px;
}

body.ifs-standalone-portal .ifs-page-head h1 {
	font-size: clamp(30px, 3vw, 46px);
	line-height: 1.05;
}

body.ifs-standalone-portal .ifs-table-wrap,
body.ifs-standalone-portal .ifs-form-card,
body.ifs-standalone-portal .ifs-progress-card,
body.ifs-standalone-portal .ifs-foundation-alert {
	box-shadow: 0 10px 30px rgba(18,33,58,.07);
}

body.ifs-standalone-portal .ifs-specifications-form {
	max-width: none;
}

body.ifs-standalone-portal .ifs-specifications-form .acf-tab-wrap {
	position: sticky;
	top: 64px;
	z-index: 40;
	background: #fff;
}

body.ifs-standalone-portal .ifs-specifications-form .acf-fields {
	display: block !important;
}

body.ifs-standalone-portal .ifs-specifications-form .acf-field {
	width: 100% !important;
}

@media (max-width: 800px) {
	.ifs-app-header {
		align-items: flex-start;
		flex-direction: column;
		padding: 12px 16px;
	}

	.ifs-app-nav {
		width: 100%;
		overflow-x: auto;
	}

	body.ifs-standalone-portal .ifs-shell {
		padding: 0 14px;
	}
}

.ifs-primary-benefit-field{box-sizing:border-box}
.ifs-foundation-form .ifs-primary-benefit-field{border:1px solid var(--ifs-border)!important;border-left:3px solid var(--ifs-blue)!important;border-radius:8px;padding:10px 12px!important;background:#fff}
.ifs-primary-benefit-field select{width:100%}


/* v0.2.9 — final spacing polish */
body.ifs-standalone-portal .ifs-app-main {
	padding-top: 30px;
}

body.ifs-standalone-portal .ifs-shell {
	padding-top: 8px;
}

body.ifs-standalone-portal .ifs-form-card {
	overflow: visible;
}

body.ifs-standalone-portal .ifs-primary-benefit-field {
	margin-top: 6px !important;
	padding-top: 14px !important;
}

body.ifs-standalone-portal .ifs-primary-benefit-field .acf-label {
	margin-top: 0;
	margin-bottom: 8px;
}

body.ifs-standalone-portal .ifs-primary-benefit-field .acf-label label {
	display: block;
	line-height: 1.35;
}

body.ifs-standalone-portal .ifs-specifications-form {
	padding-top: 24px;
}

body.ifs-standalone-portal .ifs-specifications-form .ifs-primary-benefit-field {
	margin-bottom: 18px !important;
}

@media (max-width: 800px) {
	body.ifs-standalone-portal .ifs-app-main {
		padding-top: 22px;
	}
}


/* v0.3.0 — persistent current-product visual context */
.ifs-product-context-card {
	display: grid;
	grid-template-columns: 112px minmax(0, 1fr);
	gap: 14px;
	align-items: center;
	padding: 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 10px 30px rgba(18,33,58,.07);
}

.ifs-product-context-image {
	display: grid;
	place-items: center;
	width: 112px;
	height: 92px;
	overflow: hidden;
	border-radius: 10px;
	background: var(--ifs-light);
	color: #78869a;
	font-size: 11px;
	text-align: center;
}

.ifs-product-context-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ifs-context-eyebrow {
	margin: 0 0 2px;
	color: var(--ifs-blue);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ifs-product-context-copy h2 {
	margin: 0 0 8px;
	color: var(--ifs-navy);
	font-size: 18px;
	line-height: 1.15;
}

.ifs-context-meta {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px 12px;
	margin: 0;
}

.ifs-context-meta div {
	min-width: 0;
}

.ifs-context-meta dt {
	margin: 0;
	color: #758297;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.ifs-context-meta dd {
	margin: 1px 0 0;
	overflow: hidden;
	color: var(--ifs-text);
	font-size: 11px;
	font-weight: 700;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-product-context-card {
	grid-area: progress;
	position: sticky;
	top: 84px;
	z-index: 34;
	margin-bottom: 244px;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
	top: 238px;
	max-height: calc(100vh - 258px);
}

body.ifs-standalone-portal .ifs-specifications-form + .ifs-product-context-card,
body.ifs-standalone-portal .ifs-page-head + .ifs-product-context-card {
	margin-bottom: 16px;
}

@media (max-width: 1050px) {
	body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-product-context-card {
		grid-area: progress;
		position: static;
		margin-bottom: 0;
	}

	body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
		top: 10px;
	}
}

@media (max-width: 600px) {
	.ifs-product-context-card {
		grid-template-columns: 82px minmax(0, 1fr);
	}

	.ifs-product-context-image {
		width: 82px;
		height: 72px;
	}
}


/* v0.3.1 — complete Product Intelligence summary */
.ifs-product-context-card {
	grid-template-columns: 138px minmax(0, 1fr);
	align-items: stretch;
	padding: 16px 18px;
}

.ifs-product-context-image {
	width: 138px;
	height: 118px;
	align-self: center;
}

.ifs-product-context-copy {
	min-width: 0;
}

.ifs-product-context-copy h2 {
	margin-bottom: 10px;
	font-size: 22px;
}

.ifs-context-meta {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 9px 18px;
}

.ifs-context-meta div {
	padding: 6px 8px;
	border-radius: 8px;
	background: #f7f9fc;
}

.ifs-context-meta .ifs-context-meta-wide {
	grid-column: span 2;
}

.ifs-context-meta dt {
	font-size: 9px;
}

.ifs-context-meta dd {
	font-size: 12px;
	white-space: normal;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-product-context-card {
	margin-bottom: 334px;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
	top: 328px;
	max-height: calc(100vh - 348px);
}

@media (max-width: 1180px) {
	.ifs-context-meta {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.ifs-product-context-card {
		grid-template-columns: 96px minmax(0, 1fr);
	}

	.ifs-product-context-image {
		width: 96px;
		height: 82px;
	}

	.ifs-context-meta {
		grid-template-columns: 1fr;
	}

	.ifs-context-meta .ifs-context-meta-wide {
		grid-column: auto;
	}
}


/* v0.3.2 — compact one-row visual product list */
.ifs-table .ifs-col-photo {
	width: 72px;
}

.ifs-product-thumb-cell {
	width: 72px;
	padding-top: 7px !important;
	padding-bottom: 7px !important;
}

.ifs-product-thumb-link {
	display: inline-grid;
	place-items: center;
	width: 52px;
	height: 52px;
	overflow: hidden;
	border: 1px solid var(--ifs-border);
	border-radius: 8px;
	background: #f7f9fc;
	text-decoration: none;
}

.ifs-product-thumb {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ifs-product-thumb-placeholder {
	padding: 4px;
	color: #7b8798;
	font-size: 9px;
	line-height: 1.1;
	text-align: center;
}

.ifs-table tbody tr {
	height: 66px;
}

.ifs-table td,
.ifs-table th {
	vertical-align: middle;
}

.ifs-table td strong {
	color: var(--ifs-navy);
}

@media (max-width: 850px) {
	.ifs-table-wrap {
		overflow-x: auto;
	}

	.ifs-table {
		min-width: 860px;
	}
}


/* v0.3.3 — Foundation uses the original clean progress panel only */
body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
	top: 84px !important;
	max-height: calc(100vh - 104px) !important;
}

body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-product-context-card {
	display: none !important;
}

/* Current Product summary remains visible on Product Specifications */
body.ifs-standalone-portal .ifs-product-context-card {
	margin-bottom: 16px;
}

@media (max-width: 1050px) {
	body.ifs-standalone-portal .ifs-foundation-workspace > .ifs-progress-card {
		top: 10px !important;
		max-height: none !important;
	}
}


/* v0.3.4 — official IFS branding */
.ifs-app-brand {
	gap: 14px;
}

.ifs-app-logo-link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
}

.ifs-app-logo {
	display: block;
	width: auto;
	height: 50px;
	max-width: 210px;
	object-fit: contain;
}

.ifs-app-brand-copy strong {
	font-size: 16px;
}

.ifs-app-brand-copy small {
	font-size: 11px;
}

.ifs-app-mark {
	display: none !important;
}

@media (max-width: 760px) {
	.ifs-app-logo {
		height: 42px;
		max-width: 170px;
	}

	.ifs-app-brand-copy strong {
		font-size: 14px;
	}
}


/* v0.3.5 — Hero Image management inside Current Product summary */
.ifs-product-context-media {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 8px;
}

.ifs-context-image-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 7px;
}

.ifs-context-image-button {
	width: 100%;
	padding: 8px 9px !important;
	font-size: 11px !important;
	line-height: 1.2;
}

.ifs-context-remove-image {
	font-size: 10px;
}

.ifs-product-context-media input[type="hidden"] {
	display: none;
}

@media (max-width: 700px) {
	.ifs-context-image-button {
		font-size: 10px !important;
	}
}


/* v0.3.6 — form-bound Hero Image data */
.ifs-specifications-form input#ifs_featured_image_id {
	display: none !important;
}


/* v0.4.0 — Product Journal */
.ifs-product-journal {
	grid-column: 1 / -1;
	margin-top: 14px;
	padding: 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 12px;
	background: #fbfcfe;
}

.ifs-product-journal-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.ifs-product-journal-head strong {
	display: block;
	color: var(--ifs-navy);
	font-size: 13px;
}

.ifs-product-journal-head .ifs-btn {
	padding: 8px 11px;
	font-size: 11px;
}

.ifs-journal-latest {
	margin-top: 10px;
}

.ifs-journal-entry {
	padding: 10px 12px;
	border: 1px solid #e2e8f0;
	border-radius: 9px;
	background: #fff;
}

.ifs-journal-entry + .ifs-journal-entry {
	margin-top: 8px;
}

.ifs-journal-entry-head {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
	font-size: 11px;
}

.ifs-journal-pin {
	font-size: 13px;
}

.ifs-journal-author {
	color: #66758a;
}

.ifs-journal-category {
	padding: 3px 7px;
	border-radius: 999px;
	background: #eef4fb;
	color: var(--ifs-blue);
	font-size: 9px;
	font-weight: 800;
	text-transform: uppercase;
}

.ifs-journal-entry p {
	margin: 7px 0 0;
	color: var(--ifs-text);
	font-size: 12px;
	line-height: 1.45;
}

.ifs-journal-entry small {
	display: block;
	margin-top: 7px;
	color: #6f7d90;
	font-size: 10px;
}

.ifs-journal-empty {
	margin: 0;
	color: #758297;
	font-size: 12px;
}

.ifs-journal-form {
	margin-top: 12px;
	padding: 12px;
	border: 1px solid #d7e0ec;
	border-radius: 10px;
	background: #fff;
}

.ifs-journal-form[hidden] {
	display: none !important;
}

.ifs-journal-grid {
	display: grid;
	grid-template-columns: 160px minmax(0, 1fr);
	gap: 10px;
}

.ifs-journal-form label span {
	display: block;
	margin-bottom: 4px;
	color: var(--ifs-navy);
	font-size: 10px;
	font-weight: 700;
}

.ifs-journal-form select,
.ifs-journal-form input,
.ifs-journal-form textarea {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #cfd8e6;
	border-radius: 7px;
	padding: 8px 9px;
	background: #fff;
	font-size: 12px;
}

.ifs-journal-note-label {
	display: block;
	margin-top: 10px;
}

.ifs-journal-form-actions {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 10px;
}

.ifs-journal-status {
	color: #b42318;
	font-size: 11px;
}

.ifs-journal-history {
	margin-top: 10px;
}

.ifs-journal-history summary {
	cursor: pointer;
	color: var(--ifs-blue);
	font-size: 11px;
	font-weight: 700;
}

.ifs-journal-history-list {
	margin-top: 8px;
	max-height: 320px;
	overflow: auto;
	padding-right: 4px;
}

@media (max-width: 700px) {
	.ifs-product-journal-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-journal-grid {
		grid-template-columns: 1fr;
	}
}


/* v0.4.1 — internal Product History only */
.ifs-journal-category,
.ifs-journal-grid {
	display: none !important;
}

.ifs-product-journal .ifs-journal-note-label {
	margin-top: 0;
}

.ifs-product-journal .ifs-journal-entry-head {
	gap: 7px;
}


/* v0.4.2 — personalized employee dashboard */
.ifs-dashboard-shell {
	padding-top: 10px;
}

.ifs-welcome-panel {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	padding: 28px 30px;
	border: 1px solid var(--ifs-border);
	border-radius: 18px;
	background:
		linear-gradient(135deg, rgba(23,105,170,.08), rgba(255,255,255,.96) 42%),
		#fff;
	box-shadow: 0 14px 36px rgba(18,33,58,.08);
}

.ifs-welcome-copy h1 {
	margin: 0 0 8px;
	font-size: clamp(34px, 4vw, 58px);
	line-height: 1.05;
	letter-spacing: -.02em;
}

.ifs-greeting-icon {
	display: inline-block;
	margin-right: 4px;
}

.ifs-welcome-subtitle {
	margin: 0;
	font-size: 17px;
	color: #59677a;
}

.ifs-daily-mission {
	margin: 12px 0 0;
	color: var(--ifs-text);
	font-size: 14px;
}

.ifs-welcome-meta {
	flex: 0 0 auto;
	min-width: 180px;
	padding: 14px 16px;
	border: 1px solid rgba(23,105,170,.15);
	border-radius: 12px;
	background: rgba(255,255,255,.86);
	text-align: right;
}

.ifs-welcome-meta span,
.ifs-welcome-meta strong {
	display: block;
}

.ifs-welcome-meta span {
	color: #7b8797;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ifs-welcome-meta strong {
	margin-top: 4px;
	color: var(--ifs-navy);
	font-size: 13px;
}

.ifs-dashboard-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
	margin-top: 18px;
}

.ifs-dashboard-stats article {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 18px 20px;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(18,33,58,.05);
}

.ifs-dashboard-stats span {
	color: #667387;
	font-size: 12px;
	font-weight: 700;
}

.ifs-dashboard-stats strong {
	color: var(--ifs-navy);
	font-size: 30px;
	line-height: 1;
}

.ifs-dashboard-actions {
	margin-top: 18px;
}

.ifs-app-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 22px 16px 28px;
	color: #748195;
	font-size: 11px;
}

.ifs-app-footer strong {
	color: var(--ifs-navy);
}

@media (max-width: 800px) {
	.ifs-welcome-panel {
		flex-direction: column;
		padding: 22px;
	}

	.ifs-welcome-copy h1 {
		font-size: 36px;
	}

	.ifs-welcome-meta {
		width: 100%;
		box-sizing: border-box;
		text-align: left;
	}

	.ifs-dashboard-stats {
		grid-template-columns: 1fr;
	}

	.ifs-app-footer {
		flex-wrap: wrap;
	}
}


/* v0.4.3 — Product History correction controls */
.ifs-journal-entry-head {
	justify-content: space-between;
}

.ifs-journal-entry-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px;
}

.ifs-journal-entry-actions {
	display: flex;
	align-items: center;
	gap: 6px;
}

.ifs-journal-entry-actions button {
	padding: 3px 7px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	cursor: pointer;
	font-size: 10px;
	font-weight: 700;
}

.ifs-journal-edit {
	color: var(--ifs-blue);
}

.ifs-journal-delete {
	color: #b42318;
}

.ifs-journal-entry-actions button:hover {
	background: #eef3f8;
}

.ifs-journal-edit-form {
	margin-top: 8px;
	padding-top: 8px;
	border-top: 1px solid #e2e8f0;
}

.ifs-journal-edit-form[hidden],
.ifs-journal-note-text[hidden] {
	display: none !important;
}

.ifs-journal-edit-form textarea {
	box-sizing: border-box;
	width: 100%;
	border: 1px solid #cfd8e6;
	border-radius: 7px;
	padding: 8px 9px;
	font-size: 12px;
}


/* v0.4.4 — Product approval workflow */
.ifs-status-pending {
	background: #fff0db;
	color: #a14f00;
}

.ifs-status-publish {
	background: #e5f7ed;
	color: #146c43;
}

.ifs-product-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
}

.ifs-approve-link {
	display: inline-flex;
	align-items: center;
	padding: 6px 9px;
	border-radius: 7px;
	background: #147a4d;
	color: #fff !important;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
}

.ifs-approve-link:hover {
	background: #0f613d;
}


/* v0.4.5 — Product approval record */
.ifs-product-approval {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin-top: 14px;
}

.ifs-product-approval > div {
	padding: 10px 12px;
	border: 1px solid var(--ifs-border);
	border-radius: 10px;
	background: #f8fafc;
}

.ifs-product-approval span,
.ifs-product-approval strong {
	display: block;
}

.ifs-product-approval span {
	color: #748195;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-product-approval strong {
	margin-top: 4px;
	color: var(--ifs-navy);
	font-size: 12px;
}

.ifs-approval-status {
	display: inline-flex !important;
	width: fit-content;
	padding: 4px 8px;
	border-radius: 999px;
}

.ifs-approval-status.is-published {
	background: #e5f7ed;
	color: #146c43;
}

.ifs-approval-status.is-review {
	background: #fff0db;
	color: #a14f00;
}

@media (max-width: 760px) {
	.ifs-product-approval {
		grid-template-columns: 1fr;
	}
}


/* v0.4.6 — Global Operations world clocks */
.ifs-global-operations {
	margin-top: 18px;
	padding: 22px;
	border: 1px solid var(--ifs-border);
	border-radius: 16px;
	background: linear-gradient(145deg, #ffffff, #f8fbff);
	box-shadow: 0 10px 28px rgba(18,33,58,.06);
}

.ifs-global-operations-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 16px;
}

.ifs-global-operations-head h2 {
	margin: 3px 0 0;
	color: var(--ifs-navy);
	font-size: 20px;
	line-height: 1.25;
}

.ifs-global-live-indicator {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 6px 9px;
	border-radius: 999px;
	background: #edf8f2;
	color: #17633e;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-global-live-indicator i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #25a55f;
	box-shadow: 0 0 0 4px rgba(37,165,95,.12);
}

.ifs-world-clocks {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 10px;
}

.ifs-world-clock {
	padding: 14px;
	border: 1px solid #dfe7f1;
	border-radius: 12px;
	background: #fff;
	min-width: 0;
}

.ifs-world-clock-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
}

.ifs-world-clock-top strong {
	overflow: hidden;
	color: var(--ifs-navy);
	font-size: 12px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ifs-world-time {
	display: block;
	margin-top: 9px;
	color: var(--ifs-navy);
	font-size: 27px;
	font-weight: 800;
	letter-spacing: -.03em;
	line-height: 1;
}

.ifs-world-date {
	margin-top: 6px;
	color: #728094;
	font-size: 10px;
	white-space: nowrap;
}

.ifs-office-status {
	flex: 0 0 auto;
	padding: 3px 6px;
	border-radius: 999px;
	background: #eef2f6;
	color: #6a7687;
	font-size: 8px;
	font-weight: 900;
	letter-spacing: .05em;
}

.ifs-office-status.is-open {
	background: #e5f7ed;
	color: #146c43;
}

.ifs-office-status.is-closed {
	background: #f1f3f6;
	color: #6d7784;
}

@media (max-width: 1180px) {
	.ifs-world-clocks {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.ifs-global-operations-head {
		flex-direction: column;
	}

	.ifs-world-clocks {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ifs-world-time {
		font-size: 24px;
	}
}


/* v0.4.8 — dashboard information hierarchy */
.ifs-welcome-panel + .ifs-global-operations {
	margin-top: 18px;
}

.ifs-global-operations + .ifs-dashboard-stats {
	margin-top: 18px;
}

.ifs-dashboard-stats + .ifs-dashboard-actions {
	margin-top: 18px;
}


/* v0.5.0 — IFS Media Manager */
.ifs-media-manager .ifs-media-block {
	position: relative;
	transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.ifs-media-manager .ifs-upload-zone.is-dragging {
	border-color: var(--ifs-blue);
	box-shadow: 0 0 0 3px rgba(18, 105, 170, .12);
	transform: translateY(-1px);
}

.ifs-media-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 14px;
}

.ifs-media-heading h2 {
	margin-bottom: 4px;
}

.ifs-media-heading p {
	margin-top: 0;
}

.ifs-media-badge {
	flex: 0 0 auto;
	padding: 4px 7px;
	border-radius: 999px;
	background: #eaf3fb;
	color: var(--ifs-blue);
	font-size: 8px;
	font-weight: 900;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-upload-actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 10px;
}

.ifs-upload-progress {
	margin-top: 12px;
}

.ifs-upload-progress[hidden] {
	display: none !important;
}

.ifs-upload-progress-bar {
	height: 7px;
	overflow: hidden;
	border-radius: 999px;
	background: #e7edf5;
}

.ifs-upload-progress-bar span {
	display: block;
	width: 0;
	height: 100%;
	border-radius: inherit;
	background: var(--ifs-blue);
	transition: width .15s linear;
}

.ifs-upload-progress small {
	display: block;
	margin-top: 5px;
	color: #66758a;
	font-size: 10px;
}

.ifs-upload-status {
	min-height: 16px;
	margin: 8px 0 0;
	font-size: 11px;
	font-weight: 700;
}

.ifs-upload-status.is-success {
	color: #157347;
}

.ifs-upload-status.is-error {
	color: #b42318;
}

.ifs-upload-help {
	margin: 7px 0 0;
	color: #778397;
	font-size: 9px;
	line-height: 1.45;
}

.ifs-media-manager .ifs-gallery-preview img {
	position: relative;
	border: 1px solid #dfe6ef;
	border-radius: 8px;
}

@media (max-width: 700px) {
	.ifs-media-heading {
		flex-direction: column;
	}
}
/* v0.5.2 — Employee job title */
.ifs-job-title {
	display: inline-flex;
	align-items: center;
	margin: 4px 0 10px;
	padding: 5px 10px;
	border: 1px solid #d9e6f2;
	border-radius: 999px;
	background: #f4f8fc;
	color: var(--ifs-blue);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
	line-height: 1.2;
}

@media (max-width: 700px) {
	.ifs-job-title {
		font-size: 10px;
	}
}

/* v0.5.3 — My Desk / Private Sticky Notes */

.ifs-my-desk {
	margin-top: 18px;
	padding: 0;
}

.ifs-my-desk-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.ifs-my-desk-head > div {
	min-width: 0;
}

.ifs-my-desk-head .ifs-eyebrow {
	margin-bottom: 6px;
}

.ifs-my-desk-head h2 {
	margin: 0;
	color: var(--ifs-navy);
	font-size: 28px;
	line-height: 1.15;
}

.ifs-my-desk-head h2 + p {
	margin: 10px 0 0;
	color: #5f6f83;
	font-size: 13px;
	line-height: 1.55;
}

.ifs-private-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	padding: 6px 11px;
	border-radius: 999px;
	background: #eaf3fb;
	color: var(--ifs-blue);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .03em;
}

.ifs-private-badge::before {
	content: "🔒";
	font-size: 11px;
}

.ifs-my-desk-layout {
	display: grid;
	grid-template-columns: 235px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

.ifs-note-form {
	display: flex;
	flex-direction: column;
	gap: 9px;
}

.ifs-note-form label {
	color: var(--ifs-navy);
	font-size: 12px;
	font-weight: 700;
}

.ifs-note-form textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 125px;
	resize: vertical;
	padding: 13px 14px;
	border: 1px solid #cfd9e6;
	border-radius: 10px;
	background: #fff;
	color: var(--ifs-text);
	font-family: inherit;
	font-size: 13px;
	line-height: 1.55;
	outline: none;
	transition: border-color .18s ease, box-shadow .18s ease;
}

.ifs-note-form textarea:focus {
	border-color: var(--ifs-blue);
	box-shadow: 0 0 0 3px rgba(23, 105, 170, .12);
}

.ifs-note-form textarea::placeholder {
	color: #a0aabc;
}

.ifs-note-add-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	min-height: 38px;
	padding: 0 15px;
	border: 0;
	border-radius: 8px;
	background: var(--ifs-blue);
	color: #fff;
	font-size: 12px;
	font-weight: 800;
	cursor: pointer;
	box-shadow: 0 5px 14px rgba(23, 105, 170, .18);
	transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
}

.ifs-note-add-button:hover {
	transform: translateY(-1px);
	box-shadow: 0 7px 18px rgba(23, 105, 170, .24);
}

.ifs-note-add-button:active {
	transform: translateY(0);
}

.ifs-sticky-board {
	display: grid;
	grid-template-columns: repeat(4, minmax(135px, 1fr));
	gap: 18px;
	align-items: start;
	padding-top: 8px;
}

.ifs-sticky-note {
	position: relative;
	box-sizing: border-box;
	min-height: 170px;
	padding: 28px 17px 15px;
	border: 0;
	border-radius: 2px;
	background:
		linear-gradient(
			145deg,
			#fff8a9 0%,
			#fff18a 55%,
			#ffe56f 100%
		);
	color: #2f2d24;
	box-shadow:
		0 10px 18px rgba(87, 72, 10, .16),
		0 2px 4px rgba(87, 72, 10, .10);
	transform: rotate(-.6deg);
	transition: transform .18s ease, box-shadow .18s ease;
}

.ifs-sticky-note:nth-child(even) {
	transform: rotate(.7deg);
}

.ifs-sticky-note:nth-child(3n) {
	transform: rotate(-.3deg);
}

.ifs-sticky-note:hover {
	z-index: 2;
	transform: translateY(-3px) rotate(0deg);
	box-shadow:
		0 14px 24px rgba(87, 72, 10, .20),
		0 3px 6px rgba(87, 72, 10, .12);
}

.ifs-sticky-note::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 50%;
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: #df3e2d;
	box-shadow:
		0 2px 3px rgba(0, 0, 0, .28),
		inset 0 -2px 2px rgba(120, 0, 0, .22);
	transform: translateX(-50%);
}

.ifs-sticky-note::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 22px;
	height: 22px;
	background: linear-gradient(
		135deg,
		rgba(255, 255, 255, 0) 50%,
		rgba(205, 175, 36, .25) 51%
	);
}

.ifs-sticky-note p {
	margin: 0;
	color: #343126;
	font-size: 12px;
	font-weight: 600;
	font-style: italic;
	line-height: 1.65;
}

.ifs-sticky-note small {
	position: absolute;
	left: 17px;
	bottom: 14px;
	color: #686042;
	font-size: 9px;
	font-weight: 700;
}

.ifs-notes-empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: 150px;
	padding: 18px;
	border: 1px dashed #cdd8e5;
	border-radius: 12px;
	background: rgba(255, 255, 255, .55);
	text-align: center;
}

.ifs-notes-empty strong {
	color: var(--ifs-navy);
	font-size: 13px;
}

.ifs-notes-empty span {
	margin-top: 5px;
	color: #7a8798;
	font-size: 11px;
}

@media (max-width: 1100px) {
	.ifs-sticky-board {
		grid-template-columns: repeat(3, minmax(135px, 1fr));
	}
}

@media (max-width: 800px) {
	.ifs-my-desk-layout {
		grid-template-columns: 1fr;
	}

	.ifs-note-form {
		max-width: 420px;
	}

	.ifs-sticky-board {
		grid-template-columns: repeat(2, minmax(135px, 1fr));
	}
}

@media (max-width: 520px) {
	.ifs-my-desk-head {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-my-desk-head h2 {
		font-size: 24px;
	}

	.ifs-sticky-board {
		grid-template-columns: 1fr;
	}

	.ifs-sticky-note {
		min-height: 155px;
	}
}

/* v0.5.4 — Sticky note delete control */

.ifs-sticky-note-delete {
	position: absolute;
	top: 8px;
	right: 8px;
	margin: 0;
	z-index: 3;
}

.ifs-sticky-note-delete button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255, 255, 255, .72);
	color: #a22d23;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .10);
	opacity: .72;
	transition: opacity .15s ease, transform .15s ease, background .15s ease;
}

.ifs-sticky-note-delete button:hover {
	opacity: 1;
	background: #fff;
	transform: scale(1.08);
}

.ifs-sticky-note-delete button:focus-visible {
	outline: 2px solid var(--ifs-blue);
	outline-offset: 2px;
}

/* v0.5.5 — Sticky note expanded reading mode */

.ifs-sticky-note {
	cursor: pointer;
}

.ifs-sticky-note.is-expanded {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10002;
	width: min(430px, calc(100vw - 40px));
	min-height: 330px;
	max-height: calc(100vh - 80px);
	overflow-y: auto;
	padding: 42px 32px 34px;
	transform: translate(-50%, -50%) rotate(0deg) !important;
	cursor: pointer;
	box-shadow:
		0 28px 70px rgba(18, 33, 58, .32),
		0 8px 22px rgba(87, 72, 10, .20);
}

.ifs-sticky-note.is-expanded:hover {
	transform: translate(-50%, -50%) rotate(0deg) !important;
}

.ifs-sticky-note.is-expanded p {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.75;
}

.ifs-sticky-note.is-expanded small {
	position: static;
	display: block;
	margin-top: 28px;
	font-size: 11px;
}

.ifs-sticky-note.is-expanded .ifs-sticky-note-delete {
	top: 14px;
	right: 14px;
}

.ifs-sticky-note.is-expanded .ifs-sticky-note-delete button {
	width: 30px;
	height: 30px;
	font-size: 21px;
	background: rgba(255, 255, 255, .88);
}

body.ifs-sticky-note-open::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 10001;
	background: rgba(18, 33, 58, .32);
	backdrop-filter: blur(2px);
}
/* v0.5.6 — Footwear Quick Reference */

.ifs-footwear-reference {
	margin-top: 20px;
	padding: 22px;
	border: 1px solid var(--ifs-border);
	border-radius: 16px;
	background: linear-gradient(145deg, #ffffff, #f8fbff);
	box-shadow: 0 10px 28px rgba(18, 33, 58, .06);
}

.ifs-reference-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.ifs-reference-head h2 {
	margin: 3px 0 0;
	color: var(--ifs-navy);
	font-size: 22px;
	line-height: 1.2;
}

.ifs-reference-head h2 + p {
	margin: 8px 0 0;
	color: #67758a;
	font-size: 12px;
	line-height: 1.5;
}

.ifs-reference-badge {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	padding: 6px 10px;
	border-radius: 999px;
	background: #edf4fb;
	color: var(--ifs-blue);
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

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

.ifs-reference-card {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 16px;
	padding: 18px;
	border: 1px solid #dfe7f1;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 20px rgba(18, 33, 58, .05);
}

.ifs-reference-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border-radius: 12px;
	background: #f2f6fb;
	font-size: 24px;
}

.ifs-reference-card h3 {
	margin: 0 0 6px;
	color: var(--ifs-navy);
	font-size: 16px;
	line-height: 1.2;
}

.ifs-reference-card p {
	margin: 0;
	color: #66758a;
	font-size: 11px;
	line-height: 1.5;
}

.ifs-reference-button {
	align-self: center;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 112px;
	min-height: 34px;
	padding: 8px 11px;
	box-sizing: border-box;
	border: 1px solid #d7e1ec;
	border-radius: 8px;
	background: #f7f9fc;
	color: #8a96a8;
	font-size: 10px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	cursor: pointer;
}

.ifs-reference-button:disabled {
	opacity: 1;
	cursor: not-allowed;
}
.ifs-reference-button:not(:disabled):hover {
    border-color: var(--ifs-blue);
    background: #eef5fb;
    color: var(--ifs-blue);
}
@media (max-width: 900px) {
	.ifs-reference-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.ifs-reference-head {
		flex-direction: column;
	}

	.ifs-reference-card {
		grid-template-columns: auto 1fr;
	}

	.ifs-reference-button {
		grid-column: 1 / -1;
		justify-self: start;
		width: 112px;
	}
}

@media (max-width: 520px) {
	.ifs-sticky-note.is-expanded {
		width: calc(100vw - 28px);
		min-height: 280px;
		max-height: calc(100vh - 40px);
		padding: 38px 24px 28px;
	}

	.ifs-sticky-note.is-expanded p {
		font-size: 16px;
	}
}
/* v0.5.7 — Footwear Size Guide modal */
/* v0.5.8 — Shoe Anatomy reference */

.ifs-shoe-anatomy-panel {
	width: min(900px, calc(100vw - 40px));
}

.ifs-shoe-anatomy-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	grid-template-rows: auto 1fr;
	gap: 16px;
	margin-top: 6px;
	align-items: stretch;
}
.ifs-anatomy-group {
	padding: 16px;
	border: 1px solid #dfe7f1;
	border-radius: 14px;
	background: #f9fbfd;
}

.ifs-anatomy-group h3 {
	margin: 0 0 12px;
	color: var(--ifs-navy);
	font-size: 15px;
	line-height: 1.2;
}

.ifs-anatomy-list {
	margin: 0;
}

.ifs-anatomy-list > div {
	padding: 10px 0;
	border-bottom: 1px solid #e8edf3;
}

.ifs-anatomy-list > div:first-child {
	padding-top: 0;
}

.ifs-anatomy-list > div:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.ifs-anatomy-list dt {
	margin: 0 0 3px;
	color: var(--ifs-blue);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.ifs-anatomy-list dd {
	margin: 0;
	color: #4f5f73;
	font-size: 11px;
	line-height: 1.5;
}

.ifs-anatomy-notice {
	margin-top: 18px;
	padding: 12px 14px;
	border: 1px solid #dfe7f1;
	border-radius: 10px;
	background: #f4f7fb;
	color: #5d6b7e;
	font-size: 10px;
	line-height: 1.55;
}

.ifs-anatomy-notice strong {
	color: var(--ifs-navy);
}

@media (max-width: 900px) {
    .ifs-shoe-anatomy-grid {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
    }

    .ifs-anatomy-group:first-child,
    .ifs-anatomy-visual {
        grid-column: auto;
        grid-row: auto;
    }
}
	
.ifs-reference-modal[hidden] {
	display: none !important;
}

.ifs-reference-modal {
	position: fixed;
	inset: 0;
	z-index: 10020;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	background: rgba(18, 33, 58, .38);
	backdrop-filter: blur(3px);
}

.ifs-reference-modal-panel {
	box-sizing: border-box;
	width: min(680px, calc(100vw - 40px));
	max-height: calc(100vh - 60px);
	overflow-y: auto;
	padding: 24px;
	border: 1px solid #dce4ee;
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 28px 70px rgba(18, 33, 58, .28);
}

.ifs-reference-modal-head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 18px;
}

.ifs-reference-modal-head h2 {
	margin: 3px 0 0;
	color: var(--ifs-navy);
	font-size: 24px;
	line-height: 1.2;
}

.ifs-reference-modal-head h2 + p {
	margin: 8px 0 0;
	color: #66758a;
	font-size: 12px;
	line-height: 1.5;
}

.ifs-reference-modal-close {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #f3f6fa;
	color: #516074;
	font-size: 22px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	transition: background .15s ease, transform .15s ease;
}

.ifs-reference-modal-close:hover {
	background: #e9eef5;
	transform: scale(1.06);
}

.ifs-size-guide-notice {
	margin-bottom: 18px;
	padding: 12px 14px;
	border: 1px solid #f0dfaa;
	border-radius: 10px;
	background: #fff9e8;
	color: #6b5a21;
	font-size: 11px;
	line-height: 1.55;
}

.ifs-size-guide-notice strong {
	color: #4f4217;
}

.ifs-size-table-wrap {
	overflow-x: auto;
	border: 1px solid #dfe7f1;
	border-radius: 12px;
}

.ifs-size-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
}

.ifs-size-table th,
.ifs-size-table td {
	padding: 11px 14px;
	border-bottom: 1px solid #edf1f5;
	text-align: center;
}

.ifs-size-table th {
	background: #f5f8fc;
	color: var(--ifs-navy);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.ifs-size-table td {
	color: #2d3a4d;
	font-size: 12px;
	font-weight: 700;
}

.ifs-size-table tbody tr:last-child td {
	border-bottom: 0;
}

.ifs-size-table tbody tr:hover {
	background: #f9fbfd;
}

.ifs-size-guide-footnote {
	margin: 14px 0 0;
	color: #748195;
	font-size: 10px;
	line-height: 1.5;
}

body.ifs-reference-modal-open {
	overflow: hidden;
}

@media (max-width: 560px) {
	.ifs-reference-modal {
		padding: 14px;
	}

	.ifs-reference-modal-panel {
		width: 100%;
		max-height: calc(100vh - 28px);
		padding: 18px;
	}

	.ifs-reference-modal-head h2 {
		font-size: 21px;
	}
}

/* v0.5.9 — Shoe Anatomy visual reference */

.ifs-anatomy-visual {
    grid-column: 2 / 4;
    grid-row: 2;
    align-self: stretch;
    margin-top: 0;
    padding: 18px;
    border: 1px solid #d7e1ec;
    border-radius: 14px;
    background: #f8fbff;
    text-align: center;
}

.ifs-anatomy-group:first-child {
    grid-row: 1 / 3;
}
.ifs-anatomy-visual-head {
    margin-bottom: 14px;
    text-align: left;
}

.ifs-anatomy-visual-head .ifs-eyebrow {
    margin: 0 0 4px;
}

.ifs-anatomy-visual-head > p:last-child {
    margin: 0;
    color: #65758a;
    font-size: 12px;
    line-height: 1.5;
}

.ifs-anatomy-visual img {
    display: block;
    width: 100%;
    max-width: 760px;
    height: auto;
    max-height: 520px;
    margin: 0 auto;
    object-fit: contain;
}

/* v0.6.0 — Global Operations world map command panel */

.ifs-global-operations {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	min-height: 230px;
	padding: 24px;
	background: #fff;
}

/* World map background */
.ifs-global-operations::before {
	content: "";
	position: absolute;
	inset: 46px 20px 14px;
	z-index: -2;
	background-image: url("ifs-world-map.svg");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: .22;
	pointer-events: none;
}

/* IFS watermark */
.ifs-global-operations::after {
	content: "";
	position: absolute;
	right: 30px;
	bottom: 18px;
	z-index: -1;
	width: 110px;
	height: 54px;
	background-image: url("ifs-official-logo.png");
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	opacity: .20;
	pointer-events: none;
}

/* Keep all content clearly above map */
.ifs-global-operations-head,
.ifs-world-clocks {
	position: relative;
	z-index: 2;
}

/* Clock cards become slightly glass-like */
.ifs-world-clock {
	background: rgba(255, 255, 255, .88);
	border-color: rgba(207, 220, 233, .95);
	box-shadow:
		0 8px 22px rgba(18, 33, 58, .06),
		0 1px 2px rgba(18, 33, 58, .04);
	backdrop-filter: blur(3px);
	transition:
		transform .18s ease,
		box-shadow .18s ease,
		border-color .18s ease;
}

.ifs-world-clock:hover {
	transform: translateY(-2px);
	border-color: #bfd5e7;
	box-shadow:
		0 13px 28px rgba(18, 33, 58, .10),
		0 2px 4px rgba(18, 33, 58, .05);
}

/* Stronger hierarchy for city/time */
.ifs-world-clock-top strong {
	font-size: 12px;
	font-weight: 800;
}

.ifs-world-time {
	font-size: 29px;
	font-weight: 900;
}

/* More refined LIVE indicator */
.ifs-global-live-indicator {
	box-shadow: 0 4px 12px rgba(23, 99, 62, .10);
}

/* Responsive tuning */
@media (max-width: 700px) {
	.ifs-global-operations {
		min-height: auto;
		padding: 20px;
	}

	.ifs-global-operations::before {
		inset: 90px 10px 20px;
		opacity: .07;
	}

	.ifs-global-operations::after {
		width: 80px;
		height: 40px;
		right: 18px;
		bottom: 14px;
	}
}
/* v0.6.0 — Global Operations Brand Ribbon */
.ifs-brand-ribbon {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 18px;
    padding: 12px 18px;
    min-height: 72px;
    overflow: hidden;
    border-top: 1px solid rgba(207, 220, 233, .75);
}

.ifs-brand-ribbon img {
    display: block;
    width: auto;
    max-width: 105px;
    height: 42px;
    object-fit: contain;
    flex: 0 1 auto;
}

/* Fine-tune unusually shaped logos */
.ifs-brand-ribbon img[alt="911 Assault"] {
    max-width: 115px;
}

.ifs-brand-ribbon img[alt="Aeroflex"],
.ifs-brand-ribbon img[alt="ecoflex"] {
    max-width: 110px;
}

.ifs-brand-ribbon img[alt="Berretta"],
.ifs-brand-ribbon img[alt="Capo Italy"],
.ifs-brand-ribbon img[alt="Hammer Trust"] {
    max-width: 90px;
}

.ifs-brand-ribbon img[alt="Just Kids Brands"] {
    max-width: 100px;
}

.ifs-brand-ribbon img[alt="Raphael Lauria"] {
    max-width: 95px;
}

/* Tablet / mobile */
@media (max-width: 900px) {
    .ifs-brand-ribbon {
        justify-content: flex-start;
        overflow-x: auto;
        gap: 24px;
        padding: 12px 16px;
        scrollbar-width: thin;
    }

    .ifs-brand-ribbon img {
        flex: 0 0 auto;
        height: 38px;
    }
}
/* v0.6.1 — Brand Ribbon Visual Balance */
.ifs-brand-ribbon {
    min-height: 82px;
    padding: 10px 18px 8px;
    gap: 20px;
}

.ifs-brand-ribbon img {
    height: 52px;
    max-width: 125px;
}

/* Compact artwork */
.ifs-brand-ribbon img[alt="Berretta"] {
    height: 48px;
    max-width: 105px;
}

.ifs-brand-ribbon img[alt="Capo Italy"] {
    height: 54px;
    max-width: 110px;
}

.ifs-brand-ribbon img[alt="Hammer Trust"] {
    height: 52px;
    max-width: 105px;
}

.ifs-brand-ribbon img[alt="Majesty Italy"] {
    height: 54px;
    max-width: 115px;
}

.ifs-brand-ribbon img[alt="ProChef"] {
    height: 54px;
    max-width: 120px;
}

.ifs-brand-ribbon img[alt="Raphael Lauria"] {
    height: 58px;
    max-width: 110px;
}
/* =========================================================
   REMOVE IFS DASHBOARD WATERMARK
   ========================================================= */

/* v0.6.2 — Remove IFS watermark only */
.ifs-global-operations::after {
    display: none !important;
}
/* Blend white-background brand artwork into dashboard */
.ifs-brand-ribbon img:not([alt="Raphael Lauria"]) {
    mix-blend-mode: multiply;
}
/* =========================================================
   v0.7.0 — Procurement Calculator
   ========================================================= */

.ifs-procurement-calculator-panel {
    width: min(760px, calc(100vw - 40px));
}

.ifs-procurement-calculator {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 250px;
    gap: 22px;
    margin-top: 20px;
}

.ifs-procurement-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.ifs-procurement-field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.ifs-procurement-field span {
    color: var(--ifs-navy);
    font-size: 12px;
    font-weight: 800;
}

.ifs-procurement-field input {
    width: 100%;
    box-sizing: border-box;
    padding: 12px 13px;
    border: 1px solid #d7e1ec;
    border-radius: 9px;
    background: #fff;
    color: var(--ifs-navy);
    font-size: 16px;
    font-weight: 700;
    outline: none;
    transition:
        border-color .18s ease,
        box-shadow .18s ease;
}

.ifs-procurement-field input:focus {
    border-color: var(--ifs-blue);
    box-shadow: 0 0 0 3px rgba(0, 102, 179, .10);
}

.ifs-procurement-field input[readonly] {
    background: #f5f8fb;
    color: #53677d;
}

.ifs-margin-result {
    min-height: 190px;
    padding: 22px;
    border: 1px solid #d7e1ec;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.ifs-margin-emoji {
    margin-bottom: 10px;
    font-size: 44px;
    line-height: 1;
}

.ifs-margin-label {
    margin: 0 0 4px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

#ifs-margin-display {
    display: block;
    margin-bottom: 7px;
    font-size: 34px;
    line-height: 1;
}

#ifs-margin-message {
    margin: 0;
    font-size: 12px;
    line-height: 1.45;
}

/* Neutral */
.ifs-margin-result-neutral {
    background: #f8fbfd;
    color: #64758a;
}
/* Below 40% — Management Approval */
.ifs-margin-result-critical {
    background: #fff0f0;
    border-color: #e57373;
    color: #b42318;
}

.ifs-margin-result-critical #ifs-margin-message {
    color: #b42318;
    font-weight: 800;
}
/* 50% and below */
.ifs-margin-result-low {
    background: #fff7cf;
    border-color: #efd26a;
    color: #6b5715;
}

/* Above 50% up to 60% */
.ifs-margin-result-good {
    background: #eaf8ef;
    border-color: #9fd7b3;
    color: #17633e;
}

/* Above 60% */
.ifs-margin-result-excellent {
    background: #eaf4ff;
    border-color: #9fc7ef;
    color: #0a5fa8;
    transform: translateY(-2px);
}

.ifs-procurement-note {
    margin: 18px 0 0;
    padding: 11px 13px;
    border-radius: 9px;
    background: #f5f8fb;
    color: #65758a;
    font-size: 11px;
    line-height: 1.5;
}

/* Responsive */
@media (max-width: 700px) {
    .ifs-procurement-calculator {
        grid-template-columns: 1fr;
    }

    .ifs-procurement-fields {
        grid-template-columns: 1fr;
    }

    .ifs-margin-result {
        min-height: 150px;
    }
}

/* =========================================================
   IFS v0.8.1 — Compact Top Command Header
   Dashboard | Collection | + Add Product
   ========================================================= */

/* Keep the application header compact while preserving the
   existing sticky header behavior and overall IFS branding. */
.ifs-app-header {
	min-height: 40px;
	padding: 4px 18px;
	gap: 14px;
	align-items: center;
}

/* Compact brand area */
.ifs-app-brand {
	gap: 9px;
	min-width: 0;
}

.ifs-app-logo {
	height: 32px;
	max-width: 138px;
}

.ifs-app-brand-copy strong {
	font-size: 13px;
	line-height: 1.1;
}

.ifs-app-brand-copy small {
	margin-top: 1px;
	font-size: 9px;
	line-height: 1.1;
}

/* Command navigation */
.ifs-app-nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 7px;
	margin-left: auto;
	width: auto;
	overflow: visible;
}

/* Dashboard + Collection */
.ifs-app-nav .ifs-nav-button,
.ifs-app-nav .ifs-nav-button:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 28px;
	padding: 0 11px;
	border: 1px solid #b9d8c5;
	border-radius: 7px;
	background: #f1f8f4;
	color: #17633e;
	text-decoration: none;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .02em;
	line-height: 1;
	white-space: nowrap;
	box-shadow: 0 2px 6px rgba(20, 108, 67, .05);
	transition:
		background .16s ease,
		border-color .16s ease,
		color .16s ease,
		transform .16s ease,
		box-shadow .16s ease;
}

.ifs-app-nav .ifs-nav-button:hover {
	background: #e5f4eb;
	border-color: #86bc9b;
	color: #105233;
	transform: translateY(-1px);
	box-shadow: 0 4px 10px rgba(20, 108, 67, .10);
}

/* Primary action — deliberately strongest */
.ifs-app-nav .ifs-nav-add-product,
.ifs-app-nav .ifs-nav-add-product:visited {
	min-height: 32px;
	padding: 0 15px;
	border-color: #137a48;
	background: #137a48;
	color: #fff;
	font-size: 11px;
	box-shadow: 0 4px 11px rgba(19, 122, 72, .18);
}

.ifs-app-nav .ifs-nav-add-product:hover {
	background: #0f653b;
	border-color: #0f653b;
	color: #fff;
	box-shadow: 0 6px 14px rgba(19, 122, 72, .22);
}

.ifs-nav-add-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 5px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1;
}

@media (min-width: 801px) {
	.ifs-app-nav .ifs-nav-dashboard,
	.ifs-app-nav .ifs-nav-collection {
		min-width: 78px;
	}

	.ifs-app-nav .ifs-nav-add-product {
		min-width: 108px;
	}
}

/* Small screens: keep navigation usable without making the
   desktop header tall again. */
@media (max-width: 800px) {
	.ifs-app-header {
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
		padding: 5px 10px;
	}

	.ifs-app-logo {
		height: 29px;
		max-width: 122px;
	}

	.ifs-app-brand-copy strong {
		font-size: 12px;
	}

	.ifs-app-brand-copy small {
		font-size: 8px;
	}

	.ifs-app-nav {
		width: auto;
		margin-left: auto;
		gap: 5px;
		overflow-x: auto;
	}

	.ifs-app-nav .ifs-nav-button,
	.ifs-app-nav .ifs-nav-button:visited {
		flex: 0 0 auto;
		min-height: 27px;
		padding: 0 8px;
		font-size: 9px;
	}

	.ifs-app-nav .ifs-nav-add-product,
	.ifs-app-nav .ifs-nav-add-product:visited {
		min-height: 30px;
		padding: 0 10px;
		font-size: 10px;
	}
}

/* =========================================================
   IFS v0.8.2 — Compact Welcome Panel
   Reduce welcome area by ~50% and return screen space to work
   ========================================================= */

.ifs-dashboard-shell {
	padding-top: 6px;
}

/* Compact three-part welcome strip:
   profile | greeting | last login */
.ifs-welcome-panel {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr) 165px;
	align-items: center;
	gap: 22px;
	padding: 14px 18px;
	border-radius: 14px;
}

/* Employee photo */
.ifs-profile-photo {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: center;
	width: 132px;
	min-width: 132px;
	gap: 5px;
}

.ifs-profile-photo img,
#ifs-profile-photo-img {
	display: block;
	width: 132px;
	height: 132px;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba(18,33,58,.10);
}

/* Change Photo — compact secondary action */
.ifs-profile-photo-button,
#ifs-profile-photo-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 24px;
	padding: 3px 8px;
	border: 1px solid #b9d8c5;
	border-radius: 6px;
	background: #f1f8f4;
	color: #17633e;
	font-family: inherit;
	font-size: 9px;
	font-weight: 800;
	line-height: 1;
	cursor: pointer;
	transition:
		background .16s ease,
		border-color .16s ease,
		color .16s ease,
		transform .16s ease;
}

.ifs-profile-photo-button:hover,
#ifs-profile-photo-button:hover {
	background: #e5f4eb;
	border-color: #86bc9b;
	color: #105233;
	transform: translateY(-1px);
}

/* Greeting copy */
.ifs-welcome-copy {
	min-width: 0;
	align-self: center;
}

.ifs-welcome-copy .ifs-eyebrow {
	margin: 0 0 3px;
	font-size: 9px;
	letter-spacing: .11em;
}

.ifs-welcome-copy h1 {
	margin: 0 0 5px;
	font-size: clamp(28px, 2.5vw, 38px);
	line-height: .98;
	letter-spacing: -.025em;
}

.ifs-greeting-icon {
	margin-right: 3px;
	font-size: .88em;
}

.ifs-job-title {
	margin: 2px 0 6px;
	padding: 3px 8px;
	font-size: 9px;
	line-height: 1.1;
}

.ifs-welcome-subtitle {
	margin: 0;
	font-size: 12px;
	line-height: 1.3;
}

.ifs-daily-mission {
	margin: 6px 0 0;
	font-size: 10.5px;
	line-height: 1.35;
}

/* Compact last-login card */
.ifs-welcome-meta {
	min-width: 0;
	width: 165px;
	box-sizing: border-box;
	padding: 9px 11px;
	border-radius: 9px;
	text-align: right;
}

.ifs-welcome-meta span {
	font-size: 8px;
	letter-spacing: .07em;
}

.ifs-welcome-meta strong {
	margin-top: 2px;
	font-size: 11px;
	line-height: 1.25;
}

/* Keep immediate dashboard spacing tight */
.ifs-welcome-panel + .ifs-global-operations,
.ifs-welcome-panel + .ifs-dashboard-stats,
.ifs-welcome-panel + .ifs-my-desk {
	margin-top: 10px;
}

/* Laptop / smaller desktop */
@media (max-width: 1050px) {
	.ifs-welcome-panel {
		grid-template-columns: 112px minmax(0, 1fr) 145px;
		gap: 16px;
		padding: 12px 14px;
	}

	.ifs-profile-photo {
		width: 112px;
		min-width: 112px;
	}

	.ifs-profile-photo img,
	#ifs-profile-photo-img {
		width: 112px;
		height: 112px;
	}

	.ifs-welcome-copy h1 {
		font-size: clamp(25px, 3.2vw, 34px);
	}

	.ifs-welcome-meta {
		width: 145px;
	}
}

/* Mobile: stack cleanly without inheriting the older oversized
   mobile welcome rules. */
@media (max-width: 800px) {
	.ifs-welcome-panel {
		display: grid;
		grid-template-columns: 88px minmax(0, 1fr);
		gap: 12px;
		padding: 12px;
	}

	.ifs-profile-photo {
		width: 88px;
		min-width: 88px;
		grid-row: 1 / 3;
	}

	.ifs-profile-photo img,
	#ifs-profile-photo-img {
		width: 88px;
		height: 88px;
		border-radius: 8px;
	}

	.ifs-profile-photo-button,
	#ifs-profile-photo-button {
		min-height: 22px;
		font-size: 8px;
	}

	.ifs-welcome-copy h1 {
		font-size: 27px;
	}

	.ifs-welcome-subtitle {
		font-size: 11px;
	}

	.ifs-daily-mission {
		font-size: 10px;
	}

	.ifs-welcome-meta {
		grid-column: 2;
		width: auto;
		padding: 7px 9px;
		text-align: left;
	}
}

/* =========================================================
   IFS v0.8.3 — Welcome Primary Actions
   Collection + Add Product inside compact welcome strip
   ========================================================= */

@media (min-width: 1051px) {
	.ifs-welcome-panel {
		grid-template-columns: 132px minmax(0, 1fr) auto 165px;
	}

	.ifs-welcome-actions {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 9px;
		align-self: center;
		white-space: nowrap;
	}
}

.ifs-welcome-action,
.ifs-welcome-action:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 36px;
	padding: 0 15px;
	border: 1px solid #a9ceb7;
	border-radius: 8px;
	background: #f1f8f4;
	color: #17633e;
	text-decoration: none;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .02em;
	line-height: 1;
	white-space: nowrap;
	box-shadow: 0 3px 9px rgba(19, 122, 72, .07);
	transition:
		background .16s ease,
		border-color .16s ease,
		color .16s ease,
		transform .16s ease,
		box-shadow .16s ease;
}

.ifs-welcome-action:hover {
	background: #e5f4eb;
	border-color: #82b995;
	color: #105233;
	transform: translateY(-1px);
	box-shadow: 0 5px 12px rgba(19, 122, 72, .12);
}

.ifs-welcome-action-primary,
.ifs-welcome-action-primary:visited {
	min-height: 46px;
	padding: 0 22px;
	border-color: #137a48;
	background: #137a48;
	color: #fff;
	font-size: 12px;
	box-shadow: 0 7px 18px rgba(19, 122, 72, .20);
}

.ifs-welcome-action-primary:hover {
	background: #0f653b;
	border-color: #0f653b;
	color: #fff;
	box-shadow: 0 9px 22px rgba(19, 122, 72, .25);
}

.ifs-welcome-action-plus {
	margin-right: 6px;
	font-size: 17px;
	font-weight: 900;
	line-height: 1;
}

@media (max-width: 1050px) and (min-width: 801px) {
	.ifs-welcome-panel {
		grid-template-columns: 112px minmax(0, 1fr) 145px;
	}

	.ifs-welcome-actions {
		grid-column: 2;
		display: flex;
		align-items: center;
		gap: 7px;
		margin-top: 2px;
	}

	.ifs-welcome-meta {
		grid-column: 3;
		grid-row: 1 / 3;
	}

	.ifs-welcome-action {
		min-height: 32px;
		padding: 0 11px;
		font-size: 9px;
	}

	.ifs-welcome-action-primary {
		min-height: 38px;
		padding: 0 15px;
		font-size: 10px;
	}
}

@media (max-width: 800px) {
	.ifs-welcome-actions {
		grid-column: 2;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 6px;
		margin-top: 2px;
	}

	.ifs-welcome-action {
		min-height: 29px;
		padding: 0 9px;
		font-size: 8px;
	}

	.ifs-welcome-action-primary {
		min-height: 34px;
		padding: 0 12px;
		font-size: 9px;
	}
}

/* =========================================================
   IFS v0.8.4 — Single-Screen Dashboard Workspace
   Work first: Stats + My Desk + Daily Tools
   Global Operations becomes compact footer intelligence
   ========================================================= */

/* Tighten the dashboard canvas */
body.ifs-standalone-portal .ifs-app-main {
	padding-top: 12px;
	padding-bottom: 14px;
}

body.ifs-standalone-portal .ifs-dashboard-shell {
	padding-top: 0;
}

/* Stats directly beneath Welcome */
.ifs-dashboard-stats {
	gap: 10px;
	margin-top: 10px;
}

.ifs-dashboard-stats article {
	min-height: 48px;
	padding: 9px 14px;
	border-radius: 10px;
	box-shadow: 0 4px 12px rgba(18,33,58,.04);
}

.ifs-dashboard-stats span {
	font-size: 10px;
}

.ifs-dashboard-stats strong {
	font-size: 22px;
}

/* Main working zone */
.ifs-dashboard-workspace {
	display: grid;
	grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
	gap: 10px;
	margin-top: 10px;
	align-items: stretch;
}

.ifs-dashboard-workspace > .ifs-my-desk,
.ifs-dashboard-workspace > .ifs-footwear-reference {
	box-sizing: border-box;
	height: 100%;
	margin: 0;
	padding: 12px 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 5px 16px rgba(18,33,58,.045);
}

/* My Desk — compact working card */
.ifs-dashboard-workspace .ifs-my-desk-head {
	align-items: center;
	margin-bottom: 9px;
}

.ifs-dashboard-workspace .ifs-my-desk-head .ifs-eyebrow {
	margin-bottom: 2px;
	font-size: 9px;
}

.ifs-dashboard-workspace .ifs-my-desk-head h2 {
	font-size: 20px;
	line-height: 1.05;
}

.ifs-dashboard-workspace .ifs-my-desk-head h2 + p {
	margin-top: 4px;
	font-size: 9.5px;
	line-height: 1.3;
}

.ifs-dashboard-workspace .ifs-private-badge {
	padding: 4px 8px;
	font-size: 8px;
}

.ifs-dashboard-workspace .ifs-my-desk-layout {
	grid-template-columns: 170px minmax(0, 1fr);
	gap: 12px;
}

.ifs-dashboard-workspace .ifs-note-form {
	gap: 5px;
}

.ifs-dashboard-workspace .ifs-note-form label {
	font-size: 9px;
}

.ifs-dashboard-workspace .ifs-note-form textarea {
	min-height: 82px;
	max-height: 82px;
	padding: 8px 9px;
	border-radius: 7px;
	font-size: 10px;
	line-height: 1.35;
	resize: none;
}

.ifs-dashboard-workspace .ifs-note-add-button {
	min-height: 28px;
	padding: 0 10px;
	border-radius: 6px;
	font-size: 9px;
}

.ifs-dashboard-workspace .ifs-sticky-board {
	grid-template-columns: repeat(2, minmax(105px, 1fr));
	gap: 9px;
	padding-top: 4px;
}

.ifs-dashboard-workspace .ifs-sticky-note {
	min-height: 116px;
	padding: 22px 11px 12px;
}

.ifs-dashboard-workspace .ifs-sticky-note p {
	font-size: 9.5px;
	line-height: 1.45;
}

.ifs-dashboard-workspace .ifs-sticky-note small {
	left: 11px;
	bottom: 9px;
	font-size: 7.5px;
}

.ifs-dashboard-workspace .ifs-sticky-note-delete {
	top: 5px;
	right: 5px;
}

.ifs-dashboard-workspace .ifs-sticky-note-delete button {
	width: 20px;
	height: 20px;
	font-size: 15px;
}

.ifs-dashboard-workspace .ifs-notes-empty {
	min-height: 105px;
	padding: 10px;
}

/* Daily Footwear Tools — compact operational card */
.ifs-dashboard-workspace .ifs-reference-head {
	align-items: center;
	margin-bottom: 9px;
}

.ifs-dashboard-workspace .ifs-reference-head .ifs-eyebrow {
	margin-bottom: 2px;
	font-size: 9px;
}

.ifs-dashboard-workspace .ifs-reference-head h2 {
	margin-top: 0;
	font-size: 20px;
	line-height: 1.05;
}

.ifs-dashboard-workspace .ifs-reference-head h2 + p {
	margin-top: 4px;
	font-size: 9.5px;
	line-height: 1.3;
}

.ifs-dashboard-workspace .ifs-reference-badge {
	padding: 4px 7px;
	font-size: 7px;
}

.ifs-dashboard-workspace .ifs-reference-grid {
	grid-template-columns: 1fr;
	gap: 7px;
}

.ifs-dashboard-workspace .ifs-reference-card {
	grid-template-columns: 32px minmax(0, 1fr) auto;
	gap: 9px;
	padding: 8px 9px;
	border-radius: 9px;
	box-shadow: none;
}

.ifs-dashboard-workspace .ifs-reference-icon {
	width: 32px;
	height: 32px;
	border-radius: 8px;
	font-size: 17px;
}

.ifs-dashboard-workspace .ifs-reference-card h3 {
	margin-bottom: 2px;
	font-size: 11px;
}

.ifs-dashboard-workspace .ifs-reference-card p {
	font-size: 8.5px;
	line-height: 1.25;
}

.ifs-dashboard-workspace .ifs-reference-button {
	padding: 6px 8px;
	border-radius: 6px;
	font-size: 7.5px;
	white-space: nowrap;
}

/* Global Operations now behaves like a compact footer panel */
.ifs-dashboard-workspace + .ifs-global-operations {
	margin-top: 10px;
}

.ifs-global-operations {
	min-height: 0;
	padding: 10px 12px;
	border-radius: 12px;
}

.ifs-global-operations-head {
	align-items: center;
	margin-bottom: 7px;
}

.ifs-global-operations-head .ifs-eyebrow {
	margin-bottom: 1px;
	font-size: 8px;
}

.ifs-global-operations-head h2 {
	margin-top: 0;
	font-size: 14px;
	line-height: 1.1;
}

.ifs-global-live-indicator {
	padding: 4px 7px;
	font-size: 7px;
}

.ifs-global-live-indicator i {
	width: 5px;
	height: 5px;
}

.ifs-world-clocks {
	gap: 6px;
}

.ifs-world-clock {
	padding: 7px 8px;
	border-radius: 8px;
	box-shadow: 0 3px 9px rgba(18,33,58,.035);
}

.ifs-world-clock:hover {
	transform: none;
}

.ifs-world-clock-top strong {
	font-size: 9px;
}

.ifs-office-status {
	padding: 2px 4px;
	font-size: 6px;
}

.ifs-world-time {
	margin-top: 4px;
	font-size: 19px;
}

.ifs-world-date {
	margin-top: 3px;
	font-size: 7px;
}

.ifs-global-operations::before {
	inset: 28px 18px 5px;
	opacity: .12;
}

/* Compact brand footer ribbon */
.ifs-brand-ribbon {
	gap: 12px;
	min-height: 34px;
	margin-top: 6px;
	padding: 5px 8px 1px;
}

.ifs-brand-ribbon img,
.ifs-brand-ribbon img[alt="Berretta"],
.ifs-brand-ribbon img[alt="Capo Italy"],
.ifs-brand-ribbon img[alt="Hammer Trust"],
.ifs-brand-ribbon img[alt="Majesty Italy"],
.ifs-brand-ribbon img[alt="ProChef"],
.ifs-brand-ribbon img[alt="Raphael Lauria"] {
	width: auto;
	height: 28px;
	max-width: 82px;
}

/* Old bottom Add New Product / Products cards are removed in PHP.
   Hide any cached/legacy output defensively. */
.ifs-dashboard-actions {
	display: none !important;
}

/* Laptop tuning */
@media (max-width: 1180px) {
	.ifs-dashboard-workspace {
		grid-template-columns: 1fr 1fr;
	}

	.ifs-dashboard-workspace .ifs-my-desk-layout {
		grid-template-columns: 145px minmax(0, 1fr);
	}

	.ifs-dashboard-workspace .ifs-reference-card p {
		display: none;
	}
}

@media (max-width: 900px) {
	.ifs-dashboard-workspace {
		grid-template-columns: 1fr;
	}

	.ifs-dashboard-workspace .ifs-reference-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ifs-dashboard-workspace .ifs-reference-card {
		grid-template-columns: 28px minmax(0, 1fr);
	}

	.ifs-dashboard-workspace .ifs-reference-button {
		grid-column: 1 / -1;
		justify-self: stretch;
	}

	.ifs-world-clocks {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.ifs-dashboard-workspace .ifs-my-desk-layout {
		grid-template-columns: 1fr;
	}

	.ifs-dashboard-workspace .ifs-reference-grid,
	.ifs-world-clocks {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   IFS v0.8.5 — Notes Archive + Final Dashboard Polish
   Show 3 newest notes; archive older notes under Read More
   ========================================================= */

/* My Desk: three compact live notes maximum */
.ifs-dashboard-workspace .ifs-my-desk-layout {
	grid-template-columns: 158px minmax(0, 1fr);
	gap: 10px;
}

.ifs-dashboard-workspace .ifs-sticky-board {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	padding-top: 3px;
}

.ifs-dashboard-workspace .ifs-sticky-note {
	min-height: 104px;
	padding: 20px 10px 11px;
}

.ifs-dashboard-workspace .ifs-sticky-note p {
	font-size: 9px;
	line-height: 1.4;
}

.ifs-dashboard-workspace .ifs-sticky-note small {
	left: 10px;
	bottom: 8px;
	font-size: 7px;
}

/* Read More Notes archive */
.ifs-more-notes {
	grid-column: 1 / -1;
	margin-top: 1px;
	border-top: 1px solid #e5ebf2;
	padding-top: 6px;
}

.ifs-more-notes > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 6px 8px;
	border: 1px solid #dbe4ed;
	border-radius: 7px;
	background: #f7f9fc;
	color: var(--ifs-blue);
	font-size: 8.5px;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
	cursor: pointer;
	list-style: none;
	user-select: none;
}

.ifs-more-notes > summary::-webkit-details-marker {
	display: none;
}

.ifs-more-notes > summary::after {
	content: "＋";
	flex: 0 0 auto;
	font-size: 12px;
	line-height: 1;
}

.ifs-more-notes[open] > summary::after {
	content: "−";
}

.ifs-more-notes > summary small {
	margin-left: auto;
	color: #7b8797;
	font-size: 7px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
}

.ifs-older-notes-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin-top: 8px;
	padding-bottom: 2px;
}

/* Make archived notes slightly quieter visually */
.ifs-older-notes-grid .ifs-sticky-note {
	opacity: .92;
}

/* Final compacting of Global Operations footer */
.ifs-global-operations {
	padding: 8px 10px;
}

.ifs-global-operations-head {
	margin-bottom: 5px;
}

.ifs-global-operations-head h2 {
	font-size: 13px;
}

.ifs-world-clocks {
	gap: 5px;
}

.ifs-world-clock {
	padding: 6px 7px;
}

.ifs-world-time {
	font-size: 18px;
}

.ifs-brand-ribbon {
	min-height: 30px;
	margin-top: 4px;
	padding: 3px 6px 0;
	gap: 10px;
}

.ifs-brand-ribbon img,
.ifs-brand-ribbon img[alt="Berretta"],
.ifs-brand-ribbon img[alt="Capo Italy"],
.ifs-brand-ribbon img[alt="Hammer Trust"],
.ifs-brand-ribbon img[alt="Majesty Italy"],
.ifs-brand-ribbon img[alt="ProChef"],
.ifs-brand-ribbon img[alt="Raphael Lauria"] {
	height: 24px;
	max-width: 74px;
}

/* Responsive fallback */
@media (max-width: 1180px) {
	.ifs-dashboard-workspace .ifs-sticky-board,
	.ifs-older-notes-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 760px) {
	.ifs-dashboard-workspace .ifs-my-desk-layout {
		grid-template-columns: 1fr;
	}

	.ifs-dashboard-workspace .ifs-sticky-board,
	.ifs-older-notes-grid {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   IFS v0.8.6 — Enlarged Sticky Note Reading Mode
   Preserve the physical sticky-note shape when opened
   ========================================================= */

/* The compact dashboard note rules appear later in the stylesheet,
   so the expanded state must explicitly override them. */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded,
.ifs-sticky-note.is-expanded {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10002;

	box-sizing: border-box;
	width: min(390px, calc(100vw - 40px));
	min-width: 0;
	height: auto;
	min-height: 350px;
	max-height: calc(100vh - 70px);

	padding: 46px 34px 38px;

	border: 0;
	border-radius: 3px;

	background:
		linear-gradient(
			145deg,
			#fff9ad 0%,
			#fff18a 58%,
			#ffe56f 100%
		);

	color: #2f2d24;

	box-shadow:
		0 30px 80px rgba(18, 33, 58, .34),
		0 12px 28px rgba(87, 72, 10, .24),
		0 3px 8px rgba(87, 72, 10, .16);

	transform: translate(-50%, -50%) rotate(-.4deg) !important;
	overflow-y: auto;
	cursor: pointer;
}

/* Keep the sticky-note pin visible in reading mode */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded::before,
.ifs-sticky-note.is-expanded::before {
	content: "";
	position: absolute;
	top: -9px;
	left: 50%;
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: #df3e2d;
	box-shadow:
		0 3px 5px rgba(0, 0, 0, .30),
		inset 0 -2px 2px rgba(120, 0, 0, .22);
	transform: translateX(-50%);
}

/* Larger folded-paper corner */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded::after,
.ifs-sticky-note.is-expanded::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 38px;
	height: 38px;
	background:
		linear-gradient(
			135deg,
			rgba(255, 255, 255, 0) 49%,
			rgba(205, 175, 36, .28) 50%
		);
}

/* Comfortable reading typography */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded p,
.ifs-sticky-note.is-expanded p {
	margin: 0;
	color: #343126;
	font-size: 17px;
	font-weight: 600;
	font-style: italic;
	line-height: 1.68;
}

/* Date stays near the bottom like a handwritten note */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded small,
.ifs-sticky-note.is-expanded small {
	position: static;
	display: block;
	margin-top: 30px;
	color: #686042;
	font-size: 10px;
	font-weight: 700;
}

/* Delete/close control */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded .ifs-sticky-note-delete,
.ifs-sticky-note.is-expanded .ifs-sticky-note-delete {
	top: 13px;
	right: 13px;
}

.ifs-dashboard-workspace .ifs-sticky-note.is-expanded .ifs-sticky-note-delete button,
.ifs-sticky-note.is-expanded .ifs-sticky-note-delete button {
	width: 31px;
	height: 31px;
	background: rgba(255,255,255,.88);
	font-size: 21px;
	opacity: 1;
}

/* Do not let hover flatten or shrink the opened note */
.ifs-dashboard-workspace .ifs-sticky-note.is-expanded:hover,
.ifs-sticky-note.is-expanded:hover {
	transform: translate(-50%, -50%) rotate(-.4deg) !important;
}

/* Mobile keeps the same sticky-note feeling */
@media (max-width: 520px) {
	.ifs-dashboard-workspace .ifs-sticky-note.is-expanded,
	.ifs-sticky-note.is-expanded {
		width: min(350px, calc(100vw - 28px));
		min-height: 315px;
		max-height: calc(100vh - 36px);
		padding: 42px 26px 32px;
	}

	.ifs-dashboard-workspace .ifs-sticky-note.is-expanded p,
	.ifs-sticky-note.is-expanded p {
		font-size: 15px;
		line-height: 1.6;
	}
}

/* =========================================================
   IFS v0.8.7 — Permanent Header Logout
   Small neutral action; Add Product remains visually dominant
   ========================================================= */

.ifs-app-nav .ifs-nav-logout,
.ifs-app-nav .ifs-nav-logout:visited {
	min-width: 66px;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid #d6dde6;
	border-radius: 7px;
	background: #f7f9fc;
	color: #5f6b7c;
	box-shadow: none;
	font-size: 9px;
	font-weight: 800;
}

.ifs-app-nav .ifs-nav-logout:hover {
	border-color: #c5ced9;
	background: #eef2f6;
	color: #263548;
	transform: translateY(-1px);
	box-shadow: 0 3px 8px rgba(18,33,58,.08);
}

@media (max-width: 800px) {
	.ifs-app-nav .ifs-nav-logout,
	.ifs-app-nav .ifs-nav-logout:visited {
		min-width: 58px;
		min-height: 27px;
		padding: 0 8px;
		font-size: 8px;
	}
}

/* =========================================================
   IFS v0.8.8 — Expanded Desktop Workspace
   Reclaim unused side space below the permanent header
   ========================================================= */

/* Keep the header exactly as it is; widen only the application area below it. */
body.ifs-standalone-portal .ifs-app-main {
	width: min(92vw, 1680px);
	max-width: 1680px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

/* Override the older 1180px / 1380px shell limits for portal content. */
body.ifs-standalone-portal .ifs-shell,
body.ifs-standalone-portal .ifs-dashboard-shell {
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

/* Keep the Welcome panel compact while letting it breathe horizontally. */
.ifs-welcome-panel {
	width: 100%;
	box-sizing: border-box;
}

/* KPI cards fully use the wider canvas. */
.ifs-dashboard-stats {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	width: 100%;
}

/* Main working area: slightly more room for tools than notes. */
.ifs-dashboard-workspace {
	grid-template-columns: minmax(0, .45fr) minmax(0, .55fr);
	gap: 14px;
	width: 100%;
}

/* Use the reclaimed width instead of increasing vertical height. */
.ifs-dashboard-workspace > .ifs-my-desk,
.ifs-dashboard-workspace > .ifs-footwear-reference {
	padding-left: 16px;
	padding-right: 16px;
}

.ifs-dashboard-workspace .ifs-my-desk-layout {
	grid-template-columns: 168px minmax(0, 1fr);
	gap: 12px;
}

/* Preserve three visible notes across on normal desktop screens. */
.ifs-dashboard-workspace .ifs-sticky-board,
.ifs-older-notes-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Give Daily Footwear Tools a little more breathing room. */
.ifs-dashboard-workspace .ifs-reference-card {
	grid-template-columns: 34px minmax(0, 1fr) auto;
	gap: 11px;
	padding-left: 11px;
	padding-right: 11px;
}

/* Global Operations spans the complete expanded workspace. */
.ifs-global-operations {
	width: 100%;
	box-sizing: border-box;
}

.ifs-world-clocks {
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 7px;
}

.ifs-world-clock {
	padding-left: 9px;
	padding-right: 9px;
}

/* Slightly increase the visual presence of the brand ribbon
   while keeping the footer strip compact. */
.ifs-brand-ribbon {
	justify-content: space-between;
	gap: 14px;
	padding-left: 10px;
	padding-right: 10px;
}

.ifs-brand-ribbon img,
.ifs-brand-ribbon img[alt="Berretta"],
.ifs-brand-ribbon img[alt="Capo Italy"],
.ifs-brand-ribbon img[alt="Hammer Trust"],
.ifs-brand-ribbon img[alt="Majesty Italy"],
.ifs-brand-ribbon img[alt="ProChef"],
.ifs-brand-ribbon img[alt="Raphael Lauria"] {
	height: 27px;
	max-width: 86px;
}

/* Align the footer with the wider application canvas. */
.ifs-app-footer {
	width: min(92vw, 1680px);
	max-width: 1680px;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}

/* Large desktop monitors can use a little more of the screen. */
@media (min-width: 1750px) {
	body.ifs-standalone-portal .ifs-app-main,
	.ifs-app-footer {
		width: min(94vw, 1760px);
		max-width: 1760px;
	}
}

/* Normal laptops keep clean outer margins. */
@media (max-width: 1280px) {
	body.ifs-standalone-portal .ifs-app-main,
	.ifs-app-footer {
		width: min(95vw, 1280px);
	}

	.ifs-dashboard-workspace {
		grid-template-columns: 1fr 1fr;
	}
}

/* Tablet/mobile fallbacks. */
@media (max-width: 900px) {
	body.ifs-standalone-portal .ifs-app-main,
	.ifs-app-footer {
		width: calc(100% - 20px);
	}

	.ifs-dashboard-workspace {
		grid-template-columns: 1fr;
	}

	.ifs-world-clocks {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	body.ifs-standalone-portal .ifs-app-main,
	.ifs-app-footer {
		width: calc(100% - 14px);
	}

	.ifs-world-clocks {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   IFS v0.8.9 — Larger Global Brand Ribbon
   Use available bottom space to make company logos more visible
   ========================================================= */

/* Give the Global Operations footer a little more vertical room
   without changing the dashboard hierarchy. */
.ifs-global-operations {
	padding-bottom: 12px;
}

/* Keep clocks compact; invest the extra space mainly in brands. */
.ifs-brand-ribbon {
	min-height: 54px;
	margin-top: 7px;
	padding: 7px 12px 4px;
	gap: 18px;
	align-items: center;
	justify-content: space-between;
}

/* Increase all brand marks while preserving their aspect ratio. */
.ifs-brand-ribbon img {
	width: auto;
	height: 38px;
	max-width: 112px;
	object-fit: contain;
	flex: 0 1 auto;
}

/* Balance brands with unusually compact or tall artwork. */
.ifs-brand-ribbon img[alt="911 Assault"] {
	height: 40px;
	max-width: 122px;
}

.ifs-brand-ribbon img[alt="Aeroflex"],
.ifs-brand-ribbon img[alt="ecoflex"] {
	height: 39px;
	max-width: 116px;
}

.ifs-brand-ribbon img[alt="Berretta"] {
	height: 36px;
	max-width: 100px;
}

.ifs-brand-ribbon img[alt="Capo Italy"] {
	height: 42px;
	max-width: 104px;
}

.ifs-brand-ribbon img[alt="Hammer Trust"] {
	height: 40px;
	max-width: 106px;
}

.ifs-brand-ribbon img[alt="Just Kids Brands"] {
	height: 40px;
	max-width: 110px;
}

.ifs-brand-ribbon img[alt="Majesty Italy"] {
	height: 41px;
	max-width: 108px;
}

.ifs-brand-ribbon img[alt="ProChef"] {
	height: 41px;
	max-width: 112px;
}

.ifs-brand-ribbon img[alt="Raphael Lauria"] {
	height: 43px;
	max-width: 104px;
}

/* Slightly strengthen visibility without distorting artwork. */
.ifs-brand-ribbon img:not([alt="Raphael Lauria"]) {
	opacity: .96;
}

/* Keep the footer close enough to the dashboard so the extra
   logo space feels intentional rather than like a large gap. */
.ifs-app-footer {
	padding-top: 15px;
	padding-bottom: 18px;
}

/* Standard laptop tuning */
@media (max-width: 1280px) {
	.ifs-brand-ribbon {
		gap: 12px;
	}

	.ifs-brand-ribbon img {
		height: 34px;
		max-width: 98px;
	}
}

/* Tablet/mobile: preserve horizontal scrolling for the brand strip. */
@media (max-width: 900px) {
	.ifs-brand-ribbon {
		justify-content: flex-start;
		overflow-x: auto;
		min-height: 50px;
		gap: 20px;
		padding-left: 10px;
		padding-right: 10px;
	}

	.ifs-brand-ribbon img {
		flex: 0 0 auto;
		height: 34px;
	}
}

/* =========================================================
   IFS v0.9.0 — Collection Command Center
   Operational product master workspace
   ========================================================= */

.ifs-collection-shell {
	width: 100%;
	max-width: none !important;
	box-sizing: border-box;
	padding-top: 4px !important;
}

.ifs-collection-hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 12px;
	padding: 18px 20px;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(23,105,170,.055), #fff 42%);
	box-shadow: 0 6px 18px rgba(18,33,58,.045);
}

.ifs-collection-hero h1 {
	margin: 0;
	font-size: 30px;
	line-height: 1.05;
}

.ifs-collection-hero h1 + p {
	margin: 6px 0 0;
	color: #66758a;
	font-size: 11px;
}

.ifs-collection-add,
.ifs-collection-add:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	min-height: 40px;
	padding: 0 17px;
	border-radius: 8px;
	background: #137a48;
	color: #fff;
	text-decoration: none;
	font-size: 11px;
	font-weight: 800;
	box-shadow: 0 6px 16px rgba(19,122,72,.18);
}

.ifs-collection-add:hover {
	background: #0f653b;
	color: #fff;
}

.ifs-collection-add span {
	font-size: 17px;
	line-height: 1;
}

.ifs-collection-status-tabs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 8px;
	margin-bottom: 10px;
}

.ifs-collection-status-tab,
.ifs-collection-status-tab:visited {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-height: 44px;
	padding: 0 13px;
	border: 1px solid var(--ifs-border);
	border-radius: 9px;
	background: #fff;
	color: #566579;
	text-decoration: none;
	font-size: 9px;
	font-weight: 800;
	box-shadow: 0 3px 10px rgba(18,33,58,.035);
}

.ifs-collection-status-tab strong {
	color: var(--ifs-navy);
	font-size: 18px;
	line-height: 1;
}

.ifs-collection-status-tab:hover,
.ifs-collection-status-tab.is-active {
	border-color: #a9ceb7;
	background: #f1f8f4;
	color: #17633e;
}

.ifs-collection-filters {
	display: grid;
	grid-template-columns: minmax(250px, 1.7fr) repeat(3, minmax(150px, .75fr)) auto;
	gap: 8px;
	align-items: end;
	padding: 10px;
	border: 1px solid var(--ifs-border);
	border-radius: 10px;
	background: #fff;
}

.ifs-collection-filters label {
	min-width: 0;
}

.ifs-collection-filters label > span {
	display: block;
	margin-bottom: 4px;
	color: #68768a;
	font-size: 7.5px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-collection-filters input,
.ifs-collection-filters select {
	width: 100%;
	box-sizing: border-box;
	min-height: 34px;
	padding: 0 9px;
	border: 1px solid #d6e0eb;
	border-radius: 7px;
	background: #fff;
	color: var(--ifs-navy);
	font-size: 10px;
	outline: none;
}

.ifs-collection-filters input:focus,
.ifs-collection-filters select:focus {
	border-color: #8db8d8;
	box-shadow: 0 0 0 2px rgba(23,105,170,.08);
}

.ifs-collection-filter-actions {
	display: flex;
	align-items: center;
	gap: 7px;
}

.ifs-collection-filter-actions button,
.ifs-collection-filter-actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	box-sizing: border-box;
	padding: 0 11px;
	border-radius: 7px;
	font-size: 9px;
	font-weight: 800;
	text-decoration: none;
	cursor: pointer;
	white-space: nowrap;
}

.ifs-collection-filter-actions button {
	border: 1px solid #1769aa;
	background: #1769aa;
	color: #fff;
}

.ifs-collection-filter-actions a {
	border: 1px solid #d6e0eb;
	background: #f7f9fc;
	color: #5e6b7e;
}

.ifs-collection-result-bar {
	display: flex;
	align-items: baseline;
	gap: 5px;
	margin: 9px 2px 6px;
	color: #718095;
	font-size: 9px;
}

.ifs-collection-result-bar strong {
	color: var(--ifs-navy);
	font-size: 13px;
}

.ifs-collection-table-wrap {
	overflow: auto;
	border: 1px solid var(--ifs-border);
	border-radius: 11px;
	background: #fff;
	box-shadow: 0 5px 16px rgba(18,33,58,.04);
}

.ifs-collection-table {
	width: 100%;
	min-width: 1120px;
	border-collapse: collapse;
}

.ifs-collection-table th {
	padding: 8px 10px;
	border-bottom: 1px solid var(--ifs-border);
	background: #f6f8fb;
	color: #718095;
	font-size: 7.5px;
	font-weight: 900;
	letter-spacing: .055em;
	text-align: left;
	text-transform: uppercase;
	white-space: nowrap;
}

.ifs-collection-table td {
	padding: 8px 10px;
	border-bottom: 1px solid #edf1f5;
	color: #34445a;
	font-size: 9.5px;
	vertical-align: middle;
}

.ifs-collection-table tbody tr:last-child td {
	border-bottom: 0;
}

.ifs-collection-table tbody tr:hover {
	background: #fbfcfe;
}

.ifs-collection-product {
	display: grid;
	grid-template-columns: 48px minmax(130px, 1fr);
	gap: 9px;
	align-items: center;
	color: inherit;
	text-decoration: none;
}

.ifs-collection-product-image {
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	overflow: hidden;
	border: 1px solid #e0e7ef;
	border-radius: 8px;
	background: #f6f8fb;
	color: #8692a3;
	font-size: 7px;
}

.ifs-collection-product-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ifs-collection-product-copy {
	min-width: 0;
}

.ifs-collection-product-copy strong {
	display: block;
	overflow: hidden;
	color: var(--ifs-navy);
	font-size: 10.5px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ifs-collection-product-copy small {
	display: block;
	margin-top: 3px;
	color: #8a95a5;
	font-size: 7px;
}

.ifs-collection-classification strong,
.ifs-collection-classification small {
	display: block;
}

.ifs-collection-classification strong {
	color: var(--ifs-navy);
	font-size: 9px;
}

.ifs-collection-classification small {
	margin-top: 2px;
	color: #7c8999;
	font-size: 7.5px;
}

.ifs-collection-completion {
	display: grid;
	grid-template-columns: minmax(70px, 1fr) 30px;
	gap: 7px;
	align-items: center;
}

.ifs-collection-completion > div {
	height: 6px;
	overflow: hidden;
	border-radius: 999px;
	background: #e9eef4;
}

.ifs-collection-completion > div span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #d9a928;
}

.ifs-collection-completion.is-high > div span {
	background: #188351;
}

.ifs-collection-completion.is-low > div span {
	background: #c85b4e;
}

.ifs-collection-completion strong {
	color: #5f6d80;
	font-size: 8px;
	text-align: right;
}

.ifs-collection-table .ifs-status {
	white-space: nowrap;
	font-size: 7.5px;
}

.ifs-collection-open,
.ifs-collection-open:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 0 9px;
	border: 1px solid #cbdbea;
	border-radius: 6px;
	background: #f7f9fc;
	color: #1769aa;
	font-size: 8px;
	font-weight: 800;
	text-decoration: none;
}

.ifs-collection-open:hover {
	border-color: #94b8d6;
	background: #eef5fb;
}

.ifs-collection-view-only {
	color: #8793a3;
	font-size: 8px;
	white-space: nowrap;
}

.ifs-collection-empty {
	padding: 42px 20px !important;
	text-align: center;
}

.ifs-collection-empty strong,
.ifs-collection-empty span {
	display: block;
}

.ifs-collection-empty strong {
	color: var(--ifs-navy);
	font-size: 14px;
}

.ifs-collection-empty span {
	margin-top: 5px;
	color: #7a8798;
	font-size: 10px;
}

@media (max-width: 1200px) {
	.ifs-collection-filters {
		grid-template-columns: minmax(240px, 1.5fr) repeat(2, minmax(140px, .8fr)) auto;
	}

	.ifs-collection-filters label:nth-of-type(4) {
		display: none;
	}
}

@media (max-width: 800px) {
	.ifs-collection-hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-collection-status-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ifs-collection-filters {
		grid-template-columns: 1fr 1fr;
	}

	.ifs-collection-search,
	.ifs-collection-filter-actions {
		grid-column: 1 / -1;
	}
}

@media (max-width: 520px) {
	.ifs-collection-status-tabs,
	.ifs-collection-filters {
		grid-template-columns: 1fr;
	}

	.ifs-collection-search,
	.ifs-collection-filter-actions {
		grid-column: auto;
	}
}

/* =========================================================
   IFS v0.9.1 — Collection Delete Action
   Safe delete = move to WordPress Trash, never permanent
   ========================================================= */

.ifs-collection-row-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	white-space: nowrap;
}

.ifs-collection-delete,
.ifs-collection-delete:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 0 9px;
	border: 1px solid #efc3bf;
	border-radius: 6px;
	background: #fff7f6;
	color: #b42318;
	font-size: 8px;
	font-weight: 800;
	text-decoration: none;
}

.ifs-collection-delete:hover {
	border-color: #df9d96;
	background: #fff0ee;
	color: #8f1d14;
}

/* Give the final action column enough room for Open + Delete. */
.ifs-collection-table th:last-child,
.ifs-collection-table td:last-child {
	width: 116px;
	text-align: right;
}

/* =========================================================
   IFS v0.9.2 — Collection View / Edit / Delete
   Read-only product intelligence record
   ========================================================= */

.ifs-collection-row-actions {
	gap: 5px;
}

.ifs-collection-view,
.ifs-collection-view:visited,
.ifs-collection-edit,
.ifs-collection-edit:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 0 8px;
	border-radius: 6px;
	font-size: 8px;
	font-weight: 800;
	text-decoration: none;
}

.ifs-collection-view,
.ifs-collection-view:visited {
	border: 1px solid #cbdbea;
	background: #f7f9fc;
	color: #1769aa;
}

.ifs-collection-view:hover {
	border-color: #94b8d6;
	background: #eef5fb;
}

.ifs-collection-edit,
.ifs-collection-edit:visited {
	border: 1px solid #b9d8c5;
	background: #f1f8f4;
	color: #17633e;
}

.ifs-collection-edit:hover {
	border-color: #86bc9b;
	background: #e5f4eb;
}

.ifs-collection-table th:last-child,
.ifs-collection-table td:last-child {
	width: 172px;
}

/* Read-only product record */
.ifs-product-readonly-shell {
	width: 100%;
	max-width: none !important;
	box-sizing: border-box;
	padding-top: 4px !important;
}

.ifs-product-readonly-hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 12px;
	padding: 18px 20px;
	border: 1px solid var(--ifs-border);
	border-radius: 14px;
	background: linear-gradient(135deg, rgba(23,105,170,.055), #fff 42%);
}

.ifs-product-readonly-hero h1 {
	margin: 0;
	font-size: 30px;
	line-height: 1.05;
}

.ifs-product-readonly-hero h1 + p {
	margin: 6px 0 0;
	color: #66758a;
	font-size: 11px;
}

.ifs-product-readonly-actions {
	display: flex;
	align-items: center;
	gap: 8px;
}

.ifs-product-readonly-back,
.ifs-product-readonly-back:visited,
.ifs-product-readonly-edit,
.ifs-product-readonly-edit:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 13px;
	border-radius: 7px;
	text-decoration: none;
	font-size: 9px;
	font-weight: 800;
}

.ifs-product-readonly-back,
.ifs-product-readonly-back:visited {
	border: 1px solid #d6e0eb;
	background: #f7f9fc;
	color: #5e6b7e;
}

.ifs-product-readonly-edit,
.ifs-product-readonly-edit:visited {
	border: 1px solid #137a48;
	background: #137a48;
	color: #fff;
}

.ifs-product-readonly-summary {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: 14px;
	padding: 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 5px 16px rgba(18,33,58,.04);
}

.ifs-product-readonly-image {
	display: grid;
	place-items: center;
	min-height: 260px;
	overflow: hidden;
	border: 1px solid #e0e7ef;
	border-radius: 10px;
	background: #f7f9fc;
	color: #8692a3;
	font-size: 10px;
}

.ifs-product-readonly-image img {
	width: 100%;
	height: 100%;
	max-height: 320px;
	object-fit: contain;
}

.ifs-product-readonly-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	align-content: start;
}

.ifs-product-readonly-grid > div {
	padding: 10px 11px;
	border: 1px solid #e3e9f0;
	border-radius: 8px;
	background: #f9fbfd;
}

.ifs-product-readonly-grid span,
.ifs-product-readonly-grid strong {
	display: block;
}

.ifs-product-readonly-grid span {
	color: #788597;
	font-size: 7px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-product-readonly-grid strong {
	margin-top: 4px;
	color: var(--ifs-navy);
	font-size: 11px;
	line-height: 1.3;
}

.ifs-product-readonly-gallery {
	margin-top: 12px;
	padding: 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 12px;
	background: #fff;
}

.ifs-product-readonly-section-head h2 {
	margin: 0;
	color: var(--ifs-navy);
	font-size: 18px;
}

.ifs-product-readonly-gallery-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: 8px;
	margin-top: 10px;
}

.ifs-product-readonly-gallery-grid img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	border: 1px solid #e3e9f0;
	border-radius: 8px;
	background: #f8fafc;
}

@media (max-width: 1000px) {
	.ifs-product-readonly-summary {
		grid-template-columns: 220px minmax(0, 1fr);
	}

	.ifs-product-readonly-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 700px) {
	.ifs-product-readonly-hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-product-readonly-summary {
		grid-template-columns: 1fr;
	}

	.ifs-product-readonly-grid {
		grid-template-columns: 1fr;
	}

	.ifs-product-readonly-gallery-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* =========================================================
   IFS v0.9.3 — Collection Intelligence Controls
   More Filters + Sorting + Needs Attention + Selection
   ========================================================= */

/* Main filter row leaves More Filters compact until needed. */
.ifs-collection-filters {
	grid-template-columns: minmax(260px, 1.7fr) minmax(150px, .75fr) minmax(150px, .75fr) auto auto;
	position: relative;
}

.ifs-collection-more-filters {
	position: relative;
	align-self: end;
}

.ifs-collection-more-filters > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 34px;
	box-sizing: border-box;
	padding: 0 12px;
	border: 1px solid #d6e0eb;
	border-radius: 7px;
	background: #f7f9fc;
	color: #506177;
	font-size: 9px;
	font-weight: 800;
	cursor: pointer;
	list-style: none;
	white-space: nowrap;
}

.ifs-collection-more-filters > summary::-webkit-details-marker {
	display: none;
}

.ifs-collection-more-filters > summary::after {
	content: "▾";
	margin-left: 7px;
	font-size: 9px;
}

.ifs-collection-more-filters[open] > summary {
	border-color: #9fc2dd;
	background: #eef5fb;
	color: #1769aa;
}

.ifs-collection-more-filters[open] > summary::after {
	content: "▴";
}

.ifs-collection-more-grid {
	position: absolute;
	top: calc(100% + 7px);
	right: 0;
	z-index: 100;
	display: grid;
	grid-template-columns: repeat(2, minmax(180px, 1fr));
	gap: 9px;
	width: 430px;
	padding: 12px;
	border: 1px solid #dce4ee;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 14px 34px rgba(18,33,58,.16);
}

.ifs-collection-more-filters:not([open]) .ifs-collection-more-grid {
	display: none;
}

.ifs-collection-more-grid label > span {
	display: block;
	margin-bottom: 4px;
	color: #68768a;
	font-size: 7.5px;
	font-weight: 800;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.ifs-collection-more-grid select {
	width: 100%;
	box-sizing: border-box;
	min-height: 34px;
	padding: 0 8px;
	border: 1px solid #d6e0eb;
	border-radius: 7px;
	background: #fff;
	font-size: 9px;
}

/* Result + selection command strip */
.ifs-collection-command-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 8px 2px 6px;
}

.ifs-collection-result-bar {
	margin: 0;
}

.ifs-collection-selection-status {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #6d7b8f;
	font-size: 8px;
}

.ifs-collection-selection-status strong {
	display: inline-grid;
	place-items: center;
	min-width: 22px;
	height: 22px;
	border-radius: 999px;
	background: #eef4fb;
	color: #1769aa;
	font-size: 9px;
}

.ifs-collection-selection-status small {
	color: #9aa4b1;
	font-size: 7px;
}

/* Selection checkboxes */
.ifs-collection-select-cell {
	width: 30px;
	padding-left: 10px !important;
	padding-right: 4px !important;
	text-align: center;
}

.ifs-collection-select-cell input {
	width: 14px;
	height: 14px;
	accent-color: #137a48;
	cursor: pointer;
}

/* Sortable table headers */
.ifs-collection-sort,
.ifs-collection-sort:visited {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: inherit;
	text-decoration: none;
	white-space: nowrap;
}

.ifs-collection-sort:hover {
	color: #1769aa;
}

.ifs-collection-sort span {
	color: #a3aebb;
	font-size: 8px;
}

/* Attention intelligence */
.ifs-collection-issues {
	position: relative;
}

.ifs-collection-issues > summary {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 24px;
	padding: 0 7px;
	border: 1px solid #efd7a0;
	border-radius: 999px;
	background: #fff7df;
	color: #8a5b00;
	font-size: 7.5px;
	font-weight: 800;
	cursor: pointer;
	list-style: none;
	white-space: nowrap;
}

.ifs-collection-issues > summary::-webkit-details-marker {
	display: none;
}

.ifs-collection-issues ul {
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	z-index: 120;
	width: 190px;
	margin: 0;
	padding: 9px 10px 9px 24px;
	border: 1px solid #eadbb7;
	border-radius: 8px;
	background: #fffdf5;
	box-shadow: 0 10px 25px rgba(18,33,58,.14);
	color: #65572d;
	font-size: 8px;
	line-height: 1.45;
}

.ifs-collection-clear {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 0 7px;
	border: 1px solid #c9e4d4;
	border-radius: 999px;
	background: #eef9f3;
	color: #17633e;
	font-size: 7.5px;
	font-weight: 800;
	white-space: nowrap;
}

/* Allow the extra Intelligence column without compromising legibility. */
.ifs-collection-table {
	min-width: 1280px;
}

/* Product name now opens VIEW by default, reducing accidental editing. */
.ifs-collection-product:hover .ifs-collection-product-copy strong {
	color: #1769aa;
}

@media (max-width: 1200px) {
	.ifs-collection-filters {
		grid-template-columns: minmax(240px, 1.6fr) minmax(140px, .8fr) minmax(140px, .8fr) auto auto;
	}
}

@media (max-width: 900px) {
	.ifs-collection-filters {
		grid-template-columns: 1fr 1fr;
	}

	.ifs-collection-search {
		grid-column: 1 / -1;
	}

	.ifs-collection-more-filters,
	.ifs-collection-filter-actions {
		grid-column: auto;
	}

	.ifs-collection-more-grid {
		left: 0;
		right: auto;
		width: min(430px, calc(100vw - 50px));
	}
}

@media (max-width: 560px) {
	.ifs-collection-command-bar {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-collection-selection-status small {
		display: none;
	}

	.ifs-collection-more-grid {
		grid-template-columns: 1fr;
		width: min(280px, calc(100vw - 40px));
	}
}

/* =========================================================
   IFS v0.9.4 — Expanded Product Filters
   Style + Design + Model Name + Model Number
   ========================================================= */

.ifs-collection-more-grid {
	grid-template-columns: repeat(3, minmax(175px, 1fr));
	width: 650px;
	max-height: min(470px, calc(100vh - 240px));
	overflow-y: auto;
}

@media (max-width: 1000px) {
	.ifs-collection-more-grid {
		grid-template-columns: repeat(2, minmax(170px, 1fr));
		width: min(470px, calc(100vw - 50px));
	}
}

@media (max-width: 560px) {
	.ifs-collection-more-grid {
		grid-template-columns: 1fr;
		width: min(290px, calc(100vw - 40px));
	}
}

/* =========================================================
   IFS v0.9.5 — Priority Search Bar
   Search Product + Category + Footwear Type + Style + Model Name
   ========================================================= */

/* Use the main filter row for the most frequently used product searches. */
.ifs-collection-filters {
	grid-template-columns:
		minmax(220px, .95fr)
		minmax(150px, .72fr)
		minmax(165px, .78fr)
		minmax(180px, .86fr)
		minmax(180px, .86fr)
		auto
		auto;
	gap: 8px;
}

/* Search Product is intentionally about half the old width. */
.ifs-collection-search {
	min-width: 220px;
}

.ifs-collection-filters input[type="search"] {
	width: 100%;
	box-sizing: border-box;
	min-height: 34px;
	padding: 0 9px;
	border: 1px solid #d6e0eb;
	border-radius: 7px;
	background: #fff;
	color: var(--ifs-navy);
	font-size: 9px;
	outline: none;
}

.ifs-collection-filters input[type="search"]:focus {
	border-color: #8db8d8;
	box-shadow: 0 0 0 2px rgba(23,105,170,.08);
}

/* Advanced filters now hold only secondary criteria. */
.ifs-collection-more-grid {
	grid-template-columns: repeat(2, minmax(175px, 1fr));
	width: 470px;
}

/* Keep the row efficient on common desktop widths. */
@media (max-width: 1450px) {
	.ifs-collection-filters {
		grid-template-columns:
			minmax(200px, 1fr)
			minmax(140px, .75fr)
			minmax(150px, .8fr)
			minmax(160px, .85fr)
			minmax(160px, .85fr)
			auto;
	}

	.ifs-collection-filter-actions {
		grid-column: 1 / -1;
		justify-self: end;
	}
}

@media (max-width: 1100px) {
	.ifs-collection-filters {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.ifs-collection-search {
		grid-column: 1 / -1;
	}

	.ifs-collection-more-filters,
	.ifs-collection-filter-actions {
		grid-column: auto;
	}
}

@media (max-width: 760px) {
	.ifs-collection-filters {
		grid-template-columns: 1fr 1fr;
	}

	.ifs-collection-search,
	.ifs-collection-filter-actions {
		grid-column: 1 / -1;
	}
}

@media (max-width: 520px) {
	.ifs-collection-filters {
		grid-template-columns: 1fr;
	}

	.ifs-collection-search,
	.ifs-collection-filter-actions {
		grid-column: auto;
	}
}

/* =========================================================
   IFS v0.9.6 — Cascading Priority Filters
   Search Product → Category → Footwear Type → Style → Heel
   → Design → Model Name → Model Number
   ========================================================= */

.ifs-collection-filters {
	grid-template-columns:
		minmax(170px, .85fr)
		minmax(120px, .65fr)
		minmax(135px, .72fr)
		minmax(125px, .68fr)
		minmax(125px, .68fr)
		minmax(145px, .78fr)
		minmax(145px, .78fr)
		minmax(145px, .78fr)
		auto
		auto;
	gap: 7px;
	align-items: end;
}

.ifs-collection-search {
	min-width: 170px;
}

.ifs-collection-filters label > span {
	white-space: nowrap;
}

.ifs-collection-filters input[type="search"],
.ifs-collection-filters select {
	min-height: 34px;
	font-size: 8.5px;
}

.ifs-collection-more-grid {
	grid-template-columns: repeat(2, minmax(170px, 1fr));
	width: 430px;
}

/* Keep the complete priority row visible on wide desktop screens. */
@media (min-width: 1500px) {
	.ifs-collection-filter-actions {
		grid-column: auto;
	}
}

/* Medium desktop: wrap only actions/More Filters, not the priority searches. */
@media (max-width: 1499px) {
	.ifs-collection-filters {
		grid-template-columns:
			minmax(170px, 1fr)
			repeat(4, minmax(125px, .72fr))
			repeat(3, minmax(140px, .8fr));
	}

	.ifs-collection-more-filters,
	.ifs-collection-filter-actions {
		margin-top: 2px;
	}
}

/* Laptop: two-row intelligent layout. */
@media (max-width: 1180px) {
	.ifs-collection-filters {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.ifs-collection-search {
		grid-column: span 2;
	}

	.ifs-collection-filter-actions {
		grid-column: span 2;
		justify-self: end;
	}
}

@media (max-width: 800px) {
	.ifs-collection-filters {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.ifs-collection-search {
		grid-column: 1 / -1;
	}

	.ifs-collection-filter-actions {
		grid-column: 1 / -1;
	}
}

@media (max-width: 520px) {
	.ifs-collection-filters {
		grid-template-columns: 1fr;
	}

	.ifs-collection-search,
	.ifs-collection-filter-actions {
		grid-column: auto;
	}
}

/* =========================================================
   IFS v0.9.7 — ACF Intelligent Taxonomy Filters
   ACF defines valid options; Collection defines actual results
   ========================================================= */

.ifs-collection-filters select:disabled,
.ifs-collection-filters input:disabled {
	opacity: .55;
	cursor: not-allowed;
	background: #f4f6f8;
}

/* Make the no-result state feel intentional rather than like an error. */
.ifs-collection-empty strong {
	color: var(--ifs-navy);
	font-size: 15px;
}

.ifs-collection-empty span {
	max-width: 560px;
	margin: 6px auto 0;
	color: #7a8798;
	font-size: 10px;
	line-height: 1.5;
}

/* The intelligent row remains compact even when ACF contains many choices. */
.ifs-collection-filters select,
.ifs-collection-filters input[type="search"] {
	text-overflow: ellipsis;
}

/* Slightly emphasize the controlled taxonomy fields. */
#ifs-filter-category,
#ifs-filter-footwear,
#ifs-filter-style,
#ifs-filter-heel {
	border-color: #cbd9e6;
	background: linear-gradient(180deg, #fff, #fbfcfe);
}

/* Autocomplete fields remain visually distinct from controlled dropdowns. */
#ifs-filter-design,
#ifs-filter-model-name,
#ifs-filter-model-number {
	background: #fff;
}

/* =========================================================
   IFS v0.9.8 — Collection Phase 2
   Saved Views + Lifecycle + Bulk Operations + Export
   ========================================================= */

/* Saved operational views */
.ifs-collection-saved-views {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0 0 9px;
	overflow-x: auto;
	padding-bottom: 1px;
}

.ifs-saved-view,
.ifs-saved-view:visited {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 28px;
	padding: 0 10px;
	border: 1px solid #dbe3ec;
	border-radius: 999px;
	background: #fff;
	color: #627086;
	font-size: 8px;
	font-weight: 800;
	text-decoration: none;
	white-space: nowrap;
}

.ifs-saved-view:hover,
.ifs-saved-view.is-active {
	border-color: #9bc8ab;
	background: #eef8f2;
	color: #17633e;
}

/* Bulk operations remain compact and server-side */
.ifs-collection-command-bar {
	min-height: 36px;
}

.ifs-collection-bulk-form {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	margin: 0;
}

.ifs-collection-bulk-form select,
.ifs-collection-bulk-form button {
	min-height: 29px;
	box-sizing: border-box;
	border-radius: 6px;
	font-size: 8px;
	font-weight: 800;
}

.ifs-collection-bulk-form select {
	max-width: 145px;
	padding: 0 26px 0 8px;
	border: 1px solid #d6e0eb;
	background: #fff;
	color: #506177;
}

.ifs-collection-bulk-form button {
	padding: 0 11px;
	border: 1px solid #1769aa;
	background: #1769aa;
	color: #fff;
	cursor: pointer;
}

.ifs-collection-bulk-form button:disabled {
	opacity: .45;
	cursor: not-allowed;
}

.ifs-collection-selection-status {
	margin-right: 2px;
}

/* Lifecycle status */
.ifs-lifecycle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 23px;
	padding: 0 7px;
	border: 1px solid #dce4ec;
	border-radius: 999px;
	background: #f5f7fa;
	color: #657386;
	font-size: 7px;
	font-weight: 800;
	white-space: nowrap;
}

.ifs-lifecycle-development {
	border-color: #d7e1eb;
	background: #f4f7fa;
	color: #526579;
}

.ifs-lifecycle-sampling {
	border-color: #c7dded;
	background: #eef7fd;
	color: #1769aa;
}

.ifs-lifecycle-approved {
	border-color: #eadcae;
	background: #fff9e5;
	color: #85620b;
}

.ifs-lifecycle-production_ready {
	border-color: #b9dac6;
	background: #eff9f3;
	color: #17633e;
}

.ifs-lifecycle-active {
	border-color: #9dceb0;
	background: #e7f7ed;
	color: #0e6b3e;
}

.ifs-lifecycle-archived {
	border-color: #d7dbe0;
	background: #f0f2f4;
	color: #6d7480;
}

/* Advanced filter panel now has lifecycle too */
.ifs-collection-more-grid {
	grid-template-columns: repeat(2, minmax(170px, 1fr));
}

/* Slight table width increase for lifecycle intelligence */
.ifs-collection-table {
	min-width: 1380px;
}

@media (max-width: 900px) {
	.ifs-collection-command-bar {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-collection-bulk-form {
		width: 100%;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
}

/* =========================================================
   IFS v0.9.9 — Product Intelligence Record
   Tabbed digital product passport / read-only master record
   ========================================================= */

.ifs-product-intelligence-record {
	width: 100%;
	max-width: none !important;
	box-sizing: border-box;
	padding-top: 4px !important;
}

.ifs-pir-hero {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 22px;
	margin-bottom: 10px;
	padding: 14px 16px;
	border: 1px solid var(--ifs-border);
	border-radius: 13px;
	background: linear-gradient(135deg, rgba(23,105,170,.055), #fff 42%);
	box-shadow: 0 5px 15px rgba(18,33,58,.04);
}

.ifs-pir-identity {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

.ifs-pir-hero-image {
	display: grid;
	place-items: center;
	flex: 0 0 84px;
	width: 84px;
	height: 84px;
	overflow: hidden;
	border: 1px solid #dfe7ef;
	border-radius: 10px;
	background: #f7f9fb;
	color: #8995a4;
	font-size: 8px;
}

.ifs-pir-hero-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.ifs-pir-hero h1 {
	margin: 0;
	color: var(--ifs-navy);
	font-size: 27px;
	line-height: 1.05;
}

.ifs-pir-subline {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 6px;
}

.ifs-pir-subline span {
	display: inline-flex;
	align-items: center;
	min-height: 21px;
	padding: 0 7px;
	border-radius: 999px;
	background: #eef4fa;
	color: #4f6075;
	font-size: 7.5px;
	font-weight: 800;
}

.ifs-pir-readonly-note {
	margin: 6px 0 0;
	color: #7a8798;
	font-size: 8.5px;
}

.ifs-pir-status-strip {
	display: grid;
	grid-template-columns: .75fr 1fr .7fr 1fr 1fr .8fr 1.2fr;
	gap: 7px;
	margin-bottom: 9px;
}

.ifs-pir-status-strip > div {
	min-width: 0;
	padding: 8px 9px;
	border: 1px solid #dfe6ee;
	border-radius: 8px;
	background: #fff;
}

.ifs-pir-status-strip span,
.ifs-pir-status-strip strong {
	display: block;
}

.ifs-pir-status-strip span {
	color: #7a8798;
	font-size: 6.8px;
	font-weight: 800;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.ifs-pir-status-strip strong {
	overflow: hidden;
	margin-top: 3px;
	color: var(--ifs-navy);
	font-size: 9px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.ifs-pir-status-strip .has-issues {
	border-color: #ecd79f;
	background: #fff9e9;
}

.ifs-pir-status-strip .has-issues strong {
	color: #8b6105;
}

.ifs-pir-status-strip .is-clear {
	border-color: #cbe3d4;
	background: #f1faf5;
}

.ifs-pir-status-strip .is-clear strong {
	color: #17633e;
}

.ifs-pir-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 9px;
	padding: 6px;
	border: 1px solid #dfe6ee;
	border-radius: 10px;
	background: #fff;
}

.ifs-pir-tabs {
	display: flex;
	align-items: center;
	gap: 4px;
	min-width: 0;
	overflow-x: auto;
}

.ifs-pir-tab {
	flex: 0 0 auto;
	min-height: 29px;
	padding: 0 10px;
	border: 1px solid transparent;
	border-radius: 7px;
	background: transparent;
	color: #68778a;
	font-size: 8px;
	font-weight: 800;
	cursor: pointer;
}

.ifs-pir-tab:hover {
	background: #f3f7fa;
	color: #1769aa;
}

.ifs-pir-tab.is-active {
	border-color: #b8d4c4;
	background: #eef8f2;
	color: #17633e;
}

.ifs-pir-missing-toggle {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
	color: #657386;
	font-size: 7.5px;
	font-weight: 800;
	white-space: nowrap;
	cursor: pointer;
}

.ifs-pir-missing-toggle input {
	width: 14px;
	height: 14px;
	accent-color: #137a48;
}

.ifs-pir-panel {
	padding: 14px;
	border: 1px solid var(--ifs-border);
	border-radius: 11px;
	background: #fff;
	box-shadow: 0 4px 14px rgba(18,33,58,.035);
}

.ifs-pir-panel[hidden] {
	display: none !important;
}

.ifs-pir-overview-grid {
	display: grid;
	grid-template-columns: 1.15fr .85fr;
	gap: 10px;
}

.ifs-pir-overview-card {
	padding: 13px;
	border: 1px solid #e1e8ef;
	border-radius: 9px;
	background: #fafcfe;
}

.ifs-pir-overview-card h2,
.ifs-pir-section-head h2 {
	margin: 0;
	color: var(--ifs-navy);
	font-size: 16px;
}

.ifs-pir-overview-values {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
	margin-top: 10px;
}

.ifs-pir-overview-values > div {
	padding: 8px;
	border: 1px solid #e5eaf0;
	border-radius: 7px;
	background: #fff;
}

.ifs-pir-overview-values span,
.ifs-pir-overview-values strong {
	display: block;
}

.ifs-pir-overview-values span {
	color: #7a8798;
	font-size: 6.5px;
	font-weight: 800;
	text-transform: uppercase;
}

.ifs-pir-overview-values strong {
	margin-top: 3px;
	color: #23364d;
	font-size: 9px;
}

.ifs-pir-clear-message {
	margin: 10px 0 0;
	color: #4f6d5c;
	font-size: 9px;
}

.ifs-pir-issue-list {
	margin: 9px 0 0;
	padding-left: 18px;
	color: #73570f;
	font-size: 8.5px;
	line-height: 1.55;
}

.ifs-pir-section-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
}

.ifs-pir-section-status {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 0 7px;
	border-radius: 999px;
	background: #f2f4f7;
	color: #7a8795;
	font-size: 7px;
	font-weight: 800;
}

.ifs-pir-field-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 7px;
}

.ifs-pir-field-card {
	min-width: 0;
	padding: 9px 10px;
	border: 1px solid #e3e9ef;
	border-radius: 8px;
	background: #fbfcfe;
}

.ifs-pir-field-label {
	display: block;
	margin-bottom: 5px;
	color: #7b8797;
	font-size: 6.8px;
	font-weight: 900;
	letter-spacing: .045em;
	text-transform: uppercase;
}

.ifs-pir-field-value {
	overflow-wrap: anywhere;
	color: #24364c;
	font-size: 9px;
	font-weight: 700;
	line-height: 1.4;
}

.ifs-pir-field-card.is-missing {
	display: none;
	border-style: dashed;
	background: #fafafa;
}

.ifs-product-intelligence-record.show-missing-fields .ifs-pir-field-card.is-missing {
	display: block;
}

.ifs-pir-field-missing {
	color: #a1a9b4;
	font-size: 8px;
	font-style: italic;
}

.ifs-pir-value-list {
	margin: 0;
	padding-left: 15px;
	font-size: 8px;
	line-height: 1.45;
}

.ifs-pir-inline-image {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 130px;
	object-fit: contain;
}

.ifs-pir-mini-gallery {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.ifs-pir-mini-gallery img {
	width: 54px;
	height: 54px;
	object-fit: contain;
	border: 1px solid #e0e7ee;
	border-radius: 6px;
	background: #fff;
}

.ifs-pir-file-link {
	color: #1769aa;
	text-decoration: none;
}

.ifs-pir-file-link:hover {
	text-decoration: underline;
}

.ifs-pir-empty-section {
	padding: 26px 14px;
	border: 1px dashed #d9e1e9;
	border-radius: 8px;
	background: #fafbfc;
	color: #8490a0;
	font-size: 9px;
	text-align: center;
}

.ifs-pir-media-layout {
	display: grid;
	grid-template-columns: 280px minmax(0, 1fr);
	gap: 12px;
}

.ifs-pir-media-hero {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 9px;
	border: 1px solid #e1e8ef;
	border-radius: 8px;
	background: #fafcfe;
}

.ifs-pir-media-hero > span {
	color: #798698;
	font-size: 7px;
	font-weight: 900;
	text-transform: uppercase;
}

.ifs-pir-media-hero img {
	width: 100%;
	height: 240px;
	object-fit: contain;
}

.ifs-pir-acf-media {
	margin-top: 12px;
}

.ifs-pir-history-list {
	display: grid;
	gap: 0;
}

.ifs-pir-history-entry {
	position: relative;
	display: grid;
	grid-template-columns: 16px minmax(0, 1fr);
	gap: 9px;
	padding: 0 0 13px;
}

.ifs-pir-history-entry:not(:last-child)::before {
	content: "";
	position: absolute;
	top: 13px;
	bottom: 0;
	left: 6px;
	width: 1px;
	background: #dce4ec;
}

.ifs-pir-history-dot {
	position: relative;
	z-index: 1;
	width: 11px;
	height: 11px;
	margin-top: 3px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: #1769aa;
	box-shadow: 0 0 0 1px #aac7df;
}

.ifs-pir-history-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}

.ifs-pir-history-meta strong {
	color: var(--ifs-navy);
	font-size: 8.5px;
}

.ifs-pir-history-meta span,
.ifs-pir-history-meta em {
	color: #8994a3;
	font-size: 7px;
	font-style: normal;
}

.ifs-pir-history-meta em {
	padding: 2px 5px;
	border-radius: 999px;
	background: #eef4fa;
	color: #1769aa;
	font-weight: 800;
}

.ifs-pir-history-entry p {
	margin: 3px 0 0;
	color: #526175;
	font-size: 8.5px;
	line-height: 1.45;
}

@media (max-width: 1180px) {
	.ifs-pir-status-strip {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.ifs-pir-field-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 850px) {
	.ifs-pir-hero {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-pir-controls {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-pir-overview-grid,
	.ifs-pir-media-layout {
		grid-template-columns: 1fr;
	}

	.ifs-pir-field-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.ifs-pir-identity {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-pir-status-strip,
	.ifs-pir-overview-values,
	.ifs-pir-field-grid {
		grid-template-columns: 1fr;
	}
}

/* =========================================================
   IFS v1.0.0 — Field Registry Architecture
   Explicit field ownership + grouping + requirement levels
   ========================================================= */

.ifs-pir-control-actions {
	display: flex;
	align-items: center;
	gap: 12px;
	flex: 0 0 auto;
}

.ifs-pir-requirement-legend {
	display: flex;
	align-items: center;
	gap: 5px;
	color: #7a8797;
	font-size: 6.7px;
	white-space: nowrap;
}

.ifs-pir-requirement-legend span {
	display: inline-flex;
	align-items: center;
	gap: 3px;
}

.ifs-pir-requirement-legend strong,
.ifs-pir-requirement {
	display: inline-grid;
	place-items: center;
	width: 16px;
	height: 16px;
	box-sizing: border-box;
	border: 1px solid #d9e2ea;
	border-radius: 999px;
	background: #f5f7f9;
	color: #657386;
	font-size: 6.5px;
	font-weight: 900;
	line-height: 1;
}

.ifs-pir-requirement-a {
	border-color: #b9d8c5;
	background: #edf8f1;
	color: #17633e;
}

.ifs-pir-requirement-b {
	border-color: #e8d49d;
	background: #fff8e5;
	color: #84600b;
}

.ifs-pir-requirement-c {
	border-color: #bfd8ea;
	background: #eef6fc;
	color: #1769aa;
}

.ifs-pir-requirement-d {
	border-color: #dde2e8;
	background: #f5f6f8;
	color: #7b8592;
}

.ifs-pir-field-groups {
	display: grid;
	gap: 10px;
}

.ifs-pir-field-group {
	padding: 10px;
	border: 1px solid #e1e8ef;
	border-radius: 9px;
	background: #fafcfe;
}

.ifs-pir-field-group.is-empty-group {
	display: none;
}

.ifs-product-intelligence-record.show-missing-fields .ifs-pir-field-group.is-empty-group {
	display: block;
}

.ifs-pir-field-group-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 8px;
}

.ifs-pir-field-group-head h3 {
	margin: 0;
	color: #33465d;
	font-size: 9px;
	font-weight: 900;
	letter-spacing: .02em;
}

.ifs-pir-field-group-head span {
	color: #98a2af;
	font-size: 6.8px;
	font-weight: 800;
}

.ifs-pir-field-label-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 6px;
	margin-bottom: 5px;
}

.ifs-pir-field-label-row .ifs-pir-field-label {
	margin-bottom: 0;
}

.ifs-pir-field-label-row .ifs-pir-requirement {
	flex: 0 0 16px;
}

@media (max-width: 1080px) {
	.ifs-pir-controls {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-pir-control-actions {
		width: 100%;
		justify-content: space-between;
	}
}

@media (max-width: 700px) {
	.ifs-pir-control-actions {
		align-items: flex-start;
		flex-direction: column;
	}

	.ifs-pir-requirement-legend {
		flex-wrap: wrap;
	}
}

/* =========================================================
   IFS v1.0.1 — Human-Friendly Requirement Display
   A/B/C/D remain internal only; users see plain-language status
   ========================================================= */

/* Internal registry letters must never be shown in the normal UI. */
.ifs-pir-requirement-legend,
.ifs-pir-requirement {
	display: none !important;
}

/* Keep the label row balanced after removing the internal badge. */
.ifs-pir-field-label-row {
	display: block;
	margin-bottom: 5px;
}

/* Make the missing-fields control read as useful record intelligence. */
.ifs-pir-missing-toggle {
	padding: 5px 8px;
	border: 1px solid #d8e2ea;
	border-radius: 7px;
	background: #f8fafc;
}

.ifs-pir-missing-toggle:has(input:checked) {
	border-color: #a9ceb7;
	background: #eef8f2;
	color: #17633e;
}

/* =========================================================
   IFS v1.0.2 — Product Entry Campaign
   Per-user admin-controlled target + progress meter
   ========================================================= */

/* Add the campaign meter into the previously unused welcome space. */
@media (min-width: 1051px) {
	.ifs-welcome-panel {
		grid-template-columns:
			132px
			minmax(330px, 1fr)
			minmax(230px, .65fr)
			auto
			165px;
		gap: 14px;
	}
}

.ifs-entry-progress {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	min-width: 220px;
	align-self: center;
}

.ifs-entry-progress-ring {
	position: relative;
	display: grid;
	place-items: center;
	flex: 0 0 94px;
	width: 94px;
	height: 94px;
	border-radius: 50%;
	background:
		conic-gradient(
			#137a48 var(--ifs-entry-progress),
			#e7edf1 var(--ifs-entry-progress)
		);
	box-shadow: 0 6px 18px rgba(19,122,72,.10);
}

.ifs-entry-progress-ring::before {
	content: "";
	position: absolute;
	inset: 8px;
	border-radius: 50%;
	background: #fff;
	box-shadow: inset 0 0 0 1px #e2e8ee;
}

.ifs-entry-progress-center {
	position: relative;
	z-index: 1;
	text-align: center;
}

.ifs-entry-progress-center strong,
.ifs-entry-progress-center span {
	display: block;
}

.ifs-entry-progress-center strong {
	color: #137a48;
	font-size: 20px;
	line-height: 1;
	font-weight: 900;
}

.ifs-entry-progress-center span {
	margin-top: 4px;
	color: #667387;
	font-size: 8px;
	font-weight: 800;
}

.ifs-entry-progress-copy {
	min-width: 105px;
}

.ifs-entry-progress-copy strong,
.ifs-entry-progress-copy span,
.ifs-entry-progress-copy small {
	display: block;
}

.ifs-entry-progress-copy strong {
	color: var(--ifs-navy);
	font-size: 9px;
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.ifs-entry-progress-copy span {
	margin-top: 4px;
	color: #137a48;
	font-size: 10px;
	font-weight: 800;
}

.ifs-entry-progress-copy small {
	margin-top: 3px;
	color: #7d8897;
	font-size: 7px;
	font-weight: 700;
}

.ifs-entry-progress.is-empty {
	min-height: 94px;
	padding: 0 16px;
	border: 1px dashed #d7e0e8;
	border-radius: 12px;
	background: rgba(248,250,252,.8);
}

.ifs-entry-progress-empty {
	text-align: center;
}

.ifs-entry-progress-empty strong,
.ifs-entry-progress-empty span {
	display: block;
}

.ifs-entry-progress-empty strong {
	color: #53647a;
	font-size: 9px;
	text-transform: uppercase;
	letter-spacing: .04em;
}

.ifs-entry-progress-empty span {
	margin-top: 4px;
	color: #929caa;
	font-size: 8px;
}

/* Tablet/laptop: keep progress visible without crowding quick actions. */
@media (max-width: 1250px) and (min-width: 801px) {
	.ifs-welcome-panel {
		grid-template-columns: 112px minmax(0, 1fr) minmax(200px, .65fr) 145px;
	}

	.ifs-entry-progress {
		grid-column: 3;
		grid-row: 1 / 3;
	}

	.ifs-welcome-actions {
		grid-column: 2;
	}

	.ifs-welcome-meta {
		grid-column: 4;
		grid-row: 1 / 3;
	}

	.ifs-entry-progress-ring {
		width: 82px;
		height: 82px;
		flex-basis: 82px;
	}

	.ifs-entry-progress-center strong {
		font-size: 17px;
	}
}

/* Mobile: progress becomes a compact full-width card. */
@media (max-width: 800px) {
	.ifs-entry-progress {
		grid-column: 1 / -1;
		width: 100%;
		box-sizing: border-box;
		justify-content: flex-start;
		padding: 9px 11px;
		border: 1px solid #dce5ec;
		border-radius: 10px;
		background: #fff;
	}

	.ifs-entry-progress-ring {
		width: 70px;
		height: 70px;
		flex-basis: 70px;
	}

	.ifs-entry-progress-center strong {
		font-size: 15px;
	}
}

/* =========================================================
   IFS v1.0.3 — Applicable Completion Intelligence
   Required = A + applicable B
   Record Quality = A + applicable B + C
   ========================================================= */

.ifs-collection-completion-copy {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-left: 5px;
	white-space: nowrap;
}

.ifs-collection-completion-copy small {
	color: #7e8998;
	font-size: 6.5px;
	font-weight: 700;
}

.ifs-pir-status-strip {
	grid-template-columns:
		.75fr
		1fr
		.7fr
		.8fr
		1fr
		1fr
		.8fr
		1.2fr;
}

@media (max-width: 1180px) {
	.ifs-pir-status-strip {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}


/* v0.10.02 — Dashboard primary product search */
.ifs-dashboard-shell .ifs-welcome-panel {
	display: grid;
	grid-template-columns: auto minmax(360px, 1.15fr) minmax(360px, 1fr) auto auto;
	align-items: center;
	gap: 22px;
}

.ifs-dashboard-product-search {
	min-width: 0;
	padding: 16px 18px;
	border: 1px solid rgba(23,105,170,.20);
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 22px rgba(18,33,58,.06);
}

.ifs-dashboard-product-search > label {
	display: block;
	margin-bottom: 7px;
	color: var(--ifs-blue);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.ifs-dashboard-product-search-row {
	display: grid;
	grid-template-columns: minmax(0,1fr) auto;
	gap: 8px;
}

.ifs-dashboard-product-search input[type="search"] {
	box-sizing: border-box;
	width: 100%;
	min-height: 46px;
	padding: 0 14px;
	border: 1px solid #c9d7e6;
	border-radius: 10px;
	background: #fff;
	color: var(--ifs-navy);
	font-size: 15px;
	outline: none;
}

.ifs-dashboard-product-search input[type="search"]:focus {
	border-color: var(--ifs-blue);
	box-shadow: 0 0 0 3px rgba(23,105,170,.12);
}

.ifs-dashboard-product-search button {
	min-height: 46px;
	padding: 0 20px;
	border: 0;
	border-radius: 10px;
	background: #147a4d;
	color: #fff;
	cursor: pointer;
	font-size: 13px;
	font-weight: 800;
}

.ifs-dashboard-product-search button:hover {
	background: #0f613d;
}

.ifs-dashboard-product-search small {
	display: block;
	margin-top: 7px;
	color: #7b8797;
	font-size: 10px;
}

.ifs-dashboard-shell .ifs-entry-progress,
.ifs-dashboard-shell .ifs-welcome-meta {
	justify-self: end;
}

@media (max-width: 1350px) {
	.ifs-dashboard-shell .ifs-welcome-panel {
		grid-template-columns: auto minmax(300px,1fr) minmax(320px,1fr);
	}

	.ifs-dashboard-shell .ifs-entry-progress,
	.ifs-dashboard-shell .ifs-welcome-meta {
		justify-self: stretch;
	}

	.ifs-dashboard-shell .ifs-welcome-meta {
		text-align: left;
	}
}

@media (max-width: 900px) {
	.ifs-dashboard-shell .ifs-welcome-panel {
		grid-template-columns: 1fr;
	}

	.ifs-dashboard-product-search {
		width: 100%;
		box-sizing: border-box;
	}

	.ifs-dashboard-product-search-row {
		grid-template-columns: 1fr;
	}

	.ifs-dashboard-product-search button {
		width: 100%;
	}
}



/* ==========================================================================
   IFS v0.10.10 — Sequential Foundation status language
   Green = completed, Red = current required action, Neutral = future/locked.
   ========================================================================== */
.ifs-foundation-form .ifs-sequential-foundation .ifs-sequence-complete,
.ifs-foundation-form .ifs-sequence-complete {
	border-color: #2e7d32 !important;
	box-shadow: 0 0 0 1px rgba(46,125,50,.18);
}
.ifs-foundation-form .ifs-sequence-complete > .acf-label label,
.ifs-foundation-form .ifs-sequence-complete > span,
.ifs-foundation-form label.ifs-sequence-complete > span {
	color: #1b5e20 !important;
	font-weight: 700;
}
.ifs-foundation-form .ifs-sequence-complete select,
.ifs-foundation-form .ifs-sequence-complete input,
.ifs-foundation-form .ifs-sequence-complete textarea {
	border-color: #2e7d32 !important;
	background-color: rgba(46,125,50,.045);
}

.ifs-foundation-form .ifs-sequence-current {
	border-color: #c62828 !important;
	box-shadow: 0 0 0 2px rgba(198,40,40,.12);
}
.ifs-foundation-form .ifs-sequence-current > .acf-label label,
.ifs-foundation-form .ifs-sequence-current > span,
.ifs-foundation-form label.ifs-sequence-current > span {
	color: #b71c1c !important;
	font-weight: 800;
}
.ifs-foundation-form .ifs-sequence-current select,
.ifs-foundation-form .ifs-sequence-current input,
.ifs-foundation-form .ifs-sequence-current textarea {
	border-color: #c62828 !important;
	background-color: rgba(198,40,40,.04);
}

.ifs-foundation-form .ifs-sequence-future {
	opacity: .58;
}
.ifs-foundation-form .ifs-sequence-future select,
.ifs-foundation-form .ifs-sequence-future input,
.ifs-foundation-form .ifs-sequence-future textarea {
	cursor: not-allowed !important;
	background-color: #f4f5f6 !important;
}

.ifs-foundation-form .ifs-factory-assignment-card label.ifs-sequence-complete,
.ifs-foundation-form .ifs-factory-assignment-card label.ifs-sequence-current,
.ifs-foundation-form .ifs-factory-assignment-card label.ifs-sequence-future {
	border: 1px solid transparent;
	border-radius: 10px;
	padding: 10px;
	transition: border-color .15s ease, box-shadow .15s ease, opacity .15s ease;
}


/* v0.10.11 — Locked Hero/Gallery actions follow the same neutral state. */
.ifs-foundation-form .ifs-media-block.ifs-sequence-future button:disabled {
	cursor: not-allowed !important;
	opacity: .55 !important;
}


/* ==========================================================================
   IFS v0.10.13 — Product Foundation two-column workflow
   Presentation only. Existing ACF/custom field ownership remains unchanged.
   ========================================================================== */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column {
	display:grid !important;
	grid-template-columns:minmax(0,1fr) minmax(0,1fr);
	column-gap:22px;
	row-gap:11px;
	align-items:start;
}

/* Preserve ACF DOM while letting its direct fields visually join the form grid. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .acf-fields {
	display:contents !important;
}

/* Same technique for Factory/Responsible: no DOM re-parenting. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .ifs-factory-assignment-card {
	display:contents !important;
}

.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > div:first-child {
	grid-column:1 / -1;
	order:-30;
	margin:0 0 4px;
	padding:11px 13px;
	border:1px solid #dce6ee;
	border-radius:10px;
	background:#f8fafc;
}

/* Lifecycle remains a full-width context/control above the guided workflow. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .ifs-lifecycle-entry-card {
	grid-column:1 / -1 !important;
	order:-40 !important;
}

/* Column headings are UI only. */
.ifs-foundation-column-heading {
	padding:10px 12px;
	border:1px solid #cfdae4;
	border-radius:10px;
	background:#f7fafc;
	min-height:52px;
	display:flex;
	flex-direction:column;
	justify-content:center;
	gap:2px;
}
.ifs-foundation-column-heading span {
	font-size:9px;
	font-weight:900;
	letter-spacing:.1em;
	color:#6a7d8d;
}
.ifs-foundation-column-heading strong {
	font-size:13px;
	color:#173f64;
}
.ifs-foundation-column-heading.is-left {
	grid-column:1;
	order:0;
}
.ifs-foundation-column-heading.is-right {
	grid-column:2;
	order:0;
}

/* The two independent vertical workflow tracks. */
.ifs-foundation-form [data-ifs-foundation-column="1"] {
	grid-column:1 !important;
	width:100% !important;
	margin:0 !important;
}
.ifs-foundation-form [data-ifs-foundation-column="2"] {
	grid-column:2 !important;
	width:100% !important;
	margin:0 !important;
}

/* Custom direct fields participate exactly like ACF fields. */
.ifs-foundation-form .ifs-outsole-material-field,
.ifs-foundation-form .ifs-relevant-design-field {
	min-width:0;
}

/*
 * Supporting/non-sequential ACF controls are kept below the two principal
 * tracks rather than allowed to interrupt the operator's next-action path.
 */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	[data-ifs-foundation-extra="1"] {
	grid-column:1 / -1 !important;
	order:200 !important;
}

/* Sizes -> Images -> green Continue, all full width. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .ifs-product-size-master {
	grid-column:1 / -1 !important;
	order:300 !important;
	margin-top:16px;
}
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .ifs-media-manager {
	grid-column:1 / -1 !important;
	order:400 !important;
}
.ifs-foundation-form .ifs-foundation-progress-cta {
	grid-column:1 / -1 !important;
	order:500 !important;
	margin-top:6px;
	padding:16px;
	border:1px solid #cfe4d7;
	border-radius:12px;
	background:#f4fbf6;
}
.ifs-foundation-form .ifs-foundation-continue {
	min-height:50px;
	font-size:14px;
	border-radius:10px;
}

/* Keep the two image blocks clean side-by-side on desktop. */
.ifs-foundation-form .ifs-media-manager {
	grid-template-columns:repeat(2,minmax(0,1fr));
}
.ifs-foundation-form .ifs-media-manager .ifs-variant-colour-manager {
	grid-column:1 / -1;
}

/* Tablet/mobile: collapse to one clean cascade without changing logic. */
@media (max-width: 900px) {
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column {
		grid-template-columns:1fr;
		column-gap:0;
	}
	.ifs-foundation-column-heading.is-left,
	.ifs-foundation-column-heading.is-right,
	.ifs-foundation-form [data-ifs-foundation-column="1"],
	.ifs-foundation-form [data-ifs-foundation-column="2"] {
		grid-column:1 !important;
	}
	.ifs-foundation-column-heading.is-right {
		margin-top:8px;
	}
	.ifs-foundation-form .ifs-media-manager {
		grid-template-columns:1fr;
	}
	.ifs-foundation-form .ifs-media-manager .ifs-variant-colour-manager {
		grid-column:1;
	}
}


/* ==========================================================================
   IFS v0.10.14 — Close the Foundation column gap
   Keep v0.10.13 two-column architecture, but prevent the Factory information
   panel from pushing the left workflow downward.
   ========================================================================== */

/* Lifecycle is context, not part of the red/green taxonomy chain. Keep it compact. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column > .ifs-lifecycle-entry-card {
	grid-column:1 / -1 !important;
	order:-50 !important;
	margin:0 0 2px !important;
	padding:10px 12px !important;
	min-height:0 !important;
}

/*
 * Factory explanatory copy spans the two columns as a compact intro only.
 * Factory and Responsible themselves remain in the left workflow column.
 */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > div:first-child {
	grid-column:1 / -1 !important;
	order:-20 !important;
	margin:0 0 2px !important;
	padding:8px 11px !important;
	min-height:0 !important;
}

/* Factory = first actionable item in left column. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label:nth-of-type(1) {
	grid-column:1 !important;
	order:10 !important;
	align-self:start;
}

/* Responsible follows directly below Factory in the same left column. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label:nth-of-type(2) {
	grid-column:1 !important;
	order:20 !important;
	align-self:start;
}

/*
 * The JS controller also assigns column/order attributes to these labels.
 * This explicit rule is intentionally stronger so legacy display:contents
 * cannot place them in column 2.
 */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label[data-ifs-foundation-column="1"] {
	grid-column:1 !important;
}

/* Keep the Factory/Responsible controls full width and visually consistent. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label {
	width:100% !important;
	margin:0 !important;
	min-width:0;
}

/* Reduce unnecessary vertical padding in the contextual blocks. */
.ifs-foundation-form .ifs-factory-assignment-card p {
	margin-top:3px !important;
}

/* Mobile remains a single cascade. */
@media (max-width:900px) {
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column
		> .ifs-factory-assignment-card > div:first-child,
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column
		> .ifs-factory-assignment-card > label:nth-of-type(1),
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column
		> .ifs-factory-assignment-card > label:nth-of-type(2) {
		grid-column:1 !important;
	}
}


/* ==========================================================================
   IFS v0.10.15 — Final top alignment refinement
   Factory starts the left workflow column.
   IFS Responsible Person starts the right workflow column.
   This closes the remaining white space while preserving all red/green logic.
   ========================================================================== */

/* Factory: top-left actionable field. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label:nth-of-type(1) {
	grid-column:1 !important;
	order:10 !important;
	align-self:start;
}

/* Responsible: top-right, exactly opposite Factory. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label:nth-of-type(2) {
	grid-column:2 !important;
	order:10 !important;
	align-self:start;
}

/* Cancel the older v0.10.14 generic force-to-left rule for Responsible. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > label:nth-of-type(2)[data-ifs-foundation-column="2"] {
	grid-column:2 !important;
}

/* Compact the explanatory copy so it does not create a visual wall. */
.ifs-foundation-form form.acf-form.ifs-foundation-two-column
	> .ifs-factory-assignment-card > div:first-child {
	grid-column:1 / -1 !important;
	order:-20 !important;
	margin:0 0 4px !important;
	padding:8px 11px !important;
}

/* Mobile returns to one clean cascade. */
@media (max-width:900px) {
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column
		> .ifs-factory-assignment-card > label:nth-of-type(1),
	.ifs-foundation-form form.acf-form.ifs-foundation-two-column
		> .ifs-factory-assignment-card > label:nth-of-type(2) {
		grid-column:1 !important;
	}
}


/* ==========================================================================
   IFS v0.11.00 — Logistics Foundation / Operations Today
   ========================================================================== */
.ifs-logistics-foundation { max-width:1500px; }
.ifs-logistics-foundation-version {
	margin-left:auto;
	padding:5px 9px;
	border:1px solid #cfe0d6;
	border-radius:999px;
	background:#f1faf4;
	color:#0d6f40;
	font-size:10px;
	font-weight:900;
	letter-spacing:.05em;
}
.ifs-logistics-head { margin-bottom:14px; }
.ifs-logistics-foundation-note {
	display:flex;
	gap:12px;
	align-items:flex-start;
	margin:0 0 16px;
	padding:12px 14px;
	border:1px solid #bad7c5;
	border-radius:11px;
	background:#f1faf4;
	color:#254a34;
}
.ifs-logistics-foundation-note strong {
	white-space:nowrap;
	font-size:10px;
	letter-spacing:.08em;
	color:#0d6f40;
}
.ifs-logistics-foundation-note span { font-size:11px; line-height:1.45; }

.ifs-logistics-kpis {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:12px;
	margin-bottom:16px;
}
.ifs-logistics-kpi {
	padding:15px;
	border:1px solid #d9e3eb;
	border-radius:12px;
	background:#fff;
	box-shadow:0 4px 16px rgba(20,45,70,.04);
}
.ifs-logistics-kpi span {
	display:block;
	font-size:10px;
	font-weight:900;
	text-transform:uppercase;
	letter-spacing:.07em;
	color:#61768a;
}
.ifs-logistics-kpi strong {
	display:block;
	margin:3px 0 1px;
	font-size:28px;
	line-height:1;
	color:#173f64;
}
.ifs-logistics-kpi small { font-size:10px; color:#6b7e8f; }
.ifs-logistics-kpi.is-exception { border-color:#e3c373; background:#fffaf0; }
.ifs-logistics-kpi.is-urgent { border-color:#e9aea8; background:#fff5f4; }
.ifs-logistics-kpi.is-vip { border-color:#c9b8e8; background:#faf7ff; }

.ifs-logistics-workspace-grid {
	display:grid;
	grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);
	gap:16px;
	margin-bottom:16px;
}
.ifs-logistics-panel {
	padding:16px;
	border:1px solid #d7e2eb;
	border-radius:13px;
	background:#fff;
	box-shadow:0 5px 18px rgba(20,45,70,.04);
}
.ifs-logistics-panel-head {
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:12px;
	padding-bottom:11px;
	margin-bottom:12px;
	border-bottom:1px solid #e5ecf2;
}
.ifs-logistics-panel-head h2 { margin:2px 0 0; color:#173f64; font-size:18px; }
.ifs-logistics-readonly-badge {
	padding:4px 8px;
	border-radius:999px;
	background:#eef4f8;
	color:#587185;
	font-size:9px;
	font-weight:900;
	letter-spacing:.07em;
	white-space:nowrap;
}
.ifs-logistics-panel-copy { margin:0 0 12px; color:#5e7284; font-size:11px; line-height:1.45; }
.ifs-logistics-empty {
	padding:16px;
	border:1px dashed #cbd8e3;
	border-radius:10px;
	background:#f8fafc;
	color:#52697c;
}
.ifs-logistics-empty strong { color:#294760; }
.ifs-logistics-empty p { margin:5px 0 0; font-size:11px; line-height:1.45; }

.ifs-logistics-event-list,
.ifs-logistics-product-list { display:grid; gap:8px; }
.ifs-logistics-event,
.ifs-logistics-product-row {
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:10px 11px;
	border:1px solid #e0e8ef;
	border-radius:9px;
	background:#fbfcfd;
}
.ifs-logistics-event strong,
.ifs-logistics-product-row strong { display:block; color:#243f58; font-size:11px; }
.ifs-logistics-event small,
.ifs-logistics-product-row small { display:block; margin-top:2px; color:#708394; font-size:9px; }
.ifs-logistics-event-tags { display:flex; gap:5px; flex-wrap:wrap; justify-content:flex-end; }
.ifs-logistics-event-tags span {
	padding:3px 6px;
	border-radius:999px;
	background:#eef4f8;
	color:#526b80;
	font-size:8px;
	font-weight:900;
}
.ifs-logistics-product-row a {
	padding:6px 9px;
	border-radius:7px;
	background:#0f7a45;
	color:#fff;
	text-decoration:none;
	font-size:9px;
	font-weight:900;
	white-space:nowrap;
}

.ifs-logistics-readiness-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:10px;
}
.ifs-logistics-readiness-grid > div {
	padding:12px;
	border:1px solid #e1e9f0;
	border-radius:10px;
	background:#f9fbfc;
}
.ifs-logistics-readiness-grid strong {
	display:block;
	margin-bottom:4px;
	font-size:11px;
	color:#173f64;
}
.ifs-logistics-readiness-grid span {
	display:block;
	font-size:10px;
	line-height:1.45;
	color:#64798b;
}

@media(max-width:1000px) {
	.ifs-logistics-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
	.ifs-logistics-workspace-grid { grid-template-columns:1fr; }
	.ifs-logistics-readiness-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
	.ifs-logistics-kpis,
	.ifs-logistics-readiness-grid { grid-template-columns:1fr; }
	.ifs-logistics-foundation-note { display:grid; }
	.ifs-logistics-event,
	.ifs-logistics-product-row { align-items:flex-start; }
}


/* ==========================================================================
   IFS v0.11.01 — Role-aware Logistics navigation
   ========================================================================== */
.ifs-app-nav .ifs-nav-logistics.is-primary {
	border-color:#0f7a45;
	background:#0f7a45;
	color:#fff;
	font-weight:900;
}
.ifs-app-nav .ifs-nav-logistics.is-primary:hover,
.ifs-app-nav .ifs-nav-logistics.is-primary:focus {
	border-color:#0b6539;
	background:#0b6539;
	color:#fff;
}

/* v0.11.10 — Reservations & Picking */
.ifs-reservation-create-panel{margin-bottom:16px}
.ifs-reservation-form{display:grid;grid-template-columns:2fr 1.5fr 1fr .8fr .8fr auto;gap:10px;align-items:end}
.ifs-reservation-form label{display:grid;gap:5px;min-width:0}
.ifs-reservation-form label>span{font-size:10px;font-weight:800;color:#294760}
.ifs-reservation-form input,.ifs-reservation-form select{min-height:40px;padding:8px 10px;border:1px solid #c8d9e8;border-radius:7px;background:#fff}
.ifs-reservation-form small{font-size:8px;line-height:1.3;color:#738697}
.ifs-reservation-create-btn{min-height:40px;white-space:nowrap}
.ifs-reservation-table-wrap{overflow:auto}
.ifs-reservation-table{width:100%;border-collapse:separate;border-spacing:0 7px;min-width:1050px}
.ifs-reservation-table th{padding:0 9px 4px;text-align:left;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#61768a}
.ifs-reservation-table td{padding:10px 9px;background:#fbfcfd;border-top:1px solid #dfe8ef;border-bottom:1px solid #dfe8ef;vertical-align:top}
.ifs-reservation-table td:first-child{border-left:1px solid #dfe8ef;border-radius:9px 0 0 9px}
.ifs-reservation-table td:last-child{border-right:1px solid #dfe8ef;border-radius:0 9px 9px 0}
.ifs-reservation-table strong{display:block;color:#243f58;font-size:11px}
.ifs-reservation-table small{display:block;margin-top:2px;color:#718495;font-size:9px}
.ifs-res-priority,.ifs-res-status{display:inline-flex;align-items:center;padding:4px 7px;border-radius:999px;font-size:8px;font-weight:900;white-space:nowrap}
.ifs-res-priority.is-standard{background:#edf3f7;color:#51697c}.ifs-res-priority.is-vip{background:#f1eaff;color:#7045a5}
.ifs-res-status{background:#eef4f8;color:#526b80}
.ifs-res-status.is-shortage,.ifs-res-status.is-awaiting_decision,.ifs-res-status.is-incoming_exception{background:#fff3d9;color:#8b5f00}
.ifs-res-status.is-picked,.ifs-res-status.is-partially_picked{background:#e9f7ef;color:#08733f}
.ifs-res-status.is-return_pending{background:#fff0ef;color:#9b2b23}
.ifs-res-status.is-released,.ifs-res-status.is-completed{background:#edf2f5;color:#607382}
.ifs-res-expired{color:#b62323!important}
.ifs-res-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:flex-start}
.ifs-res-actions summary,.ifs-res-actions button{cursor:pointer;padding:6px 8px;border:1px solid #c8d7e3;border-radius:7px;background:#fff;color:#25455f;font-size:8px;font-weight:900}
.ifs-res-actions details[open]{padding:7px;border:1px solid #d8e4ec;border-radius:8px;background:#f8fafc}
.ifs-res-actions details[open] summary{margin-bottom:6px}
.ifs-res-actions form{display:grid;gap:5px;min-width:180px}
.ifs-res-actions input,.ifs-res-actions select{min-height:32px;padding:5px 7px;border:1px solid #c8d7e3;border-radius:6px;background:#fff;font-size:9px}
.ifs-res-actions .ifs-return-request{border-color:#e3c373;background:#fffaf0;color:#795600}
.ifs-res-actions .ifs-return-confirm{border-color:#9ccdad;background:#edf9f1;color:#08733f}
@media(max-width:1200px){.ifs-reservation-form{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.ifs-reservation-form{grid-template-columns:1fr}}


/* ==========================================================================
   IFS v0.12.00 — Sales Order Intake / Customer Resolution
   ========================================================================== */
.ifs-sales-dashboard-action{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:18px;border:1px solid #b9d8c5;border-radius:14px;background:#f3fbf6}
.ifs-sales-dashboard-action h2{margin:2px 0 5px;color:#173f64}.ifs-sales-dashboard-action p{margin:0;max-width:820px;color:#5d7283;font-size:11px}
.ifs-sales-dashboard-button,.ifs-app-nav .ifs-nav-sales.is-primary{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #0f7a45;border-radius:8px;background:#0f7a45;color:#fff!important;text-decoration:none;font-weight:900;white-space:nowrap}
.ifs-sales-orders-shell{max-width:1500px}.ifs-sales-workspace-badge{margin-left:auto;padding:5px 9px;border-radius:999px;background:#eef7f1;color:#0f7042;font-size:9px;font-weight:900;letter-spacing:.07em}
.ifs-sales-intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}
.ifs-sales-panel{padding:17px;border:1px solid #d8e3eb;border-radius:13px;background:#fff;box-shadow:0 5px 18px rgba(20,45,70,.04);margin-bottom:16px}
.ifs-sales-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid #e6edf2}
.ifs-sales-panel-head h2{margin:2px 0 0;color:#173f64;font-size:18px}.ifs-sales-step,.ifs-sales-status{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:4px 8px;border-radius:999px;background:#eaf6ee;color:#0f7042;font-size:9px;font-weight:900}
.ifs-sales-upload-form,.ifs-sales-manual-form,.ifs-create-customer form{display:grid;gap:10px}
.ifs-sales-upload-form label,.ifs-sales-manual-form label,.ifs-create-customer label{display:grid;gap:5px}
.ifs-sales-upload-form label>span,.ifs-sales-manual-form label>span,.ifs-create-customer label>span{font-size:10px;font-weight:800;color:#294760}
.ifs-sales-upload-form input,.ifs-sales-upload-form select,.ifs-sales-upload-form textarea,.ifs-sales-manual-form input,.ifs-sales-manual-form textarea,.ifs-create-customer input{width:100%;min-height:40px;padding:8px 10px;border:1px solid #c8d9e8;border-radius:7px;background:#fff}
.ifs-sales-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ifs-sales-three{display:grid;grid-template-columns:1fr 1fr .7fr;gap:10px}
.ifs-customer-candidate{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.ifs-customer-candidate>div{padding:10px;border:1px solid #e1e9ef;border-radius:9px;background:#f9fbfc}.ifs-customer-candidate span{display:block;font-size:8px;text-transform:uppercase;color:#6a7e8f}.ifs-customer-candidate strong{display:block;margin-top:3px;color:#203f59;font-size:11px}
.ifs-customer-match-list{display:grid;gap:8px}.ifs-customer-match-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid #dfe8ef;border-radius:9px;background:#fbfcfd}.ifs-customer-match-row strong,.ifs-customer-match-row span,.ifs-customer-match-row small{display:block}.ifs-customer-match-row span{font-size:10px;color:#607487}.ifs-customer-match-row small{font-size:8px;color:#7a8b99}.ifs-customer-match-row button{padding:7px 9px;border:0;border-radius:7px;background:#0f7a45;color:#fff;font-size:9px;font-weight:900}
.ifs-customer-not-found{display:flex;gap:8px;align-items:center;margin:10px 0;padding:11px;border:1px solid #e7c875;border-radius:9px;background:#fff9e9;color:#735400}.ifs-create-customer{margin-top:10px}.ifs-create-customer summary{cursor:pointer;font-weight:900;color:#173f64;margin-bottom:10px}
.ifs-so-customer{display:flex;justify-content:space-between;gap:12px;padding:10px;border-radius:9px;background:#f8fafc}.ifs-so-customer span{color:#6a7e8f;font-size:10px}.ifs-so-meta{display:flex;gap:20px;margin:10px 0;font-size:10px;color:#5d7283}.ifs-so-lines{overflow:auto}.ifs-so-lines table{width:100%;border-collapse:collapse}.ifs-so-lines th,.ifs-so-lines td{padding:8px;border-bottom:1px solid #e5ecf1;text-align:left;font-size:10px}.ifs-sales-help{font-size:10px;color:#6a7e8f}
@media(max-width:900px){.ifs-sales-intake-grid,.ifs-sales-two,.ifs-sales-three,.ifs-customer-candidate{grid-template-columns:1fr}.ifs-sales-dashboard-action{display:grid}}


/* ==========================================================================
   IFS v0.13.00 — MASTER SUPPLIERS DIRECTORY
   ========================================================================== */
.ifs-supplier-classification{display:grid;grid-template-columns:1fr 1fr;gap:12px;grid-column:1/-1}
.ifs-supplier-class-block{padding:12px;border:1px solid #d6e2eb;border-radius:10px;background:#f9fbfc}
.ifs-supplier-class-block>strong{display:block;margin-bottom:8px;color:#173f64;font-size:12px}
.ifs-supplier-type-buttons{display:flex;flex-wrap:wrap;gap:7px}
.ifs-supplier-type-buttons label{position:relative;display:inline-flex!important}
.ifs-supplier-type-buttons label.has-helper{flex-direction:column;align-items:flex-start;gap:3px}
.ifs-supplier-type-buttons input{position:absolute;opacity:0;pointer-events:none}
.ifs-supplier-type-buttons span{display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid #c8d7e3;border-radius:8px;background:#fff;color:#294760;font-size:9px;font-weight:800;cursor:pointer}
.ifs-supplier-type-helper{font-size:9px;font-weight:500;line-height:1.25;color:#6f8191}
.ifs-supplier-type-buttons input:checked+span{border-color:#0f7a45;background:#edf8f1;color:#0b6e3d;box-shadow:0 0 0 1px rgba(15,122,69,.15)}
.ifs-supplier-profile-header{display:grid;grid-template-columns:.8fr 1fr 1.3fr;gap:10px;align-items:end;padding:13px;margin-bottom:12px;border:1px solid #cfe0d8;border-radius:11px;background:#f4faf6}
.ifs-supplier-profile-header>div,.ifs-supplier-profile-header label{display:grid;gap:5px}
.ifs-supplier-profile-header span{font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#587085}
.ifs-supplier-profile-header strong{font-size:14px;color:#0f6f41}
.ifs-supplier-profile-header select{min-height:40px;padding:8px 10px;border:1px solid #bfd2c7;border-radius:7px;background:#fff}
.ifs-footwear-manufacturer-only[hidden]{display:none!important}
@media(max-width:800px){.ifs-supplier-classification,.ifs-supplier-profile-header{grid-template-columns:1fr}}


/* ==========================================================================
   IFS v0.13.10 — Master Suppliers Directory command interface
   ========================================================================== */
.ifs-supplier-directory-hero{
	display:grid;
	grid-template-columns:minmax(250px,.9fr) minmax(380px,1.5fr) minmax(310px,1fr);
	gap:18px;
	align-items:center;
}
.ifs-supplier-directory-hero .ifs-factory-security-badge{
	grid-column:1/-1;
	justify-self:end;
}
.ifs-supplier-master-search{
	display:grid;
	gap:6px;
	align-self:center;
}
.ifs-supplier-master-search>label{
	font-size:10px;
	font-weight:900;
	text-transform:uppercase;
	letter-spacing:.06em;
	color:#526b80;
}
.ifs-supplier-master-search-row{
	display:grid;
	grid-template-columns:1fr auto;
	gap:8px;
}
.ifs-supplier-master-search-row input{
	min-height:48px;
	padding:10px 14px;
	border:1px solid #b8ccdc;
	border-radius:10px;
	background:#fff;
	font-size:13px;
}
.ifs-supplier-master-search-row button{
	min-width:88px;
	padding:10px 14px;
	border:1px solid #173f64;
	border-radius:10px;
	background:#173f64;
	color:#fff;
	font-weight:900;
	cursor:pointer;
}
.ifs-supplier-directory-actions{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	flex-wrap:wrap;
	gap:7px;
}
.ifs-supplier-action,
.ifs-supplier-list-menu>summary{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:38px;
	padding:8px 11px;
	border:1px solid #c7d6e1;
	border-radius:8px;
	background:#fff;
	color:#274760;
	text-decoration:none;
	font-size:10px;
	font-weight:900;
	cursor:pointer;
	list-style:none;
}
.ifs-supplier-action.is-add{
	border-color:#0f7a45;
	background:#0f7a45;
	color:#fff;
}
.ifs-supplier-action.is-current{
	border-color:#173f64;
	background:#edf3f7;
	color:#173f64;
}
.ifs-supplier-action.is-disabled{
	opacity:.4;
	cursor:not-allowed;
}
.ifs-supplier-list-menu{
	position:relative;
}
.ifs-supplier-list-menu>summary::-webkit-details-marker{display:none}
.ifs-supplier-list-menu-panel{
	position:absolute;
	z-index:50;
	right:0;
	top:44px;
	width:330px;
	padding:12px;
	border:1px solid #ccd9e4;
	border-radius:11px;
	background:#fff;
	box-shadow:0 12px 28px rgba(20,45,70,.14);
}
.ifs-supplier-list-menu-panel>div{
	display:grid;
	gap:4px;
	margin-bottom:10px;
}
.ifs-supplier-list-menu-panel strong{
	display:block;
	padding-bottom:4px;
	border-bottom:1px solid #edf1f4;
	color:#173f64;
	font-size:10px;
}
.ifs-supplier-list-menu-panel a{
	padding:5px 3px;
	color:#426079;
	text-decoration:none;
	font-size:10px;
}
.ifs-supplier-list-menu-panel a:hover{color:#0f7a45}
.ifs-supplier-list-all{
	display:block;
	padding-top:8px!important;
	border-top:1px solid #e5ebef;
	font-weight:900;
	color:#0f7a45!important;
}
.ifs-supplier-directory-results{
	margin:16px 0;
	padding:16px;
	border:1px solid #d8e3eb;
	border-radius:13px;
	background:#fff;
}
.ifs-supplier-directory-results-head{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	margin-bottom:12px;
}
.ifs-supplier-directory-results-head h2{
	margin:2px 0 0;
	color:#173f64;
}
.ifs-supplier-directory-results-head>span{
	padding:5px 8px;
	border-radius:999px;
	background:#eef4f8;
	color:#526b80;
	font-size:9px;
	font-weight:900;
}
.ifs-supplier-result-list{display:grid;gap:8px}
.ifs-supplier-result-row{
	display:grid;
	grid-template-columns:minmax(220px,1.4fr) minmax(250px,1fr) auto;
	gap:12px;
	align-items:center;
	padding:11px 12px;
	border:1px solid #e0e8ee;
	border-radius:9px;
	background:#fbfcfd;
}
.ifs-supplier-result-main strong,
.ifs-supplier-result-main span,
.ifs-supplier-result-main small{display:block}
.ifs-supplier-result-main strong{color:#203f59;font-size:11px}
.ifs-supplier-result-main span{margin-top:2px;color:#0f7042;font-size:9px;font-weight:900}
.ifs-supplier-result-main small{margin-top:2px;color:#718495;font-size:9px}
.ifs-supplier-result-tags{display:flex;flex-wrap:wrap;gap:5px}
.ifs-supplier-result-tags span{
	padding:4px 7px;
	border-radius:999px;
	background:#edf4f8;
	color:#526b80;
	font-size:8px;
	font-weight:800;
}
.ifs-supplier-result-actions{display:flex;gap:5px}
.ifs-supplier-result-actions a{
	padding:6px 8px;
	border:1px solid #c6d6e2;
	border-radius:7px;
	background:#fff;
	color:#294760;
	text-decoration:none;
	font-size:9px;
	font-weight:900;
}
.ifs-supplier-mode-list .ifs-factory-master-layout,
.ifs-supplier-mode-list .ifs-factory-command-dashboard{
	display:none!important;
}
.ifs-supplier-mode-view .ifs-factory-editor{
	position:relative;
}
.ifs-supplier-mode-view .ifs-factory-editor:before{
	content:"VIEW ONLY";
	display:inline-flex;
	margin-bottom:10px;
	padding:5px 8px;
	border-radius:999px;
	background:#eef4f8;
	color:#526b80;
	font-size:9px;
	font-weight:900;
	letter-spacing:.05em;
}
.ifs-supplier-mode-view .ifs-factory-editor input:disabled,
.ifs-supplier-mode-view .ifs-factory-editor select:disabled,
.ifs-supplier-mode-view .ifs-factory-editor textarea:disabled{
	opacity:1;
	color:#344f65;
	background:#f7f9fb;
	-webkit-text-fill-color:#344f65;
}
@media(max-width:1100px){
	.ifs-supplier-directory-hero{grid-template-columns:1fr 1fr}
	.ifs-supplier-master-search{grid-column:1/-1;grid-row:2}
}
@media(max-width:760px){
	.ifs-supplier-directory-hero{grid-template-columns:1fr}
	.ifs-supplier-master-search{grid-column:auto;grid-row:auto}
	.ifs-supplier-directory-actions{justify-content:flex-start}
	.ifs-supplier-list-menu-panel{left:0;right:auto;width:min(330px,85vw)}
	.ifs-supplier-result-row{grid-template-columns:1fr}
}


/* ==========================================================================
   IFS v0.13.20 — Supplier Archive / Delete controls
   ========================================================================== */
.ifs-supplier-action-form{
	display:inline-flex;
	margin:0;
}
.ifs-supplier-action-form .ifs-supplier-action{
	font-family:inherit;
}
.ifs-supplier-action.is-archive{
	border-color:#d6aa45;
	background:#fff8e7;
	color:#7b5700;
}
.ifs-supplier-action.is-archive:hover{
	background:#fff0c8;
}
.ifs-supplier-action.is-restore{
	border-color:#78b893;
	background:#eef9f2;
	color:#0b6f3e;
}
.ifs-supplier-action.is-delete{
	border-color:#d75d5d;
	background:#fff1f1;
	color:#a52020;
}
button.ifs-supplier-action.is-delete{
	cursor:pointer;
}
.ifs-supplier-action.is-delete:hover{
	background:#ffe1e1;
	border-color:#bf3939;
}
.ifs-supplier-archived-banner,
.ifs-supplier-archive-notice{
	display:flex;
	align-items:center;
	gap:9px;
	margin:0 0 13px;
	padding:11px 13px;
	border:1px solid #d8b767;
	border-left:5px solid #b58316;
	border-radius:9px;
	background:#fff8e8;
	color:#654b14;
}
.ifs-supplier-archived-banner strong,
.ifs-supplier-archive-notice strong{
	color:#795800;
}
.ifs-supplier-delete-blockers{
	margin:8px 0 0 20px;
	padding:0;
}
.ifs-supplier-delete-blockers li{
	margin:3px 0;
}


/* ==========================================================================
   IFS v0.13.30 — Supplier list row checkbox + row actions
   ========================================================================== */
.ifs-supplier-result-row{
	grid-template-columns:34px minmax(220px,1.4fr) minmax(245px,1fr) auto !important;
}
.ifs-supplier-result-select{
	display:flex;
	align-items:center;
	justify-content:center;
}
.ifs-supplier-row-checkbox{
	width:17px;
	height:17px;
	margin:0;
	accent-color:auto;
	cursor:pointer;
}
.ifs-supplier-result-actions{
	display:flex;
	align-items:center;
	justify-content:flex-end;
	flex-wrap:nowrap;
	gap:5px;
	white-space:nowrap;
}
.ifs-supplier-row-action-form{
	display:inline-flex;
	margin:0;
}
.ifs-row-action{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:30px;
	padding:6px 9px;
	border:1px solid #c6d6e2;
	border-radius:7px;
	background:#fff;
	color:#294760;
	text-decoration:none;
	font-family:inherit;
	font-size:9px;
	font-weight:900;
	line-height:1;
	cursor:pointer;
	box-sizing:border-box;
}
.ifs-row-action.is-view:hover,
.ifs-row-action.is-edit:hover{
	border-color:#8faabd;
	background:#f4f8fa;
	color:#173f64;
}
.ifs-row-action.is-archive{
	border-color:#d6aa45;
	background:#fff8e7;
	color:#7b5700;
}
.ifs-row-action.is-restore{
	border-color:#78b893;
	background:#eef9f2;
	color:#0b6f3e;
}
.ifs-row-action.is-delete{
	border-color:#d75d5d;
	background:#fff1f1;
	color:#a52020;
}
.ifs-row-action.is-disabled{
	opacity:.38;
	cursor:not-allowed;
}
.ifs-supplier-result-row.is-selected{
	border-color:#9db9ce;
	box-shadow:0 0 0 2px rgba(23,63,100,.06);
	background:#f8fbfd;
}
@media(max-width:900px){
	.ifs-supplier-result-row{
		grid-template-columns:30px 1fr !important;
	}
	.ifs-supplier-result-tags,
	.ifs-supplier-result-actions{
		grid-column:2;
	}
	.ifs-supplier-result-actions{
		justify-content:flex-start;
		flex-wrap:wrap;
	}
}


/* ==========================================================================
   IFS v0.13.40 — Header command alignment + reliable row Delete
   ========================================================================== */
.ifs-supplier-directory-hero{
	grid-template-columns:minmax(430px,1.15fr) minmax(470px,.95fr) minmax(430px,.9fr) !important;
	align-items:center !important;
}
.ifs-supplier-center-command{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
}
.ifs-supplier-center-command .ifs-supplier-master-search{
	width:min(100%,560px);
	margin:0 auto;
}
.ifs-supplier-master-search-row{
	display:grid !important;
	grid-template-columns:minmax(190px,1fr) 104px 104px !important;
	gap:8px !important;
	align-items:stretch !important;
}
.ifs-supplier-master-search-row input{
	height:44px !important;
	min-height:44px !important;
	padding:0 12px !important;
}
.ifs-supplier-center-button{
	display:inline-flex !important;
	align-items:center !important;
	justify-content:center !important;
	width:104px !important;
	height:44px !important;
	min-width:104px !important;
	min-height:44px !important;
	padding:0 8px !important;
	border-radius:8px !important;
	box-sizing:border-box !important;
	font-size:10px !important;
	font-weight:900 !important;
	line-height:1 !important;
	text-decoration:none !important;
	white-space:nowrap !important;
}
button.ifs-supplier-center-button{
	border:1px solid #173f64 !important;
	background:#173f64 !important;
	color:#fff !important;
}
.ifs-supplier-center-button.is-add{
	border:1px solid #0f7a45 !important;
	background:#0f7a45 !important;
	color:#fff !important;
}
.ifs-supplier-directory-actions{
	display:grid !important;
	grid-template-columns:repeat(5,76px) !important;
	justify-content:end !important;
	align-items:center !important;
	gap:7px !important;
	flex-wrap:nowrap !important;
}
.ifs-supplier-directory-actions > .ifs-supplier-action,
.ifs-supplier-directory-actions > .ifs-supplier-action-form,
.ifs-supplier-directory-actions > .ifs-supplier-list-menu{
	width:76px !important;
	min-width:76px !important;
	max-width:76px !important;
	box-sizing:border-box !important;
}
.ifs-supplier-directory-actions > .ifs-supplier-action,
.ifs-supplier-directory-actions > .ifs-supplier-action-form .ifs-supplier-action,
.ifs-supplier-directory-actions > .ifs-supplier-list-menu > summary{
	width:76px !important;
	height:40px !important;
	min-width:76px !important;
	min-height:40px !important;
	padding:0 5px !important;
	display:flex !important;
	align-items:center !important;
	justify-content:center !important;
	box-sizing:border-box !important;
	border-radius:8px !important;
	font-size:9px !important;
	line-height:1 !important;
	white-space:nowrap !important;
}
.ifs-supplier-directory-actions > .ifs-supplier-action-form{
	display:block !important;
	margin:0 !important;
}
.ifs-supplier-directory-actions .ifs-supplier-list-menu-panel{
	right:0 !important;
}
.ifs-supplier-result-actions .ifs-row-action.is-delete{
	pointer-events:auto !important;
	opacity:1 !important;
	cursor:pointer !important;
}
/* List mode must never leak supplier-edit/bank fields below the directory. */
.ifs-supplier-mode-list .ifs-factory-master-layout,
.ifs-supplier-mode-list .ifs-factory-command-dashboard,
.ifs-supplier-mode-list .ifs-external-action-form,
.ifs-supplier-mode-list .ifs-bank-confirmation-letter,
.ifs-supplier-mode-list .ifs-bank-details-card{
	display:none !important;
}
@media(max-width:1450px){
	.ifs-supplier-directory-hero{
		grid-template-columns:1fr !important;
	}
	.ifs-supplier-center-command{
		justify-content:flex-start !important;
	}
	.ifs-supplier-center-command .ifs-supplier-master-search{
		margin:0 !important;
	}
	.ifs-supplier-directory-actions{
		justify-content:start !important;
	}
}
@media(max-width:680px){
	.ifs-supplier-master-search-row{
		grid-template-columns:1fr !important;
	}
	.ifs-supplier-center-button{
		width:100% !important;
	}
	.ifs-supplier-directory-actions{
		grid-template-columns:repeat(2,76px) !important;
	}
}

/* ==========================================================================
   IFS v0.13.50 — Server-controlled supplier delete confirmation
   ========================================================================== */
.ifs-supplier-delete-confirmation{
	display:grid;
	grid-template-columns:minmax(0,1.5fr) minmax(320px,.8fr);
	gap:20px;
	align-items:center;
	margin:16px 0;
	padding:18px;
	border:1px solid #e1a3a3;
	border-left:6px solid #b92f2f;
	border-radius:12px;
	background:#fff4f4;
}
.ifs-supplier-delete-confirmation h2{margin:2px 0 6px;color:#8e2424}
.ifs-supplier-delete-confirmation p{margin:0;color:#6b4444;font-size:11px;line-height:1.5}
.ifs-supplier-delete-confirmation-form{display:grid;gap:10px}
.ifs-supplier-delete-confirmation-form label{display:grid;gap:5px}
.ifs-supplier-delete-confirmation-form label span{font-size:9px;font-weight:900;text-transform:uppercase;color:#744}
.ifs-supplier-delete-confirmation-form input{min-height:40px;padding:8px 10px;border:1px solid #d9a2a2;border-radius:7px;background:#fff}
.ifs-supplier-delete-confirmation-actions{display:flex;justify-content:flex-end;gap:8px}
.ifs-supplier-delete-confirmation-actions a,
.ifs-supplier-delete-confirmation-actions button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:38px;
	padding:8px 12px;
	border-radius:7px;
	font-size:9px;
	font-weight:900;
	text-decoration:none;
}
.ifs-supplier-delete-confirmation-actions a{border:1px solid #c9d5df;background:#fff;color:#36536b}
.ifs-supplier-delete-confirmation-actions button{border:1px solid #b92f2f;background:#b92f2f;color:#fff;cursor:pointer}
@media(max-width:800px){.ifs-supplier-delete-confirmation{grid-template-columns:1fr}}


/* ==========================================================================
   IFS v0.13.60 — Clean Supplier Directory destructive action layer
   ========================================================================== */
.ifs-inline-supplier-delete{
	display:grid;
	grid-template-columns:minmax(0,1.35fr) minmax(330px,.75fr);
	gap:18px;
	align-items:center;
	margin:-1px 0 10px 34px;
	padding:15px 16px;
	border:1px solid #dc9c9c;
	border-left:5px solid #b52a2a;
	border-radius:0 0 10px 10px;
	background:#fff4f4;
}
.ifs-inline-supplier-delete h3{
	margin:2px 0 5px;
	color:#8d2424;
	font-size:14px;
}
.ifs-inline-supplier-delete p{
	margin:0;
	color:#6d4545;
	font-size:10px;
	line-height:1.5;
}
.ifs-inline-supplier-delete ul{
	margin:8px 0 0 18px;
	padding:0;
	color:#6d4545;
	font-size:10px;
}
.ifs-inline-supplier-delete-form{
	display:grid;
	gap:9px;
}
.ifs-inline-supplier-delete-form label{
	display:grid;
	gap:5px;
}
.ifs-inline-supplier-delete-form label>span{
	font-size:9px;
	font-weight:900;
	text-transform:uppercase;
	letter-spacing:.04em;
	color:#784747;
}
.ifs-inline-supplier-delete-form input{
	min-height:40px;
	padding:8px 10px;
	border:1px solid #d6a0a0;
	border-radius:7px;
	background:#fff;
}
.ifs-inline-supplier-delete-actions{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	gap:8px;
}
.ifs-inline-supplier-delete-actions form{
	margin:0;
}
.ifs-inline-supplier-delete-actions a,
.ifs-inline-supplier-delete-actions button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:36px;
	padding:7px 11px;
	border-radius:7px;
	font-family:inherit;
	font-size:9px;
	font-weight:900;
	text-decoration:none;
	cursor:pointer;
}
.ifs-inline-supplier-delete-actions .is-cancel{
	border:1px solid #c7d4df;
	background:#fff;
	color:#34536b;
}
.ifs-inline-supplier-delete-actions .is-archive{
	border:1px solid #d2a43e;
	background:#fff7df;
	color:#755300;
}
.ifs-inline-supplier-delete-actions .is-delete{
	border:1px solid #b52a2a;
	background:#b52a2a;
	color:#fff;
}
@media(max-width:850px){
	.ifs-inline-supplier-delete{
		grid-template-columns:1fr;
		margin-left:0;
	}
}


/* ==========================================================================
   IFS v0.13.70 — Safe Delete + Merge / Replace Supplier
   ========================================================================== */
.ifs-inline-supplier-delete-tools{
	display:grid;
	gap:10px;
}
.ifs-supplier-merge-box{
	border:1px solid #c9d7e2;
	border-radius:9px;
	background:#fff;
	overflow:hidden;
}
.ifs-supplier-merge-box>summary{
	padding:10px 12px;
	cursor:pointer;
	color:#173f64;
	font-size:10px;
	font-weight:900;
	list-style:none;
}
.ifs-supplier-merge-box>summary::-webkit-details-marker{display:none}
.ifs-supplier-merge-box[open]>summary{
	border-bottom:1px solid #e3e9ee;
	background:#f7fafc;
}
.ifs-supplier-merge-box>p{
	padding:10px 12px 0;
	color:#607487;
	font-size:9px;
	line-height:1.45;
}
.ifs-supplier-merge-form{
	display:grid;
	gap:9px;
	padding:10px 12px 12px;
}
.ifs-supplier-merge-form label{
	display:grid;
	gap:5px;
}
.ifs-supplier-merge-form label>span{
	color:#425f76;
	font-size:9px;
	font-weight:900;
}
.ifs-supplier-merge-form select,
.ifs-supplier-merge-form input{
	width:100%;
	min-height:38px;
	padding:7px 9px;
	border:1px solid #c5d4df;
	border-radius:7px;
	background:#fff;
	box-sizing:border-box;
}
.ifs-supplier-merge-form small{
	color:#758898;
	font-size:8px;
}
.ifs-supplier-merge-form .is-merge{
	min-height:38px;
	border:1px solid #173f64;
	border-radius:7px;
	background:#173f64;
	color:#fff;
	font-family:inherit;
	font-size:9px;
	font-weight:900;
	cursor:pointer;
}


/* v0.13.71 — Collection "See Similar" product intelligence */
.ifs-collection-similar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
}
.ifs-similar-products-panel {
	margin: 18px 0;
	padding: 18px;
	border: 1px solid #dce5ec;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(15, 35, 55, .06);
}
.ifs-similar-products-head {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	align-items: flex-start;
	margin-bottom: 14px;
}
.ifs-similar-products-head h2 { margin: 0 0 6px; }
.ifs-similar-products-head p { margin: 0; }
.ifs-similar-products-close {
	flex: 0 0 auto;
	padding: 8px 12px;
	border: 1px solid #cbd7e1;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 700;
}
.ifs-similar-source-summary {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 8px;
	padding: 12px;
	margin-bottom: 14px;
	border-radius: 10px;
	background: #f7f9fb;
}
.ifs-similar-source-summary > span {
	display: flex;
	flex-direction: column;
	gap: 3px;
	min-width: 0;
}
.ifs-similar-source-summary strong {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: .04em;
	color: #657587;
}
.ifs-similar-products-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
}
.ifs-similar-product-card {
	display: grid;
	grid-template-columns: 82px minmax(0, 1fr);
	gap: 12px;
	padding: 12px;
	border: 1px solid #e0e7ed;
	border-radius: 12px;
	background: #fff;
}
.ifs-similar-product-image {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 82px;
	height: 82px;
	overflow: hidden;
	border-radius: 9px;
	background: #f2f5f7;
}
.ifs-similar-product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.ifs-similar-product-copy { min-width: 0; }
.ifs-similar-product-titleline {
	display: flex;
	gap: 8px;
	justify-content: space-between;
	align-items: flex-start;
}
.ifs-similar-product-titleline > strong { min-width: 0; }
.ifs-similar-product-titleline > span {
	flex: 0 0 auto;
	padding: 3px 6px;
	border-radius: 999px;
	background: #eef4f8;
	font-size: 11px;
	font-weight: 700;
}
.ifs-similar-product-copy small {
	display: block;
	margin-top: 2px;
	color: #6b7785;
}
.ifs-similar-product-copy p {
	margin: 7px 0 9px;
	font-size: 12px;
	line-height: 1.35;
	color: #405163;
}
.ifs-similar-product-foot {
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: space-between;
}
.ifs-similar-product-foot a {
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}
.ifs-similar-availability {
	display: inline-flex;
	align-items: center;
	padding: 4px 7px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	background: #eef1f4;
	color: #536170;
}
.ifs-similar-availability.is-available { background: #e6f4ec; color: #176a3a; }
.ifs-similar-availability.is-short { background: #fbeaea; color: #9a2f2f; }
.ifs-similar-availability.is-incoming { background: #fff3df; color: #8a5b00; }
.ifs-similar-products-empty {
	padding: 18px;
	border: 1px dashed #ccd6df;
	border-radius: 10px;
	background: #fafbfd;
}
.ifs-similar-products-empty span { display: block; margin-top: 4px; color: #687686; }
.ifs-similar-products-note {
	margin: 12px 0 0;
	font-size: 12px;
	color: #697888;
}
@media (max-width: 1100px) {
	.ifs-similar-products-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ifs-similar-source-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
	.ifs-similar-products-head { flex-direction: column; }
	.ifs-similar-products-grid { grid-template-columns: 1fr; }
	.ifs-similar-source-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


/* SEE SIMILAR v0.13.74 — operator-selected criteria */
.ifs-similar-selected-product {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr) auto;
	gap: 16px;
	align-items: center;
	padding: 14px;
	margin: 12px 0 10px;
	border: 1px solid #d9e3ec;
	border-radius: 12px;
	background: #f8fbfd;
}
.ifs-similar-selected-image {
	width: 132px;
	height: 104px;
	border-radius: 10px;
	overflow: hidden;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #e2e9ef;
}
.ifs-similar-selected-image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.ifs-similar-selected-copy h3 {
	margin: 2px 0 2px;
	font-size: 20px;
	line-height: 1.15;
}
.ifs-similar-selected-label {
	display: block;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .09em;
	color: #0b65a1;
}
.ifs-similar-selected-meta {
	margin: 0 0 8px;
	color: #687686;
	font-size: 12px;
}
.ifs-similar-selected-facts {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
}
.ifs-similar-selected-facts span {
	font-size: 12px;
	color: #23384d;
	white-space: nowrap;
}
.ifs-similar-selected-facts strong {
	display: inline-block;
	margin-right: 5px;
	color: #687686;
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: .04em;
}
.ifs-similar-selected-product > .ifs-similar-availability {
	min-width: 150px;
	text-align: center;
}
.ifs-similar-selected-product > .ifs-similar-availability strong {
	display: block;
	font-size: 9px;
	text-transform: uppercase;
	letter-spacing: .04em;
}
.ifs-similar-criteria-form {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 9px 12px;
	margin-bottom: 10px;
	border: 1px solid #d9e3ec;
	border-radius: 10px;
	background: #fff;
}
.ifs-similar-criteria-title {
	min-width: 154px;
}
.ifs-similar-criteria-title strong,
.ifs-similar-criteria-title span {
	display: block;
}
.ifs-similar-criteria-title strong {
	font-size: 12px;
	color: #102f52;
}
.ifs-similar-criteria-title span {
	margin-top: 1px;
	font-size: 10px;
	color: #7a8794;
}
.ifs-similar-criteria-row {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
}
.ifs-similar-criterion {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 5px 8px;
	border: 1px solid #dbe4ec;
	border-radius: 7px;
	background: #f8fafc;
	font-size: 11px;
	font-weight: 700;
	color: #22384d;
	cursor: pointer;
}
.ifs-similar-criterion:has(input:checked) {
	border-color: #8fc8a7;
	background: #edf8f1;
	color: #176a3a;
}
.ifs-similar-criterion input {
	margin: 0;
}
.ifs-similar-apply {
	margin-left: auto;
	padding: 6px 12px;
	border: 0;
	border-radius: 7px;
	background: #0b66a5;
	color: #fff;
	font-size: 11px;
	font-weight: 800;
	cursor: pointer;
}
.ifs-similar-results-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 14px;
	margin: 10px 0 7px;
}
.ifs-similar-results-head strong {
	display: block;
	margin-top: 2px;
	font-size: 16px;
	color: #102f52;
}
.ifs-similar-results-head p {
	margin: 0;
	font-size: 11px;
	color: #687686;
	text-align: right;
}
@media (max-width: 980px) {
	.ifs-similar-selected-product {
		grid-template-columns: 96px minmax(0, 1fr);
	}
	.ifs-similar-selected-image {
		width: 96px;
		height: 82px;
	}
	.ifs-similar-selected-product > .ifs-similar-availability {
		grid-column: 1 / -1;
		justify-self: start;
	}
	.ifs-similar-criteria-form {
		align-items: flex-start;
		flex-direction: column;
	}
	.ifs-similar-criteria-title {
		min-width: 0;
	}
	.ifs-similar-criteria-row {
		width: 100%;
	}
	.ifs-similar-apply {
		margin-left: 0;
	}
}


/* v0.13.76 — Collection action-area visual cleanup only */
.ifs-collection-action-button,
.ifs-collection-similar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 5px 9px;
	border: 1px solid #b9d6c5;
	border-radius: 7px;
	background: #f2fbf5;
	color: #176a3a !important;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	text-decoration: none !important;
	white-space: nowrap;
	box-sizing: border-box;
}
.ifs-collection-action-button:hover,
.ifs-collection-similar:hover {
	background: #e7f6ec;
	border-color: #8fc8a7;
	color: #125a31 !important;
}
.ifs-collection-table td:last-child,
.ifs-collection-table th:last-child {
	white-space: nowrap;
}
.ifs-collection-table td {
	overflow: hidden;
}
.ifs-collection-table td:nth-last-child(2) {
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 94px;
}
.ifs-collection-table td:last-child {
	overflow: visible;
}
.ifs-collection-row-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	flex-wrap: nowrap;
}


/* v0.13.77 — Product Foundation Commercial Data row */
.ifs-foundation-commercial-row {
	margin: 14px 0 16px;
	padding: 12px 14px;
	border: 1px solid #dce6ef;
	border-radius: 10px;
	background: #f9fbfd;
}
.ifs-foundation-commercial-head {
	display: flex;
	align-items: baseline;
	gap: 10px;
	margin-bottom: 10px;
}
.ifs-foundation-commercial-head h3 {
	margin: 0;
	font-size: 15px;
	color: #12385f;
}
.ifs-foundation-commercial-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
}
.ifs-foundation-commercial-grid label {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.ifs-foundation-commercial-grid label > span {
	font-size: 11px;
	font-weight: 700;
	color: #334e68;
}
.ifs-foundation-commercial-grid input,
.ifs-foundation-commercial-grid select {
	width: 100%;
	min-height: 38px;
	padding: 7px 9px;
	border: 1px solid #cfd9e3;
	border-radius: 7px;
	background: #fff;
	color: #17324d;
	font-size: 13px;
	box-sizing: border-box;
}
.ifs-foundation-commercial-grid input:focus,
.ifs-foundation-commercial-grid select:focus {
	border-color: #67a4d2;
	outline: none;
	box-shadow: 0 0 0 2px rgba(11,102,165,.08);
}
@media (max-width: 900px) {
	.ifs-foundation-commercial-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 560px) {
	.ifs-foundation-commercial-grid {
		grid-template-columns: 1fr;
	}
}


/* v0.13.78 — Product Intelligence Record > Commercial */
.ifs-pir-commercial-card,
.ifs-pir-commercial-history {
	margin-bottom:14px;
	padding:16px;
	border:1px solid #dce6ef;
	border-radius:12px;
	background:#fff;
}
.ifs-pir-commercial-head,
.ifs-pir-commercial-history-head {
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:14px;
	margin-bottom:13px;
}
.ifs-pir-commercial-head h3,
.ifs-pir-commercial-history-head h3 {
	margin:2px 0 3px;
	font-size:17px;
	color:#0d2948;
}
.ifs-pir-commercial-head p:last-child {
	margin:0;
	color:#6f8091;
	font-size:11px;
}
.ifs-pir-commercial-current,
.ifs-pir-commercial-edit-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:10px;
}
.ifs-pir-commercial-current>div {
	padding:12px 14px;
	border:1px solid #e0e7ee;
	border-radius:9px;
	background:#f9fbfd;
}
.ifs-pir-commercial-current span,
.ifs-pir-commercial-edit-grid label>span,
.ifs-pir-commercial-note>span {
	display:block;
	margin-bottom:4px;
	font-size:10px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.04em;
	color:#687b8d;
}
.ifs-pir-commercial-current strong {
	display:block;
	font-size:16px;
	color:#102f52;
}
.ifs-pir-commercial-editor {
	margin-top:14px;
	border-top:1px solid #e2e8ee;
	padding-top:12px;
}
.ifs-pir-commercial-editor summary {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	padding:7px 11px;
	border:1px solid #9cccb0;
	border-radius:7px;
	background:#eef9f2;
	color:#176a3a;
	font-size:11px;
	font-weight:800;
	cursor:pointer;
	list-style:none;
}
.ifs-pir-commercial-editor summary::-webkit-details-marker { display:none; }
.ifs-pir-commercial-edit-form { margin-top:12px; }
.ifs-pir-commercial-edit-grid input,
.ifs-pir-commercial-edit-grid select,
.ifs-pir-commercial-note textarea {
	width:100%;
	box-sizing:border-box;
	padding:8px 9px;
	border:1px solid #cfd9e3;
	border-radius:7px;
	background:#fff;
	color:#17324d;
	font-size:12px;
}
.ifs-pir-commercial-note { display:block; margin-top:12px; }
.ifs-pir-commercial-note small {
	display:block;
	margin-top:5px;
	color:#758595;
	font-size:10px;
}
.ifs-pir-commercial-form-actions { margin-top:10px; }
.ifs-pir-commercial-save {
	padding:7px 11px;
	border:1px solid #087940;
	border-radius:7px;
	background:#128349;
	color:#fff;
	font-size:11px;
	font-weight:800;
	cursor:pointer;
}
.ifs-pir-commercial-history-head>span {
	padding:4px 8px;
	border-radius:999px;
	background:#f2f5f8;
	font-size:10px;
	font-weight:700;
	color:#627588;
}
.ifs-pir-commercial-history-list { display:grid; gap:8px; }
.ifs-pir-commercial-history-entry {
	padding:11px 12px;
	border:1px solid #e0e7ee;
	border-radius:9px;
	background:#fbfcfd;
}
.ifs-pir-commercial-history-meta {
	display:flex;
	justify-content:space-between;
	gap:12px;
	margin-bottom:6px;
	font-size:10px;
	color:#778998;
}
.ifs-pir-commercial-change-route {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:7px;
	font-size:13px;
}
.ifs-pir-commercial-change-route span { color:#687b8c; }
.ifs-pir-commercial-change-route b { color:#93a4b2; }
.ifs-pir-commercial-change-route strong { color:#0d2948; }
.ifs-pir-commercial-history-note {
	margin:6px 0 0;
	color:#485d70;
	font-size:11px;
}
@media(max-width:900px){
	.ifs-pir-commercial-current,
	.ifs-pir-commercial-edit-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px){
	.ifs-pir-commercial-current,
	.ifs-pir-commercial-edit-grid { grid-template-columns:1fr; }
	.ifs-pir-commercial-head,
	.ifs-pir-commercial-history-head { flex-direction:column; }
}


/* v0.13.79 — Commercial empty-state guidance */
.ifs-pir-commercial-empty-note {
	display:flex;
	flex-direction:column;
	gap:3px;
	margin:0 0 10px;
	padding:10px 12px;
	border:1px solid #efd58a;
	border-radius:8px;
	background:#fff9e8;
	color:#6e5400;
}
.ifs-pir-commercial-empty-note strong {
	font-size:11px;
}
.ifs-pir-commercial-empty-note span {
	font-size:10px;
	color:#7d6a2a;
}


/* v0.13.81 — legacy commercial recovery and explicit Foundation edit */
.ifs-pir-commercial-empty-note {
	display:flex;
	flex-direction:row;
	align-items:center;
	justify-content:space-between;
	gap:14px;
}
.ifs-pir-commercial-empty-note > div {
	display:flex;
	flex-direction:column;
	gap:3px;
}
.ifs-pir-commercial-empty-note > a {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	flex:0 0 auto;
	padding:6px 10px;
	border:1px solid #d5b24e;
	border-radius:7px;
	background:#fff;
	color:#735900;
	font-size:10px;
	font-weight:800;
	text-decoration:none;
	white-space:nowrap;
}
@media(max-width:700px){
	.ifs-pir-commercial-empty-note {
		flex-direction:column;
		align-items:flex-start;
	}
}


/* v0.13.83 — Product Specifications Commercial authoritative owner */
.ifs-spec-commercial-panel[hidden] { display:none !important; }

.ifs-spec-commercial-active .acf-field:not(.ifs-spec-commercial-panel .acf-field) {
	display:none !important;
}
.ifs-spec-commercial-active .ifs-spec-commercial-panel {
	display:block !important;
}

.ifs-spec-commercial-card {
	margin:12px 0;
	padding:14px;
	border:1px solid #d8e4ed;
	border-radius:10px;
	background:#fbfcfd;
}
.ifs-spec-commercial-head {
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:14px;
	margin-bottom:12px;
}
.ifs-spec-commercial-head h2 {
	margin:2px 0 4px;
	font-size:17px;
	color:#0d2948;
}
.ifs-spec-commercial-head p:last-child {
	margin:0;
	color:#6d8091;
	font-size:11px;
}
.ifs-spec-commercial-grid {
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:10px;
}
.ifs-spec-commercial-grid label,
.ifs-spec-commercial-note {
	display:flex;
	flex-direction:column;
	gap:5px;
}
.ifs-spec-commercial-grid label>span,
.ifs-spec-commercial-note>span {
	font-size:10px;
	font-weight:800;
	text-transform:uppercase;
	letter-spacing:.04em;
	color:#607488;
}
.ifs-spec-commercial-grid input,
.ifs-spec-commercial-grid select,
.ifs-spec-commercial-note textarea {
	width:100%;
	box-sizing:border-box;
	border:1px solid #cdd9e3;
	border-radius:7px;
	background:#fff;
	padding:8px 9px;
	color:#17324d;
	font-size:12px;
}
.ifs-spec-commercial-note {
	margin-top:12px;
}
.ifs-spec-commercial-note small {
	color:#788a99;
	font-size:10px;
}
.ifs-spec-commercial-current {
	display:flex;
	align-items:center;
	gap:8px;
	margin-top:12px;
	padding:8px 10px;
	border-radius:8px;
	background:#f0f6fa;
	font-size:11px;
	color:#51697d;
}
.ifs-spec-commercial-current strong {
	color:#173a5e;
}
.ifs-spec-commercial-history {
	margin-top:12px;
	border-top:1px solid #e0e8ef;
	padding-top:10px;
}
.ifs-spec-commercial-history summary {
	cursor:pointer;
	font-size:11px;
	font-weight:800;
	color:#315875;
}
.ifs-spec-commercial-history article {
	margin-top:7px;
	padding:8px 10px;
	border:1px solid #e1e8ee;
	border-radius:7px;
	background:#fff;
}
.ifs-spec-commercial-history article strong,
.ifs-spec-commercial-history article span {
	display:inline-block;
	margin-right:8px;
	font-size:10px;
}
.ifs-spec-commercial-history article p {
	margin:4px 0 0;
	font-size:10px;
	color:#667b8e;
}

/* Collection current cost column */
.ifs-collection-cost-cell {
	min-width:88px;
}
.ifs-collection-cost {
	display:flex;
	flex-direction:column;
	gap:2px;
	white-space:nowrap;
}
.ifs-collection-cost strong {
	font-size:11px;
	color:#0d2948;
}
.ifs-collection-cost small {
	font-size:9px;
	color:#6a7e90;
}
.ifs-collection-cost.is-empty {
	color:#9aa8b4;
}

@media(max-width:900px){
	.ifs-spec-commercial-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:560px){
	.ifs-spec-commercial-grid { grid-template-columns:1fr; }
	.ifs-spec-commercial-head { flex-direction:column; }
}


/* v0.13.84 — Supplier Safe Delete clarity */
.ifs-inline-supplier-delete {
	scroll-margin-top: 90px;
}
.ifs-supplier-result-row:target {
	outline: 2px solid rgba(184, 44, 44, .18);
	outline-offset: 2px;
}
.ifs-inline-supplier-delete-copy p strong {
	white-space: nowrap;
}


/* v0.13.85 — Role-aware common Dashboard */
.ifs-master-data-dashboard-entry {
	display:flex;
	flex-direction:column;
	align-items:flex-start;
	gap:6px;
	min-width:280px;
	max-width:360px;
	padding:14px 16px;
	border:1px solid #cfe5d7;
	border-radius:12px;
	background:#f4fbf6;
}
.ifs-master-data-dashboard-entry strong {
	font-size:15px;
	color:#123c2a;
}
.ifs-master-data-dashboard-entry small {
	font-size:10px;
	line-height:1.45;
	color:#657a6f;
}
.ifs-master-data-dashboard-entry a {
	display:inline-flex;
	align-items:center;
	justify-content:center;
	margin-top:2px;
	padding:7px 11px;
	border-radius:7px;
	background:#118346;
	color:#fff;
	font-size:11px;
	font-weight:800;
	text-decoration:none;
}
.ifs-master-data-dashboard-badge {
	padding:3px 7px;
	border-radius:999px;
	background:#dff2e5;
	color:#176b3b;
	font-size:9px;
	font-weight:800;
	letter-spacing:.05em;
}


/* v0.13.88 — Master Data Center / Customer Master */
.ifs-master-data-tabs{
	display:flex;
	gap:8px;
	margin:0 0 12px;
	padding:6px;
	border:1px solid #d8e5dc;
	border-radius:10px;
	background:#f8fbf9;
	width:max-content;
}
.ifs-master-data-tabs a{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:110px;
	padding:8px 14px;
	border-radius:7px;
	text-decoration:none;
	font-weight:800;
	font-size:11px;
	color:#36576a;
}
.ifs-master-data-tabs a.is-active{
	background:#118346;
	color:#fff;
}
.ifs-customer-master-hero,
.ifs-customer-record-head{
	display:flex;
	justify-content:space-between;
	gap:22px;
	align-items:center;
	padding:20px 22px;
	border:1px solid #d8e4ed;
	border-radius:12px;
	background:#fff;
	margin-bottom:12px;
}
.ifs-customer-master-hero h1,
.ifs-customer-record-head h1{margin:4px 0 6px;font-size:28px;color:#0b2949;}
.ifs-customer-master-hero p,
.ifs-customer-record-head p{margin:0;color:#63788a;}
.ifs-customer-search{min-width:480px;}
.ifs-customer-search label{display:block;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;}
.ifs-customer-search>div{display:flex;gap:7px;}
.ifs-customer-search input{flex:1;border:1px solid #cad8e3;border-radius:8px;padding:9px 10px;}
.ifs-customer-search button,
.ifs-customer-search a,
.ifs-customer-form-actions button{
	border:0;border-radius:7px;padding:9px 13px;font-weight:800;font-size:11px;text-decoration:none;cursor:pointer;
}
.ifs-customer-search button{background:#164f78;color:#fff;}
.ifs-customer-search a,.ifs-customer-form-actions button{background:#118346;color:#fff;}
.ifs-customer-list-card,
.ifs-customer-view-card,
.ifs-customer-history-card,
.ifs-customer-form{
	border:1px solid #d8e4ed;border-radius:12px;background:#fff;padding:14px;margin-bottom:12px;
}
.ifs-customer-list-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;}
.ifs-customer-list-head h2{margin:2px 0;font-size:22px;color:#0b2949;}
.ifs-customer-list-head>span{font-size:10px;background:#eef4f7;padding:5px 8px;border-radius:999px;}
.ifs-customer-row{
	display:grid;grid-template-columns:minmax(250px,1.3fr) minmax(280px,1fr) auto;
	gap:14px;align-items:center;padding:10px 12px;border:1px solid #e0e7ed;border-radius:8px;margin-bottom:7px;
}
.ifs-customer-row-main{display:flex;flex-direction:column;}
.ifs-customer-row-main strong{font-size:12px;color:#123652;}
.ifs-customer-row-main span{font-size:9px;color:#118346;font-weight:800;}
.ifs-customer-row-main small{font-size:9px;color:#7a8995;}
.ifs-customer-row-tags{display:flex;gap:5px;flex-wrap:wrap;}
.ifs-customer-row-tags span{font-size:8px;font-weight:700;background:#edf4f7;padding:4px 7px;border-radius:999px;}
.ifs-customer-row-actions{display:flex;gap:5px;align-items:center;}
.ifs-customer-row-actions form{margin:0;}
.ifs-customer-row-actions a,.ifs-customer-row-actions button{
	border:1px solid #cad8e3;background:#fff;border-radius:6px;padding:6px 8px;font-size:9px;font-weight:800;text-decoration:none;color:#17415f;cursor:pointer;
}
.ifs-customer-row-actions .is-delete{border-color:#efb7b7;color:#b42b2b;}
.ifs-customer-delete-confirm{margin:-2px 0 9px;padding:11px 13px;border:1px solid #f0caca;border-radius:8px;background:#fff8f8;}
.ifs-customer-delete-confirm form{display:flex;gap:7px;margin-top:8px;}
.ifs-customer-delete-confirm input{flex:1;border:1px solid #d8b5b5;border-radius:6px;padding:8px;}
.ifs-customer-delete-confirm button{background:#b83232;color:#fff;border:0;border-radius:6px;padding:8px 11px;font-weight:800;}
.ifs-customer-status-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;}
.ifs-customer-status-grid>div{background:#fff;border:1px solid #d8e4ed;border-radius:8px;padding:9px 11px;display:flex;justify-content:space-between;}
.ifs-customer-status-grid span{font-size:9px;font-weight:800;text-transform:uppercase;color:#607488;}
.ifs-customer-status-grid strong{font-size:14px;color:#0b2949;}
.ifs-customer-record-head>a,.ifs-customer-view-actions a,.ifs-customer-form-actions a{
	text-decoration:none;border:1px solid #cbd9e4;border-radius:7px;padding:8px 11px;font-size:10px;font-weight:800;color:#17415f;background:#fff;
}
.ifs-customer-form section{border-bottom:1px solid #e3e9ee;padding:8px 0 14px;margin-bottom:10px;}
.ifs-customer-form section:last-of-type{border-bottom:0;}
.ifs-customer-form h2{font-size:14px;color:#0b2949;margin:0 0 10px;}
.ifs-customer-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.ifs-customer-form-grid label{display:flex;flex-direction:column;gap:5px;}
.ifs-customer-form-grid label>span{font-size:9px;text-transform:uppercase;font-weight:800;color:#607488;}
.ifs-customer-form-grid input,.ifs-customer-form-grid select,.ifs-customer-form-grid textarea{
	width:100%;box-sizing:border-box;border:1px solid #cbd8e2;border-radius:7px;padding:8px 9px;font-size:11px;background:#fff;
}
.ifs-customer-form-grid textarea{min-height:70px;resize:vertical;}
.ifs-customer-form-grid .is-wide{grid-column:span 2;}
.ifs-customer-form-grid .is-check{flex-direction:row;align-items:center;padding-top:18px;}
.ifs-customer-form-grid .is-check input{width:auto;}
.ifs-customer-finance-section{background:#fffaf0;padding:12px!important;border:1px solid #efd7a2!important;border-radius:8px;}
.ifs-customer-form-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px;}
.ifs-customer-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px;}
.ifs-customer-summary-grid>div{border:1px solid #dde6ed;border-radius:8px;padding:10px;}
.ifs-customer-summary-grid span{display:block;font-size:8px;text-transform:uppercase;font-weight:800;color:#718291;}
.ifs-customer-summary-grid strong{font-size:12px;color:#0b2949;}
.ifs-customer-view-sections{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;}
.ifs-customer-view-sections article{border:1px solid #e1e8ed;border-radius:8px;padding:10px;}
.ifs-customer-view-sections h3{margin:0 0 6px;font-size:11px;color:#0b2949;}
.ifs-customer-view-sections p{margin:3px 0;font-size:10px;color:#536c7e;}
.ifs-customer-view-actions{margin-top:12px;text-align:right;}
.ifs-customer-history-card h2{font-size:16px;margin:2px 0 10px;color:#0b2949;}
.ifs-customer-history-card article{padding:8px 0;border-top:1px solid #e5eaee;}
.ifs-customer-history-card article strong{font-size:10px;margin-right:8px;}
.ifs-customer-history-card article span,.ifs-customer-history-card article p{font-size:9px;color:#758594;margin:3px 0;}
@media(max-width:1100px){
	.ifs-customer-master-hero{flex-direction:column;align-items:stretch;}
	.ifs-customer-search{min-width:0;}
	.ifs-customer-row{grid-template-columns:1fr;}
	.ifs-customer-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
	.ifs-customer-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
	.ifs-customer-view-sections,.ifs-customer-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
	.ifs-customer-form-grid,.ifs-customer-status-grid,.ifs-customer-view-sections,.ifs-customer-summary-grid{grid-template-columns:1fr;}
	.ifs-customer-form-grid .is-wide{grid-column:auto;}
	.ifs-customer-search>div{flex-wrap:wrap;}
}


/* v0.13.89 — Customer Master Document Intelligence */
.ifs-customer-import-launch{
	display:inline-flex;
	align-items:center;
	position:relative;
	background:#eef7f1;
	border:1px solid #b9dbc5;
	border-radius:7px;
	padding:9px 12px;
	font-size:10px;
	font-weight:800;
	color:#17633e;
	cursor:pointer;
}
.ifs-customer-import-launch form{margin:0;}
.ifs-customer-import-launch input[type=file]{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	opacity:0;
	cursor:pointer;
}
.ifs-customer-doc-intelligence{
	border:1px solid #cfe3d6;
	border-radius:12px;
	background:#f8fcf9;
	padding:14px;
	margin-bottom:12px;
}
.ifs-customer-doc-head{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:16px;
	margin-bottom:10px;
}
.ifs-customer-doc-head h2{margin:2px 0 5px;font-size:16px;color:#0b2949;}
.ifs-customer-doc-head p{margin:0;font-size:10px;color:#607488;max-width:850px;}
.ifs-customer-doc-upload{
	display:grid;
	grid-template-columns:minmax(260px,1fr) auto;
	gap:8px;
	align-items:end;
}
.ifs-customer-doc-upload label{display:flex;flex-direction:column;gap:5px;}
.ifs-customer-doc-upload label>span{font-size:9px;font-weight:800;text-transform:uppercase;color:#607488;}
.ifs-customer-doc-upload input[type=file]{
	border:1px solid #cbd9e2;border-radius:7px;background:#fff;padding:7px;font-size:10px;
}
.ifs-customer-doc-upload button,
.ifs-customer-import-actions button{
	border:0;border-radius:7px;background:#118346;color:#fff;padding:9px 13px;font-size:10px;font-weight:800;cursor:pointer;
}
.ifs-customer-doc-rule{
	margin:8px 0 0;font-size:9px;color:#6b7c87;
}
.ifs-customer-import-review{
	margin-top:12px;border:1px solid #c8dbe6;border-radius:10px;background:#fff;padding:12px;
}
.ifs-customer-import-review-head{
	display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px;
}
.ifs-customer-import-review-head h3{margin:2px 0;font-size:14px;color:#0b2949;}
.ifs-customer-import-review-head p{margin:0;font-size:9px;color:#74838d;}
.ifs-customer-import-review-head>span{font-size:9px;background:#eef4f7;border-radius:999px;padding:5px 8px;font-weight:800;}
.ifs-customer-import-summary{font-size:9px;background:#f7fafc;border-radius:7px;padding:8px 10px;color:#526b7c;}
.ifs-customer-import-table{display:flex;flex-direction:column;border:1px solid #e0e7ec;border-radius:8px;overflow:hidden;}
.ifs-customer-import-table>.is-head,
.ifs-customer-import-table>.is-row{
	display:grid;
	grid-template-columns:55px minmax(150px,1.15fr) minmax(120px,1fr) minmax(120px,1fr) 80px 80px;
	gap:8px;align-items:center;padding:8px 9px;
}
.ifs-customer-import-table>.is-head{
	background:#f1f6f8;font-size:8px;text-transform:uppercase;font-weight:800;color:#607488;
}
.ifs-customer-import-table>.is-row{border-top:1px solid #edf1f4;font-size:9px;}
.ifs-customer-import-table>.is-row.is-new{background:#f7fcf8;}
.ifs-customer-import-table>.is-row.is-conflict{background:#fffaf2;}
.ifs-customer-import-table>.is-row.is-match{background:#f8fafb;}
.ifs-customer-import-table strong{display:block;color:#173b55;font-size:9px;}
.ifs-customer-import-table small{display:block;color:#7d8a93;font-size:8px;margin-top:2px;}
.ifs-customer-import-table b{font-size:8px;text-transform:uppercase;}
.ifs-customer-import-actions{display:flex;justify-content:flex-end;margin-top:9px;}
.ifs-customer-import-cancel{display:flex;justify-content:flex-end;margin-top:5px;}
.ifs-customer-import-cancel button{
	border:0;background:transparent;color:#9b3131;font-size:9px;text-decoration:underline;cursor:pointer;
}
@media(max-width:1100px){
	.ifs-customer-import-table>.is-head,
	.ifs-customer-import-table>.is-row{grid-template-columns:45px 1fr 1fr;}
	.ifs-customer-import-table>.is-head span:nth-child(4),
	.ifs-customer-import-table>.is-head span:nth-child(5),
	.ifs-customer-import-table>.is-head span:nth-child(6){display:none;}
	.ifs-customer-doc-upload{grid-template-columns:1fr;}
}


/* v0.13.95 — Master Suppliers intake routes aligned with Master Customers */
.ifs-supplier-center-button.is-sheet{
	background:#eef8f1;
	color:#0a6c3f;
	border:1px solid #bcdcc9;
}
.ifs-supplier-center-button.is-database{
	background:#0b8a4b;
	color:#fff;
	border-color:#0b8a4b;
}
.ifs-supplier-database-workspace{
	margin-top:16px;
}


/* v0.13.96 — Master Data header cleanup */
.ifs-customer-list-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:40px;
	padding:0 16px;
	border:1px solid #bfd3e3;
	border-radius:8px;
	background:#fff;
	color:#123d63;
	font-weight:700;
	text-decoration:none;
	white-space:nowrap;
}
.ifs-customer-list-button:hover{
	background:#f4f8fb;
}
.ifs-supplier-directory-actions{
	display:flex;
	align-items:center;
	justify-content:flex-end;
}


/* ==========================================================================
   v0.13.97 — Unified Master Data Directory Header
   Clean two-tier layout: identity + full-width command toolbar
   ========================================================================== */

.ifs-master-directory-hero{
	display:block !important;
	padding:22px 24px 20px !important;
	min-height:0 !important;
}

.ifs-master-directory-top{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:24px;
	margin-bottom:18px;
}

.ifs-master-directory-copy{
	min-width:0;
}

.ifs-master-directory-copy .ifs-eyebrow{
	margin:0 0 7px;
}

.ifs-master-directory-copy h1{
	margin:0 0 8px !important;
	font-size:clamp(28px,2.1vw,38px);
	line-height:1.02;
	letter-spacing:-0.025em;
}

.ifs-master-directory-copy > p:last-child{
	margin:0;
	max-width:760px;
}

.ifs-master-directory-top .ifs-factory-security-badge{
	position:static !important;
	inset:auto !important;
	margin:0 !important;
	align-self:flex-start;
	flex:0 0 auto;
	white-space:nowrap;
}

.ifs-master-directory-toolbar{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:18px;
	width:100%;
	padding-top:16px;
	border-top:1px solid #e8eef3;
}

.ifs-master-directory-search{
	flex:1 1 430px;
	max-width:560px;
	min-width:300px;
	margin:0 !important;
}

.ifs-master-directory-search > label{
	display:block;
	margin:0 0 6px;
	font-size:11px;
	font-weight:800;
	letter-spacing:.045em;
	text-transform:uppercase;
	color:#173c5f;
}

.ifs-master-directory-search-row{
	display:grid;
	grid-template-columns:minmax(220px,1fr) auto;
	gap:8px;
	align-items:center;
}

.ifs-master-directory-search-row input[type="search"]{
	width:100%;
	min-width:0;
	height:42px;
	margin:0 !important;
	border-radius:8px;
}

.ifs-master-directory-actions{
	display:flex !important;
	align-items:center;
	justify-content:flex-end;
	gap:8px;
	flex:0 0 auto;
	margin:0 !important;
	position:static !important;
	inset:auto !important;
	width:auto !important;
	max-width:none !important;
}

.ifs-master-directory-actions form{
	margin:0 !important;
}

.ifs-master-directory-button{
	display:inline-flex !important;
	align-items:center;
	justify-content:center;
	height:42px !important;
	min-height:42px !important;
	padding:0 15px !important;
	margin:0 !important;
	border-radius:8px !important;
	border:1px solid transparent;
	font-size:13px;
	font-weight:800;
	line-height:1;
	text-decoration:none !important;
	white-space:nowrap;
	box-sizing:border-box;
	cursor:pointer;
}

.ifs-master-directory-button--search{
	min-width:96px;
	background:#15527d !important;
	color:#fff !important;
	border-color:#15527d !important;
}

.ifs-master-directory-button--primary{
	background:#0b8a4b !important;
	color:#fff !important;
	border-color:#0b8a4b !important;
}

.ifs-master-directory-button--soft{
	background:#eef8f1 !important;
	color:#08723f !important;
	border-color:#bcdcc9 !important;
}

.ifs-master-directory-button--list{
	background:#fff !important;
	color:#123d63 !important;
	border-color:#bfd3e3 !important;
	min-width:76px;
}

.ifs-master-directory-button:hover{
	filter:brightness(.98);
	transform:translateY(-1px);
}

.ifs-customer-import-form{
	display:inline-flex;
}

.ifs-customer-import-launch{
	position:relative;
	overflow:hidden;
}

.ifs-customer-import-launch input[type="file"]{
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	opacity:0;
	cursor:pointer;
}

.ifs-master-directory-list-menu{
	position:relative;
	margin:0 !important;
}

.ifs-master-directory-list-menu > summary{
	list-style:none;
}
.ifs-master-directory-list-menu > summary::-webkit-details-marker{
	display:none;
}

.ifs-master-directory-list-menu .ifs-supplier-list-menu-panel{
	right:0;
	left:auto;
	top:calc(100% + 8px);
	z-index:50;
}

/* Neutralize legacy supplier command positioning */
.ifs-supplier-directory-hero .ifs-supplier-center-command,
.ifs-supplier-directory-hero .ifs-supplier-directory-actions{
	position:static !important;
	inset:auto !important;
	width:auto !important;
	max-width:none !important;
	margin:0 !important;
}

/* Neutralize legacy customer search layout */
.ifs-master-directory-hero .ifs-customer-search{
	position:static !important;
	inset:auto !important;
	width:auto !important;
	max-width:560px !important;
}

/* Responsive without awkward two-line button wrapping */
@media (max-width: 1180px){
	.ifs-master-directory-toolbar{
		align-items:stretch;
		flex-direction:column;
	}
	.ifs-master-directory-search{
		width:100%;
		max-width:none;
		min-width:0;
	}
	.ifs-master-directory-actions{
		justify-content:flex-start;
		flex-wrap:wrap;
	}
}

@media (max-width: 720px){
	.ifs-master-directory-hero{
		padding:18px !important;
	}
	.ifs-master-directory-top{
		flex-direction:column;
		margin-bottom:14px;
	}
	.ifs-master-directory-search-row{
		grid-template-columns:1fr;
	}
	.ifs-master-directory-button--search{
		width:100%;
	}
	.ifs-master-directory-actions{
		display:grid !important;
		grid-template-columns:1fr;
		width:100% !important;
	}
	.ifs-master-directory-actions > *,
	.ifs-master-directory-actions form,
	.ifs-master-directory-actions label,
	.ifs-master-directory-actions a,
	.ifs-master-directory-actions details,
	.ifs-master-directory-actions summary{
		width:100%;
	}
}

/* IFS Customer Master v1 visual preview — v0.14.00. Presentation only; no state-changing logic. */
.ifs-cmv1{max-width:1500px;margin:0 auto 28px}
.ifs-cmv1-topline{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0}
.ifs-cmv1-topline h1{margin:0;font-size:32px;color:#0b2f52}.ifs-cmv1-topline p{margin:5px 0 0;color:#6a7e8e}
.ifs-cmv1-user{border:1px solid #d4e0e8;background:#fff;border-radius:9px;padding:10px 14px;font-weight:700;color:#274a66}
.ifs-cmv1-preview-note{border:1px dashed #9eb7c9;background:#f7fbfd;border-radius:9px;padding:11px 14px;margin-bottom:12px;color:#526d80;font-size:12px}
.ifs-cmv1-status{display:grid;grid-template-columns:1fr 1fr;gap:10px;border:1px solid #d7e2e9;border-radius:12px;background:#fff;padding:10px;margin-bottom:16px}
.ifs-cmv1-status>div{min-height:58px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:19px;font-weight:900}
.ifs-cmv1-status span{width:12px;height:12px;border-radius:50%;background:currentColor}
.ifs-cmv1-status .is-open{background:#eaf7ef;border:2px solid #0b8a4c;color:#0b8a4c}
.ifs-cmv1-status .is-hold{background:#fff0f0;border:2px solid #dfaaaa;color:#bf2c2c}
.ifs-cmv1-card{background:#fff;border:1px solid #d9e3ea;border-radius:13px;padding:18px;margin-bottom:16px;box-shadow:0 5px 18px rgba(21,50,73,.045)}
.ifs-cmv1-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:15px}
.ifs-cmv1-head h2{margin:0;font-size:18px;color:#0c3153}.ifs-cmv1-head p{margin:4px 0 0;color:#718493;font-size:12px}
.ifs-cmv1-head>b{font-size:10px;background:#eef5f9;border:1px solid #d2e2ec;border-radius:999px;padding:6px 9px;color:#214963}
.ifs-cmv1 label{display:block}.ifs-cmv1 label>span,.ifs-cmv1-lifecycle span,.ifs-cmv1-finance span{display:block;text-transform:uppercase;letter-spacing:.35px;font-size:10px;font-weight:800;color:#405d73;margin-bottom:6px}
.ifs-cmv1 input,.ifs-cmv1 select,.ifs-cmv1 textarea{width:100%;min-height:40px;border:1px solid #cddae3;border-radius:7px;background:#f8fafb;color:#29485f;padding:9px 10px;opacity:1}
.ifs-cmv1 textarea{min-height:78px;resize:none}
.ifs-cmv1-grid{display:grid;gap:12px}.ifs-cmv1-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.ifs-cmv1-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.ifs-cmv1-lifecycle{display:grid;grid-template-columns:1.15fr repeat(5,1fr);gap:10px}
.ifs-cmv1-lifecycle>div,.ifs-cmv1-finance>div{border:1px solid #dbe4ea;background:#f8fafb;border-radius:9px;padding:12px;min-height:78px}
.ifs-cmv1-lifecycle strong,.ifs-cmv1-finance strong{font-size:16px;color:#183f5d}.ifs-cmv1 .good{color:#0b8a4c!important}.ifs-cmv1 .bad{color:#c42e2e!important}
.ifs-cmv1-rule{margin:12px 0 0;padding:10px 12px;border:1px dashed #b8cad6;border-radius:8px;background:#f8fbfd;color:#63798a;font-size:11px}
.ifs-cmv1-contacts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ifs-cmv1-contacts article,.ifs-cmv1-addresses article,.ifs-cmv1-delivery article{border:1px solid #d6e1e8;background:#fbfcfd;border-radius:10px;padding:14px}
.ifs-cmv1-contacts h3,.ifs-cmv1-addresses h3,.ifs-cmv1-delivery h3{margin:0;font-size:14px;color:#143c5d}
.ifs-cmv1-contacts article>p{margin:3px 0 12px;color:#748797;font-size:11px}
.ifs-cmv1-contacts label{margin-top:9px}
.ifs-cmv1-add{margin-top:12px;border:1px dashed #8faec2!important;background:#f4fafc!important;color:#245a78!important;border-radius:8px!important;padding:10px 14px!important;font-weight:800!important;opacity:1!important}
.ifs-cmv1-addresses{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ifs-cmv1-addresses h3{margin-bottom:12px}
.ifs-cmv1-delivery{display:grid;grid-template-columns:1.45fr .55fr;gap:12px}
.ifs-cmv1-delivery table{width:100%;border-collapse:collapse;font-size:12px}.ifs-cmv1-delivery th,.ifs-cmv1-delivery td{border:1px solid #dce5eb;padding:9px;text-align:left}
.ifs-cmv1-delivery th{background:#f3f7fa;color:#3b5b72;text-transform:uppercase;font-size:10px;letter-spacing:.3px}.ifs-cmv1-delivery article label{margin-top:10px}
.ifs-cmv1-finance{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:14px}
.ifs-cmv1-actions{display:flex;justify-content:flex-end}.ifs-cmv1-actions a{display:inline-flex;padding:10px 16px;border:1px solid #c9d8e2;border-radius:8px;background:#fff;color:#234e6b;text-decoration:none;font-weight:800}
@media(max-width:1100px){.ifs-cmv1-grid.four,.ifs-cmv1-lifecycle,.ifs-cmv1-finance{grid-template-columns:repeat(2,minmax(0,1fr))}.ifs-cmv1-delivery{grid-template-columns:1fr}}
@media(max-width:760px){.ifs-cmv1-topline{align-items:flex-start;flex-direction:column}.ifs-cmv1-status,.ifs-cmv1-grid.four,.ifs-cmv1-grid.two,.ifs-cmv1-contacts,.ifs-cmv1-addresses,.ifs-cmv1-lifecycle,.ifs-cmv1-finance{grid-template-columns:1fr}}


/* v0.14.02 — Supplier Master Directory UX */
.ifs-supplier-directory-action-grid{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:10px;align-items:start}
.ifs-supplier-directory-action-item{min-width:0}
.ifs-supplier-directory-action-item .ifs-master-directory-button{width:100%;justify-content:center}
.ifs-supplier-directory-action-item>small{display:block;margin-top:6px;padding:0 2px;color:#6d8090;font-size:10px;line-height:1.35}
.ifs-supplier-directory-action-item>small strong{display:block;color:#2f5069;font-size:10px;margin-bottom:2px}
.ifs-supplier-routing-rule{margin-top:14px;padding:11px 13px;border:1px dashed #e1c57d;border-radius:9px;background:#fffaf0;color:#705b2c;font-size:11px;line-height:1.45}
.ifs-supplier-type-summary{margin:16px 0;padding:16px;border:1px solid #dbe5ec;border-radius:14px;background:#fff}
.ifs-supplier-type-summary>.ifs-eyebrow{margin:0 0 12px}
.ifs-supplier-type-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ifs-supplier-type-summary-card{display:flex;align-items:center;gap:12px;min-height:88px;padding:14px;border:1px solid #dbe5ec;border-radius:11px;background:#fbfcfd;color:#173a56;text-decoration:none}
.ifs-supplier-type-summary-card.is-active{border-color:#9ed0b5;background:#f1faf5}
.ifs-supplier-type-icon{font-size:22px;line-height:1}
.ifs-supplier-type-summary-card small,.ifs-supplier-type-summary-card em{display:block;font-style:normal}
.ifs-supplier-type-summary-card small{color:#6c7f8e;font-size:11px}
.ifs-supplier-type-summary-card strong{display:block;font-size:24px;line-height:1.05;margin:3px 0}
.ifs-supplier-type-summary-card em{color:#6d8090;font-size:10px}
.ifs-supplier-factory-transition-note{margin-top:12px;padding:10px 12px;border:1px solid #ead7a4;border-radius:9px;background:#fffaf0;color:#6c5a34;font-size:11px}
.ifs-supplier-table-head{align-items:center}
.ifs-supplier-table-head h2 span{font-size:.72em;color:#647988}
.ifs-supplier-sort-form label{display:flex;align-items:center;gap:8px;color:#657989;font-size:11px}
.ifs-supplier-sort-form select{min-height:38px;padding:0 32px 0 10px;border:1px solid #cddbe5;border-radius:8px;background:#fff;color:#274b65}
.ifs-supplier-table-wrap{overflow-x:auto}
.ifs-supplier-directory-table{width:100%;border-collapse:collapse;font-size:12px}
.ifs-supplier-directory-table th{padding:10px;background:#f4f7f9;border-bottom:1px solid #dce6ec;color:#5a7082;font-size:9px;letter-spacing:.45px;text-transform:uppercase;text-align:left;white-space:nowrap}
.ifs-supplier-directory-table td{padding:11px 10px;border-bottom:1px solid #e4ebf0;vertical-align:middle}
.ifs-supplier-directory-table tbody tr:hover td{background:#fbfdfe}
.ifs-supplier-code{color:#0e5f8d}
.ifs-supplier-type-pill,.ifs-supplier-status-pill{display:inline-block;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800;background:#edf5fa;color:#1f668e;white-space:nowrap}
.ifs-supplier-status-pill{background:#e9f7ef;color:#0a7d45}
.ifs-supplier-status-pill.is-on_hold{background:#fff1f1;color:#b92e2e}
.ifs-supplier-status-pill.is-archived,.ifs-supplier-status-pill.is-inactive{background:#f0f2f4;color:#667582}
.ifs-supplier-table-actions{display:flex;align-items:center;gap:6px}
.ifs-supplier-icon-action{width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cddbe5;border-radius:8px;background:#fff;color:#214d69;text-decoration:none;font-size:13px;font-weight:800;cursor:pointer;list-style:none}
.ifs-supplier-icon-action::-webkit-details-marker{display:none}
.ifs-supplier-icon-action.is-disabled{opacity:.45;cursor:not-allowed}
.ifs-supplier-more-actions{position:relative}
.ifs-supplier-more-actions>summary{list-style:none}
.ifs-supplier-more-actions-menu{position:absolute;right:0;top:36px;z-index:40;min-width:180px;padding:7px;border:1px solid #d4e0e8;border-radius:9px;background:#fff;box-shadow:0 10px 28px rgba(23,52,77,.14)}
.ifs-supplier-more-actions-menu form{margin:0}
.ifs-supplier-more-actions-menu button,.ifs-supplier-more-actions-menu a{display:block;width:100%;padding:9px 10px;border:0;border-radius:6px;background:transparent;color:#274b65;text-align:left;text-decoration:none;font:inherit;font-size:11px;cursor:pointer}
.ifs-supplier-more-actions-menu button:hover,.ifs-supplier-more-actions-menu a:hover{background:#f4f7f9}
.ifs-supplier-more-actions-menu .is-danger{color:#b52b2b}
.ifs-supplier-inline-delete-row>td{padding:0 10px 12px}
@media (max-width:1100px){.ifs-supplier-directory-action-grid,.ifs-supplier-type-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.ifs-supplier-directory-action-grid,.ifs-supplier-type-summary-grid{grid-template-columns:1fr}.ifs-supplier-table-head{align-items:flex-start}}

/* v0.14.03 Dashboard additive operational upgrade */
.ifs-dashboard-health{display:flex;align-items:center;gap:10px;min-width:220px;padding:11px 13px;border:1px solid #cfe5d7;border-radius:10px;background:#f1faf4}
.ifs-dashboard-health-icon{width:30px;height:30px;border-radius:8px;background:#64c382;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900}
.ifs-dashboard-health small{display:block;font-size:8px;font-weight:900;text-transform:uppercase;color:#65798a}.ifs-dashboard-health strong{display:block;font-size:10px;color:#165b3c;margin:2px 0}.ifs-dashboard-health span:not(.ifs-dashboard-health-icon){font-size:8px;color:#64796d}
.ifs-dashboard-master-command{margin-top:14px;padding:14px;border:1px solid #dce6ed;border-radius:12px;background:#fff}.ifs-dashboard-section-heading h2{margin:2px 0;font-size:15px;color:#173f64}.ifs-dashboard-section-heading p:last-child{font-size:9px;color:#6c7f8e;margin:0}
.ifs-dashboard-master-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:12px}.ifs-dashboard-master-card{display:grid;grid-template-columns:48px 1fr;gap:10px;padding:14px;border:1px solid #d8e3ea;border-radius:10px;text-decoration:none;color:#213f56}.ifs-dashboard-master-card.is-supplier{background:#f2faf5}.ifs-dashboard-master-card.is-factory{background:#f1f7fc}.ifs-dashboard-master-card.is-customer{background:#f6f3fb}.ifs-dashboard-master-icon{width:44px;height:44px;border-radius:9px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:22px}.ifs-dashboard-master-card h3{margin:1px 0 5px;font-size:14px;color:#173f64}.ifs-dashboard-master-card p{margin:0;font-size:9px;line-height:1.45;color:#5b7181}.ifs-dashboard-master-footer{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid rgba(0,0,0,.07);padding-top:9px;font-size:8px}.ifs-dashboard-master-footer strong{font-size:12px;color:#173f64}.ifs-dashboard-master-footer b{color:#0c639f}
.ifs-dashboard-attention{display:grid;grid-template-columns:1.1fr repeat(3,1fr);gap:8px;margin-top:10px}.ifs-dashboard-attention>*{padding:10px 12px;border:1px solid #dce6ed;border-radius:9px;background:#fff}.ifs-dashboard-attention-title{display:grid;gap:2px}.ifs-dashboard-attention-title strong{font-size:10px}.ifs-dashboard-attention-title small{font-size:7px;color:#718493}.ifs-dashboard-attention a{display:grid;gap:2px;text-decoration:none;color:#2b4c64}.ifs-dashboard-attention a b{font-size:9px}.ifs-dashboard-attention a span{font-size:7px;color:#718493}
.ifs-dashboard-announcements{margin-top:12px;padding:14px;border:1px solid #dce6ed;border-radius:12px;background:#fff}.ifs-announcements-head{display:flex;justify-content:space-between;gap:12px}.ifs-announcements-head h2{margin:2px 0;font-size:15px;color:#173f64}.ifs-announcements-head p:last-child{font-size:8px;color:#718493;margin:0}.ifs-broadcast-composer{position:relative}.ifs-broadcast-composer>summary{list-style:none;cursor:pointer;background:#173f64;color:#fff;border-radius:6px;padding:8px 10px;font-size:8px;font-weight:900}.ifs-broadcast-form{position:absolute;right:0;top:36px;z-index:50;width:330px;padding:12px;border:1px solid #d4e0e8;border-radius:9px;background:#fff;box-shadow:0 16px 36px rgba(19,50,75,.18)}.ifs-broadcast-form label{display:grid;gap:4px;margin-bottom:8px;font-size:8px;font-weight:900}.ifs-broadcast-form input,.ifs-broadcast-form textarea,.ifs-broadcast-form select{width:100%;border:1px solid #cad8e2;border-radius:6px;padding:8px;font-size:9px}.ifs-broadcast-form-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}.ifs-broadcast-form button{border:0;border-radius:6px;background:#173f64;color:#fff;padding:8px 11px;font-size:8px;font-weight:900}.ifs-broadcast-notice{margin:9px 0;padding:8px 10px;border-radius:7px;font-size:8px}.ifs-broadcast-notice.is-success{background:#edf8f1;color:#176b43}.ifs-broadcast-notice.is-error{background:#fff0f0;color:#9f3535}.ifs-announcement-list{display:grid;gap:8px;margin-top:10px}.ifs-announcement-item{display:grid;grid-template-columns:10px 1fr auto;gap:8px;padding:10px;border-radius:8px;background:#f5f9fc}.ifs-announcement-item.is-important{background:#fff8e8}.ifs-announcement-item.is-critical{background:#fff0f0}.ifs-announcement-dot{width:8px;height:8px;border-radius:50%;background:#2781c2;margin-top:3px}.ifs-announcement-item.is-important .ifs-announcement-dot{background:#d39a20}.ifs-announcement-item.is-critical .ifs-announcement-dot{background:#c44040}.ifs-announcement-item strong{font-size:9px}.ifs-announcement-item p{margin:3px 0;font-size:8px;color:#566d7d}.ifs-announcement-item small,.ifs-announcement-item em{font-size:7px;color:#738594}.ifs-announcement-item em{font-style:normal;font-weight:900;text-transform:uppercase}.ifs-announcement-empty{padding:10px;background:#f6f8fa;border-radius:8px;font-size:8px;color:#718493}
.ifs-material-guide-details{position:relative}.ifs-material-guide-details>summary{list-style:none;cursor:pointer}.ifs-material-guide-popover{position:absolute;right:0;bottom:38px;z-index:40;width:290px;padding:11px;border:1px solid #d5e0e8;border-radius:8px;background:#fff;box-shadow:0 14px 30px rgba(19,50,75,.16);display:grid;gap:6px}.ifs-material-guide-popover strong{font-size:9px}.ifs-material-guide-popover span{font-size:8px;color:#526b7e}.ifs-material-guide-popover small{font-size:7px;color:#7b8c99}
@media(max-width:1100px){.ifs-dashboard-master-grid{grid-template-columns:1fr}.ifs-dashboard-attention{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.ifs-dashboard-attention{grid-template-columns:1fr}.ifs-broadcast-form{position:fixed;left:5vw;right:5vw;top:18vh;width:90vw}}


/* v0.14.04 — Lean Master navigation and compact Master Data dashboard header */
.ifs-dashboard-shell .ifs-welcome-panel.ifs-master-data-welcome{
	grid-template-columns:132px minmax(0,1fr) auto 165px;
}
.ifs-app-nav .ifs-nav-master-supplier,
.ifs-app-nav .ifs-nav-master-supplier:visited{
	border-color:#b9d8c5;
	background:#f1f8f4;
	color:#17633e;
}
.ifs-app-nav .ifs-nav-master-factory,
.ifs-app-nav .ifs-nav-master-factory:visited{
	border-color:#bfd8ea;
	background:#f0f6fb;
	color:#174f80;
}
.ifs-app-nav .ifs-nav-master-customer,
.ifs-app-nav .ifs-nav-master-customer:visited{
	border-color:#d6ccec;
	background:#f6f3fb;
	color:#4a3490;
}
@media(max-width:900px){
	.ifs-dashboard-shell .ifs-welcome-panel.ifs-master-data-welcome{grid-template-columns:1fr;}
}


/* =========================================================
   v0.14.09 — Dashboard Visual Roadmap
   Presentation-only placeholders. No KPI/attention data logic.
   ========================================================= */

.ifs-planned-badge{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:max-content;
	padding:3px 7px;
	border:1px solid #d8e2ea;
	border-radius:999px;
	background:#f3f6f8;
	color:#71808d;
	font-size:7px;
	font-weight:900;
	letter-spacing:.07em;
	text-transform:uppercase;
	white-space:nowrap;
}

.ifs-dashboard-planned{
	position:relative;
}

.ifs-dashboard-attention{
	grid-template-columns:1.35fr repeat(4,1fr);
	align-items:stretch;
}

.ifs-dashboard-attention-title{
	position:relative;
	padding-right:52px !important;
}

.ifs-dashboard-attention-title .ifs-planned-badge{
	position:absolute;
	top:8px;
	right:8px;
}

.ifs-attention-placeholder{
	display:grid;
	grid-template-columns:1fr auto;
	grid-template-areas:"title value" "desc value";
	gap:2px 8px;
	color:#2b4c64;
	background:#fbfcfd !important;
	border-style:dashed !important;
}

.ifs-attention-placeholder b{
	grid-area:title;
	font-size:9px;
}

.ifs-attention-placeholder span{
	grid-area:desc;
	font-size:7px;
	color:#718493;
}

.ifs-attention-placeholder em{
	grid-area:value;
	align-self:center;
	font-size:15px;
	font-style:normal;
	font-weight:900;
	color:#98a5b0;
}

.ifs-announcement-roadmap{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	gap:6px;
	margin-top:10px;
	padding:8px 10px;
	border:1px dashed #d2dde6;
	border-radius:8px;
	background:#fafcfd;
	color:#687b89;
	font-size:7px;
}

.ifs-announcement-roadmap>b{
	padding:3px 6px;
	border-radius:999px;
	background:#eef4f8;
	color:#335873;
	font-size:7px;
}

.ifs-announcement-roadmap>em{
	margin-left:auto;
	font-style:normal;
	font-weight:800;
	color:#526a7a;
}

.ifs-world-clocks{
	grid-template-columns:repeat(5,minmax(0,1fr));
}

.ifs-brand-shortcut-head{
	position:relative;
	z-index:3;
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:14px;
	margin-top:16px;
	padding:10px 18px 0;
	border-top:1px solid rgba(207,220,233,.75);
}

.ifs-brand-shortcut-head strong{
	display:block;
	margin-top:2px;
	color:var(--ifs-navy);
	font-size:11px;
}

.ifs-brand-shortcut-head small{
	display:block;
	margin-top:2px;
	color:#718493;
	font-size:7px;
}

.ifs-brand-ribbon.is-planned{
	margin-top:4px;
	border-top:0;
	opacity:.82;
}

@media (max-width:1180px){
	.ifs-dashboard-attention{grid-template-columns:1fr 1fr}
	.ifs-world-clocks{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:700px){
	.ifs-dashboard-attention{grid-template-columns:1fr}
	.ifs-world-clocks{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ifs-announcement-roadmap>em{margin-left:0;width:100%}
	.ifs-brand-shortcut-head{align-items:flex-start;flex-direction:column}
}


/* v0.14.11 — automatic IFS Responsible Person */
.ifs-auto-responsible-person{
	display:flex;
	flex-direction:column;
	gap:6px;
}
.ifs-auto-responsible-value{
	display:flex;
	align-items:center;
	min-height:40px;
	padding:9px 12px;
	border:1px solid #9bcaa7;
	border-radius:8px;
	background:#f3fbf5;
	color:#176b35;
	font-size:13px;
	font-weight:800;
}
.ifs-auto-responsible-person small{
	color:#657987;
	font-size:9px;
	line-height:1.35;
}


/* v0.14.13 — Factory-derived Country of Origin */
.ifs-auto-origin{
	display:flex;
	flex-direction:column;
	gap:6px;
}
.ifs-auto-origin-value{
	display:flex;
	align-items:center;
	min-height:40px;
	padding:9px 12px;
	border:1px solid #b8ccd9;
	border-radius:8px;
	background:#f7fafc;
	color:#173f64;
	font-size:13px;
	font-weight:800;
}
.ifs-auto-origin small{
	color:#657987;
	font-size:9px;
	line-height:1.35;
}


/* v0.14.19 — complete Product Foundation summary in Product Specifications */
.ifs-context-foundation-summary{
	display:grid;
	gap:12px;
	margin-top:8px;
}
.ifs-context-summary-group{
	display:grid;
	gap:7px;
}
.ifs-context-summary-group h3{
	margin:0;
	padding-bottom:5px;
	border-bottom:1px solid #e3eaf0;
	font-size:10px;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:#17649b;
}
.ifs-context-summary-group .ifs-context-meta{
	margin:0;
}
.ifs-context-size-meta{
	grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}
@media(max-width:900px){
	.ifs-context-size-meta{
		grid-template-columns:1fr !important;
	}
}


/* v0.14.23 — Product Entry reference-only Master Data + useful missing-field review */
.ifs-reference-only-notice{
	margin:0 0 12px;
	border:1px solid #bfd8ea;
	background:#f1f8fd;
	color:#174f75;
}
.ifs-reference-only form[method="post"]{
	opacity:.78;
}
.ifs-pir-missing-toggle{
	display:inline-flex;
	align-items:center;
	gap:7px;
}
.ifs-pir-missing-count{
	padding:2px 6px;
	border-radius:999px;
	background:#fff1cf;
	color:#805b00;
	font-size:7px;
	font-style:normal;
	font-weight:900;
}
.ifs-pir-missing-overview{
	display:none;
	margin-top:12px;
	padding:12px 14px;
	border:1px dashed #d6a94b;
	border-radius:10px;
	background:#fffaf0;
}
.ifs-product-intelligence-record.show-missing-fields .ifs-pir-missing-overview{
	display:block;
}
.ifs-pir-missing-overview h3{
	margin:2px 0 8px;
	color:#6f5200;
}
.ifs-pir-missing-overview ul{
	display:grid;
	gap:6px;
	margin:0;
	padding:0;
	list-style:none;
}
.ifs-pir-missing-overview li{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:12px;
	padding:8px 10px;
	border:1px solid #ead9ad;
	border-radius:8px;
	background:#fff;
}
.ifs-pir-missing-overview li span{
	color:#9b6a00;
	font-size:8px;
	font-weight:800;
}
.ifs-collection-delete-form{
	display:inline;
	margin:0;
}
.ifs-collection-delete-form button.ifs-collection-delete{
	border:1px solid #e2aaa5;
	border-radius:7px;
	background:#fff5f4;
	color:#ad2e25;
	font:inherit;
	font-weight:800;
	cursor:pointer;
	padding:6px 8px;
}


/* v0.14.24 — Consistent reference-only VIEW action */
.ifs-reference-view-button{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-width:52px;
	min-height:30px;
	padding:5px 10px;
	border:1px solid #c8d9e8;
	border-radius:7px;
	background:#fff;
	color:#0f527f;
	font-size:9px;
	font-weight:900;
	line-height:1;
	text-decoration:none;
	letter-spacing:.02em;
}
.ifs-reference-view-button:hover{
	background:#f2f8fc;
	border-color:#9fc1da;
	color:#0b4268;
}


/* v0.14.25 — Clean Master Data reference views for Product Entry */
.ifs-reference-only .ifs-reference-hide,
.ifs-reference-only .ifs-document-intelligence-card,
.ifs-reference-only .ifs-document-intelligence,
.ifs-reference-only .ifs-supplier-document-intake,
.ifs-reference-only .ifs-master-data-audit,
.ifs-reference-only [data-master-audit],
.ifs-reference-only [data-document-intelligence]{
	display:none !important;
}

.ifs-reference-only .ifs-master-history,
.ifs-reference-only .ifs-update-history,
.ifs-reference-only .ifs-audit-history{
	display:none !important;
}

/* Product Entry reference pages should read like clean directories, not maintenance screens. */
.ifs-reference-only .ifs-master-directory-actions > a:not(.ifs-master-directory-button--list),
.ifs-reference-only .ifs-master-directory-actions > button:not(.ifs-master-directory-button--list){
	display:none !important;
}

.ifs-reference-only .ifs-reference-only-notice{
	margin-bottom:14px;
}

/* Keep record content readable and uncluttered. */
.ifs-reference-only .ifs-master-form-actions,
.ifs-reference-only .acf-actions,
.ifs-reference-only .ifs-save-actions,
.ifs-reference-only .ifs-import-actions{
	display:none !important;
}


/* v0.14.26 — stronger section starts for Supplier / Factory reference views */
.ifs-reference-only details > summary,
.ifs-reference-only .ifs-supplier-section > h2,
.ifs-reference-only .ifs-factory-section > h2{
	background:#d8e5ef !important;
	border-color:#afc7d8 !important;
	color:#173e5c !important;
	font-weight:900 !important;
}

/* Customer Master Product Entry reference view — based on approved v6 structure,
   limited to authoritative fields already present in ERP. */
.ifs-customer-reference-view{display:grid;gap:12px}
.ifs-customer-reference-summary{
	display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;
	padding:12px;border:1px solid #cddce7;border-radius:11px;background:#f4f8fb
}
.ifs-customer-reference-summary span,.ifs-customer-reference-grid span{
	display:block;margin-bottom:5px;color:#61788b;font-size:8px;font-weight:900;
	letter-spacing:.05em;text-transform:uppercase
}
.ifs-customer-reference-summary strong,.ifs-customer-reference-grid strong{
	display:block;color:#17344d;font-size:11px;line-height:1.35;word-break:break-word
}
.ifs-customer-reference-section{
	border:1px solid #d6e1e9;border-radius:11px;background:#fff;overflow:hidden
}
.ifs-customer-reference-section>h2{
	margin:0;padding:11px 14px;border-bottom:1px solid #afc7d8;
	background:#d8e5ef;color:#173e5c;font-size:13px;font-weight:900
}
.ifs-customer-reference-grid{
	display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#dde6ec
}
.ifs-customer-reference-grid>div{padding:12px 14px;background:#fff}
.ifs-customer-reference-grid .is-wide{grid-column:1/-1}
.ifs-customer-reference-addresses{
	display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px
}
.ifs-customer-reference-addresses article{
	padding:12px;border:1px solid #d9e3ea;border-radius:9px;background:#fafcfd
}
.ifs-customer-reference-addresses h3{margin:0 0 7px;color:#244b68;font-size:11px}
.ifs-customer-reference-addresses p,.ifs-customer-reference-note{
	margin:0;color:#3d5668;font-size:10px;line-height:1.55
}
.ifs-customer-reference-note{padding:12px 14px}
.ifs-customer-reference-future{
	padding:10px 12px;border:1px dashed #c6d6e0;border-radius:9px;
	background:#f7fafc;color:#657b8c;font-size:9px;line-height:1.45
}
@media(max-width:1000px){
	.ifs-customer-reference-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
	.ifs-customer-reference-grid,.ifs-customer-reference-addresses{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
	.ifs-customer-reference-summary,.ifs-customer-reference-grid,.ifs-customer-reference-addresses{grid-template-columns:1fr}
}


/* v0.14.28 — Material & Component Guide: readable, reference-only modal */
.ifs-material-guide-panel {
	width: min(1040px, calc(100vw - 40px));
	padding: 26px;
}

.ifs-material-golden-rule {
	display:grid;
	grid-template-columns:130px 1fr;
	gap:16px;
	align-items:center;
	margin:0 0 22px;
	padding:13px 15px;
	border:1px solid #b9d9cb;
	border-radius:12px;
	background:#edf8f2;
	color:#244d3a;
}
.ifs-material-golden-rule > strong {
	font-size:11px;
	font-weight:900;
	letter-spacing:.06em;
	text-transform:uppercase;
}
.ifs-material-golden-rule > span {
	font-size:12px;
	line-height:1.55;
}
.ifs-material-section { margin-top:22px; }
.ifs-material-section + .ifs-material-section {
	padding-top:22px;
	border-top:1px solid #e1e8ee;
}
.ifs-material-section-head {
	display:flex;
	align-items:flex-start;
	gap:11px;
	margin-bottom:12px;
}
.ifs-material-section-head > span {
	display:flex;
	align-items:center;
	justify-content:center;
	flex:0 0 28px;
	width:28px;
	height:28px;
	border-radius:50%;
	background:#0d67a6;
	color:#fff;
	font-size:12px;
	font-weight:900;
}
.ifs-material-section-head h3 {
	margin:0;
	color:#0c4f82;
	font-size:17px;
	line-height:1.25;
}
.ifs-material-section-head p {
	margin:3px 0 0;
	color:#6b7c8f;
	font-size:10px;
	line-height:1.45;
}
.ifs-material-family-grid {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:10px;
}
.ifs-material-family-card {
	display:grid;
	grid-template-columns:48px 1fr;
	gap:12px;
	min-height:132px;
	padding:14px;
	border:1px solid #d8e2eb;
	border-radius:12px;
	background:#fff;
}
.ifs-material-family-icon {
	display:flex;
	align-items:center;
	justify-content:center;
	width:42px;
	height:42px;
	border-radius:10px;
	background:#f2f7fb;
	color:#176ba5;
	font-size:24px;
	font-weight:900;
}
.ifs-material-family-copy h4 {
	margin:0 0 2px;
	color:#173e61;
	font-size:13px;
	line-height:1.25;
}
.ifs-material-family-spec {
	margin:0 0 9px !important;
	color:#54708a !important;
	font-size:11px !important;
	font-weight:700;
}
.ifs-material-family-copy p {
	margin:4px 0 0;
	color:#43576a;
	font-size:10px;
	line-height:1.45;
}
.ifs-material-family-copy p strong {
	color:#173e61;
	text-transform:uppercase;
	font-size:9px;
	letter-spacing:.04em;
}
.ifs-material-table-wrap {
	overflow-x:auto;
	border:1px solid #d8e2eb;
	border-radius:12px;
}
.ifs-material-table {
	width:100%;
	border-collapse:collapse;
	background:#fff;
}
.ifs-material-table th,
.ifs-material-table td {
	padding:10px 12px;
	border-bottom:1px solid #e7edf3;
	text-align:left;
	vertical-align:top;
	font-size:10px;
	line-height:1.45;
}
.ifs-material-table thead th {
	background:#174d78;
	color:#fff;
	font-size:9px;
	font-weight:900;
	letter-spacing:.04em;
	text-transform:uppercase;
}
.ifs-material-table tbody th {
	width:19%;
	color:#173e61;
	font-weight:800;
	background:#f7fafc;
}
.ifs-material-table tbody tr:last-child th,
.ifs-material-table tbody tr:last-child td { border-bottom:0; }
.ifs-material-approval-list {
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:8px;
	margin:0;
	padding:0;
	list-style:none;
	counter-reset:ifs-material-question;
}
.ifs-material-approval-list li {
	counter-increment:ifs-material-question;
	position:relative;
	min-height:68px;
	padding:12px 12px 12px 42px;
	border:1px solid #d8e2eb;
	border-radius:10px;
	background:#f9fbfd;
	color:#43576a;
	font-size:10px;
	line-height:1.45;
}
.ifs-material-approval-list li::before {
	content:counter(ifs-material-question);
	position:absolute;
	left:12px;
	top:12px;
	display:flex;
	align-items:center;
	justify-content:center;
	width:22px;
	height:22px;
	border-radius:50%;
	background:#e4f0f8;
	color:#0d5f96;
	font-weight:900;
}
.ifs-material-approval-list li strong { color:#173e61; }
.ifs-material-recording-tip {
	margin-top:16px;
	padding:13px 15px;
	border-left:4px solid #e0a32b;
	border-radius:8px;
	background:#fff8e9;
}
.ifs-material-recording-tip strong {
	display:block;
	margin-bottom:3px;
	color:#6d5010;
	font-size:10px;
	font-weight:900;
	letter-spacing:.05em;
	text-transform:uppercase;
}
.ifs-material-recording-tip p {
	margin:0;
	color:#5f512c;
	font-size:10px;
	line-height:1.5;
}
.ifs-material-reference-note {
	margin:13px 0 0;
	color:#748195;
	font-size:9px;
	line-height:1.45;
	text-align:center;
}
@media (max-width:760px) {
	.ifs-material-guide-panel { padding:18px; }
	.ifs-material-golden-rule { grid-template-columns:1fr; gap:4px; }
	.ifs-material-family-grid,
	.ifs-material-approval-list { grid-template-columns:1fr; }
	.ifs-material-family-card { min-height:0; }
}
