.msp-production-board { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; align-items:start; }
.msp-production-lane { border-top:3px solid #528dce; background:#1c1c1e; padding:14px; min-width:0; }
.msp-production-lane:nth-child(2) { border-top-color:#d0a252; }
.msp-production-lane:nth-child(3) { border-top-color:#4eb09d; }
.msp-production-lane h2 { font-size:17px; margin:0 0 14px; }
.msp-production-board-item { display:flex; flex-direction:column; gap:6px; padding:12px 0; border-bottom:1px solid #38383a; color:#f5f5f7; }
.msp-production-board-item small { color:#a1a1a6; }
.msp-entry-sheet .msp-entry-lines { grid-column:1 / -1; }
@media(max-width:800px) { .msp-production-board { grid-template-columns:1fr; } }
:root {
	--msp-bg: #000000;
	--msp-surface: #1c1c1e;
	--msp-surface-muted: #242426;
	--msp-surface-raised: #2c2c2e;
	--msp-border: #38383a;
	--msp-border-strong: #4b4b4f;
	--msp-text: #f5f5f7;
	--msp-text-muted: #a1a1a6;
	--msp-sidebar: #111113;
	--msp-sidebar-muted: #8e8e93;
	--msp-primary: #0a84ff;
	--msp-primary-dark: #409cff;
	--msp-blue: #64d2ff;
	--msp-green: #30d158;
	--msp-amber: #ffd60a;
	--msp-orange: #ff9f0a;
	--msp-red: #ff453a;
	--msp-purple: #bf5af2;
	--msp-shadow: 0 18px 48px rgba(0, 0, 0, 0.48);
	--msp-focus: rgba(10, 132, 255, 0.28);
	--msp-choice-size: 16px;
	color-scheme: dark;
	font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
	color: var(--msp-text);
	letter-spacing: 0;
}

.msp-circulator-tests {
	scroll-margin-top: 20px;
	border-top: 3px solid #2997ff;
}

.msp-circulator-test-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(150px, 0.8fr);
	gap: 1px;
	padding: 1px;
	border-bottom: 1px solid var(--msp-border);
	background: var(--msp-border);
}

.msp-circulator-test-metric,
.msp-circulator-test-state {
	display: grid;
	min-width: 0;
	gap: 2px;
	padding: 9px 11px;
	background: #202124;
}

.msp-circulator-test-metric small,
.msp-circulator-test-state small {
	color: #aeb4be;
	font-size: 11px;
	font-weight: 700;
}

.msp-circulator-test-metric strong,
.msp-circulator-test-state strong {
	color: #f7f8fa;
	font-size: 18px;
	font-variant-numeric: tabular-nums;
}

.msp-circulator-test-metric span,
.msp-circulator-test-state span {
	color: #858c98;
	font-size: 11px;
}

.msp-circulator-test-state {
	border-left: 3px solid var(--msp-text-muted);
}

.msp-circulator-test-state.is-pass {
	border-left-color: var(--msp-green);
}

.msp-circulator-test-state.is-warning {
	border-left-color: var(--msp-red);
}

.msp-circulator-test-history th,
.msp-circulator-test-history td {
	padding: 7px 9px;
	font-size: 12px;
	line-height: 1.35;
}

.msp-circulator-test-history td:last-child {
	display: flex;
	align-items: center;
	gap: 7px;
	flex-wrap: wrap;
}

.msp-circulator-reference-badge {
	display: inline-flex;
	align-items: center;
	min-height: 23px;
	padding: 2px 7px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	color: var(--msp-text-muted);
	background: var(--msp-surface-muted);
	font-size: 11px;
	font-weight: 800;
}

.msp-circulator-reference-badge.is-pass {
	border-color: rgba(48, 209, 88, 0.45);
	color: #86eda0;
	background: rgba(48, 209, 88, 0.10);
}

.msp-circulator-reference-badge.is-warning {
	border-color: rgba(255, 69, 58, 0.52);
	color: #ff8a84;
	background: rgba(255, 69, 58, 0.11);
}

.msp-circulator-reference-badge.is-draft {
	border-color: rgba(10, 132, 255, 0.48);
	color: #8bc4ff;
	background: rgba(10, 132, 255, 0.10);
}

.msp-circulator-test-matrix {
	width: 100%;
	min-width: 850px;
	border-collapse: collapse;
	table-layout: fixed;
	font-size: 13px;
	font-variant-numeric: tabular-nums;
}

.msp-circulator-test-matrix th,
.msp-circulator-test-matrix td {
	height: 38px;
	min-width: 0;
	padding: 4px 5px;
	border-right: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
	text-align: center;
}

.msp-circulator-test-matrix thead th {
	position: sticky;
	top: 0;
	z-index: 4;
	color: #eaf3ff;
	background: #292c31;
	font-size: 12px;
}

.msp-circulator-test-group-heading,
.msp-circulator-test-group-cell {
	left: 0;
	width: 108px;
	min-width: 108px;
	max-width: 108px;
}

.msp-circulator-test-path-heading,
.msp-circulator-test-path-cell {
	left: 108px;
	width: 150px;
	min-width: 150px;
	max-width: 150px;
}

.msp-circulator-test-group-heading,
.msp-circulator-test-path-heading {
	z-index: 7 !important;
	text-align: left !important;
}

.msp-circulator-test-group-cell,
.msp-circulator-test-path-cell {
	position: sticky;
	z-index: 3;
	text-align: left;
	background: #25282d;
}

.msp-circulator-test-group-cell {
	padding: 6px 8px !important;
	border-left: 3px solid #64d2ff;
	vertical-align: middle;
	background: #20242a;
}

.msp-circulator-test-group-cell.is-insertion {
	border-left-color: #74e891;
}

.msp-circulator-test-group-cell.is-isolation {
	border-left-color: #ffc264;
}

.msp-circulator-test-group-cell strong,
.msp-circulator-test-group-cell span,
.msp-circulator-test-group-cell small,
.msp-circulator-test-path-cell strong,
.msp-circulator-test-path-cell small {
	display: block;
}

.msp-circulator-test-group-cell strong {
	font-size: 13px;
}

.msp-circulator-test-group-cell span {
	margin-top: 2px;
	color: #dfeaff;
	font-size: 9px;
	font-weight: 800;
}

.msp-circulator-test-group-cell small {
	margin-top: 4px;
	color: #aeb7c4;
	font-size: 10px;
	font-weight: 700;
}

.msp-circulator-test-path-cell {
	padding: 5px 7px !important;
}

.msp-circulator-test-path-cell strong {
	color: #edf5ff;
	font-size: 12px;
}

.msp-circulator-test-path-cell small {
	margin-top: 1px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 650;
}

.msp-circulator-test-matrix thead th small {
	display: block;
	margin-top: 1px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 600;
}

.msp-circulator-test-matrix tr.is-vswr td {
	background: rgba(10, 132, 255, 0.06);
}

.msp-circulator-test-matrix tr.is-insertion td {
	background: rgba(48, 209, 88, 0.05);
}

.msp-circulator-test-matrix tr.is-isolation td {
	background: rgba(255, 159, 10, 0.05);
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-normal,
.msp-circulator-test-matrix input.is-reference-normal {
	color: #86eda0;
	background: rgba(48, 209, 88, 0.12);
	font-weight: 800;
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-normal {
	box-shadow: inset 0 0 0 1px rgba(48, 209, 88, 0.28);
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-near,
.msp-circulator-test-matrix input.is-reference-near {
	color: #ffd36a;
	background: rgba(255, 159, 10, 0.15);
	font-weight: 800;
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-deviation,
.msp-circulator-test-matrix input.is-reference-deviation {
	color: #ff918b;
	background: rgba(255, 69, 58, 0.18);
	font-weight: 900;
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-deviation {
	box-shadow: inset 0 0 0 1px rgba(255, 69, 58, 0.48);
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-missing,
.msp-circulator-test-matrix input.is-reference-missing {
	color: #747b86;
}

.msp-circulator-test-matrix .msp-circulator-test-value.is-reference-outside {
	color: #9ca2ab;
}

.msp-circulator-test-matrix input {
	width: 100%;
	min-width: 0;
	padding: 5px;
	text-align: center;
	font-size: 13px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.msp-circulator-test-matrix.is-editable input {
	border-color: rgba(10, 132, 255, 0.52);
	box-shadow: inset 0 0 0 1px rgba(10, 132, 255, 0.08);
}

.msp-circulator-test-matrix.is-editable input:not(.is-reference-normal):not(.is-reference-near):not(.is-reference-deviation) {
	background: #171d25;
}

.msp-circulator-test-matrix.is-editable input:hover {
	border-color: rgba(100, 210, 255, 0.78);
}

.msp-circulator-test-matrix.is-editable input:focus {
	border-color: var(--msp-blue);
	box-shadow: 0 0 0 2px rgba(10, 132, 255, 0.22);
}

.msp-circulator-test-matrix thead input {
	padding: 4px;
	font-size: 12px;
}

.msp-circulator-test-input-with-unit {
	position: relative;
	display: block;
}

.msp-circulator-test-input-with-unit input {
	padding-right: 40px;
}

.msp-circulator-test-input-with-unit > span {
	position: absolute;
	top: 50%;
	right: 5px;
	color: var(--msp-text-muted);
	font-size: 9px;
	font-weight: 800;
	pointer-events: none;
	transform: translateY(-50%);
}

.msp-circulator-test-value.is-reference-normal .msp-circulator-test-input-with-unit > span {
	color: #86eda0;
}

.msp-circulator-test-reading {
	display: inline-flex;
	align-items: baseline;
	justify-content: center;
	gap: 4px;
	white-space: nowrap;
}

.msp-circulator-test-reading strong {
	font-size: 13px;
	font-weight: 800;
}

.msp-circulator-test-reading small {
	color: currentColor;
	font-size: 9px;
	font-weight: 800;
}

.msp-circulator-test-live-summary {
	margin: 10px 0 0;
	padding: 9px 11px;
	border-left: 3px solid var(--msp-blue);
	color: #b8cce6;
	background: rgba(10, 132, 255, 0.08);
	font-size: 11px;
}

.msp-circulator-test-live-summary.is-warning {
	border-left-color: var(--msp-red);
	color: #ffaaa5;
	background: rgba(255, 69, 58, 0.08);
}

.msp-circulator-test-live-summary.is-near {
	border-left-color: var(--msp-orange);
	color: #ffd08a;
	background: rgba(255, 159, 10, 0.08);
}

.msp-circulator-test-live-summary.is-pass {
	border-left-color: var(--msp-green);
	color: #98efad;
	background: rgba(48, 209, 88, 0.08);
}

.msp-dialog.msp-circulator-test-dialog {
	width: min(1040px, calc(100vw - 24px));
}

.msp-circulator-test-view-dialog .msp-circulator-test-matrix-wrap {
	max-height: min(68vh, 660px);
	overflow: auto;
	border: 1px solid var(--msp-border-strong);
}

.msp-circulator-test-view-summary {
	display: grid;
	grid-template-columns: max-content max-content minmax(0, 1fr);
	align-items: center;
	justify-items: start;
	gap: 10px;
	padding: 0 0 12px;
	text-align: left;
}

.msp-circulator-test-view-summary .msp-circulator-reference-badge {
	justify-self: start;
}

.msp-circulator-test-legend {
	display: flex;
	grid-column: 1 / -1;
	align-items: center;
	justify-content: flex-start;
	gap: 12px;
	min-width: 0;
	font-size: 10px;
}

.msp-circulator-test-legend > span {
	font-weight: 800;
}

.msp-circulator-test-legend .is-normal-reference {
	color: #86eda0;
}

.msp-circulator-test-legend .is-near-reference {
	color: #ffd36a;
}

.msp-circulator-test-legend .is-reference-deviation {
	color: #ff918b;
}

.msp-circulator-test-view-summary small,
.msp-circulator-test-view-notes {
	color: var(--msp-text-muted);
}

.msp-circulator-test-view-notes {
	margin: 12px 0 0;
	white-space: normal;
}

.msp-circulator-test-list-value {
	color: #dfeaff;
	font-weight: 800;
}

.msp-circulator-test-source {
	color: #7e9ab8;
}

@media (max-width: 900px) {
	.msp-circulator-test-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-circulator-test-history td:last-child {
		align-items: flex-start;
		flex-direction: column;
	}

	.msp-circulator-test-view-summary {
		grid-template-columns: 1fr;
	}

	.msp-circulator-test-legend {
		grid-column: 1;
		align-items: flex-start;
		flex-direction: column;
		gap: 4px;
	}
}

.msp-contract-shipment-section {
	scroll-margin-top: 24px;
}

.msp-contract-fulfillment-section {
	scroll-margin-top: 24px;
}

.msp-contract-delivery-cell {
	min-width: 230px;
}

.msp-delivery-progress-panel {
	max-width: 760px;
	margin: 0 0 18px;
	padding: 14px 16px;
	border: 1px solid #3a4657;
	background: #20242b;
}

.msp-delivery-workflow-nav {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 20px;
	border-top: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
}

.msp-delivery-workflow-tab {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr) auto;
	min-width: 0;
	min-height: 58px;
	align-items: center;
	gap: 10px;
	padding: 9px 14px;
	border: 0;
	border-right: 1px solid var(--msp-border);
	color: var(--msp-text-muted);
	background: transparent;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.msp-delivery-workflow-tab:last-child {
	border-right: 0;
}

.msp-delivery-workflow-tab:hover {
	color: var(--msp-text);
	background: rgba(255, 255, 255, 0.035);
}

.msp-delivery-workflow-tab:focus-visible {
	position: relative;
	z-index: 1;
	outline: 2px solid var(--msp-blue);
	outline-offset: -2px;
}

.msp-delivery-workflow-tab.is-active,
.msp-delivery-workflow-tab[aria-selected="true"] {
	color: #f5f9ff;
	background: rgba(10, 132, 255, 0.12);
	box-shadow: inset 0 -3px 0 var(--msp-primary);
}

.msp-delivery-workflow-tab .dashicons {
	width: 20px;
	height: 20px;
	color: #8ebdf5;
	font-size: 20px;
}

.msp-delivery-workflow-tab > span:nth-child(2) {
	display: grid;
	min-width: 0;
	gap: 2px;
	font-size: 14px;
	font-weight: 700;
}

.msp-delivery-workflow-tab small {
	color: #7f8a99;
	font-size: 10px;
	font-weight: 600;
}

.msp-delivery-workflow-tab strong {
	display: inline-grid;
	min-width: 26px;
	height: 24px;
	place-items: center;
	padding: 0 6px;
	border-radius: 4px;
	color: #dbeaff;
	background: #344154;
	font-size: 12px;
}

.msp-delivery-workflow-panel {
	min-width: 0;
}

.msp-contract-shipment-section.is-enhanced .msp-delivery-workflow-panel[hidden] {
	display: none;
}

.msp-delivery-workflow-panel-header,
.msp-delivery-history-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 18px;
	padding: 6px 6px 0;
}

.msp-delivery-workflow-panel-header h3,
.msp-delivery-history-header h3 {
	margin: 0 0 4px;
	color: var(--msp-primary-dark);
	font-size: 17px;
}

.msp-delivery-workflow-panel-header p,
.msp-delivery-history-header p {
	margin: 0;
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-delivery-history-header strong {
	flex: 0 0 auto;
	color: #dceaff;
	font-size: 13px;
}

.msp-inline-empty-state {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 18px 10px;
	color: var(--msp-text-muted);
	text-align: left;
}

.msp-inline-empty-state strong {
	color: var(--msp-text);
}

.msp-delivery-progress {
	min-width: 210px;
}

.msp-delivery-progress-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 7px;
}

.msp-delivery-progress-heading strong {
	color: #f4f7fb;
	font-size: 13px;
}

.msp-delivery-progress-heading span,
.msp-delivery-progress small {
	color: #aeb8c7;
	font-size: 11px;
}

.msp-delivery-progress-track {
	display: flex;
	width: 100%;
	height: 9px;
	overflow: hidden;
	margin-bottom: 6px;
	background: #4a5260;
	border-radius: 3px;
}

.msp-delivery-progress-segment {
	display: block;
	height: 100%;
	min-width: 2px;
}

.msp-delivery-progress-segment.is-delivered {
	background: #27a66f;
}

.msp-delivery-progress-segment.is-staged {
	background: #3f8cff;
}

.msp-delivery-progress-segment.is-allocated {
	background: #79b6ff;
}

.msp-delivery-progress-segment.is-unverified {
	background: #a778e8;
}

.msp-delivery-progress-segment.is-unassigned {
	background: #596270;
}

.msp-delivery-progress.is-compact .msp-delivery-progress-heading {
	margin-bottom: 5px;
}

.msp-delivery-progress.is-compact .msp-delivery-progress-track {
	height: 7px;
	margin-bottom: 4px;
}

.msp-delivery-progress.is-compact small {
	display: block;
	white-space: nowrap;
}

.msp-fulfillment-status {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	border: 1px solid #586273;
	border-radius: 4px;
	color: #d6dbe3;
	background: #303640;
	font-size: 12px;
}

.msp-fulfillment-status.is-shipped,
.msp-fulfillment-status.is-legacy_delivered {
	border-color: #277d59;
	color: #8ce0b7;
	background: #163b2d;
}

.msp-fulfillment-status.is-staged {
	border-color: #3f8cff;
	color: #b7d5ff;
	background: #17345d;
}

.msp-fulfillment-status.is-allocated {
	border-color: #5798e5;
	color: #d1e6ff;
	background: #243c59;
}

.msp-fulfillment-status.is-legacy_unverified {
	border-color: #8e63c8;
	color: #ddc6ff;
	background: #35264b;
}

.msp-fulfillment-status.is-cancelled {
	border-color: #626b78;
	color: #b8c0cb;
	background: #2a2f37;
}

.msp-fulfillment-blockers {
	display: grid;
	gap: 6px;
	margin-top: 7px;
	max-width: 280px;
}

.msp-fulfillment-blockers > div {
	display: grid;
	gap: 2px;
	padding-left: 8px;
	border-left: 2px solid rgba(255, 159, 10, .72);
}

.msp-fulfillment-blockers a:first-child {
	color: #82bcff;
	font-weight: 700;
}

.msp-fulfillment-blockers small {
	display: block;
	color: var(--msp-muted);
	line-height: 1.4;
}

.msp-correction-count {
	color: #82bcff;
}

.msp-fulfillment-corrections {
	margin-top: 16px;
	border-top: 1px solid var(--msp-border);
}

.msp-fulfillment-corrections > summary {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 2px 10px;
	color: #9bc7ff;
	font-weight: 700;
	cursor: pointer;
}

.msp-fulfillment-corrections > summary span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 22px;
	height: 22px;
	padding: 0 6px;
	border-radius: 4px;
	color: #eef6ff;
	background: #334c6d;
	font-size: 12px;
}

.msp-fulfillment-corrections .msp-table-wrap {
	margin-top: 4px;
}

[data-history-correction-field][hidden] {
	display: none !important;
}

.msp-fulfillment-slot-table th:first-child {
	min-width: 130px;
}

.msp-fulfillment-slot-table th:nth-child(3) {
	min-width: 210px;
}

@media (max-width: 720px) {
	.msp-contract-delivery-cell {
		min-width: 205px;
	}

	.msp-delivery-progress-heading {
		align-items: flex-start;
		flex-direction: column;
		gap: 2px;
	}

	.msp-delivery-workflow-nav {
		grid-template-columns: 1fr;
	}

	.msp-delivery-workflow-tab {
		border-right: 0;
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-delivery-workflow-tab:last-child {
		border-bottom: 0;
	}

	.msp-delivery-workflow-panel-header,
	.msp-delivery-history-header {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}
}

.msp-shipment-selection-table .msp-selection-column {
	width: 44px;
	min-width: 44px;
	text-align: center;
}

.msp-shipment-selection-table tr.is-disabled {
	opacity: .58;
}

.msp-shipment-queue-table th:first-child,
.msp-shipment-queue-table td:first-child {
	position: sticky;
	left: 0;
	z-index: 2;
	background: var(--msp-surface);
}

.msp-packing-edit-table input {
	min-width: 76px;
	width: 100%;
}

.msp-packing-edit-table th:first-child,
.msp-packing-edit-table td:first-child {
	position: sticky;
	left: 0;
	z-index: 2;
	background: var(--msp-surface);
}

* {
	box-sizing: border-box;
}

html {
	max-width: 100%;
	overflow-x: hidden;
	background: var(--msp-bg);
}

body.msp-portal-body {
	max-width: 100%;
	overflow-x: hidden;
	margin: 0;
	background: var(--msp-bg);
	color: var(--msp-text);
	font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
	font-size: 14px;
	line-height: 1.55;
	letter-spacing: 0;
}

button,
input,
select,
textarea {
	font: inherit;
	letter-spacing: 0;
}

a {
	color: var(--msp-primary);
	text-decoration: none;
}

.msp-app-shell {
	display: grid;
	grid-template-columns: 236px minmax(0, 1fr);
	min-height: 100vh;
}

.msp-sidebar {
	position: fixed;
	inset: 0 auto 0 0;
	z-index: 20;
	display: flex;
	width: 236px;
	flex-direction: column;
	background: var(--msp-sidebar);
	color: #fff;
}

.msp-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 72px;
	padding: 0 22px;
	color: #fff;
}

.msp-brand:hover,
.msp-brand:focus {
	color: #fff;
}

.msp-brand-symbol {
	display: block;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	border-radius: 6px;
	object-fit: cover;
}

.msp-brand > span:last-child {
	display: flex;
	min-width: 0;
	flex-direction: column;
	line-height: 1.25;
}

.msp-brand strong {
	font-size: 16px;
	letter-spacing: 0;
}

.msp-brand small {
	color: var(--msp-sidebar-muted);
	font-size: 11px;
}

.msp-navigation {
	min-height: 0;
	flex: 1;
	overflow-y: auto;
	padding: 10px 10px 18px;
	scrollbar-color: var(--msp-border-strong) transparent;
	scrollbar-gutter: stable;
}

.msp-nav-group {
	display: grid;
	gap: 2px;
	padding: 11px 2px 13px;
}

.msp-nav-group + .msp-nav-group {
	border-top: 1px solid rgba(255, 255, 255, .07);
}

.msp-nav-group-label {
	margin: 0;
	padding: 0 13px 6px;
	color: #b7bdc8;
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0;
	line-height: 1.2;
}

.msp-nav-group.is-active-group .msp-nav-group-label {
	color: #a9cfee;
}

.msp-navigation a {
	display: flex;
	align-items: center;
	min-height: 38px;
	gap: 12px;
	padding: 0 13px;
	border-left: 3px solid transparent;
	border-radius: 4px;
	color: #c7c7cc;
	font-weight: 600;
	font-size: 15px;
	line-height: 1.4;
}

.msp-navigation a:hover,
.msp-navigation a:focus,
.msp-navigation a.is-active {
	background: var(--msp-surface);
	color: #fff;
}

.msp-navigation a.is-active {
	border-left-color: var(--msp-primary);
	background: var(--msp-surface-raised);
}

.msp-navigation .dashicons,
.msp-navigation .msp-nav-icon {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	fill: none;
	font-size: 20px;
	stroke: currentColor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 2;
}

.msp-nav-text {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-sidebar-user {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) 32px;
	align-items: center;
	gap: 9px;
	margin-top: auto;
	padding: 16px 14px;
	border-top: 1px solid var(--msp-border);
}

.msp-sidebar-user > span:nth-child(2) {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.msp-sidebar-user strong,
.msp-sidebar-user small {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-sidebar-user strong {
	font-size: 12px;
}

.msp-sidebar-user small {
	color: var(--msp-sidebar-muted);
	font-size: 10px;
}

.msp-user-avatar {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	font-weight: 800;
}

.msp-content-shell {
	grid-column: 2;
	display: flex;
	min-width: 0;
	max-width: 100%;
	min-height: 100vh;
	flex-direction: column;
	overflow-x: clip;
}

.msp-mobile-header,
.msp-mobile-navigation {
	display: none;
}

.msp-main {
	width: 100%;
	min-width: 0;
	max-width: none;
	margin: 0;
	padding: 34px 38px 56px;
	overflow-x: clip;
}

.msp-footer {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-top: auto;
	padding: 20px 38px;
	border-top: 1px solid var(--msp-border);
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-page-header {
	display: flex;
	min-width: 0;
	max-width: 100%;
	align-items: flex-end;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 24px;
	margin-bottom: 28px;
}

.msp-page-header > div {
	min-width: 0;
	max-width: 100%;
}

.msp-page-header > :first-child {
	flex: 0 1 auto;
}

.msp-page-header h1,
.msp-empty h1 {
	margin: 2px 0 4px;
	font-size: 28px;
	line-height: 1.25;
	letter-spacing: 0;
}

.msp-page-summary,
.msp-section-header p {
	margin: 0;
	color: var(--msp-text-muted);
}

.msp-asset-header-summary {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 3px 8px;
	line-height: 1.55;
}

.msp-asset-header-id {
	color: var(--msp-text-muted);
	font-family: Consolas, "SFMono-Regular", monospace;
	font-size: 11px;
	opacity: 0.78;
	white-space: nowrap;
}

.msp-asset-header-detail {
	font-size: 13px;
}

.msp-asset-header-detail::before {
	margin-right: 8px;
	color: var(--msp-border-strong);
	content: "·";
}

.msp-eyebrow {
	margin: 0;
	color: var(--msp-primary);
	font-size: 11px;
	font-weight: 800;
	text-transform: uppercase;
}

.msp-header-actions {
	display: flex;
	min-width: 0;
	max-width: 100%;
	flex: 0 1 auto;
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 8px;
}

.msp-button {
	display: inline-flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	padding: 8px 14px;
	border: 1px solid var(--msp-primary);
	border-radius: 4px;
	background: var(--msp-primary);
	color: #fff;
	cursor: pointer;
	font-weight: 700;
}

.msp-button:hover,
.msp-button:focus {
	border-color: var(--msp-primary-dark);
	background: var(--msp-primary-dark);
	color: #fff;
}

.msp-button-secondary {
	border-color: var(--msp-border-strong);
	background: var(--msp-surface);
	color: var(--msp-text);
}

.msp-button-secondary:hover,
.msp-button-secondary:focus {
	border-color: var(--msp-text-muted);
	background: var(--msp-surface-muted);
	color: var(--msp-text);
}

.msp-button-danger {
	border-color: var(--msp-red);
	background: var(--msp-red);
}

.msp-button-inventory {
	border-color: rgba(255, 159, 10, 0.72);
	background: rgba(255, 159, 10, 0.14);
	color: #ffc266;
}

.msp-button-inventory:hover,
.msp-button-inventory:focus {
	border-color: var(--msp-orange);
	background: var(--msp-orange);
	color: #111113;
}

.msp-button:disabled,
.msp-button[aria-disabled="true"],
.msp-button-disabled,
.msp-button-inventory:disabled,
.msp-button-inventory[aria-disabled="true"] {
	border-color: var(--msp-border);
	background: var(--msp-surface-muted);
	color: var(--msp-text-muted);
	cursor: not-allowed;
	opacity: .72;
	box-shadow: none;
	pointer-events: none;
}

.msp-button .dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
}

.msp-button-compact {
	min-height: 32px;
	padding: 5px 10px;
	font-size: 12px;
}

.msp-icon-button {
	display: inline-grid;
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
	place-items: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: inherit;
	cursor: pointer;
}

.msp-icon-button:hover,
.msp-icon-button:focus {
	background: rgba(255, 255, 255, 0.09);
}

.msp-record-lock-cell {
	min-width: 76px;
	white-space: nowrap;
}

.msp-record-lock-state,
.msp-record-lock-action {
	align-items: center;
	display: inline-flex;
	font-size: 12px;
	gap: 4px;
}

.msp-record-lock-state {
	color: var(--msp-text-muted);
}

.msp-record-lock-state.is-locked {
	color: #ffb340;
}

.msp-record-lock-state .dashicons,
.msp-record-lock-action .dashicons {
	font-size: 15px;
	height: 15px;
	width: 15px;
}

.msp-record-lock-form {
	display: block;
	margin: 4px 0 0;
}

.msp-record-lock-action {
	background: transparent;
	border: 0;
	color: var(--msp-accent);
	cursor: pointer;
	padding: 2px;
}

.msp-record-lock-action:hover,
.msp-record-lock-action:focus {
	color: var(--msp-text);
}

.msp-record-lock-notice {
	align-items: flex-start;
	background: rgba(255, 159, 10, 0.09);
	border: 1px solid rgba(255, 179, 64, 0.32);
	display: flex;
	gap: 10px;
	margin: 0 0 18px;
	padding: 12px 14px;
}

.msp-record-lock-notice > .dashicons {
	color: #ffb340;
	flex: 0 0 auto;
}

.msp-record-lock-notice strong {
	color: #ffd28a;
}

.msp-record-lock-notice p {
	color: var(--msp-text-muted);
	font-size: 13px;
	margin: 3px 0 0;
}

.msp-stat-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 28px;
}

.msp-dashboard-blocks {
	display: grid;
	min-width: 0;
	max-width: 100%;
	gap: 28px;
}

.msp-dashboard-blocks > .msp-stat-grid,
.msp-dashboard-blocks > .msp-system-entry {
	margin-bottom: 0;
}

.msp-dashboard-blocks > .msp-dashboard-grid {
	gap: 28px;
}

.msp-action-center-tabs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	margin-bottom: 14px;
	background: var(--msp-border);
}

.msp-action-center-tabs a {
	display: flex;
	min-width: 0;
	align-items: baseline;
	gap: 8px;
	padding: 11px 13px;
	background: var(--msp-surface-muted);
	color: var(--msp-text-muted);
}

.msp-action-center-tabs a:hover,
.msp-action-center-tabs a:focus,
.msp-action-center-tabs a.is-active {
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

.msp-action-center-tabs a.is-active {
	box-shadow: inset 0 -2px var(--msp-primary);
}

.msp-action-center-tabs strong {
	color: var(--msp-blue);
	font-size: 18px;
	font-variant-numeric: tabular-nums;
}

.msp-action-center-tabs span {
	overflow: hidden;
	font-size: 11px;
	font-weight: 700;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-action-list {
	display: grid;
	border-top: 1px solid var(--msp-border);
}

.msp-action-item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 150px auto;
	align-items: center;
	gap: 16px;
	padding: 12px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-action-item-main {
	display: grid;
	min-width: 0;
	grid-template-columns: auto minmax(0, 1fr);
	align-items: center;
	gap: 10px;
}

.msp-action-item-main a,
.msp-action-item-main small,
.msp-action-item-due small,
.msp-action-item-due strong {
	display: block;
}

.msp-action-item-main a {
	overflow: hidden;
	font-weight: 800;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-action-item-main small,
.msp-action-item-due small {
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-action-item-due strong {
	font-size: 12px;
	font-variant-numeric: tabular-nums;
}

.msp-action-item-actions {
	display: flex;
	align-items: center;
	gap: 4px;
}

.msp-action-item-actions form {
	display: inline-flex;
	margin: 0;
}

.msp-stat {
	display: flex;
	min-height: 92px;
	align-items: center;
	gap: 14px;
	padding: 16px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-stat-icon {
	display: grid;
	width: 42px;
	height: 42px;
	place-items: center;
	font-size: 22px;
}

.msp-tone-teal { background: rgba(10, 132, 255, 0.16); color: var(--msp-blue); }
.msp-tone-blue { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-tone-red { background: rgba(255, 69, 58, 0.16); color: #ff6961; }
.msp-tone-amber { background: rgba(255, 159, 10, 0.16); color: #ffb340; }

.msp-stat > div {
	display: flex;
	flex-direction: column;
}

.msp-stat strong {
	font-size: 24px;
	line-height: 1.2;
}

.msp-stat span:last-child {
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-dashboard-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.8fr);
	gap: 18px;
}

.msp-section {
	min-width: 0;
	padding: 20px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-section-wide {
	width: 100%;
	max-width: 100%;
	padding: 0;
	overflow: hidden;
}

.msp-section-wide > .msp-section-header {
	padding: 18px 20px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-section-header {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 16px;
}

.msp-section-wide > .msp-section-header {
	margin-bottom: 0;
}

.msp-section-header h2,
.msp-machine-meta h2 {
	margin: 0;
	font-size: 16px;
	line-height: 1.35;
}

.msp-section-header p {
	font-size: 12px;
}

.msp-timeline-actions {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 8px;
	flex-wrap: wrap;
}

.msp-table-wrap {
	width: 100%;
	min-width: 0;
	max-width: 100%;
	overflow-x: auto;
	overscroll-behavior-inline: contain;
	scrollbar-color: var(--msp-border-strong) var(--msp-surface);
	scrollbar-width: thin;
}

.msp-table-wrap::-webkit-scrollbar {
	width: 9px;
	height: 9px;
}

.msp-table-wrap::-webkit-scrollbar-track {
	background: var(--msp-surface);
}

.msp-table-wrap::-webkit-scrollbar-thumb {
	border: 2px solid var(--msp-surface);
	border-radius: 8px;
	background: var(--msp-border-strong);
}

.msp-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
}

.msp-table th,
.msp-table td {
	padding: 13px 12px;
	border-bottom: 1px solid var(--msp-border);
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
}

.msp-section-wide .msp-table th,
.msp-section-wide .msp-table td {
	padding-right: 20px;
	padding-left: 20px;
}

.msp-table th {
	border-bottom-color: rgba(100, 210, 255, 0.46);
	background: var(--msp-surface-raised);
	color: #f5f9ff;
	font-size: 12px;
	font-weight: 800;
}

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

.msp-table tbody tr:hover {
	background: var(--msp-surface-muted);
}

.msp-column-visibility-toolbar {
	display: flex;
	justify-content: flex-end;
	padding: 9px 20px;
	border-bottom: 1px solid var(--msp-border);
	background: var(--msp-surface);
}

.msp-column-visibility {
	position: relative;
	z-index: 30;
}

.msp-section-wide.msp-column-visibility-open {
	overflow: visible;
}

.msp-column-visibility-summary {
	display: inline-flex;
	min-height: 32px;
	align-items: center;
	gap: 7px;
	padding: 5px 8px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	cursor: pointer;
	font-size: 12px;
	font-weight: 750;
	list-style: none;
}

.msp-column-visibility-summary::-webkit-details-marker {
	display: none;
}

.msp-column-visibility[open] .msp-column-visibility-summary,
.msp-column-visibility-summary:hover {
	border-color: var(--msp-primary);
	color: var(--msp-primary);
}

.msp-column-visibility-count {
	min-width: 34px;
	padding-left: 7px;
	border-left: 1px solid var(--msp-border);
	color: var(--msp-text-muted);
	font-size: 10px;
	text-align: right;
}

.msp-column-visibility-menu {
	position: absolute;
	top: calc(100% + 5px);
	right: 0;
	z-index: 90;
	display: grid;
	width: max-content;
	min-width: 238px;
	max-width: min(340px, calc(100vw - 30px));
	max-height: 420px;
	overflow: auto;
	padding: 7px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 5px;
	background: var(--msp-surface-raised);
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42);
}

.msp-column-visibility-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	padding: 6px 8px 9px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-column-visibility-header strong {
	font-size: 12px;
}

.msp-column-visibility-header small {
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-column-visibility-menu > label {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 7px 8px;
	cursor: pointer;
	font-size: 11px;
	font-weight: 650;
}

.msp-column-visibility-menu > label:hover {
	background: var(--msp-surface-muted);
}

.msp-column-visibility-menu input {
	width: 15px;
	height: 15px;
	margin: 0;
	accent-color: var(--msp-primary);
}

.msp-column-visibility-footer {
	display: flex;
	min-height: 34px;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 4px;
	padding: 7px 8px 2px;
	border-top: 1px solid var(--msp-border);
}

.msp-column-visibility-status {
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-column-visibility-status.is-saved {
	color: var(--msp-green);
}

.msp-column-visibility-status.is-error {
	color: var(--msp-red);
}

.msp-column-visibility-reset {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 3px 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary);
	cursor: pointer;
	font-size: 11px;
	font-weight: 750;
}

.msp-column-visibility-reset:disabled {
	color: var(--msp-text-muted);
	cursor: default;
	opacity: 0.55;
}

.msp-table.msp-has-hidden-columns {
	min-width: 100%;
}

.msp-sticky-two-column-table {
	--msp-sticky-first-column: 140px;
	--msp-sticky-second-column: 127px;
}

.msp-machine-table { --msp-sticky-second-column: 147px; min-width: 1020px; }
.msp-power-table { --msp-sticky-second-column: 120px; min-width: 1500px; }
.msp-magnetron-table { min-width: 1260px; }
.msp-magnetron-table .msp-magnetron-runtime-column {
	width: 1%;
	min-width: 84px;
	padding-right: 8px;
	padding-left: 8px;
}

.msp-magnetron-table th.msp-magnetron-runtime-column {
	line-height: 1.35;
	white-space: normal;
}
.msp-circulator-table { --msp-sticky-second-column: 123px; min-width: 1580px; }
.msp-high-voltage-module-table { --msp-sticky-second-column: 120px; min-width: 1540px; }
.msp-generic-component-table { --msp-sticky-second-column: 150px; min-width: 1480px; }
.msp-generic-component-table th:nth-child(9),
.msp-generic-component-table td:nth-child(9) {
	width: 104px;
	min-width: 104px;
	max-width: 104px;
	padding-right: 8px;
	padding-left: 8px;
}
.msp-supplier-table { min-width: 1120px; }

.msp-sticky-two-column-table th:nth-child(1),
.msp-sticky-two-column-table td:nth-child(1):not([colspan]) {
	position: sticky;
	left: 0;
	width: var(--msp-sticky-first-column);
	min-width: var(--msp-sticky-first-column);
	max-width: var(--msp-sticky-first-column);
}

.msp-sticky-two-column-table th:nth-child(-n+2),
.msp-sticky-two-column-table td:nth-child(-n+2):not([colspan]) {
	padding-right: 8px;
	padding-left: 8px;
}

.msp-sticky-two-column-table th:nth-child(2),
.msp-sticky-two-column-table td:nth-child(2) {
	position: sticky;
	left: var(--msp-sticky-first-column);
	width: var(--msp-sticky-second-column);
	min-width: var(--msp-sticky-second-column);
	max-width: var(--msp-sticky-second-column);
	box-shadow: 12px 0 14px -14px rgba(0, 0, 0, 0.95);
}

.msp-sticky-two-column-table thead th:nth-child(-n+2) {
	z-index: 4;
	background: var(--msp-surface-raised);
}

.msp-sticky-two-column-table tbody td:nth-child(1):not([colspan]),
.msp-sticky-two-column-table tbody td:nth-child(2) {
	z-index: 2;
	overflow: hidden;
	background: var(--msp-surface);
	text-overflow: ellipsis;
}

.msp-sticky-two-column-table tbody tr:hover td:nth-child(1):not([colspan]),
.msp-sticky-two-column-table tbody tr:hover td:nth-child(2) {
	background: var(--msp-surface-muted);
}

.msp-main .msp-sticky-header-wrap {
	max-height: clamp(360px, calc(100vh - 240px), 820px);
	overflow: auto;
	overscroll-behavior: contain;
	scrollbar-gutter: stable;
}

.msp-main .msp-sticky-header-wrap > .msp-sticky-header-table > thead > tr > th {
	position: sticky;
	top: 0;
	z-index: 6;
	background: var(--msp-surface-raised);
	box-shadow: inset 0 -1px 0 rgba(100, 210, 255, 0.46);
}

.msp-main .msp-sticky-header-wrap.is-scrolled-vertically > .msp-sticky-header-table > thead > tr > th {
	box-shadow: 0 8px 14px -12px rgba(0, 0, 0, 0.95), inset 0 -1px 0 rgba(100, 210, 255, 0.56);
}

.msp-main .msp-sticky-header-wrap > .msp-sticky-two-column-table > thead > tr > th:nth-child(-n+2) {
	z-index: 8;
}

.msp-main .msp-sticky-header-wrap > .msp-sticky-two-column-table > thead > tr > th:nth-child(2) {
	box-shadow: 12px 0 14px -14px rgba(0, 0, 0, 0.95), inset 0 -1px 0 rgba(100, 210, 255, 0.46);
}

.msp-main .msp-sticky-header-wrap.is-scrolled-vertically > .msp-sticky-two-column-table > thead > tr > th:nth-child(2) {
	box-shadow: 12px 0 14px -14px rgba(0, 0, 0, 0.95), 0 8px 14px -12px rgba(0, 0, 0, 0.95), inset 0 -1px 0 rgba(100, 210, 255, 0.56);
}

.msp-machine-link {
	color: var(--msp-text);
	font-weight: 800;
}

.msp-machine-link:hover {
	color: var(--msp-primary);
}

.msp-table-primary-button {
	display: inline-flex;
	align-items: center;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary);
	font: inherit;
	font-weight: 800;
	text-align: left;
	cursor: pointer;
}

.msp-table-primary-button:hover,
.msp-table-primary-button:focus-visible,
.msp-asset-detail-link:hover,
.msp-asset-detail-link:focus-visible {
	color: var(--msp-primary-hover);
	text-decoration: underline;
}

.msp-asset-detail-link {
	display: block;
	color: var(--msp-text-muted);
}

.msp-row-action {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	color: var(--msp-text-muted);
}

.msp-row-actions {
	display: flex;
	align-items: center;
	gap: 4px;
}

.msp-status,
.msp-event-type,
.msp-visibility,
.msp-void-label {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	gap: 4px;
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.msp-status-operating,
.msp-status-installed { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-status-maintenance { background: rgba(255, 159, 10, 0.16); color: #ffb340; }
.msp-status-intent_order { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }
.msp-status-contract_signed { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-status-manufacturing,
.msp-status-testing,
.msp-status-assembly { background: rgba(10, 132, 255, 0.17); color: #64d2ff; }
.msp-status-transport_install,
.msp-status-shipped { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-status-acceptance { background: rgba(255, 214, 10, 0.16); color: #ffe347; }
.msp-status-retired,
.msp-status-archived { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }
.msp-magnetron-status-exhaust,
.msp-magnetron-status-aging,
.msp-magnetron-status-cleaning,
.msp-magnetron-status-retest { background: rgba(10, 132, 255, 0.17); color: #64d2ff; }
.msp-magnetron-status-purchase_pending { background: rgba(255, 159, 10, 0.18); color: #ffd089; }
.msp-magnetron-status-retest_complete,
.msp-magnetron-status-appearance_accepted,
.msp-magnetron-status-installed { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-magnetron-status-return_inspection { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-magnetron-status-returned { background: rgba(255, 69, 58, 0.16); color: #ff6961; }
.msp-magnetron-status-life_end { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }
.msp-power-status-manufacturing { background: rgba(10, 132, 255, 0.17); color: #64d2ff; }
.msp-power-status-aging_test { background: rgba(255, 159, 10, 0.16); color: #ffb340; }
.msp-power-status-ready { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-power-status-operating { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-power-status-maintenance { background: rgba(255, 69, 58, 0.16); color: #ff6961; }
.msp-circulator-status-manufacturing { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }
.msp-circulator-status-cold_test { background: rgba(10, 132, 255, 0.17); color: #64d2ff; }
.msp-circulator-status-hot_test { background: rgba(255, 159, 10, 0.16); color: #ffb340; }
.msp-circulator-status-installed,
.msp-circulator-status-operating { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-circulator-status-maintenance { background: rgba(255, 69, 58, 0.16); color: #ff6961; }
.msp-circulator-status-scrapped { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }
.msp-high-voltage-status-manufacturing,
.msp-high-voltage-status-testing { background: rgba(10, 132, 255, 0.17); color: #64d2ff; }
.msp-high-voltage-status-ready { background: rgba(191, 90, 242, 0.16); color: #d9a8ff; }
.msp-high-voltage-status-installed,
.msp-high-voltage-status-operating { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-high-voltage-status-maintenance { background: rgba(255, 159, 10, 0.16); color: #ffb340; }
.msp-high-voltage-status-scrapped { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }

.msp-warranty {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	padding: 3px 8px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	white-space: nowrap;
}

.msp-warranty-normal { background: rgba(48, 209, 88, 0.15); color: #63e682; }
.msp-warranty-warning { background: rgba(255, 159, 10, 0.16); color: #ffb340; }
.msp-warranty-expired { background: rgba(255, 69, 58, 0.16); color: #ff6961; }
.msp-warranty-unknown,
.msp-warranty-disabled { background: rgba(142, 142, 147, 0.18); color: #c7c7cc; }

.msp-warranty-row-warning {
	background: rgba(255, 159, 10, 0.06);
}

.msp-warranty-row-expired {
	background: rgba(255, 69, 58, 0.06);
}

.msp-table-subline {
	display: block;
	margin-top: 3px;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-asset-number-subline {
	color: #73737a;
	font-size: 10px;
	font-weight: 500;
}

.msp-tag-list {
	display: flex;
	min-width: 120px;
	flex-wrap: wrap;
	gap: 4px;
}

.msp-tag-list span {
	padding: 2px 6px;
	border: 1px solid var(--msp-tag-color, #0a84ff);
	border-radius: 4px;
	background: var(--msp-tag-color, #0a84ff);
	color: var(--msp-tag-text, #fff);
	font-size: 10px;
	font-weight: 800;
}

.msp-tag-swatch {
	display: inline-block;
	width: 12px;
	height: 12px;
	flex: 0 0 12px;
	border: 1px solid rgba(255, 255, 255, 0.34);
	border-radius: 3px;
	background: var(--msp-tag-color, #0a84ff);
}

.msp-tag-color-value {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.msp-tag-management-filter {
	flex-wrap: wrap;
}

.msp-tag-management-filter .msp-search {
	width: min(360px, 100%);
}

.msp-tag-scope-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin: -8px 0 18px;
}

.msp-tag-scope-nav a {
	display: inline-flex;
	min-height: 34px;
	align-items: center;
	gap: 8px;
	padding: 6px 10px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-surface);
	color: var(--msp-text-muted);
	font-size: 12px;
	font-weight: 700;
}

.msp-tag-scope-nav a:hover,
.msp-tag-scope-nav a:focus-visible,
.msp-tag-scope-nav a.is-active {
	border-color: var(--msp-primary);
	background: rgba(10, 132, 255, 0.12);
	color: var(--msp-text);
}

.msp-tag-scope-nav small {
	min-width: 18px;
	padding: 1px 5px;
	border-radius: 4px;
	background: var(--msp-surface-raised);
	color: var(--msp-text-muted);
	font-size: 10px;
	text-align: center;
}

.msp-tag-tree-actions {
	display: flex;
	align-items: center;
	gap: 6px;
}

.msp-tag-tree-label {
	display: flex;
	min-width: 190px;
	align-items: center;
	gap: 5px;
	padding-left: calc(var(--msp-tag-depth, 0) * 18px);
}

.msp-tag-tree-primary {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.msp-tag-tree-toggle,
.msp-tag-tree-spacer {
	display: inline-grid;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	place-items: center;
}

.msp-tag-tree-toggle {
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msp-text-muted);
	cursor: pointer;
}

.msp-tag-tree-toggle:hover,
.msp-tag-tree-toggle:focus-visible {
	color: var(--msp-primary);
}

.msp-tag-tree-toggle .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
	transition: transform 150ms ease;
}

.msp-tag-tree-toggle[aria-expanded="true"] .dashicons {
	transform: rotate(90deg);
}

.msp-tag-tree-table tr[hidden] {
	display: none;
}

.msp-tag-scope-badges {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.msp-tag-scope-badges span {
	padding: 3px 6px;
	border: 1px solid rgba(10, 132, 255, 0.34);
	border-radius: 4px;
	background: rgba(10, 132, 255, 0.1);
	color: var(--msp-text);
	font-size: 10px;
	font-weight: 700;
}

.msp-tag-merge-section {
	border-left: 3px solid #ff9f0a;
}

.msp-tag-merge-list {
	display: grid;
	gap: 8px;
}

.msp-tag-merge-list form {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 9px 10px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-surface-muted);
}

.msp-tag-merge-list form > div {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 2px;
}

.msp-tag-merge-list small {
	color: var(--msp-text-muted);
}

.msp-status-dot {
	display: inline-block;
	width: 9px;
	height: 9px;
	margin-right: 7px;
	border-radius: 50%;
	background: #8e8e93;
	box-shadow: 0 0 0 3px rgba(142, 142, 147, 0.14);
}

.msp-status-dot.is-active {
	background: #30d158;
	box-shadow: 0 0 0 3px rgba(48, 209, 88, 0.15);
}

.msp-supplier-table td {
	vertical-align: top;
}

.msp-supplier-table code {
	display: block;
	margin-top: 5px;
}

.msp-org-table td {
	vertical-align: top;
}

.msp-section-wide .msp-org-table th.msp-org-status-column,
.msp-section-wide .msp-org-table td.msp-org-status-cell {
	position: sticky;
	left: 0;
	width: 48px;
	min-width: 48px;
	max-width: 48px;
	padding-right: 8px;
	padding-left: 8px;
	text-align: center;
}

.msp-org-table th:nth-child(2),
.msp-org-table td:nth-child(2) {
	position: sticky;
	left: 48px;
	min-width: 230px;
	box-shadow: 1px 0 0 var(--msp-border);
}

.msp-org-table th:first-child,
.msp-org-table th:nth-child(2) {
	z-index: 2;
}

.msp-org-table td:first-child,
.msp-org-table td:nth-child(2) {
	z-index: 1;
	background: var(--msp-surface);
}

.msp-org-table tbody tr:hover td:first-child,
.msp-org-table tbody tr:hover td:nth-child(2) {
	background: var(--msp-surface-muted);
}

.msp-customer-edit-link {
	display: block;
	width: fit-content;
	max-width: 100%;
	color: var(--msp-text);
	font-weight: 800;
	text-decoration: underline;
	text-decoration-color: var(--msp-primary);
	text-underline-offset: 3px;
}

.msp-customer-edit-link:hover,
.msp-customer-edit-link:focus {
	color: var(--msp-primary);
}

.msp-customer-status-light {
	display: inline-block;
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #8e8e93;
	box-shadow: 0 0 0 3px rgba(142, 142, 147, 0.14);
}

.msp-customer-status-light.is-active {
	background: #30d158;
	box-shadow: 0 0 0 3px rgba(48, 209, 88, 0.15);
}

.msp-org-table td code {
	display: inline-block;
	margin-top: 5px;
}

.msp-customer-filter .msp-search {
	width: min(460px, 100%);
}

.msp-table-pagination {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 12px 20px;
	border-bottom: 1px solid var(--msp-border);
	background: var(--msp-surface-muted);
}

.msp-table-pagination p {
	margin: 0;
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-pagination-links {
	display: flex;
	align-items: center;
	gap: 5px;
}

.msp-sales-finance-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 16px;
}

#msp-sales-finance-detail {
	margin-top: 20px;
	scroll-margin-top: 90px;
}

#msp-sales-finance-detail > h2 {
	font-size: 18px;
	margin: 0 0 10px;
}

.msp-pagination-direction,
.msp-pagination-page {
	display: inline-flex;
	min-width: 32px;
	height: 32px;
	align-items: center;
	justify-content: center;
	gap: 4px;
	padding: 0 9px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface);
	color: var(--msp-text);
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
}

.msp-pagination-direction .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-pagination-direction:hover,
.msp-pagination-page:hover,
.msp-pagination-page.is-current {
	border-color: var(--msp-primary);
	color: var(--msp-primary);
}

.msp-pagination-page.is-current {
	background: rgba(10, 132, 255, 0.12);
}

.msp-pagination-direction.is-disabled {
	cursor: default;
	opacity: 0.42;
}

.msp-pagination-ellipsis {
	min-width: 20px;
	color: var(--msp-text-muted);
	text-align: center;
}

.msp-activity-list {
	display: grid;
}

.msp-activity {
	display: grid;
	grid-template-columns: 10px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	padding: 12px 0;
	border-bottom: 1px solid var(--msp-border);
	color: var(--msp-text);
}

.msp-activity:last-child {
	border-bottom: 0;
}

.msp-activity span:last-child {
	display: flex;
	min-width: 0;
	flex-direction: column;
}

.msp-activity strong {
	overflow: hidden;
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-activity small {
	color: var(--msp-text-muted);
}

.msp-event-dot,
.msp-timeline-marker {
	display: block;
	background: var(--msp-blue);
}

.msp-event-dot {
	width: 8px;
	height: 8px;
	margin-top: 6px;
	border-radius: 50%;
}

.msp-event-fault { background: var(--msp-red); }
.msp-event-magnetron { background: var(--msp-amber); }
.msp-event-maintenance { background: var(--msp-primary); }
.msp-event-special { background: var(--msp-purple); }
.msp-event-shipment { background: #64d2ff; }

.msp-filter-bar {
	display: flex;
	min-width: 0;
	max-width: 100%;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 16px;
}

.msp-filter-bar > * {
	max-width: 100%;
}

.msp-filter-page-size {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--msp-text-muted);
	font-size: 12px;
	font-weight: 700;
}

.msp-filter-page-size select {
	min-width: 88px;
}

.msp-filter-date-range {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	color: var(--msp-text-muted);
	font-size: 12px;
	font-weight: 700;
}

.msp-filter-date-range input {
	width: 138px;
	min-height: 39px;
	padding: 8px 10px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	color-scheme: dark;
}

.msp-filter-date-separator {
	font-weight: 500;
}

.msp-contract-bulk-toolbar {
	display: grid;
	grid-template-columns: minmax(150px, .7fr) minmax(420px, 2fr) auto;
	align-items: center;
	gap: 16px;
	padding: 12px 20px;
	border-bottom: 1px solid var(--msp-border);
	background: var(--msp-surface-raised);
}

.msp-contract-bulk-summary,
.msp-contract-bulk-summary strong,
.msp-contract-bulk-summary small {
	display: block;
}

.msp-contract-bulk-summary strong {
	color: var(--msp-blue);
	font-size: 14px;
}

.msp-contract-bulk-summary small {
	margin-top: 3px;
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-contract-bulk-metrics {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1px;
	background: var(--msp-border);
}

.msp-contract-bulk-metrics > div {
	min-width: 0;
	padding: 7px 10px;
	background: var(--msp-surface-raised);
	text-align: right;
}

.msp-contract-bulk-metrics span,
.msp-contract-bulk-metrics strong {
	display: block;
	text-align: right;
}

.msp-contract-bulk-metrics span {
	color: var(--msp-text-muted);
	font-size: 9px;
	font-weight: 700;
}

.msp-contract-bulk-metrics strong {
	margin-top: 2px;
	color: var(--msp-text);
	font-size: 12px;
	font-variant-numeric: tabular-nums;
	text-align: right;
}

.msp-contract-bulk-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
}

.msp-contract-bulk-actions .is-active {
	border-color: var(--msp-blue);
	color: var(--msp-blue);
}

.msp-contract-select-column {
	width: 42px;
	min-width: 42px;
	max-width: 42px;
	padding-right: 8px !important;
	padding-left: 12px !important;
	text-align: center;
}

.msp-contract-select-column input {
	width: 16px;
	height: 16px;
	accent-color: var(--msp-blue);
}

.msp-saved-view-control {
	display: inline-flex;
	min-width: 0;
	align-items: center;
	gap: 4px;
}

.msp-saved-view-control select {
	width: auto;
	min-width: 126px;
	max-width: 220px;
}

.msp-saved-view-control .msp-icon-button {
	width: 36px;
	height: 36px;
	flex: 0 0 36px;
}

.msp-saved-view-control.is-active select {
	border-color: var(--msp-blue);
}

.msp-saved-view-status {
	min-width: 42px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 700;
	white-space: nowrap;
}

.msp-saved-view-control.is-active .msp-saved-view-status {
	color: var(--msp-blue);
}

.msp-saved-view-control.is-dirty .msp-saved-view-status {
	color: var(--msp-amber);
}

[data-lazy-dialog][aria-busy="true"] {
	cursor: wait;
	opacity: .62;
}

.msp-filter-tags {
	position: relative;
	min-width: 170px;
}

.msp-filter-tags summary {
	display: flex;
	min-height: 39px;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 8px 10px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	cursor: pointer;
	font-size: 12px;
	font-weight: 700;
	list-style: none;
}

.msp-filter-tags summary::-webkit-details-marker {
	display: none;
}

.msp-filter-tags[open] summary .dashicons {
	transform: rotate(180deg);
}

.msp-filter-tags-menu {
	position: absolute;
	top: calc(100% + 5px);
	left: 0;
	z-index: 80;
	display: grid;
	width: max-content;
	min-width: 230px;
	max-width: min(360px, calc(100vw - 30px));
	max-height: 320px;
	overflow: auto;
	padding: 7px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 5px;
	background: var(--msp-surface-raised);
	box-shadow: 0 14px 36px rgba(0, 0, 0, 0.42);
}

.msp-filter-tags-menu label {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 8px;
	padding: 7px 8px;
	border-radius: 3px;
	cursor: pointer;
	font-size: 11px;
	font-weight: 650;
}

.msp-filter-tags-menu label:hover {
	background: var(--msp-surface-muted);
}

.msp-filter-tags-menu input {
	width: 15px;
	height: 15px;
	margin: 0;
}

.msp-filter-tags-empty {
	padding: 8px;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-filter-bar select,
.msp-search input,
.msp-field input,
.msp-field select,
.msp-field textarea,
.msp-void-form input {
	width: 100%;
	min-height: 39px;
	padding: 8px 10px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

.msp-filter-bar select,
.msp-search input,
.msp-field input,
.msp-field select,
.msp-field textarea,
.msp-void-form input {
	color-scheme: dark;
}

body.msp-portal-body input[type="checkbox"],
body.msp-portal-body input[type="radio"] {
	box-sizing: border-box;
	width: var(--msp-choice-size);
	min-width: var(--msp-choice-size);
	max-width: var(--msp-choice-size);
	height: var(--msp-choice-size);
	min-height: var(--msp-choice-size);
	max-height: var(--msp-choice-size);
	flex: 0 0 var(--msp-choice-size);
	margin: 0;
	padding: 0;
	accent-color: var(--msp-primary);
	vertical-align: middle;
}

.msp-field.msp-switch-field,
.msp-field.msp-checkbox-field {
	display: grid;
	grid-template-columns: var(--msp-choice-size) minmax(0, 1fr);
	align-items: start;
	column-gap: 8px;
	row-gap: 4px;
}

.msp-switch-field > input,
.msp-checkbox-field > input {
	grid-column: 1;
	grid-row: 1;
	margin-top: 2px !important;
}

.msp-switch-field > span,
.msp-checkbox-field > span {
	grid-column: 2;
	grid-row: 1;
}

.msp-switch-field > small,
.msp-switch-field > .msp-field-help,
.msp-checkbox-field > small,
.msp-checkbox-field > .msp-field-help {
	grid-column: 2;
}

.msp-field input::placeholder,
.msp-field textarea::placeholder,
.msp-search input::placeholder,
.msp-void-form input::placeholder {
	color: #727277;
}

.msp-field input[type="color"] {
	padding: 4px;
	cursor: pointer;
}

.msp-search {
	position: relative;
	display: block;
	width: min(360px, 100%);
}

.msp-search .dashicons {
	position: absolute;
	top: 10px;
	left: 10px;
	color: var(--msp-text-muted);
}

.msp-search input {
	padding-left: 36px;
}

.msp-text-link,
.msp-back-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-weight: 700;
}

.msp-text-button {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 6px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary);
	font: inherit;
	font-size: 12px;
	font-weight: 700;
	cursor: pointer;
}

.msp-text-button:hover {
	color: var(--msp-text);
}

.msp-back-link {
	margin-bottom: 8px;
	font-size: 12px;
}

.msp-title-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.msp-machine-facts {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	margin-bottom: 18px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-asset-facts {
	grid-template-columns: repeat(6, minmax(0, 1fr));
}

.msp-machine-facts > div {
	display: flex;
	min-width: 0;
	min-height: 82px;
	flex-direction: column;
	justify-content: center;
	padding: 14px 18px;
	border-right: 1px solid var(--msp-border);
}

.msp-machine-facts > div:last-child {
	border-right: 0;
}

.msp-machine-facts span {
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-machine-facts strong {
	overflow-wrap: anywhere;
	font-size: 14px;
}

.msp-machine-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 260px;
	align-items: start;
	gap: 18px;
}

.msp-machine-meta {
	padding: 18px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-machine-meta dl {
	margin: 14px 0 0;
}

.msp-machine-meta dl div {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 10px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-machine-meta dl div:last-child {
	border-bottom: 0;
}

.msp-machine-meta dt {
	color: var(--msp-text-muted);
}

.msp-machine-meta dd {
	margin: 0;
	font-weight: 700;
	text-align: right;
}

.msp-machine-meta dd small {
	display: block;
	max-width: 170px;
	margin-top: 3px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 500;
	line-height: 1.45;
}

.msp-machine-meta dd small.is-late {
	color: var(--msp-red);
}

.msp-machine-meta dd small.is-early,
.msp-machine-meta dd small.is-on-time {
	color: var(--msp-green);
}

.msp-timeline {
	margin: 0;
	padding: 0;
	list-style: none;
}

.msp-timeline-item {
	position: relative;
	display: grid;
	grid-template-columns: 16px minmax(0, 1fr);
	gap: 14px;
	padding-bottom: 24px;
}

.msp-timeline-item:not(:last-child)::before {
	position: absolute;
	top: 15px;
	bottom: -2px;
	left: 7px;
	width: 2px;
	background: var(--msp-border-strong);
	content: "";
}

.msp-timeline-marker {
	position: relative;
	z-index: 1;
	width: 14px;
	height: 14px;
	margin-top: 5px;
	border: 3px solid var(--msp-surface);
	border-radius: 50%;
	box-shadow: 0 0 0 1px var(--msp-border-strong);
}

.msp-timeline-item article {
	min-width: 0;
	padding-bottom: 22px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-timeline-item:last-child article {
	padding-bottom: 0;
	border-bottom: 0;
}

.msp-timeline-item.is-void article {
	opacity: 0.66;
}

.msp-event-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
}

.msp-event-heading h3 {
	margin: 6px 0 0;
	font-size: 16px;
}

.msp-event-asset-link {
	display: inline-flex;
	align-items: baseline;
	gap: 3px;
	color: #64d2ff;
	font-weight: inherit;
	text-decoration: underline;
	text-decoration-color: rgba(100, 210, 255, 0.42);
	text-underline-offset: 3px;
}

.msp-event-asset-link:hover,
.msp-event-asset-link:focus-visible {
	color: #9ce4ff;
	text-decoration-color: currentColor;
}

.msp-event-asset-link .dashicons {
	width: 13px;
	height: 13px;
	font-size: 13px;
	line-height: 13px;
}

.msp-event-meta-line {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 9px;
	margin-top: 5px;
}

.msp-event-heading time {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: baseline;
	gap: 7px;
	font-variant-numeric: tabular-nums;
}

.msp-event-time-value {
	color: var(--msp-blue);
	font-size: 12px;
	font-weight: 650;
}

.msp-event-time-label {
	color: var(--msp-text-muted);
	font-size: 11px;
	font-weight: 500;
}

.msp-event-author {
	color: var(--msp-text-muted);
	font-size: 11px;
	font-weight: 500;
}

.msp-event-heading-actions {
	display: flex;
	flex: 0 0 auto;
	align-items: flex-end;
	flex-direction: column;
	gap: 8px;
}

.msp-event-labels {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.msp-event-type {
	background: rgba(142, 142, 147, 0.18);
	color: #c7c7cc;
}

.msp-visibility-customer {
	background: rgba(48, 209, 88, 0.15);
	color: #63e682;
}

.msp-visibility-business {
	background: rgba(255, 159, 10, 0.16);
	color: #ffb340;
}

.msp-visibility-technical {
	background: rgba(10, 132, 255, 0.17);
	color: #64d2ff;
}

.msp-void-label {
	background: rgba(255, 69, 58, 0.16);
	color: #ff6961;
}

.msp-event-content {
	margin-top: 9px;
	color: var(--msp-text);
}

.msp-event-content p {
	margin: 0 0 8px;
}

.msp-event-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	margin: 12px 0;
	background: var(--msp-border);
	border: 1px solid var(--msp-border);
}

.msp-event-details > div {
	display: grid;
	grid-template-columns: 112px minmax(0, 1fr);
	gap: 8px;
	padding: 8px 10px;
	background: var(--msp-surface-muted);
}

.msp-event-details dt {
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-event-details dd {
	margin: 0;
	font-size: 12px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.msp-magnetron-operation-card {
	display: grid;
	gap: 9px;
	margin: 10px 0;
	padding: 10px 12px;
	border: 1px solid rgba(10, 132, 255, 0.4);
	border-left: 3px solid var(--msp-blue);
	border-radius: 6px;
	background: rgba(10, 132, 255, 0.08);
}

.msp-magnetron-operation-card.is-remove {
	border-color: rgba(255, 159, 10, 0.42);
	border-left-color: var(--msp-amber);
	background: rgba(255, 159, 10, 0.08);
}

.msp-magnetron-operation-card.is-inherited {
	border-style: dashed;
}

.msp-magnetron-operation-card > header {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}

.msp-magnetron-operation-card > header .dashicons {
	flex: 0 0 20px;
	color: var(--msp-blue);
}

.msp-magnetron-operation-card > header div {
	display: grid;
	min-width: 0;
	gap: 2px;
}

.msp-magnetron-operation-card > header small,
.msp-magnetron-operation-metrics small {
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-magnetron-operation-card > header strong {
	font-size: 13px;
	overflow-wrap: anywhere;
}

.msp-magnetron-operation-metrics {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
	gap: 6px;
}

.msp-magnetron-operation-metrics > span {
	display: grid;
	gap: 2px;
	padding: 7px 8px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	background: var(--msp-surface-muted);
}

.msp-magnetron-operation-card > p {
	margin: 0;
	font-size: 12px;
}

.msp-attachments {
	display: grid;
	gap: 8px;
	margin-top: 12px;
}

.msp-attachments > strong {
	font-size: 12px;
}

.msp-attachment-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 260px));
	gap: 8px;
}

.msp-attachment-item {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 6px;
}

.msp-attachment-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	width: 100%;
	min-width: 0;
	padding: 6px 8px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	background: var(--msp-surface-muted);
	font-size: 12px;
}

.msp-attachment-item.has-thumbnail .msp-attachment-link {
	display: grid;
	padding: 0;
	overflow: hidden;
}

.msp-attachment-thumbnail {
	position: relative;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	background: #101012;
	overflow: hidden;
}

.msp-attachment-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.msp-image-preview-dialog {
	width: min(94vw, 1440px);
	height: min(92vh, 980px);
	max-width: none;
	max-height: none;
	padding: 0;
	border: 1px solid var(--msp-border-strong);
	border-radius: 6px;
	background: #161618;
	color: var(--msp-text);
}

.msp-image-preview-dialog[open] {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr);
}

.msp-image-preview-dialog::backdrop {
	background: rgba(0, 0, 0, 0.78);
}

.msp-image-preview-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 54px;
	padding: 8px 12px 8px 18px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-image-preview-heading {
	display: flex;
	align-items: baseline;
	gap: 10px;
	min-width: 0;
}

.msp-image-preview-heading strong {
	min-width: 0;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-image-preview-heading [data-image-preview-status],
.msp-image-annotation-footer [data-annotation-status] {
	font-size: 12px;
	color: var(--msp-text-muted);
}

.msp-image-preview-heading [data-state="warning"],
.msp-image-annotation-footer [data-state="warning"] {
	color: #ffb74d;
}

.msp-image-preview-heading [data-state="error"],
.msp-image-annotation-footer [data-state="error"] {
	color: #ff918b;
}

.msp-image-preview-heading [data-state="saved"],
.msp-image-annotation-footer [data-state="saved"] {
	color: #66d19e;
}

.msp-image-preview-actions {
	display: flex;
	align-items: center;
	gap: 6px;
	flex: 0 0 auto;
}

.msp-image-preview-actions [hidden],
.msp-image-preview-stage[hidden] {
	display: none !important;
}

.msp-image-preview-actions .msp-icon-button.is-muted {
	opacity: 0.48;
}

.msp-image-preview-actions .msp-icon-button {
	position: relative;
}

.msp-image-preview-actions [data-image-annotate].has-draft::after {
	content: "";
	position: absolute;
	top: 4px;
	right: 4px;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #ffb74d;
}

.msp-image-preview-stage {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	padding: 18px;
	overflow: hidden;
	background: #0d0d0f;
}

.msp-image-preview-viewport {
	position: relative;
	flex: 0 0 auto;
	transform-origin: center;
	transition: transform 160ms ease;
}

.msp-image-preview-viewport img {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	opacity: 0;
}

.msp-image-preview-viewport [data-image-preview-target] {
	position: relative;
}

.msp-image-preview-viewport [data-image-annotation-target] {
	z-index: 2;
	opacity: 1;
}

.msp-image-preview-viewport img.is-loaded {
	opacity: 1;
}

.msp-image-preview-viewport img[hidden],
.msp-image-annotation-frame > img[hidden] {
	display: none !important;
}

.msp-image-preview-loading {
	position: absolute;
	color: var(--msp-text-muted);
}

.msp-image-annotation-badge {
	position: absolute;
	right: 6px;
	bottom: 6px;
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 3px 5px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 3px;
	background: rgba(22, 94, 180, 0.9);
	color: #fff;
	font-size: 10px;
	line-height: 1;
	pointer-events: none;
}

.msp-image-annotation-badge.is-draft {
	background: rgba(180, 106, 22, 0.92);
}

.msp-image-annotation-badge .dashicons {
	width: 12px;
	height: 12px;
	font-size: 12px;
}

.msp-image-annotation-editor {
	display: grid;
	grid-template-rows: auto minmax(0, 1fr) auto;
	min-height: 0;
	background: #0d0d0f;
}

.msp-image-annotation-editor[hidden] {
	display: none;
}

.msp-image-annotation-editor.is-saving .msp-image-annotation-toolbar,
.msp-image-annotation-editor.is-saving .msp-image-annotation-stage,
.msp-image-annotation-editor.is-saving .msp-image-annotation-footer > div {
	pointer-events: none;
}

.msp-image-annotation-editor.is-saving .msp-image-annotation-stage {
	opacity: 0.72;
}

.msp-image-annotation-toolbar {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 48px;
	padding: 7px 12px;
	border-bottom: 1px solid var(--msp-border);
	background: #1b1b1e;
	overflow-x: auto;
}

.msp-image-annotation-toolbar .msp-segmented-control {
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	overflow: hidden;
}

.msp-image-annotation-toolbar .msp-segmented-control button {
	display: grid;
	place-items: center;
	width: 34px;
	height: 32px;
	padding: 0;
	border: 0;
	border-right: 1px solid var(--msp-border);
	border-radius: 0;
	background: #242428;
	color: var(--msp-text-muted);
}

.msp-image-annotation-toolbar .msp-segmented-control button:last-child {
	border-right: 0;
}

.msp-image-annotation-toolbar .msp-segmented-control button.is-active {
	background: #2866c7;
	color: #fff;
}

.msp-image-color-control {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
}

.msp-image-color-control input {
	width: 30px;
	height: 30px;
	padding: 2px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: #242428;
	cursor: pointer;
}

.msp-image-width-control {
	display: grid;
	grid-template-columns: 18px 94px 18px;
	align-items: center;
	gap: 3px;
	color: var(--msp-text-muted);
}

.msp-image-width-control input {
	width: 94px;
}

.msp-image-annotation-stage {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 0;
	padding: 12px;
	overflow: hidden;
	background: #09090b;
}

.msp-image-annotation-frame {
	position: relative;
	flex: 0 0 auto;
	box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.12);
	background: #111;
}

.msp-image-annotation-frame > img,
.msp-image-annotation-frame > canvas,
.msp-image-annotation-frame > .canvas-container {
	position: absolute !important;
	inset: 0;
	display: block;
	object-fit: contain;
}

.msp-image-annotation-frame [data-annotation-base-image] {
	z-index: 1;
}

.msp-image-annotation-frame [data-annotation-base-layer] {
	z-index: 2;
}

.msp-image-annotation-frame > .canvas-container {
	z-index: 3;
}

.msp-image-annotation-footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 58px;
	padding: 9px 12px;
	border-top: 1px solid var(--msp-border);
	background: #1b1b1e;
}

.msp-image-annotation-footer > div {
	display: flex;
	gap: 8px;
}

@media (max-width: 760px) {
	.msp-image-preview-dialog {
		width: 98vw;
		height: 96vh;
	}

	.msp-image-preview-toolbar {
		align-items: flex-start;
		padding-left: 12px;
	}

	.msp-image-preview-heading {
		display: grid;
		gap: 2px;
	}

	.msp-image-preview-actions {
		max-width: 62vw;
		justify-content: flex-end;
		flex-wrap: wrap;
	}

	.msp-image-annotation-toolbar {
		align-items: center;
	}

	.msp-image-annotation-footer {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-image-annotation-footer > div {
		justify-content: flex-end;
	}
}

.msp-asset-identity-layout {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr);
	align-items: center;
	gap: 6px;
	width: 100%;
}

.msp-asset-identity-content {
	display: block;
	min-width: 0;
	overflow: hidden;
}

.msp-asset-list-media {
	position: relative;
	display: inline-flex;
	width: 36px;
	height: 36px;
}

.msp-asset-list-thumbnail {
	display: grid;
	place-items: center;
	width: 36px;
	height: 36px;
	min-width: 36px;
	padding: 0;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	background: #161618;
	overflow: hidden;
}

button.msp-asset-list-thumbnail {
	cursor: zoom-in;
}

.msp-asset-list-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.msp-asset-list-thumbnail.is-empty {
	color: var(--msp-text-muted);
}

.msp-asset-media-panel {
	display: grid;
	grid-template-columns: minmax(260px, 44%) minmax(260px, 1fr);
	gap: 22px;
	align-items: center;
	padding: 18px;
}

.msp-asset-media-frame {
	min-width: 0;
}

.msp-asset-detail-image {
	display: grid;
	place-items: center;
	width: 100%;
	height: clamp(170px, 24vw, 300px);
	padding: 0;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: #121214;
	overflow: hidden;
}

button.msp-asset-detail-image {
	cursor: zoom-in;
}

.msp-asset-detail-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.msp-asset-detail-image.is-empty {
	gap: 8px;
	color: var(--msp-text-muted);
}

.msp-asset-detail-image.is-empty .dashicons {
	width: 36px;
	height: 36px;
	font-size: 36px;
}

.msp-asset-media-copy {
	display: grid;
	justify-items: start;
	gap: 8px;
}

.msp-asset-media-copy h2,
.msp-asset-media-copy p {
	margin: 0;
}

.msp-asset-media-copy small {
	color: var(--msp-text-muted);
}


@media (max-width: 720px) {
	.msp-asset-media-panel {
		grid-template-columns: 1fr;
	}

	.msp-asset-detail-image {
		height: 210px;
	}
}

.msp-attachment-name {
	display: grid;
	min-width: 0;
	padding: 2px;
	overflow-wrap: anywhere;
	white-space: normal;
}

.msp-attachment-item.has-thumbnail .msp-attachment-name {
	padding: 8px 10px 10px;
}

.msp-attachment-item > .msp-icon-button {
	position: absolute;
	top: 5px;
	right: 5px;
	z-index: 1;
	background: rgba(28, 28, 30, 0.9);
}

.msp-attachments small {
	color: var(--msp-text-muted);
}

.msp-attachment-row,
.msp-attachment-archived {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.msp-user-name-button {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary);
	cursor: pointer;
}

.msp-user-name-button .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-system-entry {
	margin-bottom: 18px;
}

.msp-system-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border-top: 1px solid var(--msp-border);
}

.msp-system-facts a {
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding: 14px 16px;
	border-right: 1px solid var(--msp-border);
	color: var(--msp-text);
}

.msp-system-facts a:last-child {
	border-right: 0;
}

.msp-system-facts span:not(.dashicons) {
	display: grid;
	min-width: 0;
}

.msp-system-facts small {
	color: var(--msp-text-muted);
}

.msp-system-facts strong {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-permission-notice {
	display: flex;
	gap: 12px;
	margin-bottom: 18px;
	padding: 14px 16px;
	border-left: 3px solid var(--msp-primary);
	background: var(--msp-surface-muted);
}

.msp-permission-notice p {
	margin: 3px 0 0;
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-permission-group {
	margin-bottom: 14px;
}

.msp-permission-table th:not(:first-child),
.msp-permission-table td {
	min-width: 88px;
	text-align: center;
}

.msp-permission-toggle {
	display: inline-grid;
	place-items: center;
	width: 38px;
	height: 22px;
	cursor: pointer;
}

body.msp-portal-body .msp-permission-toggle input[type="checkbox"] {
	position: relative;
	width: 38px;
	min-width: 38px;
	max-width: 38px;
	height: 22px;
	min-height: 22px;
	max-height: 22px;
	flex-basis: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid var(--msp-border-strong);
	border-radius: 11px;
	appearance: none;
	background: var(--msp-surface-raised);
	cursor: pointer;
}

.msp-permission-toggle input::after {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--msp-text-muted);
	content: "";
	transition: transform 140ms ease, background 140ms ease;
}

.msp-permission-toggle input:checked {
	border-color: var(--msp-primary);
	background: var(--msp-primary);
}

.msp-permission-toggle input:checked::after {
	transform: translateX(16px);
	background: #ffffff;
}

.msp-sticky-actions {
	position: sticky;
	bottom: 12px;
	z-index: 5;
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 16px;
	padding: 10px;
	border: 1px solid var(--msp-border);
	background: rgba(28, 28, 30, 0.96);
	box-shadow: var(--msp-shadow);
}

.msp-attachment-archived {
	padding: 6px 8px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-restricted-content {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 12px;
	padding: 12px;
	border-left: 3px solid var(--msp-border-strong);
	background: var(--msp-surface-muted);
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-private-note {
	margin-top: 12px;
	padding: 12px;
	border-left: 3px solid var(--msp-orange);
	background: rgba(255, 159, 10, 0.10);
	font-size: 12px;
}

.msp-private-note p:last-child {
	margin-bottom: 0;
}

.msp-timeline article > footer {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin-top: 10px;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-link-button {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
}

.msp-danger-link {
	color: var(--msp-red);
}

.msp-void-form {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	margin-top: 12px;
	padding: 12px;
	border-left: 3px solid var(--msp-red);
	background: rgba(255, 69, 58, 0.10);
}

.msp-void-form[hidden] {
	display: none;
}

.msp-void-form label {
	flex: 1;
	font-size: 11px;
	font-weight: 700;
}

.msp-dialog {
	width: min(620px, calc(100vw - 28px));
	max-width: calc(100vw - 28px);
	max-height: calc(100vh - 40px);
	padding: 0;
	overflow: auto;
	border: 1px solid var(--msp-border-strong);
	border-radius: 6px;
	background: var(--msp-surface);
	color: var(--msp-text);
	box-shadow: var(--msp-shadow);
}

.msp-dialog-wide {
	width: min(820px, calc(100vw - 28px));
}

.msp-dialog.msp-dialog-compact {
	width: min(560px, calc(100vw - 28px));
}

.msp-dialog-org {
	width: min(960px, calc(100vw - 28px));
}

.msp-dialog::backdrop {
	background: rgba(0, 0, 0, 0.76);
	-webkit-backdrop-filter: none;
	backdrop-filter: none;
}

.msp-dialog-overlay {
	position: fixed;
	inset: 0;
	z-index: 9998;
	background: rgba(0, 0, 0, 0.76);
}

.msp-dialog.msp-dialog-modeless-open[open] {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 9999;
	display: block;
	margin: 0;
	transform: translate(-50%, -50%);
}

html.msp-dialog-lock,
html.msp-dialog-lock body {
	overflow: hidden;
}

.msp-dialog form {
	padding: 22px;
}

.msp-dialog-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
}

.msp-dialog-header h2 {
	margin: 2px 0 0;
	font-size: 20px;
}

.msp-dialog-header-actions {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	gap: 10px;
}

.msp-dialog-header-actions .msp-text-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	white-space: nowrap;
}

.msp-dialog-meta {
	margin: 7px 0 0;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-delete-warning {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin-bottom: 18px;
	padding: 12px;
	border-left: 3px solid var(--msp-red);
	background: rgba(255, 69, 58, 0.10);
	color: var(--msp-text-muted);
}

.msp-delete-warning .dashicons {
	color: var(--msp-red);
}

.msp-delete-warning p {
	margin: 0;
}

.msp-dialog-header .msp-icon-button:hover {
	background: var(--msp-surface-muted);
}

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

.msp-field {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 5px;
	margin: 0;
	font-size: 12px;
	font-weight: 800;
}

.msp-field-label {
	display: block;
}

.msp-system-number-value {
	display: flex;
	min-height: 39px;
	align-items: center;
	gap: 8px;
	padding: 8px 10px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface-muted);
	color: var(--msp-text);
}

.msp-system-number-value .dashicons {
	width: 16px;
	height: 16px;
	color: var(--msp-primary-dark);
	font-size: 16px;
}

.msp-system-number-field small {
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 400;
}

.msp-customer-picker,
.msp-asset-picker,
.msp-searchable-picker {
	gap: 6px;
}

.msp-customer-search-control,
.msp-asset-search-control,
.msp-picker-search {
	position: relative;
}

.msp-customer-search-control .dashicons,
.msp-asset-search-control .dashicons,
.msp-picker-search .dashicons {
	position: absolute;
	top: 50%;
	left: 10px;
	z-index: 1;
	width: 18px;
	height: 18px;
	color: var(--msp-text-muted);
	font-size: 18px;
	transform: translateY(-50%);
	pointer-events: none;
}

.msp-field .msp-customer-search-control input,
.msp-field .msp-asset-search-control input,
.msp-field .msp-picker-search input {
	padding-left: 34px;
}

.msp-customer-search-status,
.msp-asset-search-status,
.msp-searchable-picker > small {
	min-height: 14px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 400;
}

.msp-tag-picker legend {
	margin-bottom: 7px;
}

.msp-tag-picker-recommendation {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 7px;
	padding: 7px 8px;
	border-left: 3px solid #ff9f0a;
	background: rgba(255, 159, 10, 0.1);
	font-size: 11px;
	font-weight: 700;
}

.msp-checkbox-grid label.is-recommended {
	border-color: rgba(255, 159, 10, 0.55);
	background: rgba(255, 159, 10, 0.08);
}

.msp-checkbox-grid label > small {
	margin-left: auto;
	color: #ff9f0a;
	font-size: 9px;
}

.msp-checkbox-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 7px;
}

.msp-checkbox-grid label {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 7px;
	padding: 8px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-surface-muted);
	font-size: 11px;
	font-weight: 700;
}

.msp-checkbox-grid input {
	width: 16px;
	height: 16px;
	margin: 0;
}

fieldset.msp-field {
	padding: 0;
	border: 0;
}

.msp-field textarea {
	min-height: 110px;
	resize: vertical;
}

.msp-field input:focus,
.msp-field select:focus,
.msp-field textarea:focus,
.msp-filter-bar input:focus,
.msp-filter-bar select:focus {
	border-color: var(--msp-primary);
	outline: 2px solid var(--msp-focus);
}

.msp-field-help {
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 400;
}

.msp-mid-sequence-hint {
	display: grid;
	grid-template-columns: max-content max-content max-content max-content;
	align-items: baseline;
	gap: 5px 10px;
	margin: 0 0 12px;
	padding: 9px 12px;
	border-left: 3px solid var(--msp-blue);
	color: var(--msp-text-muted);
	background: rgba(100, 210, 255, 0.08);
	font-size: 12px;
	line-height: 1.5;
}

.msp-mid-sequence-hint strong {
	color: var(--msp-blue);
	font-size: 14px;
}

.msp-mid-sequence-hint small {
	grid-column: 1 / -1;
	color: var(--msp-text-muted);
	font-size: 10px;
}

@media (max-width: 680px) {
	.msp-mid-sequence-hint {
		grid-template-columns: max-content 1fr;
	}
}

.msp-machine-milestone-field {
	align-content: start;
}

.msp-machine-milestone-meta {
	min-height: 15px;
	line-height: 1.45;
}

.msp-machine-milestone-meta.is-late {
	color: var(--msp-red);
}

.msp-machine-milestone-meta.is-early,
.msp-machine-milestone-meta.is-on-time {
	color: var(--msp-green);
}

.msp-span-2 {
	grid-column: span 2;
}

.msp-form-subsection {
	padding: 14px;
	border-left: 3px solid var(--msp-blue);
	background: var(--msp-surface-muted);
}

.msp-product-model-section {
	margin-top: 18px;
}

.msp-material-code {
	color: #75c8ff;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.msp-material-code-large {
	display: block;
	padding: 9px 11px;
	border: 1px solid rgba(117, 200, 255, .32);
	border-radius: 4px;
	background: rgba(69, 149, 212, .09);
	font-size: 16px;
}

.msp-platform-compatibility-fields > p {
	margin: -2px 0 10px;
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-platform-grid {
	display: grid;
	gap: 7px;
}

.msp-platform-row {
	display: grid;
	grid-template-columns: minmax(160px, .75fr) minmax(125px, .55fr) minmax(220px, 1.4fr);
	align-items: center;
	gap: 9px;
	padding: 8px 10px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	background: var(--msp-surface-muted);
	opacity: .62;
}

.msp-platform-row.is-enabled {
	border-color: rgba(117, 200, 255, .38);
	background: rgba(69, 149, 212, .08);
	opacity: 1;
}

.msp-platform-row .msp-check-option {
	display: grid;
	grid-template-columns: 17px minmax(0, 1fr);
	align-items: center;
	gap: 8px;
}

.msp-platform-row .msp-check-option input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
}

.msp-platform-row .msp-check-option span {
	display: grid;
	gap: 1px;
}

.msp-platform-row .msp-check-option small {
	color: var(--msp-text-muted);
	font-size: 11px;
}

@media (max-width: 860px) {
	.msp-platform-row {
		grid-template-columns: 1fr;
	}
}

.msp-model-approval-setting {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 14px;
	padding: 12px 14px;
	border: 1px solid #334155;
	background: #171b22;
	border-radius: 6px;
}

.msp-model-approval-setting > div:first-child {
	display: grid;
	gap: 3px;
	margin-right: auto;
}

.msp-model-approval-setting small {
	color: #9ca3af;
}

.msp-product-model-table {
	min-width: 980px;
}

.msp-model-status-active {
	color: #86efac;
	border-color: #166534;
	background: #14291e;
}

.msp-model-status-review {
	color: #fcd34d;
	border-color: #854d0e;
	background: #2b2413;
}

.msp-model-status-disabled {
	color: #cbd5e1;
	border-color: #475569;
	background: #242a33;
}

.msp-model-status-merged {
	color: #c4b5fd;
	border-color: #6d28d9;
	background: #281d42;
}

.msp-model-status-deleted {
	color: #fca5a5;
	border-color: #991b1b;
	background: #35191c;
}

.msp-model-edit-link {
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary-hover);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.msp-model-edit-link:hover,
.msp-model-edit-link:focus-visible {
	text-decoration: underline;
}

.msp-product-model-archive-notice {
	border-left: 3px solid #a78bfa;
}

.msp-product-model-archive-notice p {
	margin: 6px 0 0;
	color: var(--msp-text-muted);
}

.msp-product-model-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
}

.msp-product-model-facts > div {
	display: grid;
	grid-template-columns: minmax(100px, .34fr) minmax(0, 1fr);
	gap: 12px;
	padding: 11px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-product-model-facts > div:nth-child(odd):not(.msp-product-model-fact-wide) {
	padding-right: 22px;
}

.msp-product-model-facts > div:nth-child(even) {
	padding-left: 22px;
	border-left: 1px solid var(--msp-border);
}

.msp-product-model-facts dt {
	color: var(--msp-text-muted);
}

.msp-product-model-facts dd {
	min-width: 0;
	margin: 0;
	overflow-wrap: anywhere;
}

.msp-product-model-facts .msp-product-model-fact-wide {
	grid-column: 1 / -1;
}

.msp-product-model-relations {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 12px;
	margin-bottom: 20px;
}

.msp-product-model-relations > div {
	display: grid;
	gap: 3px;
	padding: 14px 16px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface-muted);
}

.msp-product-model-relations strong {
	font-size: 22px;
	color: #f5f7fa;
	font-variant-numeric: tabular-nums;
}

.msp-product-model-relations span,
.msp-product-model-related-lists p {
	color: var(--msp-text-muted);
}

.msp-product-model-related-lists {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.msp-product-model-related-lists h3 {
	margin: 0 0 10px;
	font-size: 14px;
	color: #7db7ff;
}

.msp-product-model-related-lists ul {
	display: grid;
	gap: 7px;
	margin: 0;
	padding-left: 18px;
}

.msp-product-model-timeline {
	position: relative;
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.msp-product-model-timeline::before {
	position: absolute;
	top: 9px;
	bottom: 9px;
	left: 15px;
	width: 1px;
	background: #3d4858;
	content: "";
}

.msp-product-model-timeline > li {
	position: relative;
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 12px;
	padding: 0 0 20px;
}

.msp-product-model-timeline-marker {
	z-index: 1;
	display: grid;
	width: 31px;
	height: 31px;
	place-items: center;
	border: 1px solid #3b82f6;
	border-radius: 50%;
	background: #162338;
	color: #7db7ff;
}

.msp-product-model-timeline-marker .dashicons {
	width: 15px;
	height: 15px;
	font-size: 15px;
	line-height: 15px;
}

.msp-product-model-timeline-heading {
	display: flex;
	align-items: baseline;
	gap: 10px;
}

.msp-product-model-timeline-heading span,
.msp-product-model-timeline time {
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-product-model-timeline p {
	margin: 5px 0 0;
}

.msp-product-model-timeline time {
	display: block;
	margin-top: 6px;
	font-variant-numeric: tabular-nums;
}

@media (max-width: 760px) {
	.msp-model-approval-setting {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-product-model-facts,
	.msp-product-model-relations,
	.msp-product-model-related-lists {
		grid-template-columns: 1fr;
	}

	.msp-product-model-facts > div:nth-child(n) {
		padding-right: 0;
		padding-left: 0;
		border-left: 0;
	}
}

.msp-form-subsection[hidden] {
	display: none;
}

.msp-form-subsection h3 {
	margin: 0 0 12px;
	font-size: 14px;
}

.msp-dialog .msp-form-subsection h3,
.msp-dialog .msp-access-grid > div > strong {
	color: var(--msp-blue);
}

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

.msp-access-grid > div > strong {
	display: block;
	margin-bottom: 8px;
	font-size: 12px;
}

.msp-check-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px;
}

.msp-check-list label {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 7px;
	padding: 7px 8px;
	background: var(--msp-surface-raised);
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	cursor: pointer;
	font-size: 12px;
}

.msp-check-list input {
	width: 16px;
	height: 16px;
	flex: 0 0 auto;
	accent-color: var(--msp-primary);
}

.msp-check-list span {
	min-width: 0;
	overflow-wrap: anywhere;
}

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

.msp-attachment-access {
	margin-top: 10px;
	padding: 12px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-surface-muted);
}

.msp-attachment-access h3 {
	margin: 0 0 10px;
	font-size: 13px;
}

.msp-dialog-actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 22px;
	padding-top: 16px;
	border-top: 1px solid var(--msp-border);
}

.msp-notice {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 20px;
	padding: 11px 14px;
	border-left: 4px solid;
	background: var(--msp-surface-raised);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.24);
}

.msp-notice-success {
	border-color: var(--msp-primary);
}

.msp-notice-error {
	border-color: var(--msp-red);
}

.msp-notice-warning {
	border-color: var(--msp-amber);
}

.msp-empty,
.msp-empty-inline {
	padding: 36px 18px;
	color: var(--msp-text-muted);
	text-align: center;
}

.msp-empty > .dashicons {
	width: 42px;
	height: 42px;
	font-size: 42px;
}

.msp-empty-inline {
	padding: 24px 12px;
}

code {
	font-family: Consolas, "SFMono-Regular", monospace;
}

body.login {
	background: var(--msp-bg);
	color: var(--msp-text);
	font-family: Inter, "Segoe UI", "Microsoft YaHei", sans-serif;
}

body.login #login {
	width: 360px;
	padding-top: 8vh;
}

body.login h1 a {
	width: 132px;
	height: 132px;
	border: 1px solid var(--msp-border);
	border-radius: 8px;
	background-color: #282828;
	background-image: url("../images/mcvey-logo.png");
	background-position: center;
	background-size: cover;
}

body.login form {
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
	box-shadow: var(--msp-shadow);
}

body.login label,
body.login .forgetmenot label {
	color: var(--msp-text-muted);
}

body.login input[type="text"],
body.login input[type="password"] {
	border-color: var(--msp-border-strong);
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

body.login input:focus {
	border-color: var(--msp-primary);
	box-shadow: 0 0 0 2px var(--msp-focus);
}

body.login #nav a,
body.login #backtoblog a,
body.login .privacy-policy-page-link a {
	color: var(--msp-text-muted);
}

body.login #nav a:hover,
body.login #backtoblog a:hover,
body.login .privacy-policy-page-link a:hover {
	color: var(--msp-primary-dark);
}

body.login .message,
body.login .notice,
body.login #login_error {
	border-color: var(--msp-primary);
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	box-shadow: none;
}

body.login .button-primary {
	border-color: var(--msp-primary);
	background: var(--msp-primary);
	color: #fff;
}

body.login .button-primary:hover,
body.login .button-primary:focus {
	border-color: var(--msp-primary-dark);
	background: var(--msp-primary-dark);
}

.msp-mounted-assets {
	margin-bottom: 20px;
}

.msp-mounted-components {
	margin: 20px 0;
}

.msp-asset-strip {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.msp-asset-item {
	display: flex;
	min-width: 0;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
	padding: 13px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface-muted);
}

.msp-asset-item > div {
	display: flex;
	min-width: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
}

.msp-asset-item small {
	display: block;
	width: 100%;
	color: var(--msp-text-muted);
}

.msp-power-tree-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.msp-asset-item.msp-power-tree {
	display: block;
	padding: 0;
	overflow: hidden;
}

.msp-power-tree > .msp-power-tree-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	padding: 13px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-power-tree-header > div {
	display: flex;
	min-width: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 7px;
}

.msp-power-tree-header small {
	display: block;
	width: 100%;
	color: var(--msp-text-muted);
}

.msp-component-inventory {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	overflow: hidden;
	background: var(--msp-surface-muted);
}

.msp-power-tree > .msp-component-inventory {
	display: grid;
	width: 100%;
	border: 0;
	border-radius: 0;
}

.msp-component-group {
	display: flex;
	min-width: 0;
	align-content: flex-start;
	flex-wrap: wrap;
	gap: 5px 8px;
	padding: 13px;
	border-right: 1px solid var(--msp-border);
}

.msp-component-group:last-child {
	border-right: 0;
}

.msp-component-group > a,
.msp-component-links a {
	color: var(--msp-primary);
	font-weight: 700;
	overflow-wrap: anywhere;
	text-decoration: none;
}

.msp-power-tree-header .msp-machine-link {
	min-width: 0;
	overflow-wrap: anywhere;
}

.msp-component-group > a:hover,
.msp-component-links a:hover {
	text-decoration: underline;
}

.msp-component-operation-meta {
	display: block;
	width: 100%;
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-component-operation-actions {
	display: flex;
	width: 100%;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 3px;
}

.msp-component-operation-actions .msp-button {
	min-height: 28px;
}

.msp-magnetron-operation-preview {
	padding: 9px 11px;
	border: 1px solid rgba(10, 132, 255, 0.35);
	border-radius: 5px;
	background: rgba(10, 132, 255, 0.08);
	color: var(--msp-text);
	font-size: 12px;
	font-weight: 700;
}

.msp-component-type {
	display: flex;
	width: 100%;
	align-items: center;
	gap: 6px;
	color: var(--msp-text-muted);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.msp-component-type .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-component-type small {
	width: auto;
	margin-left: auto;
}

.msp-component-links {
	display: grid;
	width: 100%;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 6px 12px;
}

.msp-component-links a {
	display: flex;
	min-width: 0;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 6px;
	font-size: 12px;
}

.msp-component-links a small {
	width: auto;
	color: var(--msp-text-muted);
	font-weight: 400;
}

.msp-component-inventory.is-compact {
	grid-template-columns: 1fr;
	background: transparent;
}

.msp-component-inventory.is-compact .msp-component-group {
	border-right: 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-component-inventory.is-compact .msp-component-group:last-child {
	border-bottom: 0;
}

.msp-event-source {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 2px 7px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	color: var(--msp-text-muted);
	font-size: 11px;
	font-weight: 700;
}

.msp-muted-label,
.msp-aside-note {
	color: var(--msp-text-muted);
}

.msp-aside-note {
	margin: 14px 0 0;
	font-size: 12px;
	line-height: 1.6;
}

.msp-meta-subheading {
	margin-top: 22px;
	padding-top: 18px;
	border-top: 1px solid var(--msp-border);
}

@media (max-width: 1120px) {
	.msp-main {
		padding-right: 24px;
		padding-left: 24px;
	}

	.msp-stat-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

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

	.msp-machine-layout {
		grid-template-columns: 1fr;
	}

	.msp-asset-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.msp-asset-facts > div:nth-child(3n) {
		border-right: 0;
	}

	.msp-asset-strip {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-component-inventory:not(.is-compact) {
		grid-template-columns: 1fr;
	}

	.msp-component-inventory:not(.is-compact) .msp-component-group {
		border-right: 0;
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-component-inventory:not(.is-compact) .msp-component-group:last-child {
		border-bottom: 0;
	}

	.msp-machine-meta {
		order: -1;
	}

	.msp-machine-meta dl {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 12px;
	}

	.msp-machine-meta dl div {
		flex-direction: column;
		border-bottom: 0;
	}

	.msp-machine-meta dd {
		text-align: left;
	}
}

@media (max-width: 780px) {
	.msp-system-facts {
		grid-template-columns: 1fr;
	}

	.msp-system-entry .msp-section-header {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-system-entry .msp-section-header .msp-button {
		width: 100%;
	}

	.msp-system-facts a {
		border-right: 0;
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-system-facts a:last-child {
		border-bottom: 0;
	}

	html,
	body.msp-portal-body {
		max-width: 100%;
		overflow-x: hidden;
	}

	.msp-app-shell {
		display: block;
	}

	.msp-sidebar {
		display: none;
	}

	.msp-content-shell {
		display: flex;
	}

	.msp-mobile-header {
		display: flex;
		min-height: 62px;
		align-items: center;
		justify-content: space-between;
		padding: 0 15px 0 0;
		background: var(--msp-sidebar);
		color: #fff;
	}

	.msp-mobile-header .msp-brand {
		min-height: 62px;
		padding-left: 15px;
	}

	.msp-mobile-navigation {
		display: flex;
		width: 100%;
		max-width: 100vw;
		overflow-x: auto;
		border-bottom: 1px solid var(--msp-border);
		background: var(--msp-surface);
	}

	.msp-mobile-nav-group {
		display: flex;
		flex: 0 0 auto;
		align-items: stretch;
	}

	.msp-mobile-nav-group + .msp-mobile-nav-group {
		border-left: 1px solid var(--msp-border-strong);
	}

	.msp-mobile-nav-group-label {
		display: flex;
		align-items: center;
		padding: 0 8px;
		background: #161618;
		color: #77777d;
		font-size: 9px;
		font-weight: 800;
		line-height: 1;
		white-space: nowrap;
	}

	.msp-mobile-navigation a {
		display: inline-flex;
		align-items: center;
		flex: 0 0 auto;
		gap: 6px;
		padding: 12px 15px 10px;
		border-bottom: 2px solid transparent;
		color: var(--msp-text-muted);
		font-size: 12px;
		font-weight: 700;
	}

	.msp-mobile-navigation .dashicons,
	.msp-mobile-navigation .msp-nav-icon {
		flex: 0 0 16px;
		width: 16px;
		height: 16px;
		font-size: 16px;
	}

	.msp-mobile-navigation a.is-active {
		border-bottom-color: var(--msp-primary);
		color: var(--msp-primary);
	}

	.msp-main {
		width: 100%;
		max-width: 100vw;
		padding: 22px 15px 42px;
	}

	.msp-filter-bar {
		align-items: stretch;
	}

	.msp-filter-bar .msp-search {
		flex: 1 1 100%;
	}

	.msp-filter-date-range {
		display: grid;
		width: 100%;
		grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr);
	}

	.msp-filter-date-range input {
		width: 100%;
	}

	.msp-contract-bulk-toolbar {
		grid-template-columns: 1fr;
		align-items: stretch;
	}

	.msp-contract-bulk-metrics {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-contract-bulk-actions {
		justify-content: flex-start;
	}

	.msp-saved-view-control {
		flex: 1 1 auto;
	}

	.msp-saved-view-control select {
		min-width: 0;
		flex: 1 1 auto;
	}

	.msp-saved-view-status {
		flex: 0 0 auto;
	}

	.msp-action-center-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-action-item {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px;
	}

	.msp-action-item-due {
		grid-column: 1;
		grid-row: 2;
	}

	.msp-action-item-actions {
		grid-column: 2;
		grid-row: 1 / span 2;
	}

	.msp-table-wrap {
		max-width: 100%;
		contain: inline-size;
	}

	.msp-main .msp-sticky-header-wrap {
		max-height: clamp(300px, 62vh, 540px);
	}

	.msp-table-pagination {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-pagination-links {
		width: 100%;
		overflow-x: auto;
		padding-bottom: 2px;
	}

	.msp-page-header {
		align-items: flex-start;
		flex-direction: column;
	}

	.msp-header-actions {
		width: 100%;
		justify-content: flex-start;
	}

	.msp-machine-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-machine-facts > div:nth-child(even) {
		border-right: 0;
	}

	.msp-machine-facts > div {
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-machine-facts > div:last-child {
		grid-column: span 2;
		border-right: 0;
		border-bottom: 0;
	}

	.msp-asset-facts > div:nth-child(3n) {
		border-right: 1px solid var(--msp-border);
	}

	.msp-asset-facts > div:nth-child(even) {
		border-right: 0;
	}

	.msp-asset-facts > div:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.msp-asset-facts > div:last-child {
		grid-column: span 1;
	}

	.msp-machine-meta dl {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-event-details {
		grid-template-columns: 1fr;
	}

	.msp-event-heading {
		align-items: stretch;
		flex-direction: column;
		gap: 10px;
	}

	.msp-event-heading-actions {
		align-items: center;
		justify-content: space-between;
		flex-direction: row;
	}

	.msp-filter-bar {
		align-items: stretch;
		flex-wrap: wrap;
	}

	.msp-search {
		width: 100%;
	}

	.msp-filter-tags {
		min-width: min(220px, 100%);
	}

	.msp-asset-strip {
		grid-template-columns: 1fr;
	}

	.msp-footer {
		padding: 18px 15px;
	}
}

/* AI assistant */
.msp-ai-page-header .msp-header-actions {
	align-items: center;
}

.msp-ai-service-state {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	min-height: 34px;
	padding: 0 10px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	color: var(--msp-text-muted);
	background: var(--msp-surface);
	font-size: 12px;
	font-weight: 700;
}

.msp-ai-service-state.is-ready {
	border-color: rgba(48, 209, 88, 0.38);
	color: #8ee8a5;
}

.msp-ai-service-state.is-offline {
	border-color: rgba(255, 159, 10, 0.42);
	color: #ffd08a;
}

.msp-ai-view-tabs {
	display: flex;
	align-items: stretch;
	gap: 2px;
	margin: -2px 0 12px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-ai-view-tabs a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 39px;
	padding: 0 14px;
	border-bottom: 2px solid transparent;
	color: var(--msp-text-muted);
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
}

.msp-ai-view-tabs a:hover,
.msp-ai-view-tabs a:focus-visible {
	color: #d8eaff;
	background: rgba(255, 255, 255, 0.035);
}

.msp-ai-view-tabs a.is-active {
	border-bottom-color: var(--msp-blue);
	color: #9fd0ff;
}

.msp-ai-view-tabs .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-ai-safety-strip {
	display: flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 16px;
	padding: 10px 12px;
	border-left: 3px solid var(--msp-blue);
	color: #cbd9e9;
	background: #1a232e;
	font-size: 13px;
}

.msp-ai-usage-filters {
	margin-bottom: 14px;
}

.msp-ai-usage-filters .msp-search {
	min-width: min(260px, 100%);
}

.msp-ai-date-filter {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 800;
}

.msp-ai-date-filter input {
	min-width: 132px;
}

.msp-ai-usage-section .msp-section-header {
	margin-bottom: 10px;
}

.msp-ai-usage-count {
	display: inline-flex;
	align-items: center;
	min-height: 28px;
	padding: 0 9px;
	border: 1px solid #3d536b;
	border-radius: 3px;
	color: #b9d9f8;
	background: #1a2734;
	font-size: 11px;
	font-weight: 800;
}

.msp-ai-usage-table {
	min-width: 1120px;
}

.msp-ai-usage-table th:first-child,
.msp-ai-usage-table td:first-child {
	width: 144px;
	white-space: nowrap;
}

.msp-ai-usage-table th:nth-child(2),
.msp-ai-usage-table td:nth-child(2) {
	width: 112px;
}

.msp-ai-usage-table th:nth-child(3),
.msp-ai-usage-table td:nth-child(3) {
	width: 164px;
}

.msp-ai-usage-table th:nth-child(5),
.msp-ai-usage-table td:nth-child(5) {
	width: 210px;
}

.msp-ai-usage-table th:nth-child(6),
.msp-ai-usage-table td:nth-child(6) {
	width: 170px;
}

.msp-ai-usage-table th:last-child,
.msp-ai-usage-table td:last-child {
	width: 82px;
	text-align: right;
	white-space: nowrap;
}

.msp-ai-category-label {
	display: block;
	margin-bottom: 5px;
	color: #dbeeff;
	font-size: 11px;
}

.msp-ai-event-badge,
.msp-ai-result-badge,
.msp-ai-tool-list span {
	display: inline-flex;
	align-items: center;
	min-height: 20px;
	padding: 1px 6px;
	border: 1px solid #44505e;
	border-radius: 3px;
	color: #aeb9c5;
	background: #222a33;
	font-size: 9px;
	font-weight: 800;
}

.msp-ai-event-badge.is-business_proposal {
	border-color: rgba(255, 159, 10, 0.38);
	color: #ffd08a;
	background: rgba(255, 159, 10, 0.08);
}

.msp-ai-event-badge.is-query {
	border-color: rgba(10, 132, 255, 0.38);
	color: #9fd0ff;
	background: rgba(10, 132, 255, 0.08);
}

.msp-ai-tool-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.msp-ai-tool-list span.is-error,
.msp-ai-result-badge.is-failed,
.msp-ai-result-badge.is-rejected {
	border-color: rgba(255, 69, 58, 0.42);
	color: #ffaaa4;
	background: rgba(255, 69, 58, 0.08);
}

.msp-ai-result-badge.is-executed,
.msp-ai-result-badge.is-completed {
	border-color: rgba(48, 209, 88, 0.38);
	color: #9be7ad;
	background: rgba(48, 209, 88, 0.08);
}

.msp-ai-result-badge.is-pending,
.msp-ai-result-badge.is-executing {
	border-color: rgba(255, 214, 10, 0.4);
	color: #ffe66f;
	background: rgba(255, 214, 10, 0.07);
}

.msp-ai-result-badge.is-expired,
.msp-ai-result-badge.is-superseded {
	border-color: rgba(191, 90, 242, 0.38);
	color: #d9a9f5;
	background: rgba(191, 90, 242, 0.07);
}

.msp-ai-duration {
	color: #8ca1b6;
	font-variant-numeric: tabular-nums;
}

.msp-ai-layout {
	display: grid;
	grid-template-columns: minmax(190px, 238px) minmax(0, 1fr);
	align-items: start;
	gap: 16px;
}

.msp-ai-sidebar {
	position: sticky;
	top: 14px;
	min-width: 0;
	border: 1px solid var(--msp-border);
	background: var(--msp-surface);
}

.msp-ai-sidebar-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
	padding: 7px 9px 7px 13px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-ai-sidebar-header h2 {
	margin: 0;
	font-size: 14px;
}

.msp-ai-thread-list {
	display: grid;
	padding: 5px;
}

.msp-ai-thread-list a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 7px 8px;
	border-left: 2px solid transparent;
	color: var(--msp-text-muted);
	text-decoration: none;
}

.msp-ai-thread-list a:hover,
.msp-ai-thread-list a.is-active {
	color: var(--msp-text);
	background: rgba(255, 255, 255, 0.045);
}

.msp-ai-thread-list a.is-active {
	border-left-color: var(--msp-primary);
}

.msp-ai-thread-list span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 700;
}

.msp-ai-thread-list small {
	color: #74747a;
	font-size: 9px;
}

.msp-ai-workspace {
	display: grid;
	min-width: 0;
	gap: 14px;
}

.msp-ai-conversation,
.msp-ai-examples,
.msp-ai-composer {
	min-width: 0;
	border: 1px solid var(--msp-border);
	background: var(--msp-surface);
}

.msp-ai-messages {
	display: grid;
	gap: 0;
}

.msp-ai-welcome {
	display: grid;
	grid-template-columns: 38px minmax(0, 1fr);
	gap: 12px;
	align-items: start;
	padding: 22px;
	color: var(--msp-text-muted);
}

.msp-ai-welcome > .dashicons {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid #38516d;
	border-radius: 6px;
	color: var(--msp-blue);
	background: #182838;
	font-size: 22px;
}

.msp-ai-welcome h2 {
	margin: 0 0 5px;
	color: var(--msp-text);
	font-size: 16px;
}

.msp-ai-welcome p {
	margin: 0;
	line-height: 1.6;
}

.msp-ai-message {
	display: grid;
	grid-template-columns: minmax(88px, 112px) minmax(0, 1fr) auto;
	gap: 14px;
	align-items: start;
	padding: 15px 17px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-ai-message.is-user {
	background: #202125;
}

.msp-ai-message-author {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #9bcaff;
	font-size: 11px;
	font-weight: 800;
}

.msp-ai-message.is-user .msp-ai-message-author {
	color: #d8d8dc;
}

.msp-ai-message-content {
	min-width: 0;
	color: #ebedf0;
	font-size: 13px;
	line-height: 1.7;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}

.msp-ai-response-references {
	display: grid;
	grid-column: 2;
	gap: 9px;
	min-width: 0;
	margin-top: -3px;
}

.msp-ai-reference-group {
	display: grid;
	gap: 5px;
}

.msp-ai-reference-group > strong {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #9aa2ac;
	font-size: 10px;
	font-weight: 800;
}

.msp-ai-reference-group.is-help > strong {
	color: #72b7ff;
}

.msp-ai-reference-group > strong .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

.msp-ai-reference-list {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.msp-ai-reference-list a {
	display: inline-grid;
	gap: 1px;
	max-width: min(100%, 360px);
	padding: 6px 8px;
	border: 1px solid #39424d;
	border-radius: 4px;
	color: #d9eaff;
	background: #20252b;
	text-decoration: none;
}

.msp-ai-reference-list a:hover,
.msp-ai-reference-list a:focus-visible {
	border-color: #4e8bc7;
	color: #fff;
	background: #242d37;
}

.msp-ai-reference-list a span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 11px;
	font-weight: 750;
}

.msp-ai-reference-list a small {
	overflow: hidden;
	color: #858e99;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-size: 9px;
}

.msp-ai-message time {
	grid-column: 3;
	grid-row: 1;
	color: #707078;
	font-size: 9px;
	white-space: nowrap;
}

.msp-ai-proposal-region:empty {
	display: none;
}

.msp-ai-proposal {
	margin: 14px;
	border: 1px solid #365b80;
	background: #182330;
}

.msp-ai-proposal > header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	padding: 14px 16px;
	border-bottom: 1px solid #30465e;
}

.msp-ai-proposal h2 {
	margin: 2px 0 4px;
	font-size: 17px;
}

.msp-ai-proposal header p:last-child {
	margin: 0;
	color: #aebdcd;
	font-size: 12px;
}

.msp-ai-proposal-status {
	flex: 0 0 auto;
	padding: 4px 7px;
	border: 1px solid rgba(255, 214, 10, 0.4);
	border-radius: 3px;
	color: #ffe66f;
	font-size: 10px;
	font-weight: 800;
}

.msp-ai-proposal-fields {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 0;
	padding: 5px 16px 10px;
}

.msp-ai-proposal-fields > div {
	display: grid;
	grid-template-columns: minmax(84px, 120px) minmax(0, 1fr);
	gap: 8px;
	padding: 8px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.msp-ai-proposal-fields dt {
	color: #8295a8;
	font-size: 10px;
}

.msp-ai-proposal-fields dd {
	margin: 0;
	color: #eef5fc;
	font-size: 12px;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.msp-ai-proposal .msp-table-wrap {
	margin: 5px 16px 10px;
}

.msp-ai-proposal-items th,
.msp-ai-proposal-items td {
	padding-top: 7px;
	padding-bottom: 7px;
	font-size: 11px;
}

.msp-ai-proposal-warnings {
	display: grid;
	gap: 4px;
	margin: 8px 16px;
	padding: 9px 12px 9px 28px;
	color: #ffd796;
	background: rgba(255, 159, 10, 0.09);
	font-size: 11px;
	line-height: 1.5;
}

.msp-ai-proposal-actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	padding: 12px 16px 14px;
	border-top: 1px solid #30465e;
}

.msp-ai-status {
	margin: 0;
	padding: 10px 14px;
	border-top: 1px solid var(--msp-border);
	color: #a9c8e8;
	background: #182330;
	font-size: 12px;
}

.msp-ai-status.is-error {
	color: #ffaaa4;
	background: #331c1d;
}

.msp-ai-execution-result {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 14px;
	padding: 12px 14px;
	border: 1px solid rgba(48, 209, 88, 0.4);
	color: #a7edb7;
	background: rgba(48, 209, 88, 0.08);
}

.msp-ai-execution-result > .dashicons {
	color: var(--msp-green);
}

.msp-ai-execution-result div {
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.msp-ai-execution-result a {
	color: var(--msp-blue);
	font-size: 12px;
}

.msp-ai-examples {
	padding: 12px 14px 14px;
}

.msp-ai-examples .msp-section-header {
	margin-bottom: 9px;
}

.msp-ai-example-list {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 7px;
}

.msp-ai-example-list button {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 7px;
	align-items: start;
	min-width: 0;
	padding: 9px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	color: var(--msp-text);
	background: var(--msp-surface-muted);
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.msp-ai-example-list button:hover,
.msp-ai-example-list button:focus-visible {
	border-color: #4777a8;
	background: #253242;
}

.msp-ai-example-list .dashicons {
	color: #7bbcff;
	font-size: 17px;
}

.msp-ai-example-list strong,
.msp-ai-example-list small {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-ai-example-list strong {
	font-size: 11px;
}

.msp-ai-example-list small {
	margin-top: 3px;
	color: var(--msp-text-muted);
	font-size: 9px;
}

.msp-ai-composer {
	position: sticky;
	z-index: 4;
	bottom: 8px;
	padding: 10px;
	box-shadow: 0 -10px 28px rgba(0, 0, 0, 0.28);
}

.msp-ai-composer textarea {
	display: block;
	width: 100%;
	min-height: 76px;
	resize: vertical;
	border: 0;
	color: var(--msp-text);
	background: transparent;
	font: inherit;
	line-height: 1.55;
}

.msp-ai-composer textarea:focus {
	outline: 0;
}

.msp-ai-composer-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding-top: 8px;
	border-top: 1px solid var(--msp-border);
}

.msp-ai-composer-actions small {
	color: #717177;
	font-size: 9px;
}

@media (min-width: 1500px) {
	.msp-ai-layout {
		grid-template-columns: 250px minmax(0, 1fr);
	}

	.msp-ai-example-list {
		grid-template-columns: repeat(7, minmax(0, 1fr));
	}
}

@media (max-width: 980px) {
	.msp-ai-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-ai-sidebar {
		position: static;
	}

	.msp-ai-thread-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-ai-example-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.msp-ai-view-tabs a {
		flex: 1 1 0;
		justify-content: center;
	}

	.msp-ai-date-filter {
		flex: 1 1 150px;
	}

	.msp-ai-date-filter input {
		width: 100%;
		min-width: 0;
	}

	.msp-ai-thread-list,
	.msp-ai-example-list,
	.msp-ai-proposal-fields {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-ai-message {
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 7px 12px;
	}

	.msp-ai-message-author {
		grid-column: 1;
	}

	.msp-ai-message-content {
		grid-column: 1 / -1;
	}

	.msp-ai-response-references {
		grid-column: 1 / -1;
	}

	.msp-ai-proposal > header,
	.msp-ai-proposal-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-ai-proposal-actions .msp-button {
		width: 100%;
	}
}

/* Server-side list sorting and precomputed contract delivery analytics. */
.msp-sort-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: inherit;
	text-decoration: none;
}

.msp-sort-link:hover,
.msp-sort-link:focus-visible,
.msp-table th.is-sorted .msp-sort-link {
	color: #75c9ff;
}

.msp-sort-link .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
	opacity: 0.34;
}

.msp-table th.is-sorted .msp-sort-link .dashicons {
	opacity: 1;
}

.msp-number-cell {
	text-align: right !important;
	font-variant-numeric: tabular-nums;
}

.msp-positive-value {
	color: #74d7b0;
}

.msp-warning-value {
	color: #ffd178;
}

.msp-identity-provisional {
	color: #ffd178;
}

.msp-analytics-progress {
	width: 88px;
	height: 4px;
	margin: 5px 0 0 auto;
	overflow: hidden;
	border-radius: 2px;
	background: rgba(255, 255, 255, 0.12);
}

.msp-analytics-progress > span {
	display: block;
	height: 100%;
	background: #58b9f5;
}

.msp-contract-item-action {
	width: 52px;
	min-width: 52px;
	text-align: center !important;
}

.msp-info-callout {
	margin: 0 0 14px;
	padding: 12px 14px;
	border-left: 3px solid #55bce9;
	background: rgba(41, 151, 205, 0.1);
}

.msp-info-callout p {
	margin: 4px 0 0;
	color: var(--msp-text-muted);
}

/* Terms, reminders, and confirmed financial ledger. */
.msp-inline-picker-row,
.msp-finance-row-actions {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.msp-inline-picker-row > select {
	min-width: 0;
	flex: 1 1 260px;
}

.msp-term-template-picker {
	padding: 10px;
	border-left: 3px solid var(--msp-blue);
	background: rgba(100, 210, 255, 0.055);
}

.msp-reminder-section {
	border-top: 2px solid var(--msp-purple);
}

.msp-financial-transactions {
	border-top: 2px solid var(--msp-green);
}

.msp-finance-summary {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 1px;
	margin-bottom: 12px;
	border: 1px solid var(--msp-border);
	background: var(--msp-border);
}

.msp-finance-summary > div {
	min-width: 0;
	padding: 10px 12px;
	background: var(--msp-surface-muted);
}

.msp-finance-summary span,
.msp-finance-summary strong {
	display: block;
}

.msp-finance-summary span {
	margin-bottom: 3px;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-finance-summary strong {
	overflow-wrap: anywhere;
	font-size: 14px;
}

.msp-finance-progress i {
	display: block;
	height: 4px;
	margin-top: 7px;
	overflow: hidden;
	background: var(--msp-border-strong);
}

.msp-finance-progress i b {
	display: block;
	height: 100%;
	background: var(--msp-green);
}

.msp-finance-status {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	padding: 2px 7px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	font-size: 11px;
	font-weight: 700;
}

.msp-finance-status-submitted {
	border-color: rgba(255, 159, 10, 0.55);
	color: var(--msp-orange);
}

.msp-finance-status-confirmed {
	border-color: rgba(48, 209, 88, 0.55);
	color: var(--msp-green);
}

.msp-finance-status-void {
	color: var(--msp-text-muted);
	text-decoration: line-through;
}

.msp-finance-row-actions {
	margin-top: 6px;
}

.msp-finance-attachments {
	margin-top: 5px;
}

.msp-notification-button {
	position: relative;
}

.msp-notification-button b {
	position: absolute;
	top: -5px;
	right: -5px;
	display: grid;
	min-width: 18px;
	height: 18px;
	place-items: center;
	padding: 0 4px;
	border: 2px solid var(--msp-sidebar);
	border-radius: 9px;
	background: var(--msp-red);
	color: #fff;
	font-size: 9px;
	line-height: 1;
}

.msp-urgent-reminder-dialog {
	width: min(560px, calc(100vw - 28px));
}

.msp-urgent-reminder-list {
	display: grid;
	gap: 6px;
	margin: 12px 0;
}

.msp-urgent-reminder-list a {
	display: block;
	padding: 10px 12px;
	border: 1px solid var(--msp-border);
	border-left: 3px solid var(--msp-orange);
	background: var(--msp-surface-muted);
	color: var(--msp-text);
	text-decoration: none;
}

.msp-urgent-reminder-list strong,
.msp-urgent-reminder-list small {
	display: block;
}

.msp-urgent-reminder-list small {
	margin-top: 3px;
	color: var(--msp-text-muted);
}

@media (max-width: 980px) {
	.msp-finance-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-finance-progress {
		grid-column: 1 / -1;
	}
}

@media (max-width: 560px) {
	.msp-finance-summary {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-finance-progress {
		grid-column: auto;
	}
}

@media (max-width: 520px) {
	.msp-stat-grid,
	.msp-form-grid {
		grid-template-columns: 1fr;
	}

	.msp-span-2 {
		grid-column: span 1;
	}

	.msp-checkbox-grid {
		grid-template-columns: 1fr;
	}

	.msp-access-grid,
	.msp-check-list,
	.msp-member-list {
		grid-template-columns: 1fr;
	}

	.msp-stat {
		min-height: 78px;
	}

	.msp-page-header h1,
	.msp-empty h1 {
		font-size: 24px;
	}

	.msp-button {
		min-height: 40px;
	}

	.msp-machine-facts {
		grid-template-columns: 1fr;
	}

	.msp-machine-facts > div {
		grid-column: span 1;
		border-right: 0;
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-machine-facts > div:last-child {
		border-bottom: 0;
	}

	.msp-asset-facts > div:nth-last-child(-n + 2) {
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-asset-facts > div:last-child {
		border-bottom: 0;
	}

	.msp-machine-meta dl {
		grid-template-columns: 1fr;
	}

	.msp-event-heading {
		flex-direction: column;
		gap: 6px;
	}

	.msp-event-details > div {
		grid-template-columns: 1fr;
	}

	.msp-void-form {
		align-items: stretch;
		flex-direction: column;
	}

	.msp-footer {
		flex-direction: column;
	}

body.login #login {
		width: calc(100% - 28px);
	}
}

.msp-commercial-facts {
	display: grid;
	grid-template-columns: repeat(4, minmax(150px, 1fr));
	margin: 0 0 22px;
	border-block: 1px solid var(--msp-border);
	background: var(--msp-surface);
}

.msp-commercial-facts > div {
	display: flex;
	min-height: 86px;
	flex-direction: column;
	justify-content: center;
	gap: 5px;
	padding: 15px 18px;
	border-right: 1px solid var(--msp-border);
}

.msp-commercial-facts > div:nth-child(4n) {
	border-right: 0;
}

.msp-commercial-facts span,
.msp-commercial-facts small {
	color: var(--msp-text-muted);
}

.msp-commercial-facts strong {
	font-size: 16px;
}

.msp-commercial-facts .msp-fact-subline {
	display: block;
	margin-top: 1px;
	font-size: 12px;
	line-height: 1.35;
}

.msp-contract-workspace {
	display: grid;
	min-width: 0;
	gap: 18px;
}

.msp-contract-tabs {
	position: sticky;
	top: 12px;
	z-index: 24;
	display: flex;
	min-width: 0;
	gap: 4px;
	padding: 5px;
	overflow-x: auto;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: rgba(28, 28, 30, 0.96);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
	scrollbar-width: thin;
}

.msp-contract-tab {
	display: inline-flex;
	min-width: 124px;
	height: 42px;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 14px;
	border: 1px solid transparent;
	border-radius: 4px;
	background: transparent;
	color: var(--msp-text-muted);
	font: inherit;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
}

.msp-contract-tab:hover {
	border-color: var(--msp-border);
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

.msp-contract-tab:focus-visible {
	outline: 2px solid var(--msp-blue);
	outline-offset: 1px;
}

.msp-contract-tab.is-active,
.msp-contract-tab[aria-selected="true"] {
	border-color: rgba(10, 132, 255, 0.46);
	background: rgba(10, 132, 255, 0.14);
	color: #f5f9ff;
}

.msp-contract-tab .dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
}

.msp-contract-tab small {
	display: inline-grid;
	min-width: 20px;
	height: 20px;
	place-items: center;
	padding: 0 6px;
	border-radius: 10px;
	background: var(--msp-surface-muted);
	color: var(--msp-text-muted);
	font-size: 11px;
	line-height: 1;
}

.msp-contract-tab.is-active small,
.msp-contract-tab[aria-selected="true"] small {
	background: rgba(10, 132, 255, 0.24);
	color: #dcecff;
}

.msp-contract-tab-panel {
	display: grid;
	min-width: 0;
	gap: 18px;
}

.msp-contract-workspace.is-enhanced .msp-contract-tab-panel[hidden] {
	display: none;
}

.msp-trade-document-section + .msp-trade-document-section {
	margin-top: 22px;
}

.msp-trade-document-total-row td {
	padding-top: 15px;
	padding-bottom: 15px;
	border-top: 2px solid var(--msp-border-strong);
	background: var(--msp-surface-muted);
	font-size: 14px;
	font-weight: 800;
}

.msp-trade-document-total-row td:first-child {
	color: var(--msp-text-muted);
	text-align: right;
}

.msp-trade-document-total-row .msp-money-cell {
	color: var(--msp-blue);
}

.msp-commercial-badge {
	display: inline-flex;
	width: fit-content;
	align-items: center;
	min-height: 24px;
	padding: 2px 8px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 5px;
	background: var(--msp-surface-raised);
	color: var(--msp-text);
	font-size: 12px;
	font-weight: 700;
}

.msp-commercial-status-completed,
.msp-commercial-status-available,
.msp-commercial-status-issued {
	border-color: rgba(48, 209, 88, 0.45);
	color: var(--msp-green);
}

.msp-commercial-status-collecting,
.msp-commercial-status-invoicing,
.msp-commercial-status-inspection {
	border-color: rgba(255, 214, 10, 0.45);
	color: var(--msp-amber);
}

.msp-commercial-status-cancelled,
.msp-commercial-status-void,
.msp-commercial-status-retired {
	border-color: rgba(255, 69, 58, 0.45);
	color: var(--msp-red);
}

.msp-contract-completion-section {
	border-top: 3px solid var(--msp-blue);
}

.msp-contract-completion-list {
	display: grid;
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--msp-border);
	list-style: none;
}

.msp-contract-completion-list li {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	min-height: 62px;
	padding: 10px 4px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-contract-completion-number {
	display: grid;
	width: 26px;
	height: 26px;
	place-items: center;
	border: 1px solid var(--msp-border-strong);
	border-radius: 50%;
	color: var(--msp-text-muted);
	font-size: 12px;
	font-weight: 800;
}

.msp-contract-completion-list li.is-complete .msp-contract-completion-number {
	border-color: rgba(48, 209, 88, 0.45);
	background: rgba(48, 209, 88, 0.08);
	color: var(--msp-green);
}

.msp-contract-completion-list li > div {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.msp-contract-completion-list strong {
	font-size: 13px;
}

.msp-contract-completion-list small,
.msp-contract-completion-footnote {
	color: var(--msp-text-muted);
	font-size: 12px;
	line-height: 1.6;
}

.msp-contract-completion-result {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 800;
}

.msp-contract-completion-list .is-complete .msp-contract-completion-result {
	color: var(--msp-green);
}

.msp-contract-completion-list .is-pending .msp-contract-completion-result {
	color: var(--msp-amber);
}

.msp-contract-completion-result .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-contract-completion-footnote {
	margin: 12px 0 0;
}

.msp-contract-completion-footnote strong {
	color: var(--msp-blue);
}

@media (max-width: 640px) {
	.msp-contract-completion-list li {
		grid-template-columns: 26px minmax(0, 1fr);
	}

	.msp-contract-completion-result {
		grid-column: 2;
	}
}

.msp-contract-table {
	min-width: 1040px;
}

.msp-table th.msp-money-cell,
.msp-table td.msp-money-cell,
.msp-money-value {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.msp-money-value {
	display: block;
}

.msp-purchase-price-table {
	--msp-sticky-first-column: 140px;
	--msp-sticky-second-column: 112px;
	min-width: 1400px;
}

.msp-current-cost-cell {
	min-width: 164px;
}

.msp-current-supplier {
	display: block;
	overflow: hidden;
	max-width: 210px;
	color: var(--msp-text-muted);
	font-weight: 700;
	text-overflow: ellipsis;
}

.msp-current-cost-cell .msp-money-value {
	margin-top: 4px;
	color: var(--msp-text);
	font-size: 13px;
	font-weight: 800;
}

.msp-table th.msp-price-formula-cell,
.msp-table td.msp-price-formula-cell {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.msp-price-formula {
	display: inline-flex;
	align-items: baseline;
	gap: 4px;
	font-weight: 800;
	white-space: nowrap;
}

.msp-price-formula-heading {
	gap: 0;
}

.msp-price-formula-a {
	color: var(--msp-orange);
}

.msp-price-formula-operator {
	color: var(--msp-text-muted);
	font-weight: 600;
}

.msp-price-formula-b {
	color: var(--msp-blue);
}

.msp-purchase-quote-actions {
	display: flex;
	align-items: center;
	gap: 6px;
}

.msp-purchase-quote-actions .msp-icon-button {
	width: 30px;
	height: 30px;
	flex: 0 0 30px;
}

.msp-external-source-link {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: var(--msp-accent);
}

.msp-external-source-link .dashicons {
	font-size: 15px;
	width: 15px;
	height: 15px;
}

.msp-purchase-price-table th:nth-child(2),
.msp-purchase-price-table td:nth-child(2) {
	width: 112px;
}

.msp-quotation-table {
	min-width: 980px;
}

.msp-quotation-items-table {
	min-width: 920px;
}

.msp-quotation-items-table tfoot td {
	border-top: 1px solid var(--msp-border-strong);
	font-size: 14px;
	text-align: right;
}

.msp-quotation-documents-table {
	min-width: 780px;
	table-layout: fixed;
}

.msp-quotation-documents-table th:nth-child(1),
.msp-quotation-documents-table td:nth-child(1) {
	width: 24%;
}

.msp-quotation-documents-table th:nth-child(2),
.msp-quotation-documents-table td:nth-child(2) {
	width: 18%;
}

.msp-quotation-documents-table th:nth-child(3),
.msp-quotation-documents-table td:nth-child(3) {
	width: 28%;
	overflow-wrap: anywhere;
	white-space: normal;
}

.msp-quotation-documents-table .msp-quotation-attachment-cell {
	width: 30%;
	min-width: 0;
	white-space: normal;
}

.msp-quotation-documents-table .msp-attachments {
	min-width: 0;
	margin-top: 0;
}

.msp-quotation-documents-table .msp-attachment-list {
	grid-template-columns: minmax(0, 1fr);
}

.msp-quotation-documents-table .msp-attachment-item,
.msp-quotation-documents-table .msp-attachment-link {
	min-width: 0;
	max-width: 100%;
}

.msp-form-subsection {
	padding: 16px;
	border: 1px solid var(--msp-border);
	background: rgba(10, 132, 255, 0.045);
}

.msp-form-subsection-heading {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin-bottom: 14px;
}

.msp-form-subsection-heading .dashicons {
	color: var(--msp-accent);
}

.msp-form-subsection-heading strong,
.msp-form-subsection-heading small {
	display: block;
}

.msp-form-subsection-heading small {
	margin-top: 4px;
	color: var(--msp-text-muted);
	line-height: 1.5;
}

.msp-quotation-aux-fields {
	padding-top: 14px;
	border-top: 1px solid var(--msp-border);
}

.msp-quotation-language-table {
	min-width: 760px;
}

.msp-language-output-actions {
	display: flex;
	gap: 8px;
	white-space: nowrap;
}

.msp-language-output-actions .msp-button {
	min-height: 34px;
	padding: 6px 10px;
}

.msp-dialog > .msp-dialog-header,
.msp-dialog > .msp-dialog-toolbar,
.msp-dialog > .msp-table-wrap {
	margin-right: 22px;
	margin-left: 22px;
}

.msp-dialog > .msp-dialog-header {
	margin-top: 22px;
}

.msp-dialog-toolbar,
.msp-section-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 8px;
	padding: 0 0 16px;
}

.msp-section-actions {
	padding: 16px 20px;
	border-top: 1px solid var(--msp-border);
}

.msp-compact-number-input {
	width: 84px;
	min-width: 84px;
}

.msp-quotation-picker {
	border-top: 2px solid var(--msp-primary);
}

.msp-quotation-terms {
	display: grid;
	gap: 0;
	margin: 0;
}

.msp-quotation-terms > div {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: 18px;
	padding: 14px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-quotation-terms > div:last-child {
	border-bottom: 0;
}

.msp-quotation-terms dt {
	color: var(--msp-text-muted);
	font-weight: 800;
}

.msp-quotation-terms dd {
	margin: 0;
}

.msp-status-active,
.msp-status-issued,
.msp-status-accepted {
	background: rgba(48, 209, 88, 0.15);
	color: #63e682;
}

.msp-status-draft {
	background: rgba(10, 132, 255, 0.17);
	color: #64d2ff;
}

.msp-status-expired,
.msp-status-inactive {
	background: rgba(142, 142, 147, 0.18);
	color: #c7c7cc;
}

.msp-status-rejected,
.msp-status-cancelled {
	background: rgba(255, 69, 58, 0.16);
	color: #ff6961;
}

.msp-status-submitted,
.msp-status-requested,
.msp-status-reviewing,
.msp-status-quoted {
	background: rgba(10, 132, 255, 0.17);
	color: #64d2ff;
}

.msp-status-approved,
.msp-status-ordered,
.msp-status-received {
	background: rgba(48, 209, 88, 0.15);
	color: #63e682;
}

.msp-status-partial_received {
	background: rgba(255, 159, 10, 0.16);
	color: #ffb340;
}

.msp-purchase-order-summary .msp-quotation-terms,
.msp-purchase-order-timeline {
	padding-right: 20px;
	padding-left: 20px;
}

.msp-purchase-order-timeline {
	padding-top: 18px;
}

.msp-switch {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-weight: 500;
}

.msp-switch input {
	margin-top: 2px;
}

.msp-purchase-order-table th:first-child,
.msp-purchase-order-table td:first-child {
	min-width: 190px;
}

.msp-purchase-order-items th:first-child,
.msp-purchase-order-items td:first-child {
	min-width: 220px;
}

.msp-preserve-lines {
	margin: 0;
	white-space: pre-line;
}

.msp-contract-timeline {
	position: relative;
	display: grid;
	gap: 0;
}

.msp-contract-timeline::before {
	position: absolute;
	inset: 7px auto 7px 155px;
	width: 1px;
	background: var(--msp-border-strong);
	content: "";
}

.msp-contract-timeline article {
	position: relative;
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 38px;
	padding: 0 0 24px;
}

.msp-contract-timeline article::before {
	position: absolute;
	top: 6px;
	left: 151px;
	width: 9px;
	height: 9px;
	border: 2px solid var(--msp-bg);
	border-radius: 50%;
	background: var(--msp-primary);
	box-shadow: 0 0 0 1px var(--msp-primary);
	content: "";
}

.msp-contract-timeline time {
	color: var(--msp-text-muted);
	font-size: 12px;
	text-align: right;
}

.msp-contract-timeline article > div > span {
	color: var(--msp-blue);
	font-size: 11px;
	font-weight: 700;
}

.msp-contract-timeline h3 {
	margin: 3px 0 5px;
	font-size: 15px;
}

.msp-contract-timeline p {
	margin: 0;
	color: var(--msp-text-muted);
}

.msp-contract-attachment-cell {
	min-width: 220px;
	max-width: 320px;
}

.msp-contract-attachment-cell .msp-attachment-list {
	grid-template-columns: minmax(180px, 1fr);
}

.msp-contract-timeline .msp-contract-attachments {
	max-width: 620px;
}

@media (max-width: 980px) {
	.msp-commercial-facts {
		grid-template-columns: repeat(2, minmax(140px, 1fr));
	}

	.msp-commercial-facts > div:nth-child(2n) {
		border-right: 0;
	}
}

@media (max-width: 620px) {
	.msp-commercial-facts {
		grid-template-columns: 1fr;
	}

	.msp-contract-workspace,
	.msp-contract-tab-panel {
		gap: 14px;
	}

	.msp-contract-tabs {
		top: 8px;
		padding: 4px;
	}

	.msp-contract-tab {
		min-width: 108px;
		height: 40px;
		padding: 0 11px;
	}

	.msp-commercial-facts > div {
		border-right: 0;
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-contract-timeline::before {
		left: 7px;
	}

	.msp-contract-timeline article {
		grid-template-columns: 1fr;
		gap: 5px;
		padding-left: 28px;
	}

	.msp-contract-timeline article::before {
		left: 3px;
	}

	.msp-contract-timeline time {
		text-align: left;
	}

	.msp-quotation-terms > div {
		grid-template-columns: 1fr;
		gap: 5px;
	}
}
.msp-service-manage-link {
	appearance: none;
	background: transparent;
	border: 0;
	cursor: pointer;
	font: inherit;
	padding: 0;
}

.msp-service-guide {
	background: #101b28;
	border: 1px solid #2b4157;
	border-left: 4px solid #39a6d8;
	border-radius: 6px;
	margin: 0 0 18px;
	padding: 16px 18px;
}

.msp-service-guide h3 {
	font-size: 15px;
	margin: 0 0 12px;
}

.msp-service-guide dl {
	display: grid;
	gap: 10px;
	margin: 0;
}

.msp-service-guide dl > div {
	display: grid;
	gap: 4px;
	grid-template-columns: minmax(150px, .35fr) minmax(0, 1.65fr);
}

.msp-service-guide dt {
	color: #d7e7f3;
	font-weight: 700;
}

.msp-service-guide dd {
	color: #9eb2c4;
	line-height: 1.65;
	margin: 0;
}

.msp-service-current {
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	margin: 0 0 18px;
}

.msp-service-current > div {
	background: #0c151f;
	border: 1px solid #27394b;
	border-radius: 6px;
	display: grid;
	gap: 6px;
	min-width: 0;
	padding: 12px;
}

.msp-service-current small,
.msp-service-current span {
	color: #8fa5b8;
}

.msp-service-current strong {
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.msp-service-status {
	border: 1px solid transparent;
	border-radius: 999px;
	display: inline-flex;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.3;
	padding: 4px 8px;
	white-space: nowrap;
}

.msp-service-status-normal {
	background: rgba(46, 160, 107, .16);
	border-color: rgba(73, 196, 139, .35);
	color: #83ddb0;
}

.msp-service-status-warning {
	background: rgba(215, 154, 42, .17);
	border-color: rgba(230, 176, 69, .38);
	color: #f2ca76;
}

.msp-service-status-due,
.msp-service-status-overdue,
.msp-service-status-expired {
	background: rgba(201, 68, 79, .17);
	border-color: rgba(221, 89, 101, .4);
	color: #f0939d;
}

.msp-service-status-unknown,
.msp-service-status-disabled {
	background: rgba(121, 139, 155, .14);
	border-color: rgba(144, 161, 176, .3);
	color: #b3c0cb;
}

.msp-reminder-count {
	background: rgba(57, 166, 216, .13);
	border: 1px solid rgba(57, 166, 216, .3);
	border-radius: 999px;
	color: #8fd5f3;
	font-size: 12px;
	font-weight: 700;
	padding: 5px 9px;
}

.msp-service-row-expired td,
.msp-service-row-due td,
.msp-service-row-overdue td {
	background: rgba(145, 38, 49, .08);
}

.msp-contract-reminder-guide {
	align-items: flex-start;
	background: #101b28;
	border: 1px solid #2b4157;
	border-left: 4px solid #39a6d8;
	border-radius: 6px;
	color: #9eb2c4;
	display: flex;
	gap: 10px;
	line-height: 1.6;
	margin: 0 0 16px;
	padding: 12px 14px;
}

.msp-contract-reminder-guide .dashicons {
	color: #78c9ee;
	flex: 0 0 auto;
	margin-top: 2px;
}

.msp-contract-reminder-guide p {
	margin: 0;
}

.msp-contract-plan-picker select {
	min-height: 44px;
}

.msp-contract-plan-node[hidden] {
	display: none;
}

@media (max-width: 720px) {
	.msp-service-guide dl > div {
		grid-template-columns: 1fr;
	}
}

/* Inventory */
.msp-segmented-control {
	display: inline-flex;
	flex-wrap: wrap;
	width: fit-content;
	max-width: 100%;
	margin: 0 0 22px;
	padding: 3px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-segmented-control a {
	flex: 0 0 auto;
	min-width: 112px;
	min-height: 34px;
	padding: 7px 14px;
	border-radius: 4px;
	color: var(--msp-text-muted);
	font-size: 13px;
	font-weight: 700;
	text-align: center;
}

.msp-segmented-control a:hover,
.msp-segmented-control a:focus,
.msp-segmented-control a.is-active {
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

.msp-inventory-category-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(178px, 1fr));
	gap: 10px;
	margin: 0 0 22px;
}

.msp-inventory-category-grid a {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr);
	align-items: center;
	gap: 10px;
	min-height: 64px;
	padding: 12px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
	color: var(--msp-text);
}

.msp-inventory-category-grid a:hover,
.msp-inventory-category-grid a:focus {
	border-color: var(--msp-primary);
	background: var(--msp-surface-muted);
}

.msp-inventory-category-grid .dashicons {
	display: grid;
	width: 34px;
	height: 34px;
	place-items: center;
	border-radius: 5px;
	background: rgba(10, 132, 255, .13);
	color: var(--msp-blue);
}

.msp-inventory-category-grid span:not(.dashicons) {
	min-width: 0;
	font-size: 12px;
	font-weight: 700;
}

.msp-inventory-category-grid a > div {
	display: grid;
	min-width: 0;
}

.msp-inventory-category-grid a > div strong {
	font-size: 14px;
}

.msp-inventory-category-grid a > div small {
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-inventory-category-grid dl {
	display: grid;
	grid-column: 1 / -1;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
	margin: 0;
	padding-top: 9px;
	border-top: 1px solid var(--msp-border);
}

.msp-inventory-category-grid dl > div {
	display: grid;
	gap: 1px;
}

.msp-inventory-category-grid dt {
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-inventory-overview-note {
	margin: 10px 0;
	color: var(--msp-text-muted);
	font-size: 13px;
}

.msp-assembly-counts {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	padding: 8px 0 12px;
	color: var(--msp-text-muted);
	font-size: 13px;
}

.msp-assembly-counts strong { color: var(--msp-text); font-variant-numeric: tabular-nums; }
.msp-assembly-group { border-top: 1px solid var(--msp-border); }
.msp-assembly-group > summary {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 14px;
	padding: 12px 4px;
	cursor: pointer;
	list-style: none;
}
.msp-assembly-group > summary::before { content: '+'; color: #76b7ff; font-size: 18px; width: 16px; }
.msp-assembly-group[open] > summary::before { content: '-'; }
.msp-assembly-group > summary small { color: var(--msp-text-muted); }
.msp-assembly-group > summary:focus-visible { outline: 2px solid #76b7ff; outline-offset: 2px; }
.msp-assembly-badge { font-size: 13px; white-space: normal; }
.msp-assembly-factory { color: #86bdff; }
.msp-assembly-pending { color: #ffd180; }
.msp-assembly-shipped { color: #8cd9aa; }
.msp-workflow-notices { position: fixed; right: 22px; bottom: 64px; z-index: 90; width: min(380px, calc(100vw - 32px)); max-height: min(640px, calc(100dvh - 110px)); overflow-y: auto; padding: 14px; border: 1px solid #426796; border-top: 3px solid #78aefe; border-radius: 6px; background: #202227; color: #f1f3f6; box-shadow: 0 10px 30px #0008; }
.msp-workflow-notices[hidden] { display: none; }
.msp-workflow-notices > header { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.msp-workflow-notices > header strong { display: flex; align-items: center; gap: 8px; font-size: 16px; }
.msp-workflow-notices section { padding: 12px 0; border-top: 1px solid #414750; margin-top: 8px; }
.msp-workflow-notices section > strong { display: block; font-size: 15px; line-height: 1.5; overflow-wrap: anywhere; }
.msp-workflow-notices section > small { display: block; margin-top: 4px; color: #b5bdc9; font-size: 13px; }
.msp-workflow-row-actions { display: flex; gap: 8px; margin-top: 9px; }
.msp-workflow-error { color: #ffc883; font-size: 13px; }
@media print { .msp-workflow-notices { display: none !important; } }
.msp-assembly-historical, .msp-inventory-history-label, .msp-inventory-shipment-evidence-confirmed_history { color: #91bfff; }
.msp-assembly-review { color: #ffbd82; }
.msp-assembly-table { min-width: 920px; }
.msp-assembly-table td { vertical-align: middle; }
.msp-assembly-table .msp-table-subline { white-space: normal; overflow-wrap: anywhere; }
.msp-assembly-depth-0 > td:first-child { border-left: 3px solid #86bdff; }
.msp-table.msp-assembly-table .msp-assembly-depth-1 > td:first-child { padding-left: 24px; border-left: 3px solid #c3a9ec; }
.msp-table.msp-assembly-table .msp-assembly-depth-2 > td:first-child { padding-left: 42px; border-left: 3px solid var(--msp-border); }
.msp-assembly-table th:first-child { width: 190px; }
.msp-assembly-table th:last-child { width: 290px; }

.msp-inventory-category-grid dd {
	margin: 0;
	font-size: 16px;
	font-weight: 750;
	font-variant-numeric: tabular-nums;
}

.msp-inventory-table {
	min-width: 1260px;
}

.msp-inventory-code,
.msp-inventory-code-preview code {
	color: var(--msp-text);
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: 13px;
	font-variant-numeric: tabular-nums;
	letter-spacing: 0;
}

.msp-inventory-code-preview {
	gap: 5px;
	padding: 12px 14px;
	border: 1px solid var(--msp-border);
	background: var(--msp-surface-muted);
}

.msp-inventory-code-preview code {
	font-size: 16px;
	font-weight: 750;
}

.msp-inventory-code-preview small {
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-simple-stock-state {
	display: inline-flex;
	font-weight: 700;
}

.msp-simple-stock-state-in_stock {
	color: #74e891;
}

.msp-simple-stock-state-waiting_receipt {
	color: #ffc264;
}

.msp-simple-stock-state-inspection {
	color: #d99af7;
}

.msp-simple-stock-state-conflict,
.msp-simple-stock-state-unavailable {
	color: #ff8a83;
}

.msp-simple-stock-state-outbound,
.msp-simple-stock-state-historical_outbound,
.msp-simple-stock-state-managed,
.msp-simple-stock-state-registered,
.msp-simple-stock-state-not_received {
	color: var(--msp-text-muted);
}

.msp-inventory-receive-link {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	color: #64d2ff;
	font-weight: 700;
	white-space: nowrap;
}

.msp-inventory-receive-link .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
	line-height: 14px;
}

.msp-inventory-receive-link:hover,
.msp-inventory-receive-link:focus-visible {
	color: var(--msp-primary-hover);
	text-decoration: underline;
}

.msp-inventory-blocked-reason {
	max-width: 240px;
	color: #ff9f99;
	line-height: 1.45;
	white-space: normal;
}

.msp-inventory-managed-hint {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	margin-left: 5px;
	color: #ff8a83;
	cursor: help;
	vertical-align: middle;
}

.msp-inventory-managed-hint .dashicons {
	width: 15px;
	height: 15px;
	font-size: 15px;
	line-height: 15px;
}

.msp-inventory-managed-hint:focus-visible {
	border-radius: 3px;
	outline: 2px solid var(--msp-primary);
	outline-offset: 2px;
}

.msp-inventory-table th:nth-child(n+5):nth-child(-n+8),
.msp-inventory-table td:nth-child(n+5):nth-child(-n+8) {
	width: 66px;
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.msp-inventory-advice {
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 3px 8px;
	border: 1px solid var(--msp-border);
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
}

.msp-inventory-advice-clear {
	border-color: rgba(48, 209, 88, .35);
	background: rgba(48, 209, 88, .12);
	color: #74e891;
}

.msp-inventory-advice-approval {
	border-color: rgba(255, 214, 10, .34);
	background: rgba(255, 214, 10, .11);
	color: #ffe365;
}

.msp-inventory-advice-dispatch {
	border-color: rgba(10, 132, 255, .38);
	background: rgba(10, 132, 255, .13);
	color: #75b9ff;
}

.msp-inventory-advice-quarantine {
	border-color: rgba(191, 90, 242, .34);
	background: rgba(191, 90, 242, .12);
	color: #d99af7;
}

.msp-inventory-advice-blocked {
	border-color: rgba(255, 69, 58, .35);
	background: rgba(255, 69, 58, .12);
	color: #ff8a83;
}

.msp-inventory-state-quarantine,
.msp-inventory-state-available,
.msp-inventory-state-waiting,
.msp-inventory-state-reserved,
.msp-inventory-state-pending,
.msp-inventory-state-registered,
.msp-inventory-state-outbound,
.msp-inventory-state-historical-outbound,
.msp-inventory-state-managed {
	margin: 2px 4px 2px 0;
}

.msp-inventory-state-conflict {
	margin: 2px 4px 2px 0;
	border-color: rgba(255, 69, 58, .4);
	color: #ff8a83;
}

.msp-inventory-state-quarantine {
	border-color: rgba(191, 90, 242, .34);
	color: #d99af7;
}

.msp-inventory-state-available {
	border-color: rgba(48, 209, 88, .35);
	color: #74e891;
}

.msp-inventory-state-waiting {
	border-color: rgba(255, 159, 10, .38);
	color: #ffc264;
}

.msp-inline-action-form {
	display: inline-flex;
	margin: 0;
}

.msp-inline-action-form .msp-button {
	min-height: 34px;
	padding: 6px 10px;
	white-space: nowrap;
}

.msp-inventory-state-reserved {
	border-color: rgba(10, 132, 255, .4);
	color: #74b8ff;
}

.msp-inventory-state-pending {
	border-color: rgba(255, 159, 10, .38);
	color: #ffc264;
}

.msp-inventory-state-registered,
.msp-inventory-state-outbound,
.msp-inventory-state-historical-outbound,
.msp-inventory-state-managed {
	border-color: var(--msp-border);
	color: var(--msp-text-muted);
}

.msp-inventory-shipment-table {
	min-width: 1260px;
}

.msp-inventory-shipment-table th:nth-child(3),
.msp-inventory-shipment-table td:nth-child(3) {
	min-width: 174px;
}

.msp-inventory-shipment-evidence-formal {
	border-color: rgba(48, 209, 88, .35);
	background: rgba(48, 209, 88, .12);
	color: #74e891;
}

.msp-inventory-shipment-evidence-recorded {
	border-color: rgba(10, 132, 255, .4);
	background: rgba(10, 132, 255, .12);
	color: #74b8ff;
}

.msp-inventory-shipment-evidence-inferred {
	border-color: rgba(255, 159, 10, .38);
	background: rgba(255, 159, 10, .11);
	color: #ffc264;
}

.msp-table-contract-link {
	display: block;
	width: max-content;
	max-width: 100%;
	color: var(--msp-primary-hover);
	font-weight: 700;
}

.msp-inventory-approvals {
	margin-top: 22px;
}

.msp-inventory-dashboard-metrics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.msp-inventory-dashboard-metrics a {
	display: flex;
	min-height: 74px;
	flex-direction: column;
	justify-content: center;
	padding: 12px 14px;
	border-left: 3px solid var(--msp-primary);
	background: var(--msp-surface-muted);
	color: var(--msp-text);
}

.msp-inventory-dashboard-metrics strong {
	font-size: 22px;
	font-variant-numeric: tabular-nums;
}

.msp-inventory-dashboard-metrics span {
	color: var(--msp-text-muted);
	font-size: 12px;
}

.msp-material-mode,
.msp-kanban-state {
	display: inline-flex;
	align-items: center;
	min-height: 25px;
	padding: 3px 8px;
	border: 1px solid var(--msp-border);
	border-radius: 999px;
	background: transparent;
	color: var(--msp-text);
	font: inherit;
	font-size: 12px;
	font-weight: 750;
	white-space: nowrap;
}

button.msp-material-mode {
	cursor: pointer;
}

button.msp-material-mode:hover,
button.msp-material-mode:focus-visible {
	border-color: var(--msp-primary);
	color: var(--msp-primary-hover);
}

.msp-material-mode-work_order {
	border-color: rgba(10, 132, 255, .4);
	color: #74b8ff;
}

.msp-material-mode-kanban,
.msp-kanban-state-normal {
	border-color: rgba(48, 209, 88, .35);
	color: #74e891;
}

.msp-material-mode-nonstock {
	color: var(--msp-text-muted);
}

.msp-kanban-state-near_min {
	border-color: rgba(255, 214, 10, .34);
	color: #ffe365;
}

.msp-kanban-state-replenish,
.msp-kanban-state-ordered {
	border-color: rgba(255, 159, 10, .38);
	color: #ffc264;
}

.msp-kanban-state-stockout {
	border-color: rgba(255, 69, 58, .35);
	color: #ff8a83;
}

.msp-material-policy-note {
	min-height: 42px;
	padding: 10px 12px;
	border-left: 3px solid var(--msp-primary);
	background: var(--msp-surface-muted);
	color: var(--msp-text-muted);
	font-size: 12px;
	line-height: 1.55;
}

.msp-workflow-help {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr) auto;
	align-items: center;
	gap: 10px;
	margin: 0 0 14px;
	padding: 10px 12px;
	border-left: 3px solid var(--msp-primary);
	border-top: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
	background: rgba(10, 132, 255, .07);
}

.msp-workflow-help > .dashicons {
	width: 20px;
	height: 20px;
	color: var(--msp-blue);
	font-size: 20px;
}

.msp-workflow-help strong,
.msp-workflow-help p {
	margin: 0;
}

.msp-workflow-help strong {
	display: block;
	font-size: 12px;
}

.msp-workflow-help p {
	margin-top: 2px;
	color: var(--msp-text-muted);
	font-size: 11px;
	line-height: 1.5;
}

.msp-inline-help-link {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--msp-blue);
	font-size: 11px;
	font-weight: 750;
	white-space: nowrap;
}

.msp-inline-help-link:hover,
.msp-inline-help-link:focus-visible {
	color: #fff;
}

.msp-inline-help-link .dashicons {
	width: 15px;
	height: 15px;
	font-size: 15px;
}

.msp-field-help-with-link {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px;
}

.msp-dialog .msp-workflow-help {
	margin: 0 0 16px;
}

.msp-kanban-table {
	min-width: 1120px;
}

.msp-kanban-table th:nth-child(5),
.msp-kanban-table td:nth-child(5) {
	text-align: right;
	font-variant-numeric: tabular-nums;
}

.msp-kanban-actions {
	display: inline-flex;
	align-items: center;
	gap: 5px;
}

@media (max-width: 720px) {
	.msp-workflow-help {
		grid-template-columns: 18px minmax(0, 1fr);
	}

	.msp-workflow-help > .msp-inline-help-link {
		grid-column: 2;
		justify-self: start;
	}

	.msp-field-help-with-link {
		flex-direction: column;
	}

	.msp-segmented-control {
		display: flex;
		width: 100%;
	}

	.msp-segmented-control a {
		flex: 1 1 calc(50% - 3px);
	}

	.msp-inventory-category-grid {
		grid-template-columns: 1fr 1fr;
	}

	.msp-inventory-dashboard-metrics {
		grid-template-columns: 1fr;
	}
}

/* Help center and private wiki */
.msp-mobile-header-actions {
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.msp-context-help {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 18;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 8px 12px;
	border: 1px solid rgba(100, 210, 255, .42);
	border-radius: 6px;
	background: rgba(28, 28, 30, .96);
	box-shadow: 0 12px 34px rgba(0, 0, 0, .42);
	color: var(--msp-blue);
	font-size: 12px;
	font-weight: 750;
	backdrop-filter: blur(12px);
}

.msp-context-help:hover,
.msp-context-help:focus {
	border-color: var(--msp-blue);
	background: var(--msp-surface-raised);
	color: #fff;
}

.msp-context-help .dashicons {
	width: 18px;
	height: 18px;
	font-size: 18px;
}

.msp-help-welcome {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) auto;
	align-items: center;
	gap: 18px;
	margin: 0 0 22px;
	padding: 19px 0 19px 18px;
	border-left: 3px solid var(--msp-primary);
	border-bottom: 1px solid var(--msp-border);
}

.msp-help-welcome h2,
.msp-help-welcome p {
	margin: 0;
}

.msp-help-welcome > div:nth-child(2) > p:last-child {
	margin-top: 8px;
	color: var(--msp-text-muted);
}

.msp-help-welcome-icon {
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border: 1px solid rgba(10, 132, 255, .35);
	border-radius: 6px;
	background: rgba(10, 132, 255, .11);
	color: var(--msp-primary);
}

.msp-help-welcome-icon .dashicons {
	width: 28px;
	height: 28px;
	font-size: 28px;
}

.msp-help-role-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-top: 7px;
}

.msp-help-role-chips span {
	display: inline-flex;
	min-height: 24px;
	align-items: center;
	padding: 3px 8px;
	border: 1px solid rgba(191, 90, 242, .35);
	border-radius: 999px;
	background: rgba(191, 90, 242, .1);
	color: #d99af7;
	font-size: 11px;
	font-weight: 700;
}

.msp-help-search {
	display: flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 26px;
	padding: 10px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
}

.msp-help-search label {
	position: relative;
	min-width: 220px;
	flex: 1;
}

.msp-help-search label .dashicons {
	position: absolute;
	top: 50%;
	left: 11px;
	width: 18px;
	height: 18px;
	color: var(--msp-text-muted);
	font-size: 18px;
	transform: translateY(-50%);
}

.msp-help-search input {
	width: 100%;
	height: 40px;
	padding: 8px 12px 8px 38px;
	border: 1px solid var(--msp-border-strong);
	border-radius: 4px;
	background: var(--msp-bg);
	color: var(--msp-text);
}

.msp-help-search input:focus {
	border-color: var(--msp-primary);
	box-shadow: 0 0 0 3px var(--msp-focus);
	outline: 0;
}

.msp-help-groups,
.msp-help-group {
	display: grid;
	gap: 22px;
}

.msp-help-group + .msp-help-group {
	padding-top: 22px;
	border-top: 1px solid var(--msp-border);
}

.msp-help-group .msp-section-header {
	margin-bottom: 0;
}

.msp-help-card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.msp-help-card {
	display: grid;
	grid-template-columns: 36px minmax(0, 1fr) 18px;
	align-items: start;
	gap: 10px;
	min-height: 128px;
	padding: 15px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
	color: var(--msp-text);
}

.msp-help-card:hover,
.msp-help-card:focus {
	border-color: var(--msp-primary);
	background: var(--msp-surface-muted);
}

.msp-help-card-icon {
	display: grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border-radius: 5px;
	background: rgba(10, 132, 255, .12);
	color: var(--msp-blue);
	font-size: 20px;
}

.msp-help-card > span:nth-child(2) {
	display: grid;
	min-width: 0;
	gap: 3px;
}

.msp-help-card small {
	color: var(--msp-primary);
	font-size: 10px;
	font-weight: 800;
}

.msp-help-card strong {
	font-size: 14px;
	line-height: 1.35;
}

.msp-help-card p {
	display: -webkit-box;
	margin: 3px 0 0;
	overflow: hidden;
	color: var(--msp-text-muted);
	font-size: 12px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.msp-help-card > .dashicons:last-child {
	margin-top: 9px;
	color: var(--msp-text-muted);
	font-size: 17px;
}

.msp-help-article-layout {
	display: grid;
	grid-template-columns: 218px minmax(0, 940px);
	justify-content: center;
	align-items: start;
	gap: 30px;
}

.msp-help-toc {
	position: sticky;
	top: 20px;
	display: grid;
	gap: 12px;
	padding: 14px 0 14px 14px;
	border-left: 2px solid var(--msp-border-strong);
}

.msp-help-toc > strong {
	font-size: 12px;
}

.msp-help-toc nav {
	display: grid;
	gap: 2px;
}

.msp-help-toc nav a {
	padding: 5px 7px;
	border-left: 2px solid transparent;
	color: var(--msp-text-muted);
	font-size: 11px;
	line-height: 1.35;
}

.msp-help-toc nav a:hover,
.msp-help-toc nav a:focus {
	border-left-color: var(--msp-primary);
	background: var(--msp-surface);
	color: var(--msp-text);
}

.msp-help-toc-level-3 {
	padding-left: 17px !important;
}

.msp-help-meta {
	display: grid;
	gap: 2px;
	padding: 9px 7px 0;
	border-top: 1px solid var(--msp-border);
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-help-article {
	min-width: 0;
	padding: 26px 30px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-surface);
	box-shadow: 0 14px 38px rgba(0, 0, 0, .2);
}

.msp-help-article h2 {
	margin: 30px 0 11px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--msp-border);
	font-size: 19px;
	line-height: 1.35;
	scroll-margin-top: 18px;
}

.msp-help-article > h2:first-child {
	margin-top: 0;
}

.msp-help-article h3 {
	margin: 24px 0 8px;
	color: var(--msp-blue);
	font-size: 15px;
	scroll-margin-top: 18px;
}

.msp-help-article h4 {
	margin: 17px 0 6px;
	font-size: 13px;
}

.msp-help-article p,
.msp-help-article li,
.msp-help-article dd {
	color: #d1d1d6;
}

.msp-help-article p {
	margin: 0 0 11px;
}

.msp-help-article ul,
.msp-help-article ol:not(.msp-help-steps) {
	margin: 7px 0 15px;
	padding-left: 22px;
}

.msp-help-article li {
	margin: 5px 0;
}

.msp-help-article code {
	padding: 2px 5px;
	border: 1px solid var(--msp-border);
	border-radius: 3px;
	background: var(--msp-bg);
	color: #ffcc80;
	font-family: Consolas, "SFMono-Regular", monospace;
	font-size: 12px;
}

.msp-help-visual {
	margin: 17px 0;
	padding: 14px;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-bg);
}

.msp-help-visual figcaption {
	margin-bottom: 11px;
	color: var(--msp-text);
	font-size: 12px;
	font-weight: 800;
}

.msp-help-visual-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 8px;
}

.msp-help-visual-grid > div {
	display: grid;
	grid-template-columns: 20px minmax(0, 1fr);
	align-content: start;
	gap: 4px 7px;
	min-height: 80px;
	padding: 10px;
	border-left: 3px solid var(--msp-primary);
	background: var(--msp-surface-muted);
}

.msp-help-visual-grid .dashicons {
	grid-row: 1 / span 2;
	width: 18px;
	height: 18px;
	color: var(--msp-green);
	font-size: 18px;
}

.msp-help-visual-grid strong {
	font-size: 12px;
}

.msp-help-visual-grid p {
	margin: 0;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-help-steps {
	display: grid;
	gap: 8px;
	margin: 10px 0 17px;
	padding: 0 !important;
	list-style: none;
}

.msp-help-steps li {
	display: grid;
	grid-template-columns: 26px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0;
	padding: 9px 10px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-help-steps li > span {
	display: grid;
	width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 50%;
	background: var(--msp-primary);
	color: #fff;
	font-size: 11px;
	font-weight: 800;
}

.msp-help-steps li p {
	margin: 1px 0 0;
}

.msp-help-callout {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	gap: 10px;
	margin: 17px 0;
	padding: 13px 14px;
	border-left: 3px solid var(--msp-primary);
	background: rgba(10, 132, 255, .1);
}

.msp-help-callout-warning {
	border-left-color: var(--msp-orange);
	background: rgba(255, 159, 10, .1);
}

.msp-help-callout > .dashicons {
	color: var(--msp-blue);
}

.msp-help-callout-warning > .dashicons {
	color: var(--msp-orange);
}

.msp-help-callout strong {
	display: block;
	margin-bottom: 3px;
}

.msp-help-callout p {
	margin: 0;
}

.msp-help-definition {
	margin: 10px 0 18px;
}

.msp-help-definition > div {
	display: grid;
	grid-template-columns: minmax(120px, .32fr) minmax(0, 1fr);
	gap: 14px;
	padding: 9px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-help-definition dt {
	font-weight: 800;
}

.msp-help-definition dd {
	margin: 0;
}

.msp-help-table {
	width: 100%;
	margin: 11px 0 19px;
	border-collapse: collapse;
	font-size: 12px;
}

.msp-help-table th,
.msp-help-table td {
	padding: 9px 10px;
	border: 1px solid var(--msp-border);
	text-align: left;
	vertical-align: top;
}

.msp-help-table th {
	background: var(--msp-surface-raised);
	color: var(--msp-text);
}

.msp-help-table td {
	color: #d1d1d6;
}

.msp-help-role-section {
	margin: 14px 0;
	padding: 14px 16px;
	border-left: 3px solid var(--msp-purple);
	background: var(--msp-surface-muted);
}

.msp-help-module-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	margin: 10px 0 20px;
}

.msp-help-module-list a {
	display: grid;
	grid-template-columns: 30px minmax(0, 1fr);
	align-items: start;
	gap: 9px;
	padding: 11px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-bg);
	color: var(--msp-text);
}

.msp-help-module-list a:hover,
.msp-help-module-list a:focus {
	border-color: var(--msp-primary);
	background: var(--msp-surface-muted);
}

.msp-help-module-list .dashicons {
	color: var(--msp-blue);
}

.msp-help-module-list strong,
.msp-help-module-list small {
	display: block;
}

.msp-help-module-list small {
	margin-top: 2px;
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-help-article-footer {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr);
	gap: 9px;
	margin-top: 28px;
	padding-top: 15px;
	border-top: 1px solid var(--msp-border);
	color: var(--msp-text-muted);
}

.msp-help-article-footer p {
	margin: 0;
	color: var(--msp-text-muted);
	font-size: 11px;
}

@media (max-width: 1120px) {
	.msp-help-card-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-help-article-layout {
		grid-template-columns: 184px minmax(0, 1fr);
		gap: 20px;
	}

	.msp-help-visual-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.msp-context-help {
		right: 12px;
		bottom: 12px;
		width: 42px;
		height: 42px;
		justify-content: center;
		padding: 0;
	}

	.msp-context-help > span:last-child {
		display: none;
	}

	.msp-help-welcome {
		grid-template-columns: 48px minmax(0, 1fr);
		padding-left: 12px;
	}

	.msp-help-welcome > a {
		grid-column: 2;
	}

	.msp-help-welcome-icon {
		width: 44px;
		height: 44px;
	}

	.msp-help-card-grid {
		grid-template-columns: 1fr;
	}

	.msp-help-article-layout {
		display: block;
	}

	.msp-help-toc {
		position: static;
		margin-bottom: 14px;
		padding: 12px;
		border: 1px solid var(--msp-border);
		border-radius: 5px;
		background: var(--msp-surface);
	}

	.msp-help-toc nav {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-help-article {
		padding: 21px 18px;
	}
}

@media (max-width: 560px) {
	.msp-help-page-header .msp-header-actions {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		width: 100%;
	}

	.msp-help-page-header .msp-header-actions .msp-button:first-child:last-child,
	.msp-help-page-header .msp-header-actions .msp-button:nth-child(3) {
		grid-column: 1 / -1;
	}

	.msp-help-search {
		align-items: stretch;
		flex-wrap: wrap;
	}

	.msp-help-search label {
		min-width: 100%;
	}

	.msp-help-visual-grid,
	.msp-help-module-list,
	.msp-help-toc nav {
		grid-template-columns: 1fr;
	}

	.msp-help-definition > div {
		grid-template-columns: 1fr;
		gap: 3px;
	}

	.msp-help-table {
		display: block;
		overflow-x: auto;
	}
}

@media print {
	.msp-sidebar,
	.msp-mobile-header,
	.msp-mobile-navigation,
	.msp-footer,
	.msp-context-help,
	.msp-help-page-header .msp-header-actions,
	.msp-help-toc {
		display: none !important;
	}

	.msp-app-shell,
	.msp-content-shell,
	.msp-help-article-layout {
		display: block;
	}

	.msp-content-shell {
		grid-column: 1;
	}

	.msp-main {
		max-width: none;
		padding: 0;
	}

	.msp-main .msp-sticky-header-wrap {
		max-height: none;
		overflow: visible;
		scrollbar-gutter: auto;
	}

	.msp-main .msp-sticky-header-wrap > .msp-sticky-header-table > thead > tr > th {
		position: static;
		box-shadow: none;
	}

	.msp-contract-tabs {
		display: none !important;
	}

	.msp-contract-workspace.is-enhanced .msp-contract-tab-panel[hidden] {
		display: grid !important;
	}

	.msp-help-page-header {
		margin-bottom: 15px;
	}

	.msp-help-article {
		padding: 0;
		border: 0;
		box-shadow: none;
	}
}
.msp-inline-action-form {
	display: inline-flex;
	margin: 0;
}

.msp-dialog-static {
	padding: 0;
}

.msp-trade-issuer-form {
	padding: 0 0 24px;
	margin: 0 0 24px;
	border-bottom: 1px solid var(--msp-border, #30343b);
}

.msp-trade-issuer-form:last-child {
	margin-bottom: 0;
	border-bottom: 0;
}

.msp-detail-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.msp-detail-panel {
	min-width: 0;
	padding: 18px 20px 20px;
}

.msp-detail-panel h3 {
	margin: 0 0 12px;
	font-size: 15px;
	color: #7db7ff;
}

.msp-detail-panel dl {
	margin: 0;
}

.msp-detail-panel dl > div {
	display: grid;
	grid-template-columns: minmax(120px, 0.38fr) minmax(0, 1fr);
	gap: 12px;
	padding: 8px 0;
	border-bottom: 1px solid var(--msp-border, #30343b);
}

.msp-detail-panel dt {
	color: var(--msp-muted, #9aa0a8);
}

.msp-detail-panel dd {
	margin: 0;
	overflow-wrap: anywhere;
}

@media (max-width: 760px) {
	.msp-detail-grid {
		grid-template-columns: 1fr;
	}
}

.msp-work-order-stages {
	display: grid;
	grid-template-columns: repeat(var(--msp-stage-count, 7), minmax(88px, 1fr));
	gap: 1px;
	max-width: 100%;
	margin: 0 0 18px;
	overflow-x: auto;
	border: 1px solid var(--msp-border);
	border-radius: 6px;
	background: var(--msp-border);
}

.msp-work-order-stages > span {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 46px;
	padding: 8px 10px;
	background: var(--msp-surface);
	color: var(--msp-text-muted);
}

.msp-work-order-stages > span.is-complete {
	color: #63e682;
}

.msp-work-order-stages > span.is-current {
	background: rgba(10, 132, 255, 0.16);
	color: #7db7ff;
}

.msp-work-order-stages > span.is-current.is-cancelled {
	background: rgba(255, 69, 58, 0.14);
	color: #ff6961;
}

.msp-work-order-stages em {
	font-style: normal;
	font-size: 12px;
	white-space: nowrap;
}

.msp-work-order-asset-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: inherit;
}

.msp-work-order-asset-link .dashicons {
	width: 15px;
	height: 15px;
	font-size: 15px;
}

.msp-work-order-next {
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	margin: 0 0 18px;
	padding: 13px 15px;
	border: 1px solid rgba(10, 132, 255, .32);
	border-radius: 6px;
	background: rgba(10, 132, 255, .08);
}

.msp-work-order-next > .dashicons {
	color: #7db7ff;
}

.msp-work-order-next small,
.msp-work-order-next strong,
.msp-work-order-next p {
	display: block;
	margin: 0;
}

.msp-work-order-next small {
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-work-order-next strong {
	margin-top: 2px;
	font-size: 14px;
}

.msp-work-order-next p {
	margin-top: 3px;
	color: var(--msp-text-muted);
	font-size: 11px;
	line-height: 1.5;
}

.msp-work-order-next.is-terminal {
	border-color: var(--msp-border);
	background: var(--msp-surface);
}

.msp-work-priority {
	display: inline-flex;
	padding: 3px 8px;
	border-radius: 4px;
	background: rgba(142, 142, 147, 0.16);
}

.msp-work-priority-high,
.msp-work-priority-critical {
	background: rgba(255, 69, 58, 0.16);
	color: #ff8a83;
}

.msp-work-priority-low {
	color: var(--msp-text-muted);
}

.msp-work-note-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: end;
	gap: 10px;
	margin-bottom: 18px;
}

.msp-work-order-log-list {
	display: grid;
	gap: 8px;
}

.msp-work-order-log-list article {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) auto;
	gap: 10px;
	align-items: start;
	padding: 12px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-bg);
}

.msp-inspection-checklist {
	display: grid;
	gap: 10px;
}

.msp-inspection-checklist fieldset {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
	padding: 10px 12px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
}

.msp-inspection-checklist legend {
	width: 100%;
	padding: 0 5px;
	color: var(--msp-text);
}

.msp-inspection-checklist label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	white-space: nowrap;
}

.msp-status-requested,
.msp-status-triaged,
.msp-status-assigned,
.msp-status-planned,
.msp-production-status-planned,
.msp-bom-status-draft {
	background: rgba(10, 132, 255, 0.16);
	color: #7db7ff;
}

.msp-status-in_progress,
.msp-production-status-in_progress {
	background: rgba(255, 159, 10, 0.16);
	color: #ffb340;
}

.msp-status-verification,
.msp-production-status-verification {
	background: rgba(255, 214, 10, 0.15);
	color: #ffe347;
}

.msp-status-closed,
.msp-production-status-completed,
.msp-bom-status-released {
	background: rgba(48, 209, 88, 0.15);
	color: #63e682;
}

.msp-production-status-cancelled,
.msp-bom-status-retired {
	background: rgba(142, 142, 147, 0.18);
	color: #c7c7cc;
}

.msp-compact-list {
	display: grid;
	gap: 6px;
	margin-top: 12px;
}

.msp-compact-list > div {
	display: grid;
	grid-template-columns: minmax(90px, 0.38fr) minmax(0, 1fr);
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-compact-list span {
	color: var(--msp-text-muted);
	overflow-wrap: anywhere;
}

@media (max-width: 760px) {
	.msp-work-order-stages {
		justify-content: start;
		grid-template-columns: repeat(var(--msp-stage-count, 7), 112px);
	}

	.msp-work-order-next {
		grid-template-columns: 20px minmax(0, 1fr);
	}

	.msp-work-order-next > .msp-button {
		grid-column: 2;
		justify-self: start;
	}

	.msp-work-note-form,
	.msp-work-order-log-list article {
		grid-template-columns: 1fr;
	}

	.msp-inspection-checklist fieldset {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	.msp-compact-list > div {
		grid-template-columns: 1fr;
		gap: 2px;
	}
}
.msp-warning-callout {
	margin: 14px 0;
	padding: 12px 14px;
	border-left: 3px solid #f59e0b;
	background: rgba(245, 158, 11, 0.08);
}

.msp-warning-callout p {
	margin: 4px 0 0;
	color: var(--msp-muted, #9aa0a8);
}

.msp-text-danger {
	color: #ef4444;
}

.msp-compact-field {
	display: grid;
	gap: 5px;
	min-width: 120px;
}

.msp-compact-field input {
	width: 110px;
}

.msp-gift-badge {
	display: inline-flex;
	align-items: center;
	min-height: 20px;
	padding: 1px 7px;
	border: 1px solid rgba(245, 158, 11, 0.48);
	border-radius: 4px;
	background: rgba(245, 158, 11, 0.12);
	color: #fbbf24;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.35;
	white-space: nowrap;
}

/* Compact operational layout: keep primary facts visible and secondary data one click away. */
@media (min-width: 1121px) {
	.msp-app-shell {
		grid-template-columns: 216px minmax(0, 1fr);
	}

	.msp-sidebar {
		width: 216px;
	}

	.msp-brand {
		min-height: 62px;
		padding: 0 16px;
	}

	.msp-brand-symbol {
		width: 38px;
		height: 38px;
		flex-basis: 38px;
	}

	.msp-content-shell {
		grid-column: 2;
	}

	.msp-main {
		padding: 24px 28px 42px;
	}

	.msp-footer {
		padding: 16px 28px;
	}

	.msp-navigation {
		padding: 6px 8px 12px;
	}

	.msp-nav-group {
		gap: 1px;
		padding: 5px 2px 6px;
	}

	.msp-navigation a {
		min-height: 38px;
		gap: 9px;
		padding: 0 10px;
		font-size: 15px;
	}

	.msp-navigation .dashicons,
	.msp-navigation .msp-nav-icon {
		width: 18px;
		height: 18px;
		flex-basis: 18px;
		font-size: 18px;
	}
}

.msp-nav-group-toggle {
	display: flex;
	width: 100%;
	min-height: 25px;
	align-items: center;
	justify-content: space-between;
	padding: 3px 10px 4px;
	border: 0;
	background: transparent;
	color: #b7bdc8;
	cursor: pointer;
	text-align: left;
}

.msp-nav-group-toggle:hover,
.msp-nav-group-toggle:focus-visible,
.msp-nav-group.is-active-group .msp-nav-group-toggle {
	color: #a9cfee;
}

.msp-nav-group-toggle .msp-nav-group-label {
	margin: 0;
	padding: 0;
	color: inherit;
}

.msp-nav-group-toggle .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
	transition: transform 140ms ease;
}

.msp-nav-group-items {
	display: grid;
	gap: 1px;
}

.msp-nav-group.is-collapsed .msp-nav-group-items {
	display: none;
}

.msp-nav-group.is-collapsed .msp-nav-group-toggle .dashicons {
	transform: rotate(-90deg);
}

.msp-nav-subgroup {
	display: grid;
	gap: 1px;
	margin: 4px 0 7px;
}

.msp-nav-subgroup + .msp-nav-subgroup {
	padding-top: 7px;
	border-top: 1px solid rgba(255, 255, 255, .045);
}

.msp-nav-subgroup-label {
	padding: 2px 13px 3px;
	color: #b7bdc8;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
}

.msp-nav-subgroup-items {
	display: grid;
	gap: 1px;
}

.msp-nav-subgroup .msp-nav-subgroup {
	margin: 2px 0 3px;
}

.msp-nav-subgroup .msp-nav-subgroup + .msp-nav-subgroup {
	padding-top: 4px;
}

.msp-nav-subgroup .msp-nav-subgroup > .msp-nav-subgroup-label {
	padding-left: 17px;
	color: #94949b;
}

.msp-navigation .msp-nav-subgroup .msp-nav-subgroup-items a {
	padding-left: 25px;
}

.msp-navigation .msp-nav-subgroup-items a {
	min-height: 36px;
	padding-left: 17px;
	font-size: 15px;
}

.msp-navigation .msp-nav-subgroup-items .dashicons,
.msp-navigation .msp-nav-subgroup-items .msp-nav-icon {
	width: 17px;
	height: 17px;
	flex-basis: 17px;
	font-size: 17px;
}

.msp-page-header {
	gap: 18px;
	margin-bottom: 18px;
}

.msp-page-header h1,
.msp-empty h1 {
	font-size: 24px;
}

.msp-page-summary {
	font-size: 12px;
}

.msp-header-actions {
	gap: 6px;
}

.msp-button {
	min-height: 34px;
	padding: 6px 11px;
	font-size: 12px;
}

.msp-icon-button {
	width: 30px;
	height: 30px;
	flex-basis: 30px;
}

.msp-dashboard-blocks,
.msp-dashboard-blocks > .msp-dashboard-grid {
	gap: 16px;
}

.msp-stat-grid {
	gap: 8px;
	margin-bottom: 16px;
}

.msp-stat {
	min-height: 72px;
	gap: 11px;
	padding: 11px 13px;
}

.msp-stat-icon {
	width: 36px;
	height: 36px;
	font-size: 19px;
}

.msp-stat strong {
	font-size: 20px;
}

.msp-section {
	padding: 14px 16px;
}

.msp-main > .msp-section {
	margin-bottom: 16px;
}

.msp-section-wide {
	padding: 0;
}

.msp-section-wide > .msp-section-header {
	padding: 12px 16px;
}

.msp-section-header {
	gap: 12px;
	margin-bottom: 11px;
}

.msp-section-header h2,
.msp-machine-meta h2 {
	font-size: 15px;
}

.msp-section-header p {
	font-size: 11px;
	line-height: 1.4;
}

.msp-dashboard-blocks > .msp-section {
	border-top-width: 2px;
}

.msp-dashboard-lookup {
	border-top-color: var(--msp-blue);
}

.msp-action-center {
	border-top-color: var(--msp-orange);
}

.msp-contract-reminders {
	border-top-color: var(--msp-purple);
}

.msp-inventory-dashboard,
.msp-ready-receipt-section {
	border-top-color: var(--msp-green);
}

.msp-system-entry {
	border-top-color: var(--msp-border-strong);
}

.msp-action-center-tabs {
	margin-bottom: 8px;
}

.msp-action-center-tabs a {
	gap: 6px;
	padding: 7px 10px;
}

.msp-action-center-tabs strong {
	font-size: 16px;
}

.msp-action-item {
	grid-template-columns: minmax(0, 1fr) 124px auto;
	gap: 11px;
	padding: 8px 0;
}

.msp-action-list.is-density-collapsed .msp-action-item:nth-child(n + 9) {
	display: none;
}

.msp-action-list-toggle {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin-top: 9px;
	padding: 4px 0;
	border: 0;
	background: transparent;
	color: var(--msp-primary);
	cursor: pointer;
	font-size: 11px;
	font-weight: 750;
}

.msp-action-list-toggle:hover {
	color: var(--msp-text);
}

.msp-main .msp-sticky-header-wrap {
	max-height: none;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-inline: contain;
	overscroll-behavior-block: auto;
	scrollbar-gutter: auto;
}

.msp-main .msp-sticky-header-wrap > .msp-sticky-header-table > thead > tr > th,
.msp-main .msp-sticky-header-wrap.is-scrolled-vertically > .msp-sticky-header-table > thead > tr > th {
	position: static;
	box-shadow: inset 0 -1px 0 rgba(100, 210, 255, 0.46);
}

.msp-floating-table-header {
	position: fixed;
	z-index: 60;
	display: none;
	overflow: hidden;
	border-bottom: 1px solid rgba(100, 210, 255, 0.56);
	background: var(--msp-surface-raised);
	box-shadow: 0 8px 18px -12px rgba(0, 0, 0, 0.95);
	pointer-events: none;
}

.msp-floating-table-header.is-visible {
	display: block;
}

.msp-floating-header-table {
	table-layout: fixed;
	transition: none;
}

.msp-floating-header-table th {
	box-sizing: border-box;
	background: var(--msp-surface-raised);
}

.msp-table {
	font-size: 12px;
}

.msp-table th,
.msp-table td {
	max-width: 260px;
	padding: 9px 10px;
	line-height: 1.35;
}

.msp-section-wide .msp-table th,
.msp-section-wide .msp-table td {
	padding-right: 12px;
	padding-left: 12px;
}

.msp-table th {
	color: #dcecff;
	font-size: 11px;
}

.msp-main table[data-column-visibility] tbody td:not(.msp-money-cell) {
	overflow: hidden;
	text-overflow: ellipsis;
}

.msp-main table[data-column-visibility] .msp-table-subline {
	max-width: 238px;
	overflow: hidden;
	margin-top: 2px;
	font-size: 10px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.msp-main table[data-column-visibility] .msp-table-subline:nth-of-type(n + 3) {
	display: none;
}

.msp-column-visibility-toolbar {
	padding: 6px 12px;
}

.msp-column-visibility-summary {
	min-height: 29px;
	padding: 4px 7px;
}

.msp-table-pagination {
	gap: 10px;
	padding: 8px 12px;
}

.msp-pagination-direction,
.msp-pagination-page {
	min-width: 29px;
	height: 29px;
	padding: 0 7px;
}

.msp-filter-bar {
	gap: 6px;
	margin-bottom: 10px;
}

.msp-filter-bar select,
.msp-search input,
.msp-field input,
.msp-field select,
.msp-field textarea,
.msp-void-form input,
.msp-filter-date-range input,
.msp-filter-tags summary {
	min-height: 35px;
	padding: 6px 9px;
}

.msp-search,
.msp-customer-search,
.msp-customer-search-control,
.msp-asset-search-control,
.msp-picker-search,
.msp-help-search label {
	position: relative;
	isolation: isolate;
}

.msp-search > .dashicons-search,
.msp-customer-search > .dashicons-search,
.msp-customer-search-control > .dashicons-search,
.msp-asset-search-control > .dashicons-search,
.msp-picker-search > .dashicons-search,
.msp-help-search label > .dashicons-search {
	position: absolute;
	top: 50%;
	left: 10px;
	z-index: 1;
	width: 18px;
	height: 18px;
	color: var(--msp-text-muted);
	font-size: 18px;
	line-height: 18px;
	transform: translateY(-50%);
	pointer-events: none;
}

.msp-search > input[type="search"],
.msp-customer-search > input[type="search"],
.msp-customer-search-control > input[type="search"],
.msp-asset-search-control > input[type="search"],
.msp-picker-search > input[type="search"],
.msp-help-search label > input[type="search"] {
	padding-left: 36px;
}

.msp-filter-bar > .msp-button-secondary[type="submit"] {
	border-color: rgba(100, 210, 255, 0.56);
	background: rgba(100, 210, 255, 0.1);
	color: var(--msp-blue);
}

.msp-filter-bar > .msp-button-secondary[type="submit"]:hover,
.msp-filter-bar > .msp-button-secondary[type="submit"]:focus {
	border-color: var(--msp-blue);
	background: rgba(100, 210, 255, 0.2);
	color: #ffffff;
}

.msp-button-secondary[data-dialog-open^="msp-add-"],
.msp-button-secondary[data-dialog-open^="msp-create-"] {
	border-color: rgba(48, 209, 88, 0.58);
	background: rgba(48, 209, 88, 0.12);
	color: #7ee495;
}

.msp-button-secondary[data-dialog-open^="msp-add-"]:hover,
.msp-button-secondary[data-dialog-open^="msp-add-"]:focus,
.msp-button-secondary[data-dialog-open^="msp-create-"]:hover,
.msp-button-secondary[data-dialog-open^="msp-create-"]:focus {
	border-color: var(--msp-green);
	background: rgba(48, 209, 88, 0.22);
	color: #ffffff;
}

.msp-contract-bulk-toolbar {
	gap: 10px;
	padding: 8px 12px;
}

.msp-machine-facts {
	margin-bottom: 12px;
}

.msp-machine-facts > div {
	min-height: 62px;
	padding: 9px 12px;
}

.msp-machine-facts span {
	font-size: 10px;
}

.msp-machine-facts strong {
	font-size: 13px;
}

.msp-commercial-facts {
	margin-bottom: 14px;
}

.msp-commercial-facts > div {
	min-height: 64px;
	gap: 3px;
	padding: 10px 13px;
}

.msp-commercial-facts strong {
	font-size: 14px;
}

.msp-contract-workspace,
.msp-contract-tab-panel {
	gap: 13px;
}

.msp-contract-tabs {
	top: 6px;
	gap: 2px;
	padding: 4px;
}

.msp-contract-tab {
	min-width: 104px;
	height: 36px;
	gap: 6px;
	padding: 0 10px;
	font-size: 12px;
}

.msp-delivery-workflow-nav {
	margin-bottom: 13px;
}

.msp-delivery-workflow-tab {
	min-height: 48px;
	padding: 7px 11px;
}

.msp-delivery-workflow-panel-header,
.msp-delivery-history-header {
	gap: 12px;
	margin-bottom: 12px;
}

.msp-machine-layout {
	grid-template-columns: minmax(0, 1fr) 244px;
	gap: 14px;
}

.msp-machine-meta {
	padding: 13px 14px;
}

.msp-machine-meta dl {
	margin-top: 9px;
}

.msp-machine-meta dl div {
	gap: 8px;
	padding: 7px 0;
	font-size: 12px;
}

.msp-timeline-item {
	gap: 10px;
	padding-bottom: 14px;
}

.msp-timeline-item article {
	padding-bottom: 14px;
}

.msp-event-heading h3 {
	font-size: 14px;
}

.msp-detail-grid {
	gap: 12px;
}

.msp-detail-panel {
	padding: 13px 15px 15px;
}

.msp-detail-panel h3 {
	margin-bottom: 8px;
	font-size: 14px;
}

.msp-detail-panel dl > div {
	grid-template-columns: minmax(104px, 0.32fr) minmax(0, 1fr);
	gap: 9px;
	padding: 6px 0;
	font-size: 12px;
}

.msp-dialog form {
	padding: 16px 18px;
}

.msp-dialog-header {
	margin-bottom: 14px;
}

.msp-dialog-header h2 {
	font-size: 18px;
}

.msp-form-grid {
	gap: 10px;
}

.msp-form-subsection {
	padding: 11px 12px;
	border-left-color: var(--msp-blue);
}

.msp-form-subsection:nth-of-type(4n + 2) {
	border-left-color: var(--msp-green);
	background: rgba(48, 209, 88, 0.055);
}

.msp-form-subsection:nth-of-type(4n + 3) {
	border-left-color: var(--msp-orange);
	background: rgba(255, 159, 10, 0.055);
}

.msp-form-subsection:nth-of-type(4n) {
	border-left-color: var(--msp-purple);
	background: rgba(191, 90, 242, 0.055);
}

.msp-form-subsection h3 {
	margin: 0 0 9px;
	color: #7db7ff;
	font-size: 14px;
}

/* Contract details keep the complete audit surface while reducing scan distance. */
.msp-contract-detail-page > .msp-page-header {
	align-items: center;
	gap: 14px;
	margin-bottom: 10px;
}

.msp-contract-detail-page > .msp-page-header h1 {
	margin: 1px 0 2px;
	font-size: 21px;
	line-height: 1.2;
}

.msp-contract-detail-page > .msp-page-header .msp-back-link {
	margin-bottom: 2px;
}

.msp-contract-detail-page > .msp-page-header .msp-page-summary {
	line-height: 1.35;
}

.msp-contract-detail-page > .msp-page-header .msp-header-actions {
	flex: 0 1 auto;
}

.msp-contract-detail-page > .msp-page-header .msp-button {
	min-height: 32px;
	padding: 5px 9px;
}

.msp-contract-detail-facts {
	grid-template-columns: repeat(auto-fit, minmax(124px, 1fr));
	margin-bottom: 9px;
}

.msp-contract-detail-facts > div,
.msp-contract-detail-facts > div:nth-child(4n) {
	min-height: 50px;
	gap: 2px;
	padding: 7px 10px;
	border-right: 1px solid var(--msp-border);
}

.msp-contract-detail-facts > div:last-child {
	border-right: 0;
}

.msp-contract-detail-facts span,
.msp-contract-detail-facts small {
	font-size: 10px;
	line-height: 1.25;
}

.msp-contract-detail-facts strong {
	font-size: 13px;
	line-height: 1.25;
}

.msp-contract-source-actions {
	display: flex;
	min-width: 0;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px;
}

.msp-contract-source-actions .msp-machine-link,
.msp-contract-source-actions .msp-text-link {
	min-width: 0;
}

.msp-contract-source-actions .msp-contract-unlink-button {
	min-height: 26px;
	padding: 3px 7px;
	font-size: 11px;
}

.msp-contract-source-actions .msp-contract-unlink-button .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

.msp-contract-source-relation {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px 12px;
	padding: 8px 12px;
	border: 1px solid rgba(10, 132, 255, 0.42);
	border-left: 3px solid var(--msp-primary);
	border-radius: 4px;
	background: rgba(10, 132, 255, 0.08);
}

.msp-contract-source-relation-label {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--msp-blue);
	font-size: 11px;
	font-weight: 700;
}

.msp-contract-source-relation-label .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-contract-source-relation .msp-contract-source-actions {
	flex-wrap: nowrap;
	gap: 8px;
}

.msp-contract-source-relation .msp-machine-link {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	font-size: 13px;
	font-weight: 700;
}

.msp-contract-source-relation .msp-machine-link .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

.msp-contract-source-relation .msp-contract-unlink-button {
	min-height: 30px;
	padding: 4px 10px;
	font-size: 12px;
}

.msp-contract-source-relation > small {
	color: var(--msp-text-muted);
	font-size: 10px;
	line-height: 1.35;
}

.msp-contract-detail-workspace,
.msp-contract-detail-workspace .msp-contract-tab-panel {
	gap: 9px;
}

.msp-contract-detail-workspace .msp-contract-tabs {
	top: 5px;
	gap: 2px;
	padding: 3px;
}

.msp-contract-detail-workspace .msp-contract-tab {
	min-width: 94px;
	height: 32px;
	gap: 5px;
	padding: 0 8px;
	font-size: 11px;
}

.msp-contract-detail-workspace .msp-contract-tab .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-contract-detail-workspace .msp-contract-tab small {
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	font-size: 10px;
}

.msp-contract-detail-workspace .msp-section {
	border-radius: 4px;
}

.msp-contract-detail-workspace .msp-section:not(.msp-section-wide) {
	padding: 11px 13px;
}

.msp-contract-detail-workspace .msp-section-wide > .msp-section-header {
	padding: 9px 12px;
}

.msp-contract-detail-workspace .msp-section-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-contract-detail-workspace .msp-section-header h2 {
	font-size: 14px;
}

.msp-contract-detail-workspace .msp-section-header p {
	font-size: 10px;
	line-height: 1.35;
}

.msp-contract-detail-workspace .msp-section-header .msp-button,
.msp-contract-detail-workspace .msp-delivery-workflow-panel-header .msp-button {
	min-height: 30px;
	padding: 4px 8px;
}

.msp-contract-note-section {
	display: grid;
	grid-template-columns: 108px minmax(0, 1fr);
	align-items: start;
	gap: 12px;
	border-top: 2px solid var(--msp-purple);
}

.msp-contract-note-section .msp-section-header {
	margin: 0;
}

.msp-contract-note-section .msp-preserve-lines {
	color: var(--msp-text-muted);
	font-size: 12px;
	line-height: 1.45;
}

.msp-contract-detail-workspace .msp-contract-milestones {
	border-top: 2px solid var(--msp-blue);
}

.msp-contract-detail-workspace .msp-contract-items-section {
	border-top: 2px solid var(--msp-green);
}

.msp-contract-detail-workspace .msp-contract-finance-section {
	border-top: 2px solid var(--msp-orange);
}

.msp-contract-detail-workspace #msp-contract-panel-documents > .msp-section {
	border-top: 2px solid var(--msp-purple);
}

.msp-contract-detail-workspace #msp-contract-panel-timeline > .msp-section {
	border-top: 2px solid var(--msp-blue);
}

.msp-contract-detail-workspace .msp-contract-reminder-guide {
	gap: 7px;
	margin: 7px 12px;
	padding: 6px 9px;
	font-size: 10px;
}

.msp-contract-detail-workspace .msp-contract-reminder-guide p {
	line-height: 1.35;
}

.msp-contract-detail-workspace .msp-table th,
.msp-contract-detail-workspace .msp-table td {
	padding: 7px 9px;
	line-height: 1.3;
}

.msp-contract-detail-workspace .msp-table-subline {
	margin-top: 1px;
	font-size: 10px;
	line-height: 1.3;
}

.msp-contract-detail-workspace .msp-delivery-workflow-nav {
	margin-bottom: 8px;
}

.msp-contract-detail-workspace .msp-delivery-workflow-tab {
	min-height: 42px;
	padding: 5px 9px;
}

.msp-contract-detail-workspace .msp-delivery-workflow-panel-header,
.msp-contract-detail-workspace .msp-delivery-history-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-contract-detail-workspace .msp-contract-timeline article {
	padding-bottom: 16px;
}

.msp-contract-detail-workspace .msp-contract-timeline h3 {
	margin: 2px 0 3px;
	font-size: 14px;
}

/* Purchase contracts keep execution, finance, and audit records dense but distinct. */
.msp-purchase-order-detail-page > .msp-page-header {
	align-items: center;
	gap: 14px;
	margin-bottom: 10px;
}

.msp-purchase-order-detail-page > .msp-page-header h1 {
	margin: 1px 0 2px;
	font-size: 21px;
	line-height: 1.2;
}

.msp-purchase-order-detail-page > .msp-page-header .msp-back-link {
	margin-bottom: 2px;
}

.msp-purchase-order-detail-page > .msp-page-header .msp-header-actions {
	gap: 5px;
}

.msp-purchase-order-detail-page > .msp-page-header .msp-button {
	min-height: 32px;
	padding: 5px 9px;
}

.msp-purchase-order-summary {
	margin-bottom: 9px;
	border-top: 2px solid var(--msp-purple);
	border-radius: 4px;
}

.msp-purchase-order-summary > .msp-section-header {
	gap: 10px;
	padding: 8px 12px;
}

.msp-purchase-order-summary > .msp-section-header h2 {
	font-size: 14px;
}

.msp-purchase-order-summary > .msp-section-header p {
	font-size: 10px;
	line-height: 1.35;
}

.msp-purchase-order-summary .msp-purchase-order-facts {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1px;
	padding: 1px 12px 9px;
	background: var(--msp-border);
}

.msp-purchase-order-summary .msp-purchase-order-facts > div {
	display: block;
	min-width: 0;
	min-height: 50px;
	padding: 7px 9px;
	border: 0;
	background: var(--msp-surface);
}

.msp-purchase-order-summary .msp-purchase-order-facts dt {
	font-size: 10px;
	line-height: 1.25;
}

.msp-purchase-order-summary .msp-purchase-order-facts dd {
	margin-top: 3px;
	font-size: 12px;
	line-height: 1.35;
	overflow-wrap: anywhere;
}

.msp-purchase-order-summary .msp-purchase-order-facts .msp-money-value {
	font-size: 13px;
}

.msp-purchase-order-summary .msp-contract-reminder-guide {
	gap: 7px;
	margin: 0 12px 9px;
	padding: 6px 9px;
	font-size: 10px;
}

.msp-purchase-order-summary .msp-purchase-price-notice {
	align-items: center;
	border-left-color: var(--msp-orange);
}

.msp-purchase-order-summary .msp-purchase-price-notice > p {
	flex: 1 1 auto;
}

.msp-purchase-order-summary .msp-purchase-price-notice > .msp-button {
	flex: 0 0 auto;
}

@media (max-width: 720px) {
	.msp-purchase-order-summary .msp-purchase-price-notice {
		align-items: flex-start;
		flex-wrap: wrap;
	}

	.msp-purchase-order-summary .msp-purchase-price-notice > p {
		flex-basis: calc(100% - 28px);
	}

	.msp-purchase-order-summary .msp-purchase-price-notice > .msp-button {
		margin-left: 25px;
	}
}

.msp-purchase-order-summary .msp-inline-details {
	margin: 0 12px 10px;
	border: 1px solid var(--msp-border);
	border-radius: 4px;
	background: var(--msp-surface);
}

.msp-purchase-order-summary .msp-inline-details > summary {
	cursor: pointer;
	padding: 8px 10px;
	color: var(--msp-accent);
	font-size: 12px;
	font-weight: 700;
}

.msp-purchase-order-summary .msp-inline-details .msp-quotation-terms {
	margin: 0;
	padding: 0 10px 10px;
}

.msp-purchase-order-workspace,
.msp-purchase-order-workspace .msp-contract-tab-panel {
	gap: 9px;
}

.msp-purchase-order-workspace .msp-contract-tabs {
	top: 5px;
	gap: 2px;
	padding: 3px;
}

.msp-purchase-order-workspace .msp-contract-tab {
	min-width: 108px;
	height: 32px;
	gap: 5px;
	padding: 0 8px;
	font-size: 11px;
}

.msp-purchase-order-workspace .msp-contract-tab .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-purchase-order-workspace .msp-contract-tab small {
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	font-size: 10px;
}

.msp-purchase-order-workspace .msp-section {
	border-radius: 4px;
}

.msp-purchase-order-workspace .msp-section-wide > .msp-section-header {
	gap: 10px;
	padding: 9px 12px;
}

.msp-purchase-order-workspace .msp-section-header h2 {
	font-size: 14px;
}

.msp-purchase-order-workspace .msp-section-header p {
	font-size: 10px;
	line-height: 1.35;
}

.msp-purchase-order-workspace .msp-section-header .msp-button {
	min-height: 30px;
	padding: 4px 8px;
}

.msp-purchase-order-workspace .msp-purchase-order-items-section {
	border-top: 2px solid var(--msp-green);
}

.msp-purchase-order-workspace .msp-contract-milestones {
	border-top: 2px solid var(--msp-blue);
}

.msp-purchase-order-workspace .msp-purchase-contract-payments {
	border-top: 2px solid var(--msp-orange);
}

.msp-purchase-order-workspace .msp-purchase-contract-invoices {
	border-top: 2px solid var(--msp-purple);
}

.msp-purchase-order-workspace .msp-purchase-order-timeline-section {
	border-top: 2px solid var(--msp-blue);
}

.msp-purchase-order-workspace .msp-contract-reminder-guide {
	gap: 7px;
	margin: 7px 12px;
	padding: 6px 9px;
	font-size: 10px;
}

.msp-purchase-order-workspace .msp-contract-reminder-guide p {
	line-height: 1.35;
}

.msp-purchase-order-workspace .msp-table th,
.msp-purchase-order-workspace .msp-table td {
	padding: 7px 9px;
	line-height: 1.3;
}

.msp-purchase-order-workspace .msp-table-subline {
	margin-top: 1px;
	font-size: 10px;
	line-height: 1.3;
}

.msp-purchase-order-workspace .msp-purchase-order-items th:first-child,
.msp-purchase-order-workspace .msp-purchase-order-items td:first-child {
	min-width: 190px;
}

.msp-purchase-contract-finance-grid {
	display: grid;
	grid-template-columns: minmax(580px, 1.35fr) minmax(380px, 0.65fr);
	gap: 9px;
}

.msp-purchase-order-workspace .msp-purchase-order-timeline {
	padding: 10px 14px 2px;
}

.msp-purchase-order-workspace .msp-purchase-order-timeline .msp-timeline-item article {
	padding-bottom: 11px;
}

.msp-purchase-order-workspace .msp-purchase-order-timeline h3 {
	margin: 2px 0 3px;
	font-size: 14px;
}

@media (max-width: 1280px) {
	.msp-purchase-contract-finance-grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 780px) {
	.msp-purchase-order-detail-page > .msp-page-header {
		gap: 8px;
		margin-bottom: 9px;
	}

	.msp-purchase-order-detail-page > .msp-page-header h1 {
		font-size: 19px;
	}

	.msp-purchase-order-summary .msp-purchase-order-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 480px) {
	.msp-purchase-order-summary .msp-purchase-order-facts {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Power details prioritize identity, mounted parts, and the event timeline. */
.msp-power-detail-page > .msp-page-header {
	align-items: center;
	gap: 14px;
	margin-bottom: 10px;
}

.msp-power-detail-page > .msp-page-header h1 {
	margin: 1px 0 2px;
	font-size: 21px;
	line-height: 1.2;
}

.msp-power-detail-page > .msp-page-header .msp-title-row {
	gap: 8px;
}

.msp-power-detail-page > .msp-page-header .msp-back-link {
	margin-bottom: 2px;
}

.msp-power-detail-page > .msp-page-header .msp-header-actions {
	gap: 5px;
}

.msp-power-detail-page > .msp-page-header .msp-button {
	min-height: 32px;
	padding: 5px 9px;
}

.msp-power-detail-page > .msp-asset-media-panel {
	grid-template-columns: minmax(160px, 220px) minmax(0, 1fr);
	gap: 13px;
	margin-bottom: 9px;
	padding: 10px 12px;
}

.msp-power-detail-page .msp-asset-detail-image {
	height: 108px;
}

.msp-power-detail-page .msp-asset-detail-image.is-empty {
	gap: 4px;
	font-size: 11px;
}

.msp-power-detail-page .msp-asset-detail-image.is-empty .dashicons {
	width: 25px;
	height: 25px;
	font-size: 25px;
}

.msp-power-detail-page .msp-asset-media-copy {
	gap: 4px;
}

.msp-power-detail-page .msp-asset-media-copy h2 {
	font-size: 15px;
	line-height: 1.25;
}

.msp-power-detail-page .msp-asset-media-copy > p:not(.msp-eyebrow) {
	display: none;
}

.msp-power-detail-page .msp-asset-media-copy small {
	font-size: 10px;
}

.msp-power-detail-page .msp-asset-media-copy .msp-button {
	min-height: 30px;
	padding: 4px 8px;
	font-size: 11px;
}

.msp-power-detail-facts {
	grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
	margin-bottom: 9px;
}

.msp-power-detail-facts > div,
.msp-power-detail-facts > div:nth-child(3n),
.msp-power-detail-facts > div:nth-child(6n) {
	min-height: 48px;
	gap: 1px;
	padding: 7px 10px;
	border-right: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
}

.msp-power-detail-facts > div:last-child {
	border-right: 0;
	border-bottom: 0;
}

.msp-power-detail-facts span {
	font-size: 10px;
	line-height: 1.25;
}

.msp-power-detail-facts strong {
	font-size: 12px;
	line-height: 1.3;
}

.msp-power-detail-page > .msp-mounted-components {
	margin: 9px 0;
	padding: 10px 12px;
	border-top: 2px solid var(--msp-green);
}

.msp-power-detail-page > .msp-mounted-components .msp-section-header {
	gap: 10px;
	margin-bottom: 7px;
}

.msp-power-detail-page > .msp-mounted-components .msp-section-header h2 {
	font-size: 14px;
}

.msp-power-detail-page > .msp-mounted-components .msp-section-header p {
	font-size: 10px;
}

.msp-power-detail-page > .msp-mounted-components .msp-component-group {
	gap: 3px 6px;
	padding: 8px 9px;
}

.msp-power-detail-page > .msp-machine-layout {
	grid-template-columns: minmax(0, 1fr) 224px;
	gap: 10px;
}

.msp-power-detail-page > .msp-machine-layout > .msp-section {
	padding: 11px 13px;
	border-top: 2px solid var(--msp-blue);
}

.msp-power-detail-page > .msp-machine-layout .msp-section-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-power-detail-page > .msp-machine-layout .msp-section-header h2,
.msp-power-detail-page > .msp-machine-layout .msp-machine-meta h2 {
	font-size: 14px;
}

.msp-power-detail-page > .msp-machine-layout .msp-section-header p {
	font-size: 10px;
}

.msp-power-detail-page > .msp-machine-layout .msp-machine-meta {
	padding: 10px 11px;
	border-top: 2px solid var(--msp-orange);
}

.msp-power-detail-page > .msp-machine-layout .msp-machine-meta dl {
	margin-top: 7px;
}

.msp-power-detail-page > .msp-machine-layout .msp-machine-meta dl div {
	gap: 7px;
	padding: 6px 0;
	font-size: 11px;
}

.msp-power-detail-page .msp-timeline-item,
.msp-power-detail-page .msp-timeline-item article {
	padding-bottom: 11px;
}

/* Serialized assets and component records share one compact, color-coded detail rhythm. */
.msp-asset-detail-page > .msp-page-header {
	align-items: center;
	gap: 14px;
	margin-bottom: 10px;
}

.msp-asset-detail-page > .msp-page-header h1 {
	margin: 1px 0 2px;
	font-size: 21px;
	line-height: 1.2;
}

.msp-asset-detail-page > .msp-page-header .msp-title-row {
	gap: 8px;
}

.msp-asset-detail-page > .msp-page-header .msp-back-link,
.msp-asset-detail-page > .msp-page-header .msp-eyebrow {
	margin-bottom: 2px;
}

.msp-asset-detail-page > .msp-page-header .msp-header-actions {
	justify-content: flex-start;
	gap: 5px;
}

.msp-asset-detail-page > .msp-page-header .msp-button {
	min-height: 32px;
	padding: 5px 9px;
}

.msp-asset-detail-page > .msp-asset-media-panel {
	grid-template-columns: minmax(160px, 220px) minmax(0, 1fr);
	gap: 13px;
	margin-bottom: 9px;
	padding: 10px 12px;
	border-top: 2px solid var(--msp-purple);
}

.msp-asset-detail-page .msp-asset-detail-image {
	height: 108px;
}

.msp-asset-detail-page .msp-asset-detail-image.is-empty {
	gap: 4px;
	font-size: 11px;
}

.msp-asset-detail-page .msp-asset-detail-image.is-empty .dashicons {
	width: 25px;
	height: 25px;
	font-size: 25px;
}

.msp-asset-detail-page .msp-asset-media-copy {
	gap: 4px;
}

.msp-asset-detail-page .msp-asset-media-copy h2 {
	color: #d9a7ff;
	font-size: 15px;
	line-height: 1.25;
}

.msp-asset-detail-page .msp-asset-media-copy > p:not(.msp-eyebrow) {
	display: none;
}

.msp-asset-detail-page .msp-asset-media-copy small {
	font-size: 10px;
}

.msp-asset-detail-page .msp-asset-media-copy .msp-button {
	min-height: 30px;
	padding: 4px 8px;
	font-size: 11px;
}

.msp-asset-detail-page > .msp-machine-facts {
	grid-template-columns: repeat(auto-fit, minmax(138px, 1fr));
	margin-bottom: 9px;
	border-top: 2px solid var(--msp-blue);
	overflow: hidden;
}

.msp-asset-detail-page > .msp-machine-facts > div,
.msp-asset-detail-page > .msp-machine-facts > div:nth-child(3n),
.msp-asset-detail-page > .msp-machine-facts > div:nth-child(6n) {
	min-height: 48px;
	gap: 1px;
	padding: 7px 10px;
	border-right: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
}

.msp-asset-detail-page > .msp-machine-facts > div:last-child {
	border-right: 0;
	border-bottom: 0;
}

.msp-asset-detail-page > .msp-machine-facts span {
	font-size: 10px;
	line-height: 1.25;
}

.msp-asset-detail-page > .msp-machine-facts strong {
	font-size: 12px;
	line-height: 1.3;
}

.msp-asset-detail-page > .msp-mounted-assets,
.msp-asset-detail-page > .msp-mounted-components {
	margin: 9px 0;
	padding: 10px 12px;
	border-top: 2px solid var(--msp-green);
}

.msp-asset-detail-page > .msp-mounted-assets .msp-section-header,
.msp-asset-detail-page > .msp-mounted-components .msp-section-header {
	gap: 10px;
	margin-bottom: 7px;
}

.msp-asset-detail-page > .msp-mounted-assets .msp-section-header h2,
.msp-asset-detail-page > .msp-mounted-components .msp-section-header h2 {
	color: #70dd8a;
	font-size: 14px;
}

.msp-asset-detail-page > .msp-mounted-assets .msp-section-header p,
.msp-asset-detail-page > .msp-mounted-components .msp-section-header p {
	font-size: 10px;
}

.msp-asset-detail-page .msp-power-tree-grid {
	gap: 7px;
}

.msp-asset-detail-page .msp-power-tree > .msp-power-tree-header,
.msp-asset-detail-page .msp-component-group {
	gap: 4px 6px;
	padding: 8px 9px;
}

.msp-asset-detail-page .msp-component-links {
	gap: 4px 8px;
}

.msp-asset-detail-page .msp-component-links a {
	font-size: 11px;
}

.msp-asset-detail-page > .msp-machine-layout {
	grid-template-columns: minmax(0, 1fr) 238px;
	gap: 10px;
}

.msp-detail-circulator > .msp-machine-layout,
.msp-detail-high-voltage-module > .msp-machine-layout,
.msp-detail-component > .msp-machine-layout {
	grid-template-columns: minmax(0, 1fr) minmax(280px, 310px);
}

.msp-asset-detail-page > .msp-machine-layout > .msp-section {
	padding: 11px 13px;
	border-top: 2px solid var(--msp-blue);
}

.msp-asset-detail-page > .msp-machine-layout .msp-section-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-section-header h2 {
	color: #7db7ff;
	font-size: 14px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-section-header p {
	font-size: 10px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta {
	padding: 10px 11px;
	border-top: 2px solid var(--msp-orange);
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta h2 {
	color: #ffbd66;
	font-size: 14px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta .msp-meta-subheading {
	margin-top: 12px;
	padding-top: 10px;
	border-top-color: rgba(125, 183, 255, 0.38);
	color: #7db7ff;
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta dl {
	margin-top: 7px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta dl div {
	gap: 7px;
	padding: 6px 0;
	font-size: 11px;
}

.msp-asset-detail-page > .msp-machine-layout .msp-machine-meta dd {
	min-width: 0;
	text-align: right;
	overflow-wrap: anywhere;
}

.msp-asset-detail-page .msp-timeline-item,
.msp-asset-detail-page .msp-timeline-item article {
	padding-bottom: 11px;
}

.msp-product-model-detail-page > .msp-section {
	margin: 0 0 9px;
	padding: 11px 13px;
}

.msp-product-model-detail-page > .msp-section .msp-section-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-product-model-detail-page > .msp-section .msp-section-header h2 {
	font-size: 14px;
}

.msp-product-model-detail-page > .msp-section .msp-section-header p {
	font-size: 10px;
}

.msp-product-model-detail-page > .msp-product-model-profile {
	border-top: 2px solid var(--msp-blue);
}

.msp-product-model-detail-page > .msp-product-model-profile h2 {
	color: #7db7ff;
}

.msp-product-model-detail-page > .msp-product-model-links {
	border-top: 2px solid var(--msp-green);
}

.msp-product-model-detail-page > .msp-product-model-links h2 {
	color: #70dd8a;
}

.msp-product-model-detail-page > .msp-product-model-history {
	border-top: 2px solid var(--msp-orange);
}

.msp-product-model-detail-page > .msp-product-model-history h2 {
	color: #ffbd66;
}

.msp-product-model-detail-page .msp-product-model-facts {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0;
}

.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(n) {
	display: flex;
	min-width: 0;
	min-height: 48px;
	flex-direction: column;
	gap: 2px;
	padding: 7px 10px;
	border-right: 1px solid var(--msp-border);
	border-bottom: 1px solid var(--msp-border);
}

.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(5n),
.msp-product-model-detail-page .msp-product-model-facts > div:last-child {
	border-right: 0;
}

.msp-product-model-detail-page .msp-product-model-fact-wide {
	grid-column: 1 / -1;
}

.msp-product-model-detail-page .msp-product-model-facts dt,
.msp-product-model-detail-page .msp-product-model-relations span,
.msp-product-model-detail-page .msp-product-model-related-lists {
	font-size: 11px;
}

.msp-product-model-detail-page .msp-product-model-facts dd {
	font-size: 12px;
}

.msp-product-model-detail-page .msp-product-model-relations {
	margin-bottom: 9px;
}

.msp-product-model-detail-page .msp-product-model-relations > div {
	padding: 8px 10px;
}

.msp-product-model-detail-page .msp-product-model-relations strong {
	font-size: 18px;
}

.msp-product-model-detail-page .msp-product-model-related-lists {
	gap: 8px;
}

.msp-product-model-detail-page .msp-product-model-related-lists > div {
	padding: 9px 10px;
}

.msp-product-model-detail-page .msp-product-model-timeline {
	gap: 8px;
}

@media (min-width: 1280px) {
	.msp-dialog {
		width: min(760px, calc(100vw - 40px));
	}

	.msp-dialog-wide {
		width: min(1080px, calc(100vw - 40px));
	}

	.msp-dialog.msp-dialog-compact {
		width: min(560px, calc(100vw - 40px));
	}

	.msp-dialog-org {
		width: min(1180px, calc(100vw - 40px));
	}

	.msp-dialog-wide .msp-form-subsection > .msp-form-grid,
	.msp-dialog-org .msp-form-subsection > .msp-form-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.msp-dialog-wide .msp-form-subsection > .msp-form-grid > .msp-span-2,
	.msp-dialog-org .msp-form-subsection > .msp-form-grid > .msp-span-2 {
		grid-column: 1 / -1;
	}
}

@media (max-width: 780px) {
	.msp-nav-group-toggle {
		display: none;
	}

	.msp-mobile-navigation .msp-nav-subgroup,
	.msp-mobile-navigation .msp-nav-subgroup-items {
		display: contents;
	}

	.msp-mobile-navigation .msp-nav-subgroup-label {
		display: none;
	}

	.msp-main table[data-column-visibility] .msp-table-subline:nth-of-type(n + 3) {
		display: block;
	}

	.msp-machine-facts > div {
		min-height: 58px;
	}

	.msp-action-item {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.msp-action-item-due {
		grid-column: 1;
	}

	.msp-contract-detail-page > .msp-page-header {
		gap: 8px;
		margin-bottom: 9px;
	}

	.msp-contract-detail-page > .msp-page-header h1 {
		font-size: 19px;
	}

	.msp-contract-detail-page > .msp-page-header .msp-header-actions {
		gap: 5px;
	}

	.msp-contract-detail-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-contract-detail-facts > div,
	.msp-contract-detail-facts > div:nth-child(4n) {
		border-right: 1px solid var(--msp-border);
		border-bottom: 1px solid var(--msp-border);
	}

	.msp-contract-detail-facts > div:nth-child(2n),
	.msp-contract-detail-facts > div:last-child {
		border-right: 0;
	}

	.msp-contract-detail-workspace .msp-contract-tab {
		min-width: 88px;
	}

	.msp-contract-source-relation {
		grid-template-columns: minmax(0, 1fr);
		align-items: start;
	}

	.msp-contract-source-relation .msp-contract-source-actions {
		flex-wrap: wrap;
	}

	.msp-contract-note-section {
		grid-template-columns: 1fr;
		gap: 6px;
	}

	.msp-power-detail-page > .msp-page-header {
		gap: 8px;
		margin-bottom: 9px;
	}

	.msp-power-detail-page > .msp-page-header h1 {
		font-size: 19px;
	}

	.msp-power-detail-page > .msp-asset-media-panel {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.msp-power-detail-page .msp-asset-detail-image {
		height: 120px;
	}

	.msp-power-detail-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-power-detail-facts > div,
	.msp-power-detail-facts > div:nth-child(3n),
	.msp-power-detail-facts > div:nth-child(6n) {
		border-right: 1px solid var(--msp-border);
	}

	.msp-power-detail-facts > div:nth-child(2n),
	.msp-power-detail-facts > div:last-child {
		border-right: 0;
	}

	.msp-power-detail-page > .msp-machine-layout {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.msp-contract-detail-facts {
		grid-template-columns: 1fr;
	}

	.msp-contract-detail-facts > div,
	.msp-contract-detail-facts > div:nth-child(2n),
	.msp-contract-detail-facts > div:nth-child(4n) {
		border-right: 0;
	}

	.msp-power-detail-facts {
		grid-template-columns: 1fr;
	}

	.msp-power-detail-facts > div,
	.msp-power-detail-facts > div:nth-child(2n),
	.msp-power-detail-facts > div:nth-child(3n),
	.msp-power-detail-facts > div:nth-child(6n) {
		border-right: 0;
	}
}

@media (max-width: 1080px) {
	.msp-asset-detail-page > .msp-machine-layout,
	.msp-detail-circulator > .msp-machine-layout,
	.msp-detail-high-voltage-module > .msp-machine-layout,
	.msp-detail-component > .msp-machine-layout {
		grid-template-columns: 1fr;
	}

	.msp-asset-detail-page .msp-power-tree-grid {
		grid-template-columns: 1fr;
	}

	.msp-product-model-detail-page .msp-product-model-facts {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(n) {
		border-right: 1px solid var(--msp-border);
	}

	.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(3n),
	.msp-product-model-detail-page .msp-product-model-facts > div:last-child {
		border-right: 0;
	}
}

@media (max-width: 780px) {
	.msp-asset-detail-page > .msp-page-header {
		gap: 8px;
		margin-bottom: 9px;
	}

	.msp-asset-detail-page > .msp-page-header h1 {
		font-size: 19px;
	}

	.msp-asset-detail-page > .msp-asset-media-panel {
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.msp-asset-detail-page .msp-asset-detail-image {
		height: 120px;
	}

	.msp-asset-detail-page > .msp-machine-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-asset-detail-page > .msp-machine-facts > div,
	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(3n),
	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(6n) {
		border-right: 1px solid var(--msp-border);
	}

	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(2n),
	.msp-asset-detail-page > .msp-machine-facts > div:last-child {
		border-right: 0;
	}

	.msp-product-model-detail-page .msp-product-model-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(n) {
		border-right: 1px solid var(--msp-border);
	}

	.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(2n),
	.msp-product-model-detail-page .msp-product-model-facts > div:last-child {
		border-right: 0;
	}
}

@media (max-width: 480px) {
	.msp-asset-detail-page > .msp-machine-facts,
	.msp-product-model-detail-page .msp-product-model-facts {
		grid-template-columns: 1fr;
	}

	.msp-asset-detail-page > .msp-machine-facts > div,
	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(2n),
	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(3n),
	.msp-asset-detail-page > .msp-machine-facts > div:nth-child(6n),
	.msp-product-model-detail-page .msp-product-model-facts > div:nth-child(n) {
		border-right: 0;
	}
}

@media print {
	.msp-floating-table-header,
	.msp-action-list-toggle,
	.msp-column-visibility-toolbar {
		display: none !important;
	}

	.msp-action-list.is-density-collapsed .msp-action-item:nth-child(n + 9) {
		display: grid;
	}
}
.msp-record-summary-cell {
	min-width: 180px;
	max-width: 280px;
	white-space: normal;
}

.msp-record-summary-display {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 28px;
	align-items: start;
	gap: 6px;
}

.msp-record-summary-display > [data-record-summary-text]:not(.msp-muted-label) {
	display: -webkit-box;
	overflow: hidden;
	line-height: 1.45;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.msp-record-summary-edit {
	width: 28px;
	height: 28px;
	min-width: 28px;
	opacity: 0.72;
}

.msp-record-summary-edit:hover,
.msp-record-summary-edit:focus {
	color: var(--msp-primary);
	opacity: 1;
}

.msp-record-summary-help {
	display: flex;
	justify-content: space-between;
	gap: 16px;
}

.msp-record-summary-count {
	color: #0a84ff;
	font-variant-numeric: tabular-nums;
	white-space: nowrap;
}

.msp-record-summary-dialog {
	width: min(520px, calc(100vw - 32px));
}

.msp-record-summary-dialog textarea {
	min-height: 110px;
	resize: vertical;
}

.msp-record-summary-editor-meta {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	margin-top: 8px;
	color: var(--msp-text-muted);
	font-size: 11px;
}

.msp-record-summary-editor-meta [data-state="error"] {
	color: var(--msp-red);
}

.msp-contract-library-tabs {
	display: flex;
	gap: 8px;
	margin: 0 0 16px;
	border-bottom: 1px solid var(--msp-border);
}

.msp-contract-library-tabs a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 0 13px;
	border-bottom: 2px solid transparent;
	color: var(--msp-text-muted);
	text-decoration: none;
}

.msp-contract-library-tabs a.is-active {
	border-bottom-color: #0a84ff;
	color: var(--msp-text);
}

.msp-contract-library-tabs small {
	min-width: 22px;
	padding: 1px 6px;
	border-radius: 4px;
	background: var(--msp-surface-strong);
	font-variant-numeric: tabular-nums;
	text-align: center;
}

.msp-contract-template-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 10px;
}

.msp-contract-template-card {
	display: flex;
	min-height: 178px;
	flex-direction: column;
	padding: 14px;
	border: 1px solid var(--msp-border);
	border-left: 3px solid #0a84ff;
	border-radius: 6px;
	background: var(--msp-surface-strong);
}

.msp-contract-template-card.is-featured {
	border-left-color: #30d158;
	box-shadow: inset 0 0 0 1px rgba(48, 209, 88, 0.12);
}

.msp-contract-template-card > div,
.msp-contract-template-card footer {
	display: flex;
	justify-content: space-between;
	gap: 10px;
}

.msp-contract-template-card > div span {
	color: #ff9f0a;
	font-size: 11px;
	font-weight: 700;
}

.msp-contract-template-card h3 {
	margin: 9px 0 5px;
	font-size: 15px;
}

.msp-contract-template-card p {
	margin: 0 0 12px;
	color: var(--msp-text-muted);
	font-size: 12px;
	line-height: 1.55;
}

.msp-contract-template-card .msp-contract-template-languages {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-top: auto;
	padding-top: 7px;
	color: #64b5ff;
	font-size: 10px;
	font-weight: 700;
}

.msp-contract-template-languages .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

.msp-contract-template-card footer {
	display: block;
	margin-top: auto;
	padding-top: 9px;
	border-top: 1px solid var(--msp-border);
	font-size: 10px;
}

.msp-contract-template-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.msp-contract-template-meta small {
	max-width: 58%;
	color: var(--msp-text-muted);
	text-align: right;
}

.msp-contract-template-review-controls {
	display: flex;
	align-items: center;
	gap: 7px;
	margin-top: 9px;
}

.msp-contract-template-review-controls label {
	min-width: 0;
	flex: 1 1 auto;
}

.msp-contract-template-review-controls select {
	width: 100%;
	min-height: 31px;
	padding: 4px 26px 4px 8px;
	font-size: 11px;
}

.msp-contract-template-review-controls .msp-button {
	min-height: 31px;
	flex: 0 0 auto;
	white-space: nowrap;
}

.msp-contract-match-badge,
.msp-contract-review-badge {
	display: inline-flex;
	align-items: center;
	min-height: 22px;
	padding: 2px 7px;
	border: 1px solid transparent;
	border-radius: 4px;
	font-size: 10px;
	font-weight: 700;
}

.msp-contract-match-badge.is-confirmed,
.msp-contract-review-badge.is-verified {
	border-color: rgba(48, 209, 88, 0.4);
	color: #30d158;
	background: rgba(48, 209, 88, 0.09);
}

.msp-contract-match-badge.is-candidate,
.msp-contract-review-badge.is-suggested {
	border-color: rgba(255, 159, 10, 0.4);
	color: #ff9f0a;
	background: rgba(255, 159, 10, 0.09);
}

.msp-contract-match-badge.is-unmatched,
.msp-contract-review-badge.is-rejected {
	border-color: rgba(255, 69, 58, 0.38);
	color: #ff6961;
	background: rgba(255, 69, 58, 0.08);
}

.msp-contract-library-link-button {
	margin-top: 7px;
}

.msp-contract-candidate-list {
	display: grid;
	gap: 3px;
	max-width: 340px;
	margin-top: 7px;
	padding-top: 6px;
	border-top: 1px solid var(--msp-border);
}

.msp-contract-candidate-list small {
	display: block;
	color: var(--msp-text-muted);
	font-size: 10px;
	line-height: 1.35;
}

.msp-contract-candidate-list > span {
	color: #ff9f0a;
	font-size: 10px;
	font-weight: 700;
}

.msp-contract-candidate-list strong {
	color: #ff9f0a;
}

.msp-contract-current-link {
	display: grid;
	gap: 5px;
	max-width: 420px;
}

.msp-contract-current-link > span {
	width: max-content;
	padding: 2px 6px;
	border: 1px solid rgba(10, 132, 255, 0.34);
	border-radius: 4px;
	color: #64b5ff;
	background: rgba(10, 132, 255, 0.08);
	font-size: 10px;
	font-weight: 700;
}

.msp-contract-current-link > a {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	color: var(--msp-text);
	line-height: 1.4;
}

.msp-contract-current-link > a strong {
	color: #64b5ff;
}

.msp-contract-current-link .dashicons {
	width: 14px;
	height: 14px;
	font-size: 14px;
}

.msp-contract-link-dialog-actions > span {
	flex: 1;
}

.msp-contract-file-link {
	display: flex;
	align-items: center;
	gap: 4px;
	margin-top: 4px;
}

.msp-contract-library-section,
.msp-contract-extraction-section,
.msp-contract-relations-section,
.msp-contract-generated-section {
	border-left: 3px solid #0a84ff;
}

.msp-contract-extraction-section {
	border-left-color: #ff9f0a;
}

.msp-contract-relations-section {
	border-left-color: #bf5af2;
}

.msp-contract-generated-section {
	border-left-color: #30d158;
}

.msp-contract-builder-dialog {
	width: min(1180px, calc(100vw - 28px));
}

.msp-contract-builder-tabs {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 6px;
	margin: 0 0 12px;
}

.msp-contract-builder-tabs button {
	display: flex;
	min-height: 38px;
	align-items: center;
	justify-content: center;
	gap: 7px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	color: var(--msp-text-muted);
	background: var(--msp-surface-strong);
	cursor: pointer;
}

.msp-contract-builder-tabs button span {
	display: inline-grid;
	width: 20px;
	height: 20px;
	place-items: center;
	border: 1px solid currentColor;
	border-radius: 50%;
	font-size: 10px;
}

.msp-contract-builder-tabs button.is-active {
	border-color: rgba(10, 132, 255, 0.65);
	color: #64b5ff;
	background: rgba(10, 132, 255, 0.1);
}

.msp-contract-builder-panel {
	display: grid;
	gap: 10px;
}

.msp-contract-builder-panel[hidden] {
	display: none;
}

.msp-contract-language-picker {
	margin: 0;
	padding: 0;
	border: 0;
}

.msp-contract-language-picker legend {
	margin-bottom: 7px;
	font-weight: 700;
}

.msp-contract-language-picker .msp-checkbox-grid {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.msp-contract-language-picker .msp-field-help.is-error {
	color: #ff6961;
}

.msp-contract-translation-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.msp-contract-translation-grid > section {
	display: grid;
	gap: 9px;
	padding: 11px;
	border: 1px solid var(--msp-border);
	border-top: 2px solid #0a84ff;
	border-radius: 5px;
	background: var(--msp-surface-strong);
}

.msp-contract-translation-grid > section[hidden] {
	display: none;
}

.msp-contract-translation-grid h4 {
	margin: 0;
	color: #64b5ff;
	font-size: 12px;
}

.msp-contract-term-grid textarea {
	min-height: 96px;
}

.msp-contract-parameter-details {
	padding: 0;
}

.msp-contract-parameter-details > summary {
	padding: 11px 13px;
	color: #64b5ff;
	font-weight: 700;
	cursor: pointer;
}

.msp-contract-parameter-details > .msp-form-grid {
	padding: 0 13px 13px;
}

.msp-contract-payment-table {
	min-width: 920px;
}

.msp-contract-payment-table th:first-child,
.msp-contract-payment-table td:first-child,
.msp-contract-payment-table th:nth-child(2),
.msp-contract-payment-table td:nth-child(2) {
	width: 82px;
}

.msp-contract-payment-table input {
	width: 100%;
	min-width: 0;
}

.msp-export-contract-annex-fields > .msp-field {
	display: grid;
	gap: 6px;
	margin-bottom: 10px;
}

.msp-contract-annex-grid {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.msp-contract-builder-checklist {
	display: grid;
	gap: 8px;
}

.msp-contract-builder-checklist p {
	display: flex;
	align-items: flex-start;
	gap: 7px;
	margin: 0;
	color: var(--msp-text-muted);
	line-height: 1.5;
}

.msp-contract-builder-checklist .dashicons-yes-alt {
	color: #30d158;
}

.msp-contract-builder-checklist .dashicons-warning {
	color: #ff9f0a;
}

.msp-contract-builder-checklist .dashicons-lock {
	color: #64b5ff;
}

@media (max-width: 760px) {
	.msp-contract-builder-tabs {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-contract-language-picker .msp-checkbox-grid,
	.msp-contract-translation-grid,
	.msp-contract-annex-grid {
		grid-template-columns: 1fr;
	}
}

.msp-contract-extracted-value {
	max-width: 620px;
	max-height: 108px;
	overflow: auto;
	white-space: normal;
	line-height: 1.5;
}

.msp-inline-review-form,
.msp-language-output-actions {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: 5px;
}

.msp-inline-review-form .is-success {
	color: #30d158;
}

.msp-contract-relation-list {
	display: grid;
	gap: 7px;
}

.msp-contract-relation-list article {
	display: grid;
	grid-template-columns: minmax(150px, 0.35fr) minmax(250px, 1fr) minmax(180px, 0.7fr);
	align-items: center;
	gap: 12px;
	padding: 9px 11px;
	border: 1px solid var(--msp-border);
	border-radius: 5px;
	background: var(--msp-surface-strong);
}

.msp-contract-relation-list article > span {
	color: #bf5af2;
	font-size: 11px;
	font-weight: 700;
}

.msp-contract-relation-list a {
	color: var(--msp-text);
	font-weight: 700;
	text-decoration: none;
}

.msp-contract-relation-list small,
.msp-ocr-field-help {
	color: var(--msp-text-muted);
}

.msp-ocr-field-help {
	color: #64a8ff;
}

@media (max-width: 760px) {
	.msp-contract-library-tabs {
		overflow-x: auto;
	}

	.msp-contract-library-tabs a {
		white-space: nowrap;
	}

	.msp-contract-relation-list article {
		grid-template-columns: 1fr;
		gap: 4px;
	}
}

/* Quotation details keep output, editing, and archival work close to their content. */
.msp-quotation-detail-page {
	display: grid;
	min-width: 0;
	gap: 9px;
}

.msp-quotation-detail-page > .msp-page-header {
	align-items: center;
	gap: 14px;
	margin-bottom: 1px;
}

.msp-quotation-detail-page > .msp-page-header h1 {
	margin: 1px 0 2px;
	font-size: 21px;
	line-height: 1.2;
}

.msp-quotation-detail-page > .msp-page-header .msp-back-link {
	margin-bottom: 2px;
}

.msp-quotation-detail-page > .msp-page-header .msp-page-summary {
	line-height: 1.35;
}

.msp-quotation-output-actions {
	flex: 0 1 auto;
	gap: 5px;
}

.msp-quotation-output-actions .msp-button {
	min-height: 30px;
	padding: 4px 8px;
	font-size: 11px;
}

.msp-quotation-detail-facts {
	grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
	margin-bottom: 0;
}

.msp-quotation-detail-facts > div,
.msp-quotation-detail-facts > div:nth-child(4n) {
	min-height: 50px;
	gap: 2px;
	padding: 7px 10px;
	border-right: 1px solid var(--msp-border);
}

.msp-quotation-detail-facts > div:last-child {
	border-right: 0;
}

.msp-quotation-detail-facts span,
.msp-quotation-detail-facts small {
	font-size: 10px;
	line-height: 1.25;
}

.msp-quotation-detail-facts strong {
	font-size: 13px;
	line-height: 1.25;
}

.msp-quotation-workspace,
.msp-quotation-workspace .msp-contract-tab-panel {
	gap: 9px;
}

.msp-quotation-workspace .msp-quotation-tabs {
	top: 5px;
	gap: 2px;
	padding: 3px;
}

.msp-quotation-workspace .msp-contract-tab {
	min-width: 112px;
	height: 32px;
	gap: 5px;
	padding: 0 9px;
	font-size: 11px;
}

.msp-quotation-workspace .msp-contract-tab .dashicons {
	width: 16px;
	height: 16px;
	font-size: 16px;
}

.msp-quotation-workspace .msp-contract-tab small {
	min-width: 18px;
	height: 18px;
	padding: 0 5px;
	font-size: 10px;
}

.msp-quotation-workspace .msp-section {
	border-radius: 4px;
}

.msp-quotation-workspace .msp-section:not(.msp-section-wide) {
	padding: 11px 13px;
}

.msp-quotation-workspace .msp-section-wide > .msp-section-header {
	padding: 9px 12px;
}

.msp-quotation-workspace .msp-section-header {
	gap: 10px;
	margin-bottom: 8px;
}

.msp-quotation-workspace .msp-section-header h2 {
	font-size: 14px;
}

.msp-quotation-workspace .msp-section-header p {
	font-size: 10px;
	line-height: 1.35;
}

.msp-quotation-workspace .msp-section-header-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
}

.msp-quotation-item-toolbar {
	display: flex;
	min-width: 0;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	padding: 7px 10px;
	border: 1px solid var(--msp-border);
	border-top: 2px solid var(--msp-green);
	border-radius: 4px;
	background: rgba(48, 209, 88, 0.055);
}

.msp-quotation-item-toolbar > div:first-child,
.msp-quotation-item-toolbar strong,
.msp-quotation-item-toolbar small {
	display: block;
	min-width: 0;
}

.msp-quotation-item-toolbar strong {
	font-size: 13px;
}

.msp-quotation-item-toolbar small {
	margin-top: 1px;
	color: var(--msp-text-muted);
	font-size: 10px;
}

.msp-quotation-items-section {
	border-top: 2px solid var(--msp-green);
}

.msp-quotation-terms-section {
	border-top: 2px solid var(--msp-blue);
}

.msp-quotation-contract-section {
	border-top: 2px solid var(--msp-orange);
}

.msp-quotation-workspace .msp-quotation-documents {
	border-top: 2px solid var(--msp-purple);
}

.msp-quotation-workspace .msp-table th,
.msp-quotation-workspace .msp-table td {
	padding: 7px 9px;
	line-height: 1.3;
}

.msp-quotation-workspace .msp-table-subline {
	margin-top: 1px;
	font-size: 10px;
	line-height: 1.3;
}

.msp-quotation-workspace .msp-quotation-items-table {
	min-width: 760px;
}

.msp-quotation-terms-section .msp-quotation-terms {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	background: var(--msp-border);
}

.msp-quotation-terms-section .msp-quotation-terms > div {
	grid-template-columns: 82px minmax(0, 1fr);
	gap: 10px;
	padding: 8px 10px;
	border: 0;
	background: var(--msp-surface);
	font-size: 11px;
	line-height: 1.4;
}

.msp-quotation-terms-section .msp-quotation-terms > div:last-child:nth-child(odd) {
	grid-column: 1 / -1;
}

.msp-quotation-edit-dialog form {
	padding: 14px 16px;
}

.msp-quotation-edit-dialog .msp-dialog-header {
	margin-bottom: 10px;
}

.msp-quotation-edit-dialog .msp-quotation-edit-grid,
.msp-quotation-edit-dialog .msp-form-subsection > .msp-form-grid {
	gap: 8px;
}

.msp-quotation-edit-dialog .msp-form-subsection {
	padding: 9px 10px;
}

.msp-quotation-edit-dialog .msp-form-subsection-heading {
	gap: 8px;
	margin-bottom: 8px;
}

.msp-quotation-edit-dialog .msp-form-subsection-heading small {
	margin-top: 1px;
	line-height: 1.35;
}

.msp-quotation-edit-dialog .msp-field textarea,
.msp-quotation-edit-dialog .msp-quotation-term-field textarea,
.msp-quotation-edit-dialog .msp-quotation-notes-field textarea {
	min-height: 68px;
}

.msp-quotation-edit-dialog .msp-dialog-actions {
	position: sticky;
	z-index: 3;
	bottom: -14px;
	margin: 10px -16px -14px;
	padding: 10px 16px 14px;
	background: var(--msp-surface);
}

@media (min-width: 1280px) {
	.msp-quotation-edit-dialog {
		width: min(1240px, calc(100vw - 40px));
	}

	.msp-quotation-edit-dialog > form > .msp-quotation-edit-grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}

	.msp-quotation-edit-dialog > form > .msp-quotation-edit-grid > .msp-form-subsection {
		grid-column: 1 / -1;
	}

	.msp-quotation-edit-dialog [data-quotation-terms] > .msp-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-quotation-edit-dialog [data-quotation-terms] > .msp-form-grid > .msp-quotation-terms-profile {
		grid-column: 1 / -1;
	}

	.msp-quotation-edit-dialog [data-quotation-terms] > .msp-form-grid > .msp-quotation-term-field {
		grid-column: auto;
	}
}

@media (max-width: 780px) {
	.msp-quotation-detail-page > .msp-page-header {
		align-items: stretch;
	}

	.msp-quotation-output-actions,
	.msp-quotation-item-toolbar,
	.msp-quotation-workspace .msp-section-header {
		align-items: stretch;
	}

	.msp-quotation-item-toolbar,
	.msp-quotation-workspace .msp-section-header {
		flex-direction: column;
	}

	.msp-quotation-output-actions .msp-button,
	.msp-quotation-item-toolbar .msp-button {
		flex: 1 1 auto;
	}

	.msp-quotation-workspace .msp-section-header-actions {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.msp-quotation-terms-section .msp-quotation-terms {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-quotation-terms-section .msp-quotation-terms > div:last-child:nth-child(odd) {
		grid-column: auto;
	}
}

/* Circulator VNA editor: dense enough for repeated engineering entry. */
.msp-circulator-test-dialog .msp-dialog-header {
	margin-bottom: 8px;
}

.msp-circulator-test-dialog .msp-circulator-test-form-grid,
.msp-circulator-test-dialog .msp-form-subsection > .msp-form-grid {
	gap: 8px;
}

.msp-circulator-test-dialog .msp-form-subsection {
	padding: 8px 10px;
}

.msp-circulator-test-dialog .msp-form-subsection h3 {
	margin-bottom: 6px;
	font-size: 15px;
}

.msp-circulator-test-dialog .msp-field {
	font-size: 12px;
}

.msp-circulator-test-dialog .msp-field-help {
	margin-top: 3px;
	font-size: 11px;
	line-height: 1.35;
}

.msp-circulator-test-dialog .msp-circulator-test-data-section > .msp-field-help {
	margin-bottom: 6px;
}

.msp-circulator-test-dialog textarea {
	min-height: 62px;
}

.msp-circulator-test-dialog .msp-dialog-actions {
	position: sticky;
	z-index: 8;
	bottom: -14px;
	margin: 8px -16px -14px;
	padding: 9px 16px 14px;
	background: var(--msp-surface);
}

@media (min-width: 960px) {
	.msp-circulator-test-dialog .msp-circulator-test-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.msp-circulator-test-dialog .msp-circulator-test-info-section,
	.msp-circulator-test-dialog .msp-circulator-test-reference-section {
		grid-column: auto;
	}

	.msp-circulator-test-dialog .msp-circulator-test-data-section,
	.msp-circulator-test-dialog .msp-circulator-test-conclusion-section {
		grid-column: 1 / -1;
	}

	.msp-circulator-test-dialog .msp-circulator-test-info-section > .msp-form-grid,
	.msp-circulator-test-dialog .msp-circulator-test-reference-section > .msp-form-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 959px) {
	.msp-circulator-test-dialog .msp-circulator-test-form-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-circulator-test-dialog .msp-circulator-test-form-grid > .msp-form-subsection {
		grid-column: 1 / -1;
	}
}

/* The VNA editor uses dividers rather than tinted subsection blocks. */
.msp-circulator-test-dialog .msp-form-subsection,
.msp-circulator-test-dialog .msp-form-subsection:nth-of-type(4n + 2),
.msp-circulator-test-dialog .msp-form-subsection:nth-of-type(4n + 3),
.msp-circulator-test-dialog .msp-form-subsection:nth-of-type(4n) {
	padding: 10px 0 12px;
	border: 0;
	border-top: 1px solid var(--msp-border);
	background: transparent;
}

.msp-circulator-test-dialog .msp-form-subsection h3 {
	display: flex;
	align-items: center;
	gap: 8px;
}

.msp-circulator-test-dialog .msp-form-subsection h3::before {
	width: 3px;
	height: 15px;
	border-radius: 2px;
	background: var(--msp-blue);
	content: "";
}

@media (min-width: 960px) {
	.msp-circulator-test-dialog .msp-circulator-test-info-section,
	.msp-circulator-test-dialog .msp-circulator-test-reference-section {
		border-top: 0;
	}

	.msp-circulator-test-dialog .msp-circulator-test-reference-section {
		padding-left: 14px;
		border-left: 1px solid var(--msp-border);
	}
}

/* Unified operational discussion stream for assets, contracts, work orders and model audit. */
.msp-timeline {
	--msp-timeline-accent: var(--msp-blue);
	display: block;
	margin: 0;
	padding: 0;
}

.msp-timeline-item,
.msp-product-model-timeline > .msp-timeline-item {
	position: relative;
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	gap: 12px;
	padding: 0;
}

.msp-timeline-item:not(:last-child)::before,
.msp-product-model-timeline::before {
	position: absolute;
	top: 32px;
	bottom: 0;
	left: 15px;
	width: 1px;
	background: var(--msp-border-strong);
	content: "";
}

.msp-timeline-item:not(:first-child):not(:last-child)::before {
	top: 0;
}

.msp-timeline-item:last-child:not(:first-child)::before {
	position: absolute;
	top: 0;
	left: 15px;
	width: 1px;
	height: 31px;
	background: var(--msp-border-strong);
	content: "";
}

.msp-product-model-timeline::before {
	display: none;
}

.msp-timeline-marker,
.msp-timeline-marker.msp-event-maintenance,
.msp-timeline-marker.msp-event-magnetron,
.msp-timeline-marker.msp-event-fault,
.msp-timeline-marker.msp-event-special,
.msp-timeline-marker.msp-event-shipment {
	position: relative;
	z-index: 2;
	display: grid;
	width: 30px;
	height: 30px;
	margin-top: 1px;
	border: 1px solid rgba(100, 210, 255, 0.48);
	border-radius: 50%;
	place-items: center;
	background: rgba(10, 132, 255, 0.14);
	box-shadow: 0 0 0 3px var(--msp-surface);
	color: #64d2ff;
}

.msp-timeline-marker .dashicons {
	width: 15px;
	height: 15px;
	font-size: 15px;
	line-height: 15px;
}

.msp-timeline-marker.msp-event-fault,
.msp-timeline-marker.msp-event-product_model_deleted {
	border-color: rgba(255, 105, 97, 0.5);
	background: rgba(255, 69, 58, 0.13);
	color: #ff6961;
}

.msp-timeline-marker.msp-event-maintenance,
.msp-timeline-marker.msp-event-magnetron,
.msp-timeline-marker.msp-event-status,
.msp-timeline-marker.msp-event-status_changed,
.msp-timeline-marker.msp-event-contract_status,
.msp-timeline-marker.msp-event-payment_plan {
	border-color: rgba(255, 179, 64, 0.5);
	background: rgba(255, 159, 10, 0.13);
	color: #ffb340;
}

.msp-timeline-marker.msp-event-test,
.msp-timeline-marker.msp-event-inspection,
.msp-timeline-marker.msp-event-commissioning,
.msp-timeline-marker.msp-event-request_reviewed,
.msp-timeline-marker.msp-event-item_reviewed,
.msp-timeline-marker.msp-event-inventory_receipt {
	border-color: rgba(99, 230, 130, 0.5);
	background: rgba(48, 209, 88, 0.12);
	color: #63e682;
}

.msp-timeline-marker.msp-event-special,
.msp-timeline-marker.msp-event-document,
.msp-timeline-marker.msp-event-template_applied,
.msp-timeline-marker.msp-event-contract_variation,
.msp-timeline-marker.msp-event-product_model_merged,
.msp-timeline-marker.msp-event-product_model_relations_received {
	border-color: rgba(217, 168, 255, 0.5);
	background: rgba(191, 90, 242, 0.12);
	color: #d9a8ff;
}

.msp-timeline-item .msp-thread-entry,
.msp-contract-timeline .msp-thread-entry,
.msp-product-model-timeline .msp-thread-entry {
	position: relative;
	display: block;
	min-width: 0;
	margin: 0;
	padding: 0 0 17px;
	border: 0;
	border-bottom: 1px solid var(--msp-border);
}

.msp-timeline-item:not(:first-child) .msp-thread-entry {
	padding-top: 15px;
}

.msp-timeline-item:not(:first-child) .msp-timeline-marker {
	margin-top: 16px;
}

.msp-timeline-item:last-child .msp-thread-entry {
	padding-bottom: 0;
	border-bottom: 0;
}

.msp-contract-timeline::before,
.msp-contract-timeline .msp-thread-entry::before {
	display: none;
	content: none;
}

.msp-event-heading {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
}

.msp-event-heading > div:first-child {
	min-width: 0;
}

.msp-event-labels {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 5px;
}

.msp-event-type,
.msp-contract-timeline article > div > .msp-event-labels > .msp-event-type {
	min-height: 20px;
	padding: 2px 7px;
	background: rgba(10, 132, 255, 0.14);
	color: #64d2ff;
	font-size: 10px;
	font-weight: 750;
}

.msp-event-type.is-fault,
.msp-event-type.is-product_model_deleted {
	background: rgba(255, 69, 58, 0.14);
	color: #ff6961;
}

.msp-event-type.is-maintenance,
.msp-event-type.is-magnetron,
.msp-event-type.is-status,
.msp-event-type.is-status_changed,
.msp-event-type.is-contract_status,
.msp-event-type.is-payment_plan {
	background: rgba(255, 159, 10, 0.14);
	color: #ffb340;
}

.msp-event-type.is-test,
.msp-event-type.is-inspection,
.msp-event-type.is-commissioning,
.msp-event-type.is-request_reviewed,
.msp-event-type.is-item_reviewed,
.msp-event-type.is-inventory_receipt {
	background: rgba(48, 209, 88, 0.13);
	color: #63e682;
}

.msp-event-type.is-special,
.msp-event-type.is-document,
.msp-event-type.is-template_applied,
.msp-event-type.is-contract_variation,
.msp-event-type.is-product_model_merged,
.msp-event-type.is-product_model_relations_received {
	background: rgba(191, 90, 242, 0.13);
	color: #d9a8ff;
}

.msp-event-source {
	min-height: 20px;
	padding: 2px 6px;
	border-color: var(--msp-border);
	background: transparent;
	font-size: 10px;
	font-weight: 600;
}

.msp-event-heading h3,
.msp-contract-timeline h3 {
	margin: 5px 0 0;
	color: var(--msp-text);
	font-size: 15px;
	font-weight: 750;
	line-height: 1.45;
}

.msp-event-meta-line {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px;
	margin-top: 4px;
}

.msp-event-heading time,
.msp-contract-timeline time {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	color: inherit;
	font-variant-numeric: tabular-nums;
	text-align: left;
}

.msp-event-time-value {
	color: #64d2ff;
	font-size: 13px;
	font-weight: 750;
}

.msp-event-time-label,
.msp-event-author {
	color: var(--msp-text-muted);
	font-size: 11px;
	font-weight: 500;
}

.msp-thread-entry-body {
	max-width: min(100%, 920px);
	margin-top: 9px;
}

.msp-event-content,
.msp-contract-timeline .msp-event-content,
.msp-contract-timeline p {
	margin: 0;
	color: var(--msp-text);
	font-size: 13px;
	line-height: 1.7;
}

.msp-event-content p {
	margin: 0 0 6px;
}

.msp-event-content p:last-child {
	margin-bottom: 0;
}

.msp-event-details {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 20px;
	margin: 11px 0 0;
	border: 1px solid var(--msp-border);
	border-right: 0;
	border-left: 0;
	background: transparent;
}

.msp-event-details > div {
	display: grid;
	grid-template-columns: 104px minmax(0, 1fr);
	gap: 8px;
	padding: 7px 0;
	border-bottom: 1px solid var(--msp-border);
	background: transparent;
}

.msp-event-details dt {
	color: var(--msp-text-muted);
	font-size: 11px;
	line-height: 1.5;
}

.msp-event-details dd {
	margin: 0;
	font-size: 12px;
	font-weight: 650;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.msp-event-transition {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 7px;
	margin-top: 8px;
	padding: 6px 9px;
	border: 1px solid rgba(10, 132, 255, 0.28);
	border-radius: 4px;
	background: rgba(10, 132, 255, 0.07);
	font-size: 11px;
}

.msp-event-transition > span:first-child,
.msp-event-detail-label {
	color: var(--msp-text-muted);
	font-size: 10px;
	font-weight: 700;
}

.msp-event-transition .dashicons {
	width: 13px;
	height: 13px;
	color: var(--msp-blue);
	font-size: 13px;
	line-height: 13px;
}

.msp-audit-entry-body {
	display: grid;
	gap: 5px;
}

.msp-audit-entry-body p {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	gap: 8px;
	margin: 0;
	font-size: 12px;
	line-height: 1.6;
}

.msp-event-detail-label {
	padding-top: 1px;
}

.msp-timeline-empty {
	padding: 10px 0;
	color: var(--msp-text-muted);
	font-size: 12px;
	list-style: none;
}

.msp-thread-entry-body .msp-attachments,
.msp-thread-entry-body .msp-contract-attachments,
.msp-thread-entry-body .msp-private-note,
.msp-thread-entry-body .msp-restricted-content {
	margin-top: 10px;
}

@media (max-width: 620px) {
	.msp-timeline-item,
	.msp-product-model-timeline > .msp-timeline-item {
		grid-template-columns: 28px minmax(0, 1fr);
		gap: 9px;
	}

	.msp-timeline-item:not(:last-child)::before {
		left: 13px;
	}

	.msp-timeline-item:last-child:not(:first-child)::before {
		left: 13px;
		height: 29px;
	}

	.msp-timeline-marker,
	.msp-timeline-marker.msp-event-maintenance,
	.msp-timeline-marker.msp-event-magnetron,
	.msp-timeline-marker.msp-event-fault,
	.msp-timeline-marker.msp-event-special,
	.msp-timeline-marker.msp-event-shipment {
		width: 27px;
		height: 27px;
	}

	.msp-event-heading {
		gap: 8px;
	}

	.msp-event-heading-actions .msp-button {
		width: 30px;
		height: 30px;
		padding: 0;
		font-size: 0;
	}

	.msp-event-heading-actions .dashicons {
		margin: 0;
	}

	.msp-event-details {
		grid-template-columns: minmax(0, 1fr);
	}

	.msp-event-details > div {
		grid-template-columns: 88px minmax(0, 1fr);
	}

	.msp-audit-entry-body p {
		grid-template-columns: minmax(0, 1fr);
		gap: 2px;
	}

	.msp-thread-entry-body .msp-attachment-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
	}

	.msp-thread-entry-body .msp-attachment-link {
		font-size: 10px;
	}
}
/* One-page commercial workspace keeps line editing and totals together. */
.msp-entry-sheet { width: 100%; min-width: 0; }
.msp-entry-sheet > form { display: grid; gap: 16px; }
.msp-entry-sheet .msp-dialog-header { padding: 0 0 12px; border-bottom: 1px solid #404045; }
.msp-entry-sheet .msp-dialog-header [data-dialog-close] { display: none; }
.msp-entry-sheet .msp-form-grid { align-items: start; gap: 12px 16px; }
.msp-entry-sheet > form > .msp-form-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.msp-entry-sheet .msp-entry-lines,
.msp-entry-sheet [data-quotation-terms],
.msp-entry-sheet [data-quotation-language],
.msp-entry-sheet [data-document-template-picker] { grid-column: 1 / -1; }
.msp-entry-sheet [data-quotation-language] > .msp-form-grid,
.msp-entry-sheet [data-quotation-aux-fields] { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.msp-entry-sheet [data-quotation-aux-fields],
.msp-entry-sheet [data-quotation-aux-fields] > .msp-field-help { grid-column: 1 / -1; }
[data-quotation-aux-fields][hidden] { display: none; }
.msp-entry-lines { border-top: 2px solid #548cff; padding-top: 12px; }
.msp-entry-lines .msp-section-header { justify-content: flex-start; gap: 20px; flex-wrap: wrap; }
.msp-entry-lines .msp-section-header h2 { font-size: 18px; margin: 0; }
.msp-entry-table { min-width: 750px; table-layout: fixed; }
.msp-entry-table th:first-child { width: 42%; }
.msp-entry-table th:nth-child(2) { width: 10%; }
.msp-entry-table th:nth-child(3) { width: 8%; }
.msp-entry-table th:nth-child(4), .msp-entry-table th:nth-child(5) { width: 15%; }
.msp-entry-table th:last-child { width: 10%; }
.msp-entry-table td { vertical-align: top; }
.msp-entry-table input, .msp-entry-table textarea, .msp-entry-table select { box-sizing: border-box; min-width: 0; width: 100%; }
.msp-entry-table .msp-money-cell input { text-align: right; font-variant-numeric: tabular-nums; }
.msp-entry-line-detail { margin-top: 6px; }
.msp-entry-line-detail summary { color: #8fb7ff; cursor: pointer; font-size: 13px; }
.msp-entry-line-detail .msp-form-grid { margin-top: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.msp-entry-line-detail .msp-field { font-size: 13px; }
.msp-entry-status { margin: 8px 0 0; color: #a9c5ff; font-size: 13px; }
.msp-entry-actions { position: sticky; bottom: 0; z-index: 15; display: flex; flex-wrap: wrap; gap: 12px; align-items: center; padding: 12px 16px; border-top: 1px solid #4d5c75; background: #202124; }
.msp-entry-total { margin-right: auto; font-variant-numeric: tabular-nums; }
.msp-entry-total strong { font-size: 20px; color: #f4f7ff; }
[data-entry-draft-status] { font-size: 12px; color: #b2b6c0; }
.msp-entry-model-list { max-height: 58vh; overflow-y: auto; display: grid; gap: 0; }
.msp-entry-model-option { display: flex; align-items: center; gap: 12px; padding: 10px 12px; border-bottom: 1px solid #3c3e43; cursor: pointer; }
.msp-entry-model-option[hidden] { display: none; }
.msp-entry-model-option small { display: block; color: #aab1be; margin-top: 4px; }
.msp-entry-model-option input[type="checkbox"] { width: 16px; height: 16px; flex: 0 0 16px; accent-color: #548cff; }
.msp-sales-guidance { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; min-width: 0; font-size: 13px; line-height: 1.5; font-variant-numeric: tabular-nums; white-space: normal; overflow-wrap: anywhere; }
.msp-sales-guidance > * { min-width: 0; max-width: 100%; }
.msp-sales-guidance [data-guidance-label] { color: #8fb7ff; }
.msp-sales-guidance [data-guidance-deviation] { color: #adb3bd; font-weight: 600; }
.msp-sales-guidance[data-guidance-state="below"] [data-guidance-deviation] { color: #ff8b83; }
.msp-sales-guidance[data-guidance-state="above"] [data-guidance-deviation] { color: #ffc077; }
.msp-sales-guidance[data-guidance-state="same"] [data-guidance-deviation] { color: #7bd3a7; }
.msp-entry-table .msp-sales-guidance { display: block; margin-top: 5px; }
[data-entry-kind="contract"] .msp-entry-table th:first-child { width: 32%; }
[data-entry-kind="contract"] .msp-entry-table th:nth-child(4) { width: 25%; }
.msp-entry-table .msp-sales-guidance > * { display: block; }
.msp-guidance-value { margin: 4px 0; font-size: 18px; color: #a9c5ff; font-weight: 600; font-variant-numeric: tabular-nums; }
.msp-price-filters { align-items: end; gap: 12px; }
.msp-price-filters .msp-field { margin: 0; min-width: 90px; font-size: 13px; }
.msp-price-model-picker { flex: 1 1 330px; max-width: 620px; }
.msp-price-model-picker input { margin-bottom: 4px; }
.msp-price-customer-picker { position: relative; flex: 0 1 180px; font-size: 14px; }
.msp-price-customer-picker summary { cursor: pointer; border: 1px solid #4b4e55; border-radius: 4px; padding: 10px; background: #27292d; }
.msp-price-customer-options { position: absolute; top: 100%; left: 0; z-index: 150; width: 350px; max-width: calc(100vw - 48px); max-height: 420px; overflow-y: auto; padding: 12px; background: #202124; border: 1px solid #5b6574; box-shadow: 0 8px 24px #0006; }
.msp-price-customer-options > input { width: 100%; margin-bottom: 8px; }
.msp-price-customer-options label { display: flex; align-items: start; gap: 8px; margin: 0; padding: 7px 0; white-space: normal; }
.msp-price-customer-options label[hidden] { display: none; }
.msp-price-customer-options input[type="checkbox"] { flex: 0 0 16px; width: 16px; height: 16px; margin: 2px 0 0; }
.msp-price-chart-scroll { max-width: 100%; overflow-x: auto; }
.msp-price-chart-wrap { position: relative; min-width: 0; height: 360px; }
.msp-price-chart-wrap canvas { max-width: 100%; }
.msp-price-chart-legend { margin: 4px 0 16px; color: #b7bec9; font-size: 14px; }
.msp-price-comparison-table th, .msp-price-comparison-table td { font-size: 14px; }
.msp-price-quality { margin: 18px 0; padding: 10px 0; font-size: 14px; color: #bcc2cc; }
.msp-price-quality summary { cursor: pointer; color: #8fb7ff; }
.msp-contract-editor .msp-entry-existing-lines { margin-top: 22px; }
.msp-contract-editor .msp-entry-actions { justify-content: flex-end; }
.msp-contract-lines-toolbar { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin: 12px 0; }
.msp-contract-lines-toolbar > input { width: 320px; max-width: 100%; }
.msp-contract-lines-toolbar [data-editor-pages] { display: flex; flex-wrap: wrap; gap: 4px; }
.msp-contract-lines-toolbar [aria-current="page"] { color: #fff; border-color: #5587df; }
.msp-contract-edit-lines { min-width: 880px; table-layout: fixed; }
.msp-contract-edit-lines th:nth-child(1) { width: 24%; }
.msp-contract-edit-lines th:nth-child(2) { width: 12%; }
.msp-contract-edit-lines th:nth-child(3) { width: 22%; }
.msp-contract-edit-lines th:nth-child(4) { width: 18%; }
.msp-contract-edit-lines th:nth-child(5) { width: 24%; }
.msp-contract-edit-lines td { vertical-align: top; white-space: normal; }
.msp-contract-edit-lines input[type="number"], .msp-contract-edit-lines textarea { width: 100%; min-width: 0; padding: 7px 9px; font-size: 14px; }
.msp-contract-edit-lines input[type="number"] { text-align: right; font-variant-numeric: tabular-nums; }
.msp-contract-edit-lines textarea { resize: vertical; margin-bottom: 6px; }
.msp-contract-edit-lines [data-editor-product-name] { display: block; overflow-wrap: anywhere; }
.msp-table.msp-contract-edit-lines td.msp-money-cell { white-space: normal; }
.msp-contract-edit-lines td > small { display: block; margin-top: 4px; }
.msp-contract-edit-lines .msp-checkbox-field { display: flex; align-items: center; justify-content: flex-end; gap: 6px; margin: 5px 0; }
.msp-contract-edit-lines .msp-sales-guidance { display: grid; gap: 2px; text-align: right; padding: 0; font-size: 12px; }
.msp-editor-minimum { display: block; margin-top: 6px; color: #8fb7ff; font-size: 13px; }
.msp-editor-row-dirty > td { border-bottom-color: #b28b4e; }
[data-editor-message]:empty { display: none; }
[data-editor-message] { margin: 10px 0; color: #86cfac; }
.msp-editor-error, [data-editor-message].msp-editor-error { color: #ff9d9d; }
.msp-entry-sheet .msp-dialog-header .msp-back-link { margin-bottom: 8px; }
@media (max-width: 640px) { .msp-price-filters { align-items: stretch; } .msp-price-model-picker { max-width: none; flex-basis: 100%; } .msp-price-customer-picker { flex-basis: 100%; } .msp-price-chart-scroll { margin-inline: -4px; } }
@media (max-width: 1100px) { .msp-entry-sheet > form > .msp-form-grid, .msp-entry-sheet [data-quotation-language] > .msp-form-grid, .msp-entry-sheet [data-quotation-aux-fields] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .msp-entry-sheet > form > .msp-form-grid, .msp-entry-sheet [data-quotation-language] > .msp-form-grid, .msp-entry-sheet [data-quotation-aux-fields] { grid-template-columns: minmax(0, 1fr); } .msp-entry-sheet .msp-span-2 { grid-column: 1 / -1; } .msp-entry-actions { padding: 10px; } .msp-entry-lines .msp-header-actions { gap: 6px; } }
